diff --git a/machines/terra/modules.nix b/machines/terra/modules.nix index eec563b..1c68db9 100644 --- a/machines/terra/modules.nix +++ b/machines/terra/modules.nix @@ -8,7 +8,6 @@ }: { imports = [ ../../modules - ../../modules/boot/loader/systemd.nix ]; config.horseman = { @@ -21,12 +20,12 @@ boot = { loader.systemd.enable = true; - greeter.sddm.enable = true; + greeter.cosmic.enable = true; refind.enable = true; }; wm = { - hyprland.enable = true; + cosmic.enable = true; }; hardware = { diff --git a/modules/boot/default.nix b/modules/boot/default.nix index 164afb0..27422e1 100644 --- a/modules/boot/default.nix +++ b/modules/boot/default.nix @@ -1,6 +1,9 @@ {inputs, ...}: { imports = [ ./greeter/sddm.nix + ./greeter/gdm.nix + ./greeter/cosmic.nix + ./refind.nix ./loader/grub.nix diff --git a/modules/boot/greeter/cosmic.nix b/modules/boot/greeter/cosmic.nix new file mode 100644 index 0000000..3effde4 --- /dev/null +++ b/modules/boot/greeter/cosmic.nix @@ -0,0 +1,23 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: let + inherit (lib) mkEnableOption mkIf mkOption types; + cfg = config.horseman.boot.greeter.cosmic; +in { + options = { + horseman.boot.greeter.cosmic = { + enable = mkEnableOption "COSMIC Greeter"; + }; + }; + + config = mkIf cfg.enable { + services.displayManager.cosmic-greeter = { + enable = true; + }; + }; +} diff --git a/modules/boot/greeter/gdm.nix b/modules/boot/greeter/gdm.nix new file mode 100644 index 0000000..9cd6c05 --- /dev/null +++ b/modules/boot/greeter/gdm.nix @@ -0,0 +1,23 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: let + inherit (lib) mkEnableOption mkIf mkOption types; + cfg = config.horseman.boot.greeter.gdm; +in { + options = { + horseman.boot.greeter.gdm = { + enable = mkEnableOption "GDM Greeter"; + }; + }; + + config = mkIf cfg.enable { + services.xserver.displayManager.gdm = { + enable = true; + }; + }; +} diff --git a/modules/wm/cosmic/default.nix b/modules/wm/cosmic/default.nix new file mode 100644 index 0000000..50f018e --- /dev/null +++ b/modules/wm/cosmic/default.nix @@ -0,0 +1,23 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: let + inherit (lib) mkEnableOption mkIf mkOption types; + cfg = config.horseman.wm.cosmic; +in { + options = { + horseman.wm.cosmic = { + enable = mkEnableOption "COSMIC"; + }; + }; + + config = mkIf cfg.enable { + services.desktopManager.cosmic = { + enable = true; + }; + }; +} diff --git a/modules/wm/default.nix b/modules/wm/default.nix index 309f9f1..0fb0acd 100644 --- a/modules/wm/default.nix +++ b/modules/wm/default.nix @@ -3,5 +3,6 @@ ./gnome ./plasma ./hyprland + ./cosmic ]; } diff --git a/modules/wm/qtile/default.nix b/modules/wm/qtile/default.nix deleted file mode 100644 index c499fe1..0000000 --- a/modules/wm/qtile/default.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ - inputs, - outputs, - lib, - config, - pkgs, - ... -}: let - inherit (lib) mkEnableOption mkIf mkOption types; - cfg = config.horseman.wm.qtile; -in { - options = { - horseman.wm.qtile = { - enable = mkEnableOption "Qtile"; - }; - }; - - config = mkIf cfg.enable { - services.xserver = { - enable = true; - windowManager.qtile.enable = true; - }; - - system.activationScripts.script.text = '' - cd /home/horseman && \ - rm -r .config/qtile && \ - cp -r nix-config/modules/wm/qtile/config \ - .config/qtile && \ - sudo chown -R horseman:users .config/qtile - ''; - }; -}