diff --git a/modules/gnome/usr/gnome-deck.nix b/modules/gnome/usr/gnome-deck.nix new file mode 100644 index 0000000..34f7c92 --- /dev/null +++ b/modules/gnome/usr/gnome-deck.nix @@ -0,0 +1,174 @@ +{ ... }: { + flake.homeModules.gnome-usr-gnome-deck = { config, pkgs, ... }: { + xdg.userDirs = { + enable = true; + createDirectories = true; + desktop = "${config.home.homeDirectory}/Schreibtisch"; + download = "${config.home.homeDirectory}/Downloads"; + templates = "${config.home.homeDirectory}/Vorlagen"; + publicShare = "${config.home.homeDirectory}/Öffentlich"; + documents = "${config.home.homeDirectory}/Dokumente"; + music = "${config.home.homeDirectory}/Musik"; + pictures = "${config.home.homeDirectory}/Bilder"; + videos = "${config.home.homeDirectory}/Videos"; + }; + home.file."Code/.directory".source = ./dotfiles/code-folder; + home.file.".config/gtk-3.0/bookmarks".text = '' + file:///home/deck/Bilder Bilder + file:///home/deck/Code Code + file:///home/deck/Dokumente Dokumente + file:///home/deck/Downloads Downloads + file:///home/deck/Musik Musik + file:///home/deck/%C3%96ffentlich Öffentlich + file:///home/deck/Schreibtisch Schreibtisch + file:///home/deck/Videos Videos + file:///home/deck/Vorlagen Vorlagen + ''; + dconf.settings = { + "org/gnome/shell/keybindings" = { + focus-active-notification = []; + open-new-window-application-1 = []; + open-new-window-application-2 = []; + open-new-window-application-3 = []; + open-new-window-application-4 = []; + open-new-window-application-5 = []; + open-new-window-application-6 = []; + open-new-window-application-7 = []; + open-new-window-application-8 = []; + open-new-window-application-9 = []; + toggle-message-tray = ["N"]; + }; + "org/gnome/settings-daemon/plugins/media-keys" = { + help = []; + home = ["E"]; + screenreader = []; + magnifier = []; + magnifier-zoom-in = []; + magnifier-zoom-out = []; + }; + "org/gnome/settings-daemon/plugins/media-keys" = { + custom-keybindings = [ + "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/" + ]; + }; + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = { + command = "kgx --tab"; + binding = "Return"; + name = "Console"; + }; + "org/gnome/desktop/wm/keybindings" = { + activate-window-menu = []; + always-on-top = ["T"]; + begin-move = ["M"]; + begin-resize = ["R"]; + close = ["Q"]; + cycle-group = []; + cycle-group-backward = []; + cycle-panels = []; + cycle-panels-backward = []; + cycle-windows = []; + cycle-windows-backward = []; + lower = []; + maximize = []; + maximize-horizontally = []; + minimize = ["Down"]; + move-to-monitor-down = []; + move-to-monitor-left = []; + move-to-monitor-right = []; + move-to-monitor-up = []; + move-to-workspace-1 = []; + move-to-workspace-down = []; + move-to-workspace-last = []; + move-to-workspace-left = []; + move-to-workspace-right = []; + move-to-workspace-up = []; + show-desktop = ["D"]; + switch-applications = ["Tab"]; + switch-applications-backward = ["Tab"]; + switch-group = ["Tab"]; + switch-group-backward = ["Tab"]; + panel-run-dialog = ["Space"]; + switch-input-source = []; + switch-input-source-backward = []; + switch-panels = []; + switch-panels-backward = []; + switch-to-workspace-1 = []; + switch-to-workspace-down = []; + switch-to-workspace-last = []; + switch-to-workspace-left = []; + switch-to-workspace-right = []; + switch-to-workspace-up = []; + toggle-fullscreen = ["F"]; + toggle-maximized = ["Up"]; + toggle-on-all-workspaces = ["S"]; + unmaximize = []; + }; + "org/gnome/mutter" = { + experimental-features = ["variable-refresh-rate"]; + center-new-windows = true; + edge-tiling = true; + dynamic-workspaces = true; + }; + "org/gnome/desktop/interface" = { + font-name = "IBM Plex Sans 11"; + document-font-name = "IBM Plex Sans 11"; + monospace-font-name = "IBM Plex Mono 11"; + gtk-theme = "adw-gtk3"; + enable-hot-corners = false; + cursor-theme = "Adwaita"; + }; + "org/gnome/shell/extensions/rounded-window-corners-reborn" = { + border-width = -2; + skip-libadwaita-app = false; + }; + "org/gnome/shell/extensions/clipboard-indicator" = { + toggle-menu = ["V"]; + }; + "org/gnome/desktop/background" = { + color-shading-type = "solid"; + picture-options = "zoom"; + }; + "org/gnome/shell/extensions/nightthemeswitcher/commands" = { + enabled = true; + sunrise = "gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3' && gsettings set org.gnome.desktop.interface color-scheme 'default'"; + sunset = "gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3-dark' && gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'"; + }; + "org/gnome/shell" = { + enabled-extensions = [ + "appindicatorsupport@rgcjonas.gmail.com" + #"auto-accent-colour@Wartybix" + "clipboard-indicator@tudmotu.com" + "middleclickclose@paolo.tranquilli.gmail.com" + "nightthemeswitcher@romainvigier.fr" + "rounded-window-corners@fxgn" + "tinted-shell@pakovm" + ]; + }; + }; + + home.file.wallpaper = { + recursive = true; + source = ./wallpaper; + target = ".local/share/backgrounds"; + }; + + home.file.".local/share/gnome-background-properties/my-wallpapers.xml" = { + text = let + files = builtins.attrNames (builtins.readDir ./wallpaper); + entry = file: '' + + ${file} + /home/deck/.local/share/backgrounds/${file} + zoom + + ''; + in '' + + + + ${builtins.concatStringsSep "\n" (map entry files)} + + ''; + }; + }; +} diff --git a/modules/hosts/deck/deck.nix b/modules/hosts/deck/deck.nix index 6d10358..fca1790 100644 --- a/modules/hosts/deck/deck.nix +++ b/modules/hosts/deck/deck.nix @@ -13,8 +13,8 @@ disks-sys-singledisk-unencrypted gaming-sys-controller gaming-sys-jovian - kde-sys-plasma - kde-sys-plasma-apps + gnome-sys-gnome + gnome-sys-gnome-apps security-sys-sopsnix users-sys-deck ]; @@ -22,7 +22,7 @@ apps-usr-vesktop-all base-usr-group gaming-usr-steam-all - kde-usr-plasma-deck + gnome-usr-gnome-deck security-usr-sopsnix ];