{ nix-config, config, lib, pkgs, inputs, ... }: { imports = with nix-config.homeModules; [ shell-conf # shell, shell utils, cli tools, libs, tui's git-conf beets # taskwarrior ]; home = { packages = with pkgs; [ btop ]; username = "media"; homeDirectory = "/home/media"; sessionVariables = { NH_FLAKE = "\${HOME}/nixos-config"; }; sessionPath = [ "/home/media/.local/bin" "/home/media/.local/share" "/home/media/.nix-profile/lib" "/etc/profiles/per-user/media/bin/" "/home/media/.local/state/nix/profiles/home-manager/home-path/bin/" ]; stateVersion = "25.05"; }; sops = { age.keyFile = "/home/media/.config/sops/age/keys.txt"; # must have no password! defaultSopsFile = ../emenel/secrets.yaml; # secrets = { # taskchamp-id = {}; # taskchamp-key = {}; # }; # templates."taskchamp".content = # '' # sync.server.client_id = ${config.sops.placeholder.taskchamp-id} # sync.encryption_secret = ${config.sops.placeholder.taskchamp-key} # ''; }; programs = { home-manager.enable = true; password-store.enable = true; }; systemd.user = { enable = true; startServices = "sd-switch"; # auto reload services when home is rebuilt # services.taskchampion-sync-server = { # Unit = { # Description = "taskchamp"; # After = [ "network.target" ]; # }; # Install = { # WantedBy = [ "multi-user.target" ]; # }; # Service = { # Type = "simple"; # ExecStart = "${pkgs.taskchampion-sync-server}/bin/taskchampion-sync-server --listen media-server:33043 --data-dir /home/media/.local/share/task-sync --snapshot-days 1 --snapshot-versions 30"; # }; # }; }; #custom script executables home.file.".local/bin" = { source = ../emenel/dotfiles/dot_local/bin; recursive = true; }; }