diff --git a/hosts/envy/users/main/default.nix b/hosts/envy/users/main/default.nix index d0dee73..f1daff7 100644 --- a/hosts/envy/users/main/default.nix +++ b/hosts/envy/users/main/default.nix @@ -3,6 +3,8 @@ home-manager.users."${config.sysusers.main}" = { home = { desktop.enable = true; + remote-desktop.enable = true; + school.enable = true; stateVersion = lib.mkForce "24.11"; }; }; diff --git a/hosts/tower/users/main/default.nix b/hosts/tower/users/main/default.nix index 32b949f..2235af0 100644 --- a/hosts/tower/users/main/default.nix +++ b/hosts/tower/users/main/default.nix @@ -3,6 +3,9 @@ home-manager.users."${config.sysusers.main}" = { home = { desktop.enable = true; + gaming.enable = true; + production.enable = true; + school.enable = true; stateVersion = lib.mkForce "24.05"; }; }; diff --git a/modules/home/default.nix b/modules/home/default.nix index 4922538..43a58da 100644 --- a/modules/home/default.nix +++ b/modules/home/default.nix @@ -13,12 +13,13 @@ nur.modules.homeManager.default ]; - options.home = { - desktop.enable = lib.mkEnableOption "Enable desktop programs and services."; + options.home = with lib; { + desktop.enable = mkEnableOption "Enable desktop programs and services."; + gaming.enable = mkEnableOption "Enable gaming apps and programs"; + production.enable = mkEnableOption "Enable apps for visual productivity"; + remote-desktop.enable = mkEnableOption "Enable apps for visual productivity"; + school.enable = mkEnableOption "Enable apps for visual productivity"; }; - config = { - nixpkgs.config.allowUnfree = true; - home.stateVersion = "24.11"; - }; + config.home.stateVersion = "24.11"; } diff --git a/modules/home/programs/gui/mangohud/default.nix b/modules/home/programs/gui/mangohud/default.nix index 1196adc..527918e 100644 --- a/modules/home/programs/gui/mangohud/default.nix +++ b/modules/home/programs/gui/mangohud/default.nix @@ -1,6 +1,6 @@ { config, pkgs, lib, ... }: { - config = lib.mkIf config.home.desktop.enable { + config = lib.mkIf config.home.gaming.enable { programs.mangohud.enable = true; # These options exist in Nixlang, but the order is not respected. xdg.configFile."MangoHud/MangoHud.conf".text = '' diff --git a/modules/home/programs/gui/obs/default.nix b/modules/home/programs/gui/obs/default.nix index 8b2c3ba..18f0c71 100644 --- a/modules/home/programs/gui/obs/default.nix +++ b/modules/home/programs/gui/obs/default.nix @@ -1,7 +1,7 @@ { config, pkgs, ... }: { programs.obs-studio = { - enable = config.home.desktop.enable; + enable = config.home.production.enable; plugins = with pkgs.obs-studio-plugins; [ obs-pipewire-audio-capture obs-webkitgtk diff --git a/modules/home/programs/misc/gaming/emulators/default.nix b/modules/home/programs/misc/gaming/emulators/default.nix index 7590623..0ee0b87 100644 --- a/modules/home/programs/misc/gaming/emulators/default.nix +++ b/modules/home/programs/misc/gaming/emulators/default.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: { - home.packages = with pkgs; lib.mkIf config.home.desktop.enable [ + home.packages = with pkgs; lib.mkIf config.home.gaming.enable [ dolphin-emu cemu ryujinx diff --git a/modules/home/programs/misc/gaming/launchers/default.nix b/modules/home/programs/misc/gaming/launchers/default.nix index ec5ef89..1333f5b 100644 --- a/modules/home/programs/misc/gaming/launchers/default.nix +++ b/modules/home/programs/misc/gaming/launchers/default.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: { - home.packages = with pkgs; lib.mkIf config.home.desktop.enable [ + home.packages = with pkgs; lib.mkIf config.home.gaming.enable [ heroic prismlauncher steam diff --git a/modules/home/programs/misc/production/default.nix b/modules/home/programs/misc/production/default.nix index 5456afe..d0ce6e8 100644 --- a/modules/home/programs/misc/production/default.nix +++ b/modules/home/programs/misc/production/default.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, blender, ... }: { - config = lib.mkIf config.home.desktop.enable { + config = lib.mkIf config.home.production.enable { nixpkgs.overlays = [ blender.overlays.default ]; home.packages = with pkgs; [ audacity diff --git a/modules/home/programs/misc/remote-desktop/default.nix b/modules/home/programs/misc/remote-desktop/default.nix index e2988f4..0d20fcc 100644 --- a/modules/home/programs/misc/remote-desktop/default.nix +++ b/modules/home/programs/misc/remote-desktop/default.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: { - home.packages = with pkgs; lib.mkIf config.home.desktop.enable [ + home.packages = with pkgs; lib.mkIf config.home.remote-desktop.enable [ moonlight-qt rustdesk-flutter ]; diff --git a/modules/home/programs/misc/school/default.nix b/modules/home/programs/misc/school/default.nix index 9699432..efbd725 100644 --- a/modules/home/programs/misc/school/default.nix +++ b/modules/home/programs/misc/school/default.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: { - home.packages = with pkgs; lib.mkIf config.home.desktop.enable [ + home.packages = with pkgs; lib.mkIf config.home.school.enable [ freerdp gpauth remmina diff --git a/modules/system/accounts/users/custom/default.nix b/modules/system/accounts/users/custom/default.nix index d2600a9..10bbc64 100644 --- a/modules/system/accounts/users/custom/default.nix +++ b/modules/system/accounts/users/custom/default.nix @@ -1,6 +1,7 @@ { home-manager, ... }: { imports = [ + ./jules ./main home-manager.nixosModules.home-manager ];