| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- { config, lib, pkgs, ... }:
- {
- users.users.thomas = {
- isNormalUser = true;
- extraGroups = [
- "wheel"
- "users"
- "storage"
- ];
- shell = config.programs.fish.package;
- hashedPasswordFile = config.age.secrets."odin/users/thomas".path;
- openssh.authorizedKeys.keys = [
- "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC5o7LT5wPYWgI8Mvr6RKOv+BcsbQgU7PCw2hheVu17alwF1uFUsAYV5BVQu+uv9uEm/UDsCNhfM6TwI0A1prdmtBz4pKiwXbj7fcdp6DcVOgTsPfawbXEpivtJvlhEatyTsR26MjHKnqpT0BxPvj6Ug6pvRkCYW5d2bWXiY9murmAX6Q5kSyNunkB8PdRTH+S47f7eOdCJY63VBOkkiG8M7XyPwFCDTYiHhbMZcejIdY9mB6kYnMQVRHDznQWiQxrcaE1fD/TY3db9GDcOVoo2aDBOZX7WT2+me67sU8dEK9+nSyhWDzBbEs8knu87ZlKPFwhl4slenRniKhbf22OpicXArtEcjEj0GyDJH5e+ZCIQ4eSQanA7TxnKFlDuaf+Qqx55UT+ya4vJJeik7nkzbRHaE9IoWhhiOaOnaN6kHIxuxB6z7EL3Gk7f78+I/qBaj5df6fgnXM3JBXKa5bRH2wqoSetJAo6EGpEgmU2huB1ktiGlO7BlF5XwSw6cb/KT7NSIXhncgLkCzsDVXxecVQv1FnPISBcp3+ti01ADVf2trgpPDbNTWV40Rgiefie0o2fc6KWAFfum1j5N3WWU+XVVmRjDmKKHiEJBLNKDAe0rQf+tryPW4c5GIN7aFoB+8dYFAuUyLd7Fu3vhZdmcckN5ryHunEc0dKPIiuoVZw=="
- ];
- };
- systemd.user.services.setup-home-manager =
- let
- git = lib.getExe' pkgs.git "git";
- nix = lib.getExe' pkgs.nix "nix";
- in
- {
- description = "Setup home-manager configuration on boot";
- after = [ "network-online.target" ];
- wants = [ "network-online.target" ];
- wantedBy = [ "default.target" ];
- serviceConfig = {
- Type = "oneshot";
- RemainAfterExit = true;
- };
- path = [ pkgs.git pkgs.nix ];
- script = ''
- if [ "$USER" = "thomas" ] && [ ! -d "$HOME/workspace/control/home" ]; then
- echo "Setting up home environment..."
- mkdir -p "$HOME/workspace/control"
- cd "$HOME/workspace/control"
- ${git} clone https://codeberg.org/control/home.git
- cd home
- ${nix} run github:nix-community/home-manager -- switch -b backup --flake .#thomas@odin
- fi
- '';
- };
- }
|