aboutsummaryrefslogtreecommitdiff
path: root/roles/home/desktop/default.nix
diff options
context:
space:
mode:
authorCaroline Larimore <caroline@larimo.re>2024-07-25 22:52:20 -0700
committerCaroline Larimore <caroline@larimo.re>2024-07-25 23:00:44 -0700
commit2f17e369400b9c895b3554008ab3efbc76255428 (patch)
tree172c910e17f14bb8d0d7306fe527c2c79140df64 /roles/home/desktop/default.nix
parent10c984caf7067656990e5966b4626314f225755f (diff)
roles: home: migrate old home module to roles
Diffstat (limited to 'roles/home/desktop/default.nix')
-rw-r--r--roles/home/desktop/default.nix69
1 files changed, 69 insertions, 0 deletions
diff --git a/roles/home/desktop/default.nix b/roles/home/desktop/default.nix
new file mode 100644
index 0000000..83192da
--- /dev/null
+++ b/roles/home/desktop/default.nix
@@ -0,0 +1,69 @@
+{ config, pkgs, lib, inputs, ... }:
+with lib;
+
+let cfg = config.home.roles.desktop; in {
+ imports = [
+ ./theme.nix
+
+ ./i3.nix
+ ./picom.nix
+ ./polybar.nix
+ ./rofi.nix
+ ./kitty.nix
+
+ ./gtk.nix
+ ./fcitx5.nix
+
+ ./discord.nix
+ ./eww.nix
+ ./mpv.nix
+ ./flameshot.nix
+ ./fastfetch.nix
+ ];
+
+ options.home.roles.desktop = {
+ enable = mkEnableOption "desktop home role";
+
+ discord = mkOption {
+ type = types.bool;
+ default = true;
+ };
+ eww = mkOption {
+ type = types.bool;
+ default = true;
+ };
+ mpv = mkOption {
+ type = types.bool;
+ default = true;
+ };
+ screenshot = mkOption {
+ type = types.bool;
+ default = true;
+ };
+ fetch = mkOption {
+ type = types.bool;
+ default = true;
+ };
+ };
+
+ config = mkIf cfg.enable {
+ xsession.windowManager.i3.enable = true;
+
+ gtk.enable = true;
+
+ programs = {
+ rofi.enable = true;
+ kitty.enable = true;
+
+ mpv.enable = cfg.mpv;
+ fastfetch.enable = cfg.fetch;
+ };
+
+ services = {
+ picom.enable = true;
+ polybar.enable = true;
+
+ flameshot.enable = cfg.screenshot;
+ };
+ };
+}