]> Skullheadx's Git Forge - nixos.git/commitdiff
stuff
authorAndrew <admonty1@protonmail.com>
Sun, 26 Oct 2025 21:14:12 +0000 (17:14 -0400)
committerAndrew <admonty1@protonmail.com>
Sun, 26 Oct 2025 21:14:12 +0000 (17:14 -0400)
configuration.nix
flake.lock
home.nix
hyprland/binds.nix
hyprland/hyprland.nix
librewolf.nix
tmux.nix
waybar.nix

index b8e28a53a2e0a654fa2f1c3d85c4cdd13c20c0cf..d619f04ab190530681b62a8299686d46b793f9f2 100644 (file)
@@ -45,7 +45,9 @@
     layout = "us";
     variant = "";
   };
-
+  services.gnome.gnome-keyring.enable = true;
+  environment.variables.XDG_RUNTIME_DIR = "/run/user/$UID";
+  security.polkit.enable = true;
   # Define a user account. Don't forget to set a password with ‘passwd’.
   users.users.andrew = {
     isNormalUser = true;
@@ -79,6 +81,7 @@
     kitty
     libnotify
     bibata-cursors
+    libsecret
   ];
   programs.steam = {
     enable = true;
       user = "greeter";
     };
   };
+  security.pam.services.greetd.enableGnomeKeyring = true;
   programs.regreet.enable = true;
   fonts.packages = with pkgs; [
     nerd-fonts.jetbrains-mono
index b3aa9e18731c962a57eb4f990c9e54dddfc11cfe..0e34c666bf46fa759ecbc6e9147e6595fb251bd0 100644 (file)
@@ -5,11 +5,11 @@
         "fromYaml": "fromYaml"
       },
       "locked": {
-        "lastModified": 1746562888,
-        "narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=",
+        "lastModified": 1755819240,
+        "narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
         "owner": "SenchoPens",
         "repo": "base16.nix",
-        "rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89",
+        "rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
         "type": "github"
       },
       "original": {
     "base16-fish": {
       "flake": false,
       "locked": {
-        "lastModified": 1622559957,
-        "narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
+        "lastModified": 1754405784,
+        "narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
         "owner": "tomyun",
         "repo": "base16-fish",
-        "rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
+        "rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
         "type": "github"
       },
       "original": {
         "owner": "tomyun",
         "repo": "base16-fish",
+        "rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
         "type": "github"
       }
     },
     "firefox-gnome-theme": {
       "flake": false,
       "locked": {
-        "lastModified": 1748383148,
-        "narHash": "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=",
+        "lastModified": 1758112371,
+        "narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
         "owner": "rafaelmardojai",
         "repo": "firefox-gnome-theme",
-        "rev": "4eb2714fbed2b80e234312611a947d6cb7d70caf",
+        "rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
         "type": "github"
       },
       "original": {
         ]
       },
       "locked": {
-        "lastModified": 1754487366,
-        "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=",
+        "lastModified": 1759362264,
+        "narHash": "sha256-wfG0S7pltlYyZTM+qqlhJ7GMw2fTF4mLKCIVhLii/4M=",
         "owner": "hercules-ci",
         "repo": "flake-parts",
-        "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18",
+        "rev": "758cf7296bee11f1706a574c77d072b8a7baa881",
         "type": "github"
       },
       "original": {
         ]
       },
       "locked": {
-        "lastModified": 1751413152,
-        "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=",
+        "lastModified": 1756770412,
+        "narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
         "owner": "hercules-ci",
         "repo": "flake-parts",
-        "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5",
+        "rev": "4524271976b625a4a605beefd893f270620fd751",
         "type": "github"
       },
       "original": {
         ]
       },
       "locked": {
-        "lastModified": 1756496801,
-        "narHash": "sha256-IYIsnPy+cJxe8RbDHBrCtfJY0ry2bG2H7WvMcewiGS8=",
+        "lastModified": 1761511433,
+        "narHash": "sha256-pNA2GEdH3J+2mSHKRdPpXztQXAGnk+x1yHkqlaF7y6A=",
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "77a71380c38fb2a440b4b5881bbc839f6230e1cb",
+        "rev": "f2f1076c1f789595c2a2b18b76466fbd691025dd",
         "type": "github"
       },
       "original": {
     },
     "mnw": {
       "locked": {
-        "lastModified": 1748710831,
-        "narHash": "sha256-eZu2yH3Y2eA9DD3naKWy/sTxYS5rPK2hO7vj8tvUCSU=",
+        "lastModified": 1758834834,
+        "narHash": "sha256-Y7IvY4F8vajZyp3WGf+KaiIVwondEkMFkt92Cr9NZmg=",
         "owner": "Gerg-L",
         "repo": "mnw",
-        "rev": "cff958a4e050f8d917a6ff3a5624bc4681c6187d",
+        "rev": "cfbc7d1cc832e318d0863a5fc91d940a96034001",
         "type": "github"
       },
       "original": {
     },
     "nixpkgs": {
       "locked": {
-        "lastModified": 1756542300,
-        "narHash": "sha256-tlOn88coG5fzdyqz6R93SQL5Gpq+m/DsWpekNFhqPQk=",
+        "lastModified": 1761373498,
+        "narHash": "sha256-Q/uhWNvd7V7k1H1ZPMy/vkx3F8C13ZcdrKjO7Jv7v0c=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "d7600c775f877cd87b4f5a831c28aa94137377aa",
+        "rev": "6a08e6bb4e46ff7fcbb53d409b253f6bad8a28ce",
         "type": "github"
       },
       "original": {
     },
     "nixpkgs_2": {
       "locked": {
-        "lastModified": 1756542300,
-        "narHash": "sha256-tlOn88coG5fzdyqz6R93SQL5Gpq+m/DsWpekNFhqPQk=",
+        "lastModified": 1761373498,
+        "narHash": "sha256-Q/uhWNvd7V7k1H1ZPMy/vkx3F8C13ZcdrKjO7Jv7v0c=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "d7600c775f877cd87b4f5a831c28aa94137377aa",
+        "rev": "6a08e6bb4e46ff7fcbb53d409b253f6bad8a28ce",
         "type": "github"
       },
       "original": {
     },
     "nixpkgs_3": {
       "locked": {
-        "lastModified": 1755049066,
-        "narHash": "sha256-ANrc15FSoOAdNbfKHxqEJjZLftIwIsenJGRb/04K41s=",
+        "lastModified": 1759386674,
+        "narHash": "sha256-wg1Lz/1FC5Q13R+mM5a2oTV9TA9L/CHHTm3/PiLayfA=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "e45f8f193029378d0aaee5431ba098dc80054e9a",
+        "rev": "625ad6366178f03acd79f9e3822606dd7985b657",
         "type": "github"
       },
       "original": {
         "nixpkgs": "nixpkgs_2"
       },
       "locked": {
-        "lastModified": 1756685388,
-        "narHash": "sha256-aEt7Ke31q7VCuIAQodZ3P+onifaZ3QHCSP9qXLF3bLA=",
+        "lastModified": 1761511178,
+        "narHash": "sha256-ovwKkvzZcbx/lcX9N1c5b29RHTRr4B5bQGBlCHwgMBc=",
         "owner": "nix-community",
         "repo": "NUR",
-        "rev": "fe7174935739aa55472ab68b9073d46342828790",
+        "rev": "2138a40d14e8ee0e9918fa7060d05c08efc4d23c",
         "type": "github"
       },
       "original": {
         ]
       },
       "locked": {
-        "lastModified": 1751906969,
-        "narHash": "sha256-BSQAOdPnzdpOuCdAGSJmefSDlqmStFNScEnrWzSqKPw=",
+        "lastModified": 1758998580,
+        "narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
         "owner": "nix-community",
         "repo": "NUR",
-        "rev": "ddb679f4131e819efe3bbc6457ba19d7ad116f25",
+        "rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
         "type": "github"
       },
       "original": {
         "systems": "systems"
       },
       "locked": {
-        "lastModified": 1755463179,
-        "narHash": "sha256-5Ggb1Mhf7ZlRgGi2puCa2PvWs6KbMnWBlW6KW7Vf79Y=",
+        "lastModified": 1761486540,
+        "narHash": "sha256-O0VNqERaZ1H+4P3XwHNd8wVCqUcGtMPJT1z4cJodRFc=",
         "owner": "notashelf",
         "repo": "nvf",
-        "rev": "03833118267ad32226b014b360692bdce9d6e082",
+        "rev": "4b904de36157035fa3dddf0312a4242e5d0d9bd0",
         "type": "github"
       },
       "original": {
         "tinted-zed": "tinted-zed"
       },
       "locked": {
-        "lastModified": 1755997543,
-        "narHash": "sha256-/fejmCQ7AWa655YxyPxRDbhdU7c5+wYsFSjmEMXoBCM=",
+        "lastModified": 1761028816,
+        "narHash": "sha256-s1XiIeJHpODVWfzsPaK9e21iz1dQSCU3H4/1OxOsyps=",
         "owner": "nix-community",
         "repo": "stylix",
-        "rev": "f47c0edcf71e802378b1b7725fa57bb44fe85ee8",
+        "rev": "b81dc0a385443099e7d231fe6275189e32c3b760",
         "type": "github"
       },
       "original": {
     "tinted-schemes": {
       "flake": false,
       "locked": {
-        "lastModified": 1750770351,
-        "narHash": "sha256-LI+BnRoFNRa2ffbe3dcuIRYAUcGklBx0+EcFxlHj0SY=",
+        "lastModified": 1757716333,
+        "narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
         "owner": "tinted-theming",
         "repo": "schemes",
-        "rev": "5a775c6ffd6e6125947b393872cde95867d85a2a",
+        "rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
         "type": "github"
       },
       "original": {
     "tinted-tmux": {
       "flake": false,
       "locked": {
-        "lastModified": 1751159871,
-        "narHash": "sha256-UOHBN1fgHIEzvPmdNMHaDvdRMgLmEJh2hNmDrp3d3LE=",
+        "lastModified": 1757811970,
+        "narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
         "owner": "tinted-theming",
         "repo": "tinted-tmux",
-        "rev": "bded5e24407cec9d01bd47a317d15b9223a1546c",
+        "rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
         "type": "github"
       },
       "original": {
     "tinted-zed": {
       "flake": false,
       "locked": {
-        "lastModified": 1751158968,
-        "narHash": "sha256-ksOyv7D3SRRtebpXxgpG4TK8gZSKFc4TIZpR+C98jX8=",
+        "lastModified": 1757811247,
+        "narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
         "owner": "tinted-theming",
         "repo": "base16-zed",
-        "rev": "86a470d94204f7652b906ab0d378e4231a5b3384",
+        "rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
         "type": "github"
       },
       "original": {
index e05258667a4e189e3c0db93789b362d5cc4742aa..ab33c129e661dc4b22ee4444406553c206171ebc 100644 (file)
--- a/home.nix
+++ b/home.nix
@@ -56,6 +56,7 @@
     catppuccin-gtk
     inter
     prismlauncher
+    btop
     nixfmt-rfc-style
     p7zip
     github-desktop
     slurp
     swappy
 
+    vlc
+
     skullNeovim.neovim
 
     protonvpn-cli
     protonvpn-gui
+    qbittorrent
     # # It is sometimes useful to fine-tune packages, for example, by applying
     # # overrides. You can do that directly here, just don't forget the
     # # parentheses. Maybe you want to install Nerd Fonts with a limited number of
 
   xdg.portal = {
     enable = true;
-    extraPortals = [pkgs.xdg-desktop-portal-hyprland];
+    extraPortals = [pkgs.xdg-desktop-portal-hyprland pkgs.xdg-desktop-portal-gtk];
+    config.common.default = ["hyprland" "gtk"];
+    xdgOpenUsePortal = true;
   };
-
   services.gnome-keyring = {
     enable = true;
   };
-
+  services.network-manager-applet.enable = true;
   services.hyprpolkitagent.enable = true;
   home.pointerCursor = {
     hyprcursor.enable = true;
index c1684152aae805f7ff43172cb407418e22f338f1..c354fe1245d23d3570d06bcc5d98e958f70ccfa8 100644 (file)
@@ -32,12 +32,12 @@ in {
         "$mod, Q, killactive,"
         "$mod, F, fullscreen,"
         #"$mod, G, togglegroup,"
-        "$mod SHIFT, N, changegroupactive, f"
-        "$mod SHIFT, P, changegroupactive, b"
-        "$mod, R, togglesplit,"
+        #       "$mod SHIFT, N, changegroupactive, f"
+        "$mod SHIFT, P, changegroupactive, b"
+        #"$mod, R, togglesplit,"
         "$mod, T, togglefloating,"
-        "$mod, P, pseudo,"
-        "$mod ALT, ,resizeactive,"
+        #"$mod, P, pseudo,"
+        #"$mod ALT, ,resizeactive,"
 
         "$mod, left, movefocus, l"
         "$mod, right, movefocus, r"
@@ -57,6 +57,15 @@ in {
         "$mod SHIFT, k, movewindow, u"
         "$mod SHIFT, j, movewindow, d"
 
+        "$mod CTRL, left, resizeactive, -10 0"
+        "$mod CTRL, down, resizeactive, 0 10"
+        "$mod CTRL, up, resizeactive, 0 -10"
+        "$mod CTRL, right, resizeactive, 10 0"
+        "$mod CTRL, h, resizeactive, -10 0"
+        "$mod CTRL, j, resizeactive, 0 10"
+        "$mod CTRL, k, resizeactive, 0 -10"
+        "$mod CTRL, l, resizeactive, 10 0"
+
         "$mod, D, exec, uwsm app -- ghostty"
         "$mod, b, exec, librewolf"
         "$mod, space, exec, pkill rofi || rofi -show drun"
index 9a84485c42dae40248ebeccf54ee4e60ca077ca4..dd098e756b8b5dcff39ad6697a28759423f1975f 100644 (file)
         "f[1], gapsout:0, gapsin:0"
       ];
       exec-once = [
+        "gnome-keyring-daemon --replace --start --components=pkcs11,secrets,ssh"
         "xrandr --output DP-3 --primary"
         "uwsm app -- waybar"
-        "[workspace 1 silent] uwsm app -- ghostty"
+        "nm-applet --indicator"
+        "/run/current-system/sw/libexec/polkit-gnome-authentication-agent-1"
+        "[workspace 1 silent] uwsm app -- ghostty -e tmux attach -t dev || tmux new -s dev -c ~/dev"
         "[workspace 2 silent] uwsm app -- librewolf"
         #"[workspace 3 silent] uwsm app -- ghostty -e fish -c rmpc"
         "[workspace 3 silent] uwsm app -- discord"
@@ -55,6 +58,7 @@
       windowrule = [
         "workspace 3 silent, class:(discord)"
         "workspace 6 silent, class:(steam)"
+        "workspace 4 silent, class:(org.keepassxc.KeePassXC)"
 
         "bordersize 0, floating:0, onworkspace:w[tv1]"
         "rounding 0, floating:0, onworkspace:w[tv1]"
index e76d88c6c58394f906214fbc2385504a5f93d088..386ba88534c164aee5420dde74c8909773f01886 100644 (file)
@@ -27,6 +27,7 @@
           ublock-origin
           vimium-c
           keepassxc-browser
+          containerise
         ];
         settings = {
           "uBlock0@raymondhill.net".settings = {
           };
         };
       };
+      containers = {
+        Personal = {
+          color = "blue";
+          icon = "fingerprint";
+          id = 1;
+        };
+        Shopping = {
+          color = "turquoise";
+          icon = "cart";
+          id = 2;
+        };
+        Banking = {
+          color = "green";
+          icon = "dollar";
+          id = 3;
+        };
+        Youtube = {
+          color = "red";
+          icon = "fruit";
+          id = 4;
+        };
+        School = {
+          color = "pink";
+          icon = "briefcase";
+          id = 5;
+        };
+      };
     };
   };
 }
index ce767291eef578549ed307f744bb9b65d90ab0b6..774f5bffe520c659608f85ff5a7464d52ad110d1 100644 (file)
--- a/tmux.nix
+++ b/tmux.nix
       }
     ];
     extraConfig = ''
-            # Basic settings for usability
-            set -g mouse on
-            set -g base-index 1
-            set -g pane-base-index 1
-            set -g status-style bg=black,fg=cyan
-            set -g prefix C-a
-            unbind C-b
-            bind C-a send-prefix
+                        # Basic settings for usability
+                        set -g mouse on
+                        set -g base-index 1
+                        set -g pane-base-index 1
+                        set -g status-style bg=black,fg=cyan
+                        set -g history-limit 10000
+                        set -g prefix C-a
+                        unbind C-b
+                        bind C-a send-prefix
 
-      #      bind-key -r d new-session -s dev
-      #      bind-key -r m new-session -s music
-      #      bind-key -r n new-session -s nixos
+                        bind | split-window -h
+                        bind - split-window -v
 
-            # Fish-friendly clipboard integration
-            set -g set-clipboard on
-            bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -in -selection clipboard"
 
-            # Session initialization script
-            set -g @tmux-resurrect-restore-script '${config.home.homeDirectory}/.config/tmux/setup-sessions.sh'
+                            # Pane navigation (vim-style)
+                            bind h select-pane -L
+                            bind j select-pane -D
+                            bind k select-pane -U
+                            bind l select-pane -R
+
+                            # Pane resizing with Shift + vim keys
+                            bind -r H resize-pane -L 5
+                            bind -r J resize-pane -D 5
+                            bind -r K resize-pane -U 5
+                            bind -r L resize-pane -R 5
+                            bind s choose-session
+                            bind w choose-window
+            # Auto-create sessions if they don't exist
+            if-shell "tmux has-session -t dev   2>/dev/null" "" "new-session -ds dev -c ~/dev 'fish'"
+            if-shell "tmux has-session -t music 2>/dev/null" "" "new-session -ds music 'rmpc'"
+            if-shell "tmux has-session -t nixos 2>/dev/null" "" "new-session -ds nixos -c ~/.dotfiles/nixos 'nvim .'"
+
+                  # Quick binds for session switching
+                  bind d switch-client -t dev
+                  bind m switch-client -t music
+                  bind n switch-client -t nixos
+      bind -n C-1 select-window -t 1
+      bind -n C-2 select-window -t 2
+      bind -n C-3 select-window -t 3
+      bind -n C-4 select-window -t 4
+      bind -n C-5 select-window -t 5
+      bind -n C-6 select-window -t 6
+      bind -n C-7 select-window -t 7
+      bind -n C-8 select-window -t 8
+      bind -n C-9 select-window -t 9
+                        # Fish-friendly clipboard integration
+                        set -g set-clipboard on
+                        bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -in -selection clipboard"
+
+                        # Session initialization script
+                        set -g @tmux-resurrect-restore-script '${config.home.homeDirectory}/.config/tmux/setup-sessions.sh'
     '';
   };
 
index 1a44cfca9462461223da63118e4874dbdf0d1ebb..a12fe2a2e5bdcdc2e48a6f93e60fbdb33cd91c8e 100644 (file)
@@ -21,6 +21,7 @@ in {
 
     settings = [
       {
+        gtk-layer-shell = false;
         output = ["DP-3"];
         #height = 24; # Waybar height
         spacing = 4; # Gaps between modules