{ lib, pkgs, config, osConfig, ... }: let userConfig = osConfig.host.users.eve; in { config = { # Packages that can be installed without any extra configuration # See https://search.nixos.org/packages for all options home.packages = lib.lists.optionals userConfig.isDesktopUser ( with pkgs; [ ungoogled-chromium ] ); # Packages that need to be installed with some extra configuration # See https://home-manager-options.extranix.com/ for all options programs = lib.mkMerge [ { # Let Home Manager install and manage itself. home-manager.enable = true; } (lib.mkIf (config.user.isDesktopUser || config.user.isTerminalUser) { git = { enable = true; userName = "Eve"; userEmail = "evesnrobins@gmail.com"; extraConfig.init.defaultBranch = "main"; }; openssh = { enable = true; hostKeys = [ { type = "ed25519"; path = "${config.home.username}_${osConfig.networking.hostName}_ed25519"; } ]; }; }) (lib.mkIf config.user.isDesktopUser { vscode = { enable = true; package = pkgs.vscodium; }; firefox.enable = true; bitwarden.enable = true; discord.enable = true; makemkv.enable = true; signal-desktop-bin.enable = true; steam.enable = true; }) ]; }; }