aboutsummaryrefslogtreecommitdiff
path: root/modules/system/users/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/system/users/default.nix')
-rw-r--r--modules/system/users/default.nix39
1 files changed, 39 insertions, 0 deletions
diff --git a/modules/system/users/default.nix b/modules/system/users/default.nix
new file mode 100644
index 0000000..3086f18
--- /dev/null
+++ b/modules/system/users/default.nix
@@ -0,0 +1,39 @@
+{ config, lib, pkgs, ... }:
+let
+ groupExists = grp: builtins.hasAttr grp config.users.groups;
+ groupsIfExist = builtins.filter groupExists;
+in {
+ # Users are managed through this configuration. If a user is added
+ # manually, it will be removed on system activation.
+ users.mutableUsers = false;
+
+ users.groups.fcuny = { gid = 1000; };
+ users.users.fcuny = {
+ isNormalUser = true;
+ uid = 1000;
+ group = "fcuny";
+ home = "/home/fcuny";
+ shell = pkgs.zsh;
+ extraGroups = groupsIfExist [
+ "docker"
+ "users"
+ "nas" # in order to access to files downloaded by transmission
+ "wheel" # `sudo` for the user.
+ "cdrom" # in order to read from the bluray
+ ];
+ hashedPassword =
+ "$6$i.z1brxtb44JAEco$fDD2Izl.zRR9vBCB2VBKPScChGw38EEl7QEiBTJ/EwgP3oSL0X3ZHq0PJ.RtqzBsWTPUjl4F3MKOBMhnaAPr6.";
+ openssh.authorizedKeys.keys = [
+ # aptos
+ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIdlm/qoR/dnMjZhVSTtqFzkgN3Yf9eQ3pgKMiipg+dl"
+ # work
+ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINSWhXmnUplM+xltD0sYiJ6AsjkwHvbjTYLA7GHXHja9"
+ ];
+ };
+
+ users.users.root = {
+ hashedPassword = null;
+ openssh.authorizedKeys.keys =
+ config.users.users.fcuny.openssh.authorizedKeys.keys;
+ };
+}