{ pkgs, ... }: { imports = [ ]; # Declarative only optoins. # I don't want to allow ad-hoc modifying users on the system. # Users must be declared either as part of a package or in this file. users.mutableUsers = false; # Define a user account. Don't forget to set a password with ‘passwd’. users.users.noah = { isNormalUser = true; shell = pkgs.fish; extraGroups = [ "wheel" "video" "nas" ]; # Enable ‘sudo’ for the user. hashedPasswordFile = "/etc/nixos/noah-password"; openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC/cXL1cV6QUW5z2bJp1mCu0CXrcc0Dntdxaeo3fg60N noah@odin" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJeSPXmzD0rXKNjR1q+qSJqXjO0gxLitTRD+m02v94p6 noah@aleister" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDQFlX3hhXxsqAUYLvF+IX1YWQ+k22OHlqMOjgyNBe9e noah@misaki" ]; }; users.groups.nas.gid = 1001; # I manage my home with home-manager # Don't store packages in ~/.nix-profile, use /etc/profiles so we can build-vm home-manager.useUserPackages = true; # No more NIX_PATH, use system pkgs home-manager.useGlobalPkgs = true; home-manager.users.noah = import ./noah-home.nix ; }