diff options
Diffstat (limited to 'parts/users/seth/desktop')
| -rw-r--r-- | parts/users/seth/desktop/budgie/default.nix | 44 | ||||
| -rw-r--r-- | parts/users/seth/desktop/default.nix | 43 | ||||
| -rw-r--r-- | parts/users/seth/desktop/gnome/default.nix | 88 | ||||
| -rw-r--r-- | parts/users/seth/desktop/plasma/default.nix | 59 |
4 files changed, 234 insertions, 0 deletions
diff --git a/parts/users/seth/desktop/budgie/default.nix b/parts/users/seth/desktop/budgie/default.nix new file mode 100644 index 0000000..7eced2b --- /dev/null +++ b/parts/users/seth/desktop/budgie/default.nix @@ -0,0 +1,44 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.getchoo.desktop.budgie; + inherit (lib) mkIf; + fromYaml = file: let + json = with pkgs; + runCommand "converted.json" {} '' + ${yj}/bin/yj < ${file} > $out + ''; + in + with builtins; fromJSON (readFile json); +in { + config = mkIf cfg.enable { + programs.alacritty = { + enable = true; + settings = let + file = + pkgs.fetchFromGitHub { + owner = "catppuccin"; + repo = "alacritty"; + rev = "3c808cbb4f9c87be43ba5241bc57373c793d2f17"; + sha256 = "sha256-w9XVtEe7TqzxxGUCDUR9BFkzLZjG8XrplXJ3lX6f+x0="; + } + + "/catppuccin-mocha.yml"; + in + (fromYaml file) + // { + }; + }; + + dconf = { + enable = true; + settings = { + "com.solus-project.budgie-panel:Budgie" = { + pinned-launchers = ["firefox.desktop" "nemo.desktop" "discord.desktop"]; + }; + }; + }; + }; +} diff --git a/parts/users/seth/desktop/default.nix b/parts/users/seth/desktop/default.nix new file mode 100644 index 0000000..bdcef3d --- /dev/null +++ b/parts/users/seth/desktop/default.nix @@ -0,0 +1,43 @@ +{ + config, + lib, + pkgs, + osConfig, + ... +}: let + cfg = config.getchoo.desktop; + desktops = ["budgie" "gnome" "plasma"]; + inherit (lib) mkEnableOption mkIf; +in { + imports = [ + ./budgie + ./gnome + ./plasma + ]; + + options.getchoo.desktop = + { + enable = mkEnableOption "desktop configuration" // {default = osConfig.desktop.enable or false;}; + } + // lib.genAttrs desktops (desktop: { + enable = + mkEnableOption desktop + // {default = osConfig.desktop.${desktop}.enable or false;}; + }); + + config = mkIf cfg.enable { + home.packages = with pkgs; [ + discord + element-desktop + spotify + steam + prismlauncher + ]; + + getchoo.programs = { + chromium.enable = true; + firefox.enable = true; + mangohud.enable = true; + }; + }; +} diff --git a/parts/users/seth/desktop/gnome/default.nix b/parts/users/seth/desktop/gnome/default.nix new file mode 100644 index 0000000..ff2d1d4 --- /dev/null +++ b/parts/users/seth/desktop/gnome/default.nix @@ -0,0 +1,88 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.getchoo.desktop.gnome; + inherit (lib) mkIf; +in { + config = mkIf cfg.enable { + home.packages = with pkgs; + [ + adw-gtk3 + tuba + ] + ++ (with pkgs.gnomeExtensions; [ + caffeine + clipboard-history + gradience + ]); + + dconf = { + enable = true; + settings = { + "org/gnome/shell" = { + disable-user-extensions = false; + + enabled-extensions = [ + ]; + + favorite-apps = [ + "firefox.desktop" + "org.gnome.Nautilus.desktop" + "discord.desktop" + ]; + }; + + "org/gnome/desktop/interface" = { + color-scheme = "prefer-dark"; + font-antialiasing = ''rgba''; + font-name = ''Noto Sans 11''; + document-font-name = ''Noto Sans 11''; + monospace-font-name = ''FiraCode Nerd Font 10''; + }; + + "org/gnome/desktop/peripherals/mouse" = { + accel-profile = ''flat''; + }; + + "org/gnome/desktop/wm/preferences" = { + titlebar-font = ''Noto Sans Bold 11''; + }; + + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = { + name = "blackbox"; + command = "blackbox"; + binding = "<Control><Alt>t"; + }; + + "com/raggesilver/BlackBox" = { + font = ''FiraCode Nerd Font 12''; + theme-dark = ''Catppuccin-Mocha''; + remember-window-size = true; + }; + }; + }; + + gtk = { + enable = true; + theme = { + name = "adw-gtk3"; + package = pkgs.adw-gtk3; + }; + }; + + xdg.dataFile."blackbox/schemes/Catppuccin-Mocha.json".source = + pkgs.fetchFromGitHub { + owner = "catppuccin"; + repo = "tilix"; + rev = "3fd05e03419321f2f2a6aad6da733b28be1765ef"; + sha256 = "sha256-SI7QxQ+WBHzeuXbTye+s8pi4tDVZOV4Aa33mRYO276k="; + } + + "/src/Catppuccin-Mocha.json"; + }; +} diff --git a/parts/users/seth/desktop/plasma/default.nix b/parts/users/seth/desktop/plasma/default.nix new file mode 100644 index 0000000..4f59528 --- /dev/null +++ b/parts/users/seth/desktop/plasma/default.nix @@ -0,0 +1,59 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.getchoo.desktop.plasma; + inherit (lib) mkIf; +in { + config = mkIf cfg.enable { + home.packages = with pkgs; [ + catppuccin-cursors + (catppuccin-kde.override + { + flavour = ["mocha"]; + accents = ["mauve"]; + }) + + (catppuccin-kvantum.override + { + variant = "Mocha"; + accent = "Mauve"; + }) + + libsForQt5.qtstyleplugin-kvantum + papirus-icon-theme + ]; + + xdg = { + configFile = let + themeDir = "${config.gtk.theme.package}/share/themes/${config.gtk.theme.name}"; + in { + "gtk-4.0/gtk.css".source = "${themeDir}/gtk-4.0/gtk.css"; + "gtk-4.0/gtk-dark.css".source = "${themeDir}/gtk-4.0/gtk-dark.css"; + }; + + dataFile."konsole/catppuccin-mocha.colorscheme".source = + pkgs.fetchFromGitHub { + owner = "catppuccin"; + repo = "konsole"; + rev = "7d86b8a1e56e58f6b5649cdaac543a573ac194ca"; + sha256 = "EwSJMTxnaj2UlNJm1t6znnatfzgm1awIQQUF3VPfCTM="; + } + + "/Catppuccin-Mocha.colorscheme"; + }; + + gtk = { + enable = true; + + theme = { + name = "Catppuccin-Mocha-Standard-Mauve-dark"; + package = pkgs.catppuccin-gtk.override { + accents = ["mauve"]; + variant = "mocha"; + }; + }; + }; + }; +} |
