diff options
author | Ethel Morgan <eth@ethulhu.co.uk> | 2020-05-23 15:55:37 +0100 |
---|---|---|
committer | Ethel Morgan <eth@ethulhu.co.uk> | 2020-05-23 15:55:37 +0100 |
commit | 06347d7b71834de868dff40341808ac9b747388d (patch) | |
tree | 8a3fd7112b9b55905bbf250433c1676fd7cc5309 | |
parent | a0000bf3f1789555cdd1d8b586ff611ef9ad7e64 (diff) |
add nixos module for creating pre-baked users
-rw-r--r-- | module-list.nix | 1 | ||||
-rw-r--r-- | modules/users.nix | 41 |
2 files changed, 42 insertions, 0 deletions
diff --git a/module-list.nix b/module-list.nix index a431b95..41a06cf 100644 --- a/module-list.nix +++ b/module-list.nix @@ -3,5 +3,6 @@ ./modules/linode.nix ./modules/overlays.nix ./modules/upmpdcli.nix + ./modules/users.nix ./modules/yubikey.nix ] diff --git a/modules/users.nix b/modules/users.nix new file mode 100644 index 0000000..7dbe30d --- /dev/null +++ b/modules/users.nix @@ -0,0 +1,41 @@ +{ config, lib, pkgs, ... }: +with lib; + +let + cfg = config.eth.users; + + defaultPackages = with pkgs; [ + direnv + killall + tmux + vim + wget + ]; + +in { + + options.eth.users = { + eth = { + enable = mkEnableOption "Create the user eth"; + + extraPackages = mkOption { + type = types.listOf types.package; + default = []; + }; + }; + }; + + config = { + + users.users.eth = mkIf cfg.eth.enable { + isNormalUser = true; + extraGroups = [ "wheel" ]; + shell = pkgs.fish; + packages = defaultPackages ++ cfg.eth.extraPackages; + openssh.authorizedKeys.keys = [ + "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqcW3HzqQxPUjZteAs5HmDbCEAtHcThnj7qfJacEXBmpO5srinU3mhV/EhrqcAMkEoEIS2az2uQQEsF13nEqDD1uZh/Q7qwEnZepzElgBOIToQ+Np2qziRExV3ROBddJfmD3XBTPc7wA5BohYku+eCsfR37ZrRTgKUIALhZ4MSRxgQqnhtgaxHpL2Nk6ZdxRHO1ISlcmiWhOETP0fj76zN4+CgSv4rkPdYxKYpWVT8XTdKgu6ENbAPbOBzplui9MmrdS17ZaWy0KrKCiyMjhA5qSsOxWLXKL9P8lRuuXkWAl5cpt3vWWKAOzlLV1UCUbtlBblyH2KkeIKfO8AC45wX keychain@eth.moe" + "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGf+geluXR5/hxK2OthfS+bG+7QbUVqV25bslT4KgMid+zkOVeWfA49n8/iuXUjYZmB0hP9oiFkM1wjFfC5JtET1OX3V8r0nuexXfhvG4gtWIk6Yw5HfPLv1qYYti4SrPKgQlP+C2i6WjHO6Y4VWSpJkgXgO+XvEa57fGSsjcy3rV6l/B56tpIhNchvwVxm1gHJnb4eZAKtQYcz8Pven2TFNFGLMMzQ7Y7JWAH80TDrdUywxfktaKmswo4rQ6i3zUKXrzaPuaH+egoNLqfZqM3+Q92PWs8bU2Y7uxXUQJXD32KuStRUwEz32A+O55nVVGTrnwKUUqnx9H04KCYBOVP backup@eth.moe" + ]; + }; + }; +} |