diff --git a/README.md b/README.md index 08c6eae..f867d6f 100644 --- a/README.md +++ b/README.md @@ -63,7 +63,7 @@ Defaults are set in `flake.nix` and used across modules. Update them there: | `time.timeZone` | `America/New_York` | `modules/common.nix` | | `i18n.defaultLocale` | `en_US.UTF-8` | `modules/common.nix` | -Also rename the default `hosts/atlas/` directory to match your actual hostname, and ensure the same hostname is set in `flake.nix`. +Also rename the default `hosts/atlas/` directory to match your actual hostname, and ensure the same hostname is set in `flake.nix` (the flake uses it to locate `hosts//hardware-configuration.nix`). ### 3. Stage Files in Git diff --git a/flake.nix b/flake.nix index 0ecfbdc..2c9aa7e 100644 --- a/flake.nix +++ b/flake.nix @@ -41,7 +41,8 @@ username = "pinj"; lib = nixpkgs.lib; hostConfig = ./hosts + "/${hostname}/hardware-configuration.nix"; - specialArgs = { inherit inputs system hostname username; }; + passwordHashPath = "/etc/nixos/secrets/${username}/password.hash"; + specialArgs = { inherit inputs system hostname username passwordHashPath; }; # Verify mango flake exports the expected module mangoModule = assert lib.hasAttrByPath [ "nixosModules" "mango" ] mango; diff --git a/modules/common.nix b/modules/common.nix index 26479bc..e83d742 100644 --- a/modules/common.nix +++ b/modules/common.nix @@ -1,4 +1,4 @@ -{ config, pkgs, inputs, system, hostname, username, ... }: +{ config, pkgs, inputs, system, hostname, username, passwordHashPath, ... }: { assertions = [ @@ -118,7 +118,7 @@ extraGroups = [ "wheel" "networkmanager" "video" "seat" ]; # IMPORTANT: Generate a password hash with: mkpasswd -m sha-512 # Save it to the path below (ensure permissions are 600) - hashedPasswordFile = "/etc/nixos/secrets/${username}/password.hash"; + hashedPasswordFile = passwordHashPath; packages = with pkgs; [ # -- Noctalia Shell -- inputs.quickshell.packages.${system}.default