diff options
Diffstat (limited to 'nixos/profiles/workstation/default.nix')
-rw-r--r-- | nixos/profiles/workstation/default.nix | 54 |
1 files changed, 38 insertions, 16 deletions
diff --git a/nixos/profiles/workstation/default.nix b/nixos/profiles/workstation/default.nix index 8a77434..fee6a86 100644 --- a/nixos/profiles/workstation/default.nix +++ b/nixos/profiles/workstation/default.nix @@ -1,6 +1,7 @@ -{ config, pkgs, ... }: +{ config, lib, pkgs, ... }: let + cfg = config.workstation; npins = import ../../npins; nixGit = import (pkgs.fetchFromGitHub { owner = "NixOS"; @@ -10,6 +11,12 @@ let }); in { + options.workstation = { + username = lib.mkOption { + type = lib.types.str; + }; + }; + imports = [ ../common <top/shared/basics-physical.nix> @@ -18,23 +25,38 @@ in ./create.nix ]; - environment.systemPackages = [ - pkgs.npins - (pkgs.callPackage "${npins.agenix}/pkgs/agenix.nix" {}) + config = { + users.users.${cfg.username} = { + isNormalUser = true; + extraGroups = [ + "wheel" + "networkmanager" + ]; + }; - pkgs.unzip - ]; + services.getty = { + autologinUser = cfg.username; + autologinOnce = true; # only in the first tty once per boot + }; - environment.sessionVariables = { - # Tell .zshrc to source zshrc-workstation.sh. - MYNIX_PROFILE = "workstation"; - }; + environment.systemPackages = [ + pkgs.npins + (pkgs.callPackage "${npins.agenix}/pkgs/agenix.nix" {}) - # Age defaults to this anyway when openssh is enabled. - # We're setting this here for workstations where openssh is disabled. - age.identityPaths = ["/etc/ssh/ssh_host_ed25519_key"]; + pkgs.unzip + ]; - # Using nix from git for --raw support in nix-instantiate --eval. - # FUTURE: remove once upgrading to NixOS 25.05 - nix.package = nixGit.packages.${builtins.currentSystem}.default; + environment.sessionVariables = { + # Tell .zshrc to source zshrc-workstation.sh. + MYNIX_PROFILE = "workstation"; + }; + + # Age defaults to this anyway when openssh is enabled. + # We're setting this here for workstations where openssh is disabled. + age.identityPaths = ["/etc/ssh/ssh_host_ed25519_key"]; + + # Using nix from git for --raw support in nix-instantiate --eval. + # FUTURE: remove once upgrading to NixOS 25.05 + nix.package = nixGit.packages.${builtins.currentSystem}.default; + }; } |