{ config, lib, pkgs, ... }: with lib; let cfg = config.de2u; in { options.de2u = { enable = mkEnableOption "Enable de2 user stuff"; }; config = mkIf cfg.enable { colors.enable = lib.mkDefault true; fonts.enable = lib.mkDefault true; programs.chromium.enable = lib.mkDefault true; programs.kitty = { enable = lib.mkDefault true; settings = { background_opacity = lib.mkDefault "1"; dynamic_background_opacity = lib.mkDefault true; allow_remote_control = lib.mkDefault true; hide_window_decorations = lib.mkDefault true; }; }; home.packages = with pkgs; [ gnomeExtensions.pop-shell gnomeExtensions.blur-me gnomeExtensions.remove-rounded-corners gnomeExtensions.improved-workspace-indicator gnomeExtensions.vitals gnomeExtensions.clipboard-indicator # (gnomeExtensions.no-title-bar.overrideAttrs (old: { # src = builtins.fetchGit { # rev = "1e6647d1bf03559cd574f34aa2439b942cc94c60"; # url = "git+ssh://git@github.com/poehlerj/no-title-bar.git"; # }; # patches = old.patches ++ [ # (pkgs.fetchurl { # url = "https://patch-diff.githubusercontent.com/raw/poehlerj/no-title-bar/pull/37.patch"; # sha256 = "sha256-4gUv7U8mtSDQ2aSlVALxMpLvLWUcf0Gd8N2xIGQ4LGQ="; # }) # ]; # })) gnomeExtensions.just-perfection gnomeExtensions.appindicator ]; systemd.user.sessionVariables = { QT_QPA_PLATFORM = "wayland-egl;xcb"; MOZ_ENABLE_WAYLAND = "1"; QT_WAYLAND_DISABLE_WINDOWDECORATION = "1"; }; xdg.mimeApps = { enable = true; defaultApplications = { "inode/directory" = "org.gnome.Nautilus.desktop"; "text/html" = "chromium-browser.desktop"; "x-scheme-handler/http" = "chromium-browser.desktop"; "x-scheme-handler/https" = "chromium-browser.desktop"; "x-scheme-handler/about" = "chromium-browser.desktop"; "application/zip" = "org.gnome.FileRoller.desktop"; "application/rar" = "org.gnome.FileRoller.desktop"; "application/7z" = "org.gnome.FileRoller.desktop"; "application/*tar" = "org.gnome.FileRoller.desktop"; }; }; dconf.settings = with lib.hm.gvariant; { "org/gnome/desktop/interface" = { enable-hot-corners = false; show-battery-percentage = true; }; "org/gnome/shell/extensions/pop-shell" = { tile-by-default = true; show-title = false; active-hint = false; }; "org/gnome/shell/extensions/improved-workspace-indicator" = { panel-position = "left"; }; "org/gnome/shell/extensions/vitals" = { hide-zeros = true; show-battery = true; update-time = 8; }; "org/gnome/shell/extensions/appindicator" = { icon-opacity = 255; tray-pos = "center"; }; "org/gnome/shell/extensions/user-theme" = { name = if config.colors.enable then "Generated" else "Default"; }; "org/gnome/shell/extensions/just-perfection" = { activities-button = false; animation = 3; app-menu = true; app-menu-icon = true; background-menu = true; dash = false; double-super-to-appgrid = true; gesture = true; hot-corner = false; show-apps-button = false; startup-status = 0; window-picker-icon = false; window-preview-caption = true; workspace = true; workspace-popup = false; workspace-switcher-should-show = false; workspaces-in-app-grid = true; }; "org/gnome/shell" = { disable-user-extensions = false; enabled-extensions = [ "pop-shell@system76.com" "rrc@ogarcia.me" "native-window-placement@gnome-shell-extensions.gcampax.github.com" "user-theme@gnome-shell-extensions.gcampax.github.com" "improved-workspace-indicator@michaelaquilina.github.io" "Vitals@CoreCoding.com" "clipboard-indicator@tudmotu.com" "just-perfection-desktop@just-perfection" "appindicatorsupport@rgcjonas.gmail.com" ]; }; "org/gnome/desktop/peripherals/touchpad" = { natural-scroll = false; }; "org/gnome/mutter" = { edge-tiling = false; dynamic-workspaces = false; }; "org/gnome/shell/extensions/blur-me" = { toggle-app-blur = false; }; "org/gnome/desktop/wm/preferences" = { focus-mode = "sloppy"; resize-with-right-button = true; num-workspaces = 9; }; "org/gnome/maps" = { night-mode = true; transportation-type = "car"; }; "org/gnome/system/location" = { enabled = true; }; "org/gnome/desktop/wm/keybindings" = { move-to-workspace-1 = [ "exclam" ]; move-to-workspace-2 = [ "at" ]; move-to-workspace-3 = [ "numbersign" ]; move-to-workspace-4 = [ "dollar" ]; move-to-workspace-5 = [ "percent" ]; move-to-workspace-6 = [ "asciicircum" ]; move-to-workspace-7 = [ "ampersand" ]; move-to-workspace-8 = [ "asterisk" ]; move-to-workspace-9 = [ "parenleft" ]; switch-to-workspace-1 = [ "1" ]; switch-to-workspace-2 = [ "2" ]; switch-to-workspace-3 = [ "3" ]; switch-to-workspace-4 = [ "4" ]; switch-to-workspace-5 = [ "5" ]; switch-to-workspace-6 = [ "6" ]; switch-to-workspace-7 = [ "7" ]; switch-to-workspace-8 = [ "8" ]; switch-to-workspace-9 = [ "9" ]; minimize = [ "comma" ]; switch-to-workspace-left = [ "" ]; switch-to-workspace-right = [ "" ]; maximize = [ "" ]; unmaximize = [ "" ]; move-to-monitor-up = [ "" ]; move-to-monitor-down = [ "" ]; move-to-monitor-left = [ "" ]; move-to-monitor-right = [ "" ]; move-to-workspace-down = [ "" ]; move-to-workspace-up = [ "" ]; switch-to-workspace-down = [ "Down" "j" ]; switch-to-workspace-up = [ "Up" "k" ]; toggle-maximized = [ "m" ]; close = [ "q" "F4" ]; }; "org/gnome/mutter/keybindings" = { toggle-tiled-left = [ "" ]; toggle-tiled-right = [ "" ]; }; "org/gnome/mutter/wayland/keybindings" = { restore-shortcuts = [ "" ]; }; "org/gnome/shell/keybindings" = { open-application-menu = [ "" ]; toggle-message-tray = [ "v" ]; toggle-overview = [ "" ]; }; "org/gnome/settings-daemon/plugins/media-keys" = { screensaver = [ "Escape" ]; home = [ "f" ]; email = [ "e" ]; www = [ "b" ]; terminal = [ "t" ]; rotate-video-lock-static = [ "" ]; area-screenshot = [ "Print" ]; area-screenshot-clip = [ "Print" ]; screenshot = [ "Print" ]; screenshot-clip = [ "Print" ]; window-screenshot = [ "Print" ]; window-screenshot-clip = [ "Print" ]; }; }; }; }