Non stop entertainment! The wackiest NixOS configuration to-date. thevoid.cafe/projects/puzzlevision
nixos flake flake-parts dotfiles home-manager nix
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

♻️ Move user-specific gnome config out of global context

+45 -81
+29 -1
homes/x86_64-linux/jo/desktop/gnome/default.nix
··· 1 1 { ... }: 2 2 { 3 - puzzlevision.desktop.gnome.wallpaper = ../wallpapers/macchiato-waves.jpg; 3 + puzzlevision.desktop.gnome = { 4 + favorite-apps = [ 5 + "org.gnome.Nautilus.desktop" 6 + "obsidian.desktop" 7 + "firefox.desktop" 8 + "dev.zed.Zed.desktop" 9 + ]; 10 + 11 + wallpaper = ../wallpapers/macchiato-waves.jpg; 12 + }; 13 + 14 + dconf.settings = { 15 + "org/gnome/shell/extensions/unite" = { 16 + show-window-buttons = "never"; 17 + hide-window-titlebars = "maximized"; 18 + 19 + use-activities-text = false; 20 + extend-left-box = false; 21 + reduce-panel-spacing = false; 22 + show-legacy-tray = false; 23 + show-appmenu-button = false; 24 + show-desktop-name = false; 25 + enable-titlebar-actions = false; 26 + restrict-to-primary-screen = false; 27 + hide-activities-button = "never"; 28 + autofocus-windows = true; 29 + notifications-position = "right"; 30 + }; 31 + }; 4 32 }
+16 -80
modules/home/desktop/gnome/default.nix
··· 7 7 ... 8 8 }: 9 9 let 10 - inherit (lib) mkIf mkOption; 10 + inherit (lib) mkIf; 11 11 inherit (self) namespace; 12 12 inherit (self.lib) mkOpt; 13 13 ··· 15 15 in 16 16 { 17 17 options.${namespace}.desktop.gnome = with lib.types; { 18 - enabled-extensions = mkOption { 19 - type = listOf package; 20 - default = with pkgs.gnomeExtensions; [ 21 - user-themes 22 - blur-my-shell 23 - appindicator 24 - unite 25 - color-picker 26 - clipboard-history 27 - ]; 28 - example = [ 29 - dash-to-dock 30 - blur-my-shell 31 - ]; 32 - description = "Specify gnome extensions to install."; 33 - }; 34 - favorite-apps = mkOption { 35 - type = listOf str; 36 - default = [ 37 - "org.gnome.Nautilus.desktop" 38 - "obsidian.desktop" 39 - "firefox.desktop" 40 - "dev.zed.Zed.desktop" 41 - ]; 42 - example = [ 43 - "org.gnome.Nautilus.desktop" 44 - "obsidian.desktop" 45 - ]; 46 - description = "Specify your favorite apps (sorted left to right)."; 47 - }; 48 - extensions = { 49 - unite = { 50 - show-window-buttons = mkOption { 51 - type = str; 52 - default = "never"; 53 - example = "never | maximized | tiled | both | always"; 54 - description = "Specify when Unite should display window buttons within the top panel."; 55 - }; 56 - hide-window-titlebars = mkOption { 57 - type = str; 58 - default = "maximized"; 59 - example = "never | maximized | tiled | both | always"; 60 - description = "Specify when Unite should hide window titlebars."; 61 - }; 62 - }; 63 - blur-my-shell = { 64 - enable-blur = mkOpt bool false "Whether to enable blur-my-shell application blur."; 65 - }; 66 - }; 67 - wallpaper = 68 - mkOpt path ../wallpapers/building_top_sit_dusk.jpg 69 - "Specify the path of your prefered Gnome wallpaper."; 18 + enabled-extensions = mkOpt (listOf package) (with pkgs.gnomeExtensions; [ 19 + user-themes 20 + blur-my-shell 21 + appindicator 22 + unite 23 + color-picker 24 + clipboard-history 25 + ]) "Specify gnome extensions to install."; 26 + 27 + favorite-apps = mkOpt (listOf str) [ 28 + "org.gnome.Nautilus.desktop" 29 + "firefox.desktop" 30 + ] "Specify your favorite apps (sorted left to right)."; 31 + 32 + wallpaper = mkOpt path ./wallpaper.jpg "Specify the path of your prefered Gnome wallpaper."; 70 33 }; 71 34 72 35 config = mkIf osConfig.${namespace}.desktop.gnome.enable { ··· 78 41 enabled-extensions = lib.forEach cfg.enabled-extensions (x: x.extensionUuid); 79 42 disabled-extensions = [ ]; # Make sure none of our extensions are disabled on system rebuild 80 43 }; 81 - "org/gnome/shell/extensions/unite" = 82 - mkIf (builtins.elem pkgs.gnomeExtensions.unite cfg.enabled-extensions) 83 - { 84 - show-window-buttons = cfg.extensions.unite.show-window-buttons; 85 - hide-window-titlebars = cfg.extensions.unite.hide-window-titlebars; 86 - 87 - use-activities-text = false; 88 - extend-left-box = false; 89 - reduce-panel-spacing = false; 90 - show-legacy-tray = false; 91 - show-appmenu-button = false; 92 - show-desktop-name = false; 93 - enable-titlebar-actions = false; 94 - restrict-to-primary-screen = false; 95 - hide-activities-button = "never"; 96 - autofocus-windows = true; 97 - notifications-position = "right"; 98 - }; 99 - "org/gnome/shell/extensions/blur-my-shell/applications" = 100 - mkIf cfg.extensions.blur-my-shell.enable-blur 101 - { 102 - blur = true; 103 - sigma = 30; 104 - opacity = 230; 105 - enable-all = true; 106 - dynamic-opacity = false; 107 - }; 108 44 "org/gnome/desktop/background" = { 109 45 picture-uri = "file://${cfg.wallpaper}"; 110 46 picture-uri-dark = "file://${cfg.wallpaper}";
modules/home/desktop/wallpapers/building_top_sit_dusk.jpg modules/home/desktop/gnome/wallpaper.jpg
modules/home/desktop/wallpapers/catppuccin/catppuccin_bright_gradient.png

This is a binary file and will not be displayed.

modules/home/desktop/wallpapers/catppuccin/howard-chen-mao-mao-forest-campsite.jpg

This is a binary file and will not be displayed.

modules/home/desktop/wallpapers/catppuccin/mountain_tower_sunset.jpg

This is a binary file and will not be displayed.

modules/home/desktop/wallpapers/scenic-landscape-blurred.jpg

This is a binary file and will not be displayed.