ctucx.git: nixfiles

ctucx' nixfiles

commit 13d5ecee64f2dc5367652411a3a918684f9ff123
parent 1e8bca78d09cc293ec2c7ae2c965784b3da85be2
Author: Leah (ctucx) <git@ctu.cx>
Date: Tue, 29 Oct 2024 21:38:37 +0100

configurations/linux/gnome: some changes

- add user `leah` to group `networkmanager`
- add some gnome-extensions
- prefer gtk dark themes
- configure various things via dconf
- enable paper-plane
1 file changed, 86 insertions(+), 13 deletions(-)
M
configurations/linux/gnome.nix
|
99
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------
diff --git a/configurations/linux/gnome.nix b/configurations/linux/gnome.nix
@@ -1,33 +1,105 @@
-{ config, lib, pkgs, home-manager, ... }:
+{ inputs, config, lib, pkgs, home-manager, ... }:
 
 {
 
-  users.users.leah.extraGroups = [ "dialout" ];
+  users.users.leah.extraGroups = [ "dialout" "networkmanager"];
 
   nixpkgs.config.allowUnfree = true;
 
-  hardware.opengl = {
-    enable        = true;
-    driSupport    = true;
-    extraPackages = with pkgs; [
-      vaapiIntel
-      vaapiVdpau
-      libvdpau-va-gl
-      intel-media-driver
-    ];
-  };
+  networking.networkmanager.wifi.backend = "iwd";
 
   programs = {
     dconf.enable = true;
   };
 
   services = {
-    nscd.enable         = true;
+    nscd.enable  = true;
   };
 
   home-manager.users.leah = {
     manual.html.enable = true;
     services.gnome-keyring.enable = true;
+
+    home.packages = with pkgs; [
+      gnomeExtensions.user-themes
+      gnomeExtensions.just-perfection
+      gnomeExtensions.arcmenu
+      gnomeExtensions.dash-to-panel
+      gnomeExtensions.tray-icons-reloaded
+      gnomeExtensions.airpod-battery-monitor
+      gnomeExtensions.battery-time-percentage-compact
+      gnomeExtensions.space-bar
+    ];
+
+    gtk = {
+      enable = true;
+
+      gtk3.extraConfig = {
+        Settings = ''
+          gtk-application-prefer-dark-theme=1
+        '';
+      };
+      gtk4.extraConfig = {
+        Settings = ''
+          gtk-application-prefer-dark-theme=1
+        '';
+      };
+    };
+
+    # Use `dconf watch /` to track stateful changes you are doing and store them here.
+    dconf.settings = with inputs.home-manager.lib.hm.gvariant; {
+      "org/gnome/mutter" = {
+        edge-tiling        = true;
+        dynamic-workspaces = false;
+      };
+      "org/gnome/shell" = {
+        disable-user-extensions = false;
+        # `gnome-extensions list` for a list
+        enabled-extensions = [
+          "user-theme@gnome-shell-extensions.gcampax.github.com"
+          "just-perfection-desktop@just-perfection"
+          "trayIconsReloaded@selfmade.pl"
+          "dash-to-panel@jderose9.github.com"
+          "arcmenu@arcmenu.com"
+          "Airpod-Battery-Monitor@maniacx.github.com"
+          "batterytimepercentagecompact@sagrland.de"
+          "space-bar@luchrioh"
+        ];
+        favorite-apps = [ "firefox.desktop" "org.gnome.Terminal.desktop"  "org.gnome.Nautilus.desktop" ];
+      };
+      "org/gnome/desktop/interface" = {
+        color-scheme = "prefer-dark";
+        enable-hot-corners = false;
+      };
+      "org/gnome/desktop/input-sources" = {
+        sources = [
+          (mkTuple ["xkb" "us+mac"])
+          (mkTuple ["xkb" "de"])
+          (mkTuple ["xkb" "ru+mac"])
+        ];
+      };
+      #ยง `gsettings get org.gnome.shell.extensionst.user-theme name`
+      "org/gnome/shell/extensions/user-theme" = {
+      };
+      "org/gnome/desktop/wm/preferences" = {
+        button-layout   = "close:appmenu";
+        auto-raise      = true;
+        focus-mode      = "sloppy";
+        num-workspaces  = 4;
+        workspace-names = [ "Main" "Mail" "Term" ];
+      };
+      "org/gnome/desktop/background" = {
+        picture-uri = "file:///run/current-system/sw/share/backgrounds/gnome/vnc-l.png";
+        picture-uri-dark = "file:///run/current-system/sw/share/backgrounds/gnome/vnc-d.png";
+      };
+      "org/gnome/desktop/screensaver" = {
+        picture-uri = "file:///run/current-system/sw/share/backgrounds/gnome/vnc-d.png";
+        primary-color = "#3465a4";
+        secondary-color = "#000000";
+      };
+    };
+
+
   };
 
   ctucxConfig = {

@@ -54,6 +126,7 @@
       thunderbird.enable   = true;
       fractal.enable       = true;
       tuba.enable          = true;
+      paper-plane.enable   = true;
 
       libreoffice.enable   = true;
       ausweisapp.enable    = true;