diff --git a/common/base-graphical/default.nix b/common/base-graphical/default.nix index b014f3f..e77e434 100644 --- a/common/base-graphical/default.nix +++ b/common/base-graphical/default.nix @@ -6,7 +6,7 @@ let in { imports = [ - ./desktop.nix + ./gnome.nix ./sound.nix ]; diff --git a/common/base-graphical/desktop.nix b/common/base-graphical/desktop.nix deleted file mode 100644 index 7e6a92c..0000000 --- a/common/base-graphical/desktop.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ config, lib, pkgs, ... }: - -let - inherit (lib) mkIf mkMerge mkOption types; - cfg = config.qenya.base-graphical; -in -{ - options.qenya.base-graphical.desktop = mkOption { - type = types.enum [ "gnome" "plasma6" ]; - default = "gnome"; - example = "plasma6"; - description = "Which display manager and desktop manager to use."; - }; - - config = mkIf cfg.enable (mkMerge [ - (mkIf (cfg.desktop == "gnome") { - services.xserver.displayManager.gdm.enable = true; - services.xserver.desktopManager.gnome.enable = true; - # TODO: agree on this with randomcat as it affects her too, since for some reason this is system-wide - # environment.gnome.excludePackages = with pkgs.gnome; [ - # pkgs.gnome-tour - # epiphany # GNOME Web - # geary - # gnome-calendar - # gnome-contacts - # gnome-music - # ]; - }) - (mkIf (cfg.desktop == "plasma6") { - services.displayManager.sddm.enable = true; - services.displayManager.sddm.wayland.enable = true; - services.desktopManager.plasma6.enable = true; - }) - ]); -} diff --git a/common/base-graphical/gnome.nix b/common/base-graphical/gnome.nix new file mode 100644 index 0000000..1d077de --- /dev/null +++ b/common/base-graphical/gnome.nix @@ -0,0 +1,21 @@ +{ config, lib, pkgs, ... }: + +let + inherit (lib) mkIf mkMerge mkOption types; + cfg = config.qenya.base-graphical; +in +{ + config = mkIf cfg.enable { + services.xserver.displayManager.gdm.enable = true; + services.xserver.desktopManager.gnome.enable = true; + # TODO: agree on this with randomcat as it affects her too, since for some reason this is system-wide + # environment.gnome.excludePackages = with pkgs.gnome; [ + # pkgs.gnome-tour + # epiphany # GNOME Web + # geary + # gnome-calendar + # gnome-contacts + # gnome-music + # ]; + }; +} diff --git a/flake.nix b/flake.nix index deed6a3..bac5ec5 100644 --- a/flake.nix +++ b/flake.nix @@ -88,11 +88,7 @@ # However, note CppNix >= 2.22.3, >= 2.24 has blessed "homeModules": # https://github.com/NixOS/nix/pull/10858 flake.homeManagerModules = { - "qenya".imports = [ - inputs.plasma-manager.homeManagerModules.plasma-manager - ./home/qenya - ]; - + "qenya".imports = [ ./home/qenya ]; "qenya@shaw".imports = [ ./hosts/shaw/home.nix ]; }; diff --git a/home/qenya/default.nix b/home/qenya/default.nix index 8a1d6f3..fff0309 100644 --- a/home/qenya/default.nix +++ b/home/qenya/default.nix @@ -1,7 +1,6 @@ { imports = [ ./dconf - ./plasma ./firefox.nix ./fontconfig.nix ./git.nix diff --git a/home/qenya/plasma/default.nix b/home/qenya/plasma/default.nix deleted file mode 100644 index f35d05c..0000000 --- a/home/qenya/plasma/default.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ config, lib, pkgs, osConfig, ... }: - -let - isPlasma = osConfig.services.desktopManager.plasma6.enable || osConfig.services.xserver.desktopManager.plasma5.enable; -in -{ - programs.plasma.enable = isPlasma; - programs.plasma.overrideConfig = true; - - imports = [ ]; -} diff --git a/hosts/kilgharrah/default.nix b/hosts/kilgharrah/default.nix index c73d439..87505c6 100644 --- a/hosts/kilgharrah/default.nix +++ b/hosts/kilgharrah/default.nix @@ -9,6 +9,8 @@ in ./filesystems.nix ./hardware.nix ./networking.nix + ./plasma.nix + ./ftp.nix ]; @@ -20,7 +22,6 @@ in boot.kernelModules = [ "kvm-intel" ]; qenya.base-graphical.enable = true; - qenya.base-graphical.desktop = "plasma6"; time.timeZone = "Europe/London"; i18n.defaultLocale = "en_GB.UTF-8"; @@ -33,8 +34,6 @@ in fountain.admins = [ "qenya" ]; home-manager.users.qenya = { pkgs, ... }: { home.packages = with pkgs; [ obs-studio ]; - # For the moment, this hosts some network-accessible services, so we want it on 24/7 - programs.plasma.powerdevil.AC.autoSuspend.action = "nothing"; }; qenya.services.remote-builder = { diff --git a/hosts/kilgharrah/plasma.nix b/hosts/kilgharrah/plasma.nix new file mode 100644 index 0000000..90d1191 --- /dev/null +++ b/hosts/kilgharrah/plasma.nix @@ -0,0 +1,23 @@ +{ config, lib, pkgs, inputs, ... }: + +let + inherit (lib) mkForce; +in +{ + services.xserver.displayManager.gdm.enable = mkForce false; + services.xserver.desktopManager.gnome.enable = mkForce false; + services.displayManager.sddm.enable = true; + services.displayManager.sddm.wayland.enable = true; + services.desktopManager.plasma6.enable = true; + + home-manager.users.qenya = { pkgs, ... }: { + imports = [ + inputs.plasma-manager.homeManagerModules.plasma-manager + ]; + programs.plasma.enable = true; + programs.plasma.overrideConfig = true; + + # For the moment, this hosts some network-accessible services, so we want it on 24/7 + programs.plasma.powerdevil.AC.autoSuspend.action = "nothing"; + }; +}