diff --git a/configs/nixos/networking.nix b/configs/nixos/interactive-networking.nix similarity index 100% rename from configs/nixos/networking.nix rename to configs/nixos/interactive-networking.nix diff --git a/configs/nixos/secrets.nix b/configs/nixos/secrets.nix new file mode 100644 index 0000000..d9c2cd4 --- /dev/null +++ b/configs/nixos/secrets.nix @@ -0,0 +1,17 @@ +{ + inputs, + config, + lib, + pkgs, + ... +}: let + secretsDirectory = builtins.toString inputs.nix-secrets; +in { + imports = [ + inputs.sops-nix.nixosModules.sops + ]; + sops = { + defaultSopsFile = "${secretsDirectory}/common.yaml"; + validateSopsFiles = false; + }; +} diff --git a/hosts/archlaptop-vm/default.nix b/hosts/archlaptop-vm/default.nix index 5e3d9f2..464e16e 100644 --- a/hosts/archlaptop-vm/default.nix +++ b/hosts/archlaptop-vm/default.nix @@ -15,7 +15,7 @@ inputs.nixpkgs.lib.nixosSystem { ../../configs/nixos/common.nix ../../configs/nixos/printing.nix ../../configs/nixos/sound.nix - ../../configs/nixos/networking.nix + ../../configs/nixos/interactive-networking.nix ../../configs/nixos/i3 ({ config, @@ -46,8 +46,10 @@ inputs.nixpkgs.lib.nixosSystem { programs.zsh.enable = true; environment.shells = with pkgs; [zsh]; + users.mutableUsers=false; # Define a user account. Don't forget to set a password with ‘passwd’. users.users.${config.host.user} = { + hashedPasswordFile=config.sops.secrets.gv-password.path; isNormalUser = true; description = "Gabe Venberg"; shell = pkgs.zsh; diff --git a/hosts/archlaptop-vm/secrets.nix b/hosts/archlaptop-vm/secrets.nix new file mode 100644 index 0000000..8fdd872 --- /dev/null +++ b/hosts/archlaptop-vm/secrets.nix @@ -0,0 +1,14 @@ +{ + inputs, + config, + lib, + pkgs, + ... +}: { + imports=[ + ../../configs/nixos/secrets.nix + ]; + sops.secrets.gv-password = { + neededForUsers = true; + }; +} diff --git a/hosts/workstation-vm/default.nix b/hosts/workstation-vm/default.nix index a4285da..83d19f3 100644 --- a/hosts/workstation-vm/default.nix +++ b/hosts/workstation-vm/default.nix @@ -17,7 +17,7 @@ inputs.nixpkgs.lib.nixosSystem { ../../roles/nixos/graphical-vm.nix ../../configs/nixos/printing.nix ../../configs/nixos/sound.nix - ../../configs/nixos/networking.nix + ../../configs/nixos/interactive-networking.nix ../../configs/nixos/nfsv2.nix ../../configs/nixos/i3 ../../configs/nixos/common.nix diff --git a/hosts/workstation-vm/secrets.nix b/hosts/workstation-vm/secrets.nix index 9836f31..8fdd872 100644 --- a/hosts/workstation-vm/secrets.nix +++ b/hosts/workstation-vm/secrets.nix @@ -4,17 +4,11 @@ lib, pkgs, ... -}: let - secretsDirectory = builtins.toString inputs.nix-secrets; -in { - imports = [ - inputs.sops-nix.nixosModules.sops +}: { + imports=[ + ../../configs/nixos/secrets.nix ]; - sops = { - defaultSopsFile = "${secretsDirectory}/common.yaml"; - validateSopsFiles = false; - secrets.gv-password={ - neededForUsers=true; - }; + sops.secrets.gv-password = { + neededForUsers = true; }; }