{ config, pkgs, lib, inputs, ... }:
{
    imports =
    [
	inputs.sops-nix.nixosModules.sops
        ../../modules/base
        ../../modules/development
        ../../modules/server
        #./hardware-configuration.nix
    ];

	#programs.nvf.enable = lib.mkForce false;

	networking.hostName = "kurin";

	# hardware.raspberry-pi."4" = {
	# 	dwc2.enable = true;
	# };

	# Secrets

	sops = {
		defaultSopsFile = ../../secrets/kurin.yaml;
		defaultSopsFormat = "yaml";
                age.keyFile = "/nix/keys.txt";
	};

    sops.secrets."users_dark_password".neededForUsers = true;
	users.users.dark.hashedPasswordFile = config.sops.secrets."users_dark_password".path;


	## SSH Host Key
	#services.openssh.hostKeys = [{
	#	path = config.sops.secrets.host_private_key.path;
	#	type = "ed25519";
	#}];
  	#sops.secrets.host_private_key.restartUnits = ["sshd.service"];
	# boot.initrd.secrets = {
	# 	"/etc/dropbear/ssh_host_key" = lib.mkForce config.sops.secrets.host_private_key.path;
	# };

	# NFS support
	# boot.supportedFilesystems = {
	# 	nfs = true;
	# };
	# environment.systemPackages = with pkgs; [
	# 	nfs-utils
	# ];


	fileSystems."/boot/firmware".options = lib.mkForce [ "nofail" ];
	#fileSystems."/".fsType = lib.mkForce "btrfs";
	#fileSystems."/".options = lib.mkForce [ "compress=lz0" ];

	sdImage = {
		compressImage = false;
		firmwarePartitionName = "boot";
		firmwareSize = 256;
	};

	# fileSystems."/containers" = {
	# 	mountPoint = "/containers";
	# 	device = "192.168.10.108:/i-data/3c7fc725/nfs/compose";
	# 	fsType = "nfs";
	# 	options = [ "vers=3" "soft" "intr" "nolock" "acl" "ac" ];
	# };

	#systemd.mounts.containers = {
	#	requires = [ "network-online.target" ];
	#};

	# systemd.services.docker = {
	# 	after = [ "containers.mount" ];
	# 	requires = [ "containers.mount" ];
	# 	wantedBy = lib.mkForce [];
	# };

	# systemd.sockets.docker.upheldBy  = [ "containers.mount" ];

	#fileSystems."/var/lib/docker" = {
	#	mountPoint = "/var/lib/docker";
		#fsType = "glusterfs";
		#device = "sircu.pi:kurin-docker";
		#fsType = "nfs";
		#device = "192.168.10.108:/kurin-docker";
		#options = [ "nfsvers=4.0" ];
	#};

	#zramSwap = {
	#	enable = true;
	#	algorithm = "zstd";
	#	memoryPercent = 40;
	#};

	sops.secrets."wireless_passwords".mode = "0440";
	networking.wireless = {
		enable = true;
		networks = {
			"Sinox" = {
				pskRaw = "ext:Sinox";
			};
		};
		scanOnLowSignal = false;
		secretsFile = config.sops.secrets."wireless_passwords".path;
		userControlled = true;
	};

	system.stateVersion = "25.11";
}
