diff --git a/common/nixos/common.nix b/common/nixos/common.nix
index acf063a..f3dc8ed 100644
--- a/common/nixos/common.nix
+++ b/common/nixos/common.nix
@@ -16,30 +16,58 @@
../../common/style/stylix.nix
];
#
- nixpkgs.config.allowUnfree = true;
-
- nix.settings.experimental-features = [
- "nix-command"
- "flakes"
+ security.sudo.extraRules = [
+ {
+ users = [ "gwg313" ];
+ commands = [
+ {
+ command = "/run/current-system/sw/bin/nixos-rebuild";
+ options = [ "NOPASSWD" ];
+ }
+ ];
+ }
];
+ nixpkgs.config = {
+ allowUnfree = true;
+ };
+ nix = {
+ settings = {
+ substituters = [
+ "https://cache.nixos.org?priority=10"
+ "https://hyprland.cachix.org"
+ "https://nix-community.cachix.org"
+ "https://cache.garnix.io"
+ "https://numtide.cachix.org"
+ ];
+ trusted-public-keys = [
+ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
+ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
+ "cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
+ "numtide.cachix.org-1:2ps1kLBUWjxIneOy1Ik6cQjb41X0iXVXeHigGmycPPE="
+ ];
+ experimental-features = [
+ "nix-command"
+ "flakes"
+ ];
+ auto-optimise-store = true;
+ trusted-users = [ "${user}" ];
+ };
+ optimise.automatic = true;
+ gc = {
+ automatic = true;
+ dates = "daily";
+ options = "--delete-older-than 14d";
+ };
- nix.settings.auto-optimise-store = true;
- nix.optimise.automatic = true;
-
- nix.settings.trusted-users = [ "${user}" ];
+ };
+ services = {
+ fstrim.enable = true;
+ };
# Disable so comma can be installed
programs.command-not-found.enable = false;
programs.nix-index-database.comma.enable = true;
- nix.gc = {
- automatic = true;
- dates = "daily";
- options = "--delete-older-than 14d";
- };
-
- services.fstrim.enable = true;
-
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system we e ere taken. It's perfectly fine and recommended to leave
diff --git a/common/nixos/documentation.nix b/common/nixos/documentation.nix
index 9700df8..19d8e1e 100644
--- a/common/nixos/documentation.nix
+++ b/common/nixos/documentation.nix
@@ -13,6 +13,6 @@
};
environment.sessionVariables = {
- MANPAGER = "sh -c 'sed -u -e \"s/\\x1B\[[0-9;]*m//g; s/.\\x08//g\" | bat -p -lman'";
+ MANPAGER = "sh -c '${pkgs.gnugrep}/bin/sed -u -e \"s/\\x1B\[[0-9\;]*m//g; s/.\\x08//g\" | ${pkgs.bat}/bin/bat -p -lman'";
};
}
diff --git a/common/nixos/packages.nix b/common/nixos/packages.nix
index 5fa894b..626311c 100644
--- a/common/nixos/packages.nix
+++ b/common/nixos/packages.nix
@@ -15,6 +15,10 @@
enableSSHSupport = true;
};
+ environment.sessionVariables = {
+ SSH_AUTH_SOCK = "/run/user/1000/gnupg/S.gpg-agent.ssh";
+ };
+
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
diff --git a/flake.lock b/flake.lock
index a627056..15e0036 100644
--- a/flake.lock
+++ b/flake.lock
@@ -61,11 +61,11 @@
]
},
"locked": {
- "lastModified": 1742213273,
- "narHash": "sha256-0l0vDb4anfsBu1rOs94bC73Hub+xEivgBAo6QXl2MmU=",
+ "lastModified": 1743265529,
+ "narHash": "sha256-QbjP15/2N+VJl0b5jxrrTc+VOt39aU4XrDvtP0Lz5ik=",
"owner": "hyprwm",
"repo": "aquamarine",
- "rev": "484b732195cc53f4536ce4bd59a5c6402b1e7ccf",
+ "rev": "1d2dbd72c2bbaceab031c592d4810f744741d203",
"type": "github"
},
"original": {
@@ -235,11 +235,11 @@
"nixpkgs": "nixpkgs_3"
},
"locked": {
- "lastModified": 1737621947,
- "narHash": "sha256-8HFvG7fvIFbgtaYAY2628Tb89fA55nPm2jSiNs0/Cws=",
+ "lastModified": 1742042642,
+ "narHash": "sha256-D0gP8srrX0qj+wNYNPdtVJsQuFzIng3q43thnHXQ/es=",
"owner": "cachix",
"repo": "cachix",
- "rev": "f65a3cd5e339c223471e64c051434616e18cc4f5",
+ "rev": "a624d3eaf4b1d225f918de8543ed739f2f574203",
"type": "github"
},
"original": {
@@ -282,11 +282,11 @@
]
},
"locked": {
- "lastModified": 1742931579,
- "narHash": "sha256-FUru0FYrHekRpSQW+QazYIdhcU2pnGOvy+YpYnGt5IE=",
+ "lastModified": 1743783972,
+ "narHash": "sha256-5wPsNCnWmeLpLxavsftA9L7tnYgtlexV7FwLegxtpy4=",
"owner": "cachix",
"repo": "devenv",
- "rev": "d15c0bd7389fe6e49a8dd487c734ed7cf76cb1fe",
+ "rev": "2f53e2f867e0c2ba18b880e66169366e5f8ca554",
"type": "github"
},
"original": {
@@ -299,11 +299,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
- "lastModified": 1741628778,
- "narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
+ "lastModified": 1743774811,
+ "narHash": "sha256-oiHLDHXq7ymsMVYSg92dD1OLnKLQoU/Gf2F1GoONLCE=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
- "rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
+ "rev": "df53a7a31872faf5ca53dd0730038a62ec63ca9e",
"type": "github"
},
"original": {
@@ -467,11 +467,11 @@
]
},
"locked": {
- "lastModified": 1741352980,
- "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=",
+ "lastModified": 1743550720,
+ "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
"owner": "hercules-ci",
"repo": "flake-parts",
- "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9",
+ "rev": "c621e8422220273271f52058f618c94e405bb0f5",
"type": "github"
},
"original": {
@@ -602,11 +602,11 @@
]
},
"locked": {
- "lastModified": 1740849354,
- "narHash": "sha256-oy33+t09FraucSZ2rZ6qnD1Y1c8azKKmQuCvF2ytUko=",
+ "lastModified": 1742649964,
+ "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=",
"owner": "cachix",
"repo": "git-hooks.nix",
- "rev": "4a709a8ce9f8c08fa7ddb86761fe488ff7858a07",
+ "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
"type": "github"
},
"original": {
@@ -628,11 +628,11 @@
]
},
"locked": {
- "lastModified": 1741379162,
- "narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
+ "lastModified": 1742649964,
+ "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=",
"owner": "cachix",
"repo": "git-hooks.nix",
- "rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
+ "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
"type": "github"
},
"original": {
@@ -797,14 +797,15 @@
"inputs": {
"nixpkgs": [
"nixpkgs"
- ]
+ ],
+ "treefmt-nix": "treefmt-nix"
},
"locked": {
- "lastModified": 1742957044,
- "narHash": "sha256-gwW0tBIA77g6qq45y220drTy0DmThF3fJMwVFUtYV9c=",
+ "lastModified": 1744127405,
+ "narHash": "sha256-Cqkmsb3CDcUREjszRe2/qkvztFzEujkaaqV5/nqfdlk=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "ce287a5cd3ef78203bc78021447f937a988d9f6f",
+ "rev": "fefb6ae1b301b620a81645789e19945092b079da",
"type": "github"
},
"original": {
@@ -822,11 +823,11 @@
]
},
"locked": {
- "lastModified": 1741635347,
- "narHash": "sha256-2aYfV44h18alHXopyfL4D9GsnpE5XlSVkp4MGe586VU=",
+ "lastModified": 1743869639,
+ "narHash": "sha256-Xhe3whfRW/Ay05z9m1EZ1/AkbV1yo0tm1CbgjtCi4rQ=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "7fb8678716c158642ac42f9ff7a18c0800fea551",
+ "rev": "d094c6763c6ddb860580e7d3b4201f8f496a6836",
"type": "github"
},
"original": {
@@ -973,11 +974,11 @@
"xdph": "xdph"
},
"locked": {
- "lastModified": 1742952129,
- "narHash": "sha256-A/62kt6kxVvD6PSpZrUDXqZRfN/ScBo1W/KlX2ZMOIo=",
+ "lastModified": 1744134195,
+ "narHash": "sha256-Y98IIVaoOuZy1T/+2l7ljp9vhNOkR99PZotVKu4QxA8=",
"ref": "refs/heads/main",
- "rev": "3fc3521a97eba0fa67da80f17ae7872b1073f08d",
- "revCount": 5932,
+ "rev": "ea852965ffd4bf2bd2a74c0e821ba6190021eb31",
+ "revCount": 5980,
"submodules": true,
"type": "git",
"url": "https://github.com/hyprwm/Hyprland"
@@ -1000,11 +1001,11 @@
]
},
"locked": {
- "lastModified": 1738422629,
- "narHash": "sha256-5v+bv75wJWvahyM2xcMTSNNxmV8a7hb01Eey5zYnBJw=",
+ "lastModified": 1743714874,
+ "narHash": "sha256-yt8F7NhMFCFHUHy/lNjH/pjZyIDFNk52Q4tivQ31WFo=",
"owner": "hyprwm",
"repo": "hyprland-protocols",
- "rev": "755aef8dab49d0fc4663c715fa4ad221b2aedaed",
+ "rev": "3a5c2bda1c1a4e55cc1330c782547695a93f05b2",
"type": "github"
},
"original": {
@@ -1336,11 +1337,11 @@
"nixpkgs": "nixpkgs_6"
},
"locked": {
- "lastModified": 1742881618,
- "narHash": "sha256-4C5Zzo4S9zD+4ZL7MKLE7FqJEMVkOTvfIV9uEBQ8fDY=",
+ "lastModified": 1744085671,
+ "narHash": "sha256-u2y/IRs0zfIsiCyKsdpDjQMtmMEgjxSJ00MeHtgqsrY=",
"owner": "Jas-SinghFSU",
"repo": "HyprPanel",
- "rev": "7b5c339e9363187e249fa2f6eadbb295b0e8c6ff",
+ "rev": "a48b072b53a9ed2490867e366ea31c019a117fd1",
"type": "github"
},
"original": {
@@ -1357,11 +1358,11 @@
"systems": "systems_2"
},
"locked": {
- "lastModified": 1739049006,
- "narHash": "sha256-AlvqgzQTaSWepmfNHugQM+aSuhsNaLUU95y5VzdbuI8=",
+ "lastModified": 1743791843,
+ "narHash": "sha256-51ws0OsHlYUvn9sXOegd6JcPg3nnJRvpz8vaqg4kYo0=",
"owner": "hyprwm",
"repo": "hyprpolkitagent",
- "rev": "3bef8bf8fcac95339d1e8cab3addbe83a7f99d57",
+ "rev": "352638edcd400253dff375c36075ec9548ae1d32",
"type": "github"
},
"original": {
@@ -1401,11 +1402,11 @@
]
},
"locked": {
- "lastModified": 1741534688,
- "narHash": "sha256-EV3945SnjOCuRVbGRghsWx/9D89FyshnSO1Q6/TuQ14=",
+ "lastModified": 1743950287,
+ "narHash": "sha256-/6IAEWyb8gC/NKZElxiHChkouiUOrVYNq9YqG0Pzm4Y=",
"owner": "hyprwm",
"repo": "hyprutils",
- "rev": "dd1f720cbc2dbb3c71167c9598045dd3261d27b3",
+ "rev": "f2dc70e448b994cef627a157ee340135bd68fbc6",
"type": "github"
},
"original": {
@@ -1652,11 +1653,11 @@
]
},
"locked": {
- "lastModified": 1742701275,
- "narHash": "sha256-AulwPVrS9859t+eJ61v24wH/nfBEIDSXYxlRo3fL/SA=",
+ "lastModified": 1743911143,
+ "narHash": "sha256-4j4JPwr0TXHH4ZyorXN5yIcmqIQr0WYacsuPA4ktONo=",
"owner": "Mic92",
"repo": "nix-index-database",
- "rev": "36dc43cb50d5d20f90a28d53abb33a32b0a2aae6",
+ "rev": "a36f6a7148aec2c77d78e4466215cceb2f5f4bfb",
"type": "github"
},
"original": {
@@ -1670,14 +1671,14 @@
"flake-compat": "flake-compat_5",
"nixpkgs": "nixpkgs_9",
"systems": "systems_4",
- "treefmt-nix": "treefmt-nix"
+ "treefmt-nix": "treefmt-nix_2"
},
"locked": {
- "lastModified": 1742915532,
- "narHash": "sha256-LJ9rlcyOyL4RIG5FgOG8FhCnoJrh83Wqu5yOQkGe0Z0=",
+ "lastModified": 1743833482,
+ "narHash": "sha256-tUV7MhS/JFOEp3JQxiyvo8K3aS5zP5jcF/Buk57yWDo=",
"owner": "kaylorben",
"repo": "nixcord",
- "rev": "eb7f65e995720ccde1928fedad335fd468bc152a",
+ "rev": "2903d897d5939324a758bd3f2cee1fbcb118b5d1",
"type": "github"
},
"original": {
@@ -1720,11 +1721,11 @@
},
"nixpkgs-unstable": {
"locked": {
- "lastModified": 1742669843,
- "narHash": "sha256-G5n+FOXLXcRx+3hCJ6Rt6ZQyF1zqQ0DL0sWAMn2Nk0w=",
+ "lastModified": 1743964447,
+ "narHash": "sha256-nEo1t3Q0F+0jQ36HJfbJtiRU4OI+/0jX/iITURKe3EE=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "1e5b653dff12029333a6546c11e108ede13052eb",
+ "rev": "063dece00c5a77e4a0ea24e5e5a5bd75232806f8",
"type": "github"
},
"original": {
@@ -1736,11 +1737,11 @@
},
"nixpkgs_10": {
"locked": {
- "lastModified": 1742669843,
- "narHash": "sha256-G5n+FOXLXcRx+3hCJ6Rt6ZQyF1zqQ0DL0sWAMn2Nk0w=",
+ "lastModified": 1743964447,
+ "narHash": "sha256-nEo1t3Q0F+0jQ36HJfbJtiRU4OI+/0jX/iITURKe3EE=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "1e5b653dff12029333a6546c11e108ede13052eb",
+ "rev": "063dece00c5a77e4a0ea24e5e5a5bd75232806f8",
"type": "github"
},
"original": {
@@ -1752,11 +1753,11 @@
},
"nixpkgs_11": {
"locked": {
- "lastModified": 1742800061,
- "narHash": "sha256-oDJGK1UMArK52vcW9S5S2apeec4rbfNELgc50LqiPNs=",
+ "lastModified": 1744032190,
+ "narHash": "sha256-KSlfrncSkcu1YE+uuJ/PTURsSlThoGkRqiGDVdbiE/k=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "1750f3c1c89488e2ffdd47cab9d05454dddfb734",
+ "rev": "b0b4b5f8f621bfe213b8b21694bab52ecfcbf30b",
"type": "github"
},
"original": {
@@ -1768,11 +1769,11 @@
},
"nixpkgs_12": {
"locked": {
- "lastModified": 1742578646,
- "narHash": "sha256-GiQ40ndXRnmmbDZvuv762vS+gew1uDpFwOfgJ8tLiEs=",
+ "lastModified": 1743689281,
+ "narHash": "sha256-y7Hg5lwWhEOgflEHRfzSH96BOt26LaYfrYWzZ+VoVdg=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "94c4dbe77c0740ebba36c173672ca15a7926c993",
+ "rev": "2bfc080955153be0be56724be6fa5477b4eefabb",
"type": "github"
},
"original": {
@@ -1800,11 +1801,11 @@
},
"nixpkgs_14": {
"locked": {
- "lastModified": 1742422364,
- "narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
+ "lastModified": 1743583204,
+ "narHash": "sha256-F7n4+KOIfWrwoQjXrL2wD9RhFYLs2/GGe/MQY1sSdlE=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
+ "rev": "2c8d3f48d33929642c1c12cd243df4cc7d2ce434",
"type": "github"
},
"original": {
@@ -1864,11 +1865,11 @@
},
"nixpkgs_5": {
"locked": {
- "lastModified": 1742669843,
- "narHash": "sha256-G5n+FOXLXcRx+3hCJ6Rt6ZQyF1zqQ0DL0sWAMn2Nk0w=",
+ "lastModified": 1743827369,
+ "narHash": "sha256-rpqepOZ8Eo1zg+KJeWoq1HAOgoMCDloqv5r2EAa9TSA=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "1e5b653dff12029333a6546c11e108ede13052eb",
+ "rev": "42a1c966be226125b48c384171c44c651c236c22",
"type": "github"
},
"original": {
@@ -1949,11 +1950,11 @@
"nuschtosSearch": "nuschtosSearch"
},
"locked": {
- "lastModified": 1742916868,
- "narHash": "sha256-2eN75OsaNpL3FzAs3hz9Xm3+htIP3iLdfRP6PGfOoS8=",
+ "lastModified": 1744119992,
+ "narHash": "sha256-XtwL/QfMjJtqO//mAjEfiC7noaAtH/gtQttcBE8dufs=",
"owner": "nix-community",
"repo": "nixvim",
- "rev": "6b95b825529aa2d8536f7684fe64382ef4d15d84",
+ "rev": "7114362f36123a8401f4905c2e833fd9a0c2ddd1",
"type": "github"
},
"original": {
@@ -1969,14 +1970,14 @@
"stylix",
"nixpkgs"
],
- "treefmt-nix": "treefmt-nix_2"
+ "treefmt-nix": "treefmt-nix_3"
},
"locked": {
- "lastModified": 1741693509,
- "narHash": "sha256-emkxnsZstiJWmGACimyAYqIKz2Qz5We5h1oBVDyQjLw=",
+ "lastModified": 1743884191,
+ "narHash": "sha256-foVcginhVvjg8ZnTzY5wwMeZ4wjJ8yX66PW5kgyivPE=",
"owner": "nix-community",
"repo": "NUR",
- "rev": "5479646b2574837f1899da78bdf9a48b75a9fb27",
+ "rev": "fde90f5f52e13eed110a0e53a2818a2b09e4d37c",
"type": "github"
},
"original": {
@@ -1995,11 +1996,11 @@
]
},
"locked": {
- "lastModified": 1742659553,
- "narHash": "sha256-i/JCrr/jApVorI9GkSV5to+USrRCa0rWuQDH8JSlK2A=",
+ "lastModified": 1743683223,
+ "narHash": "sha256-LdXtHFvhEC3S64dphap1pkkzwjErbW65eH1VRerCUT0=",
"owner": "NuschtOS",
"repo": "search",
- "rev": "508752835128a3977985a4d5225ff241f7756181",
+ "rev": "56a49ffef2908dad1e9a8adef1f18802bc760962",
"type": "github"
},
"original": {
@@ -2121,11 +2122,11 @@
"nixpkgs": "nixpkgs_12"
},
"locked": {
- "lastModified": 1742700801,
- "narHash": "sha256-ZGlpUDsuBdeZeTNgoMv+aw0ByXT2J3wkYw9kJwkAS4M=",
+ "lastModified": 1744103455,
+ "narHash": "sha256-SR6+qjkPjGQG+8eM4dCcVtss8r9bre/LAxFMPJpaZeU=",
"owner": "Mic92",
"repo": "sops-nix",
- "rev": "67566fe68a8bed2a7b1175fdfb0697ed22ae8852",
+ "rev": "69d5a5a4635c27dae5a742f36108beccc506c1ba",
"type": "github"
},
"original": {
@@ -2174,11 +2175,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
- "lastModified": 1742926290,
- "narHash": "sha256-63joFDrDekkI8papsDPwObKCCYSZ7t/1t94M398BxLY=",
+ "lastModified": 1744127443,
+ "narHash": "sha256-8E4hqLYI4zJbEVPQBq5zzJDsiHGOU4+0htGKexwXRPw=",
"owner": "danth",
"repo": "stylix",
- "rev": "61a5f77f2202f3a79797089752713e16b1ab5b10",
+ "rev": "a2f8840bed6daade6b980426c9f72dd672e92329",
"type": "github"
},
"original": {
@@ -2195,11 +2196,11 @@
"nixpkgs": "nixpkgs_13"
},
"locked": {
- "lastModified": 1742951573,
- "narHash": "sha256-Sbe2mWbThDwFk6qIq3TiXZZj8GpQCHxPD1UL+Kkj70o=",
+ "lastModified": 1744116296,
+ "narHash": "sha256-MBUeztCsuziIE0vmVi19Eg1UQ+HHDATb+gK6SoU6v4M=",
"owner": "MHNightCat",
"repo": "superfile",
- "rev": "74c1cc6129e78440b9c9a7ea7d40d03bc28e0533",
+ "rev": "2854a6bfa77384f2453a6e469d73cf7cba9a89da",
"type": "github"
},
"original": {
@@ -2349,11 +2350,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
- "lastModified": 1741468895,
- "narHash": "sha256-YKM1RJbL68Yp2vESBqeZQBjTETXo8mCTTzLZyckCfZk=",
+ "lastModified": 1742851696,
+ "narHash": "sha256-sR4K+OVFKeUOvNIqcCr5Br7NLxOBEwoAgsIyjsZmb8s=",
"owner": "tinted-theming",
"repo": "schemes",
- "rev": "47c8c7726e98069cade5827e5fb2bfee02ce6991",
+ "rev": "c37771c4ae8ff1667e27ddcf24991ebeb94a4e77",
"type": "github"
},
"original": {
@@ -2365,11 +2366,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
- "lastModified": 1740877430,
- "narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
+ "lastModified": 1743296873,
+ "narHash": "sha256-8IQulrb1OBSxMwdKijO9fB70ON//V32dpK9Uioy7FzY=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
- "rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
+ "rev": "af5152c8d7546dfb4ff6df94080bf5ff54f64e3a",
"type": "github"
},
"original": {
@@ -2395,6 +2396,27 @@
}
},
"treefmt-nix": {
+ "inputs": {
+ "nixpkgs": [
+ "home-manager",
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1743748085,
+ "narHash": "sha256-uhjnlaVTWo5iD3LXics1rp9gaKgDRQj6660+gbUU3cE=",
+ "owner": "numtide",
+ "repo": "treefmt-nix",
+ "rev": "815e4121d6a5d504c0f96e5be2dd7f871e4fd99d",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "treefmt-nix",
+ "type": "github"
+ }
+ },
+ "treefmt-nix_2": {
"inputs": {
"nixpkgs": [
"nixcord",
@@ -2415,7 +2437,7 @@
"type": "github"
}
},
- "treefmt-nix_2": {
+ "treefmt-nix_3": {
"inputs": {
"nixpkgs": [
"stylix",
@@ -2530,11 +2552,11 @@
"nixpkgs": "nixpkgs_14"
},
"locked": {
- "lastModified": 1742602442,
- "narHash": "sha256-jwOKx/hQZONnlRvCRmV0KUj/98S8okScWRgWNGsV3yQ=",
+ "lastModified": 1743854785,
+ "narHash": "sha256-Dfirlfzi40NZVBZuO3JVBoWrS0mZSWi6r4us2M+2YX8=",
"ref": "refs/heads/main",
- "rev": "1d0b9424a10f78d2bcf056f36ad21cd11a01ed3e",
- "revCount": 81,
+ "rev": "be66251224e6fc81cb5f2274aecd0bb91ae9aa16",
+ "revCount": 85,
"type": "git",
"url": "https://git.sr.ht/~canasta/zen-browser-flake/"
},
diff --git a/home-manager/machines/candlekeep.nix b/home-manager/machines/candlekeep.nix
index 563fd1b..b92539b 100644
--- a/home-manager/machines/candlekeep.nix
+++ b/home-manager/machines/candlekeep.nix
@@ -32,9 +32,9 @@
../modules/ags.nix
../modules/neovim
../modules/yazi.nix
- ../modules/hyprpanel.nix
- ../modules/hyprlock.nix
- ../modules/hypridle.nix
+ # ../modules/hyprpanel.nix
+ # ../modules/hyprlock.nix
+ # ../modules/hypridle.nix
# ../modules/hyprspace.nix
../modules/qutebrowser.nix
../scripts/default.nix
diff --git a/home-manager/modules/fzf.nix b/home-manager/modules/fzf.nix
index 9e35d00..dea844c 100644
--- a/home-manager/modules/fzf.nix
+++ b/home-manager/modules/fzf.nix
@@ -20,7 +20,7 @@ in
defaultOptions = [
"--margin=1"
"--layout=reverse"
- "--border=rounded"
+ "--border=none"
"--info='hidden'"
"--header=''"
"--prompt='/ '"
diff --git a/home-manager/modules/git.nix b/home-manager/modules/git.nix
index b1e2b82..fce6e22 100644
--- a/home-manager/modules/git.nix
+++ b/home-manager/modules/git.nix
@@ -115,6 +115,22 @@
rebasemain = "git pull origin main --rebase";
hist = ''log --pretty=format:"%Cgreen%h %Creset%cd %Cblue[%cn] %Creset%s%C(yellow)%d%C(reset)" --graph --date=relative --decorate --all'';
llog = ''log --graph --name-status --pretty=format:"%C(red)%h %C(reset)(%cd) %C(green)%an %Creset%s %C(yellow)%d%Creset" --date=relative'';
+ g = "lazygit";
+ ga = "git add";
+ gc = "git commit";
+ gcu = "git add . && git commit -m 'Update'";
+ gp = "git push";
+ gpl = "git pull";
+ gs = "git status";
+ gd = "git diff";
+ gco = "git checkout";
+ gcb = "git checkout -b";
+ gbr = "git branch";
+ grs = "git reset HEAD~1";
+ grh = "git reset --hard HEAD~1";
+
+ gaa = "git add .";
+ gcm = "git commit -m";
};
};
diff --git a/home-manager/modules/hyprland.nix b/home-manager/modules/hyprland.nix
index 7c1a7da..afc4eb3 100644
--- a/home-manager/modules/hyprland.nix
+++ b/home-manager/modules/hyprland.nix
@@ -27,9 +27,7 @@
touchpad = {
natural_scroll = true;
scroll_factor = 0.38;
- tap-and-drag = true;
- middle_button_emulation = true;
- tap-to-click = true;
+ clickfinger_behavior = true;
};
};
diff --git a/home-manager/modules/hyprland/default.nix b/home-manager/modules/hyprland/default.nix
index bf895a9..baf4ba5 100644
--- a/home-manager/modules/hyprland/default.nix
+++ b/home-manager/modules/hyprland/default.nix
@@ -20,6 +20,9 @@ in
./animations.nix
./bindings.nix
./polkitagent.nix
+ ./hyprlock.nix
+ ./hypridle.nix
+ ./hyprpanel.nix
# ./hyprspace.nix
];
diff --git a/home-manager/modules/hyprland/hypridle.nix b/home-manager/modules/hyprland/hypridle.nix
new file mode 100644
index 0000000..f7e4bf6
--- /dev/null
+++ b/home-manager/modules/hyprland/hypridle.nix
@@ -0,0 +1,28 @@
+# Hypridle is a daemon that listens for user activity and runs commands when the user is idle.
+{ pkgs, ... }:
+{
+ services.hypridle = {
+ enable = true;
+ settings = {
+
+ general = {
+ ignore_dbus_inhibit = false;
+ lock_cmd = "pidof hyprlock || ${pkgs.hyprlock}/bin/hyprlock";
+ before_sleep_cmd = "loginctl lock-session";
+ after_sleep_cmd = "hyprctl dispatch dpms on";
+ };
+
+ listener = [
+ {
+ timeout = 600;
+ on-timeout = "pidof hyprlock || ${pkgs.hyprlock}/bin/hyprlock";
+ }
+
+ {
+ timeout = 660;
+ on-timeout = "systemctl suspend";
+ }
+ ];
+ };
+ };
+}
diff --git a/home-manager/modules/hyprland/hyprlock.nix b/home-manager/modules/hyprland/hyprlock.nix
new file mode 100644
index 0000000..26d4117
--- /dev/null
+++ b/home-manager/modules/hyprland/hyprlock.nix
@@ -0,0 +1,89 @@
+{ config, lib, ... }:
+let
+ foreground = "rgba(216, 222, 233, 0.70)";
+ imageStr = toString config.stylix.image;
+ font = config.stylix.fonts.serif.name;
+in
+{
+ programs.hyprlock = {
+ enable = true;
+ settings = {
+ general = {
+ grace = 5;
+ no_fade_in = false;
+ disable_loading_bar = false;
+ };
+
+ # BACKGROUND
+ background = {
+ monitor = "";
+ # path = imageStr;
+ blur_passes = 0;
+ contrast = 0.8916;
+ brightness = 0.7172;
+ vibrancy = 0.1696;
+ vibrancy_darkness = 0.0;
+ };
+
+ label = [
+ {
+ # Day-Month-Date
+ monitor = "";
+ text = ''cmd[update:1000] echo -e "$(date +"%A, %B %d")"'';
+ color = foreground;
+ font_size = 28;
+ font_family = font + " Bold";
+ position = "0, 490";
+ halign = "center";
+ valign = "center";
+ }
+ # Time
+ {
+ monitor = "";
+ text = ''cmd[update:1000] echo "$(date +"%I:%M")"'';
+ color = foreground;
+ font_size = 160;
+ font_family = "steelfish outline regular";
+ position = "0, 370";
+ halign = "center";
+ valign = "center";
+ }
+ # USER
+ {
+ monitor = "";
+ text = "ïŸ $USER";
+ color = foreground;
+ outline_thickness = 2;
+ dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
+ dots_spacing = 0.2; # Scale of dots' absolute size, 0.0 - 1.0
+ dots_center = true;
+ font_size = 18;
+ font_family = font + " Bold";
+ position = "0, -180";
+ halign = "center";
+ valign = "center";
+ }
+ ];
+
+ # INPUT FIELD
+ input-field = lib.mkForce {
+ monitor = "";
+ size = "300, 60";
+ outline_thickness = 2;
+ dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
+ dots_spacing = 0.2; # Scale of dots' absolute size, 0.0 - 1.0
+ dots_center = true;
+ outer_color = "rgba(255, 255, 255, 0)";
+ inner_color = "rgba(255, 255, 255, 0.1)";
+ font_color = foreground;
+ fade_on_empty = false;
+ font_family = font + " Bold";
+ placeholder_text = "đ Enter Password";
+ hide_input = false;
+ position = "0, -250";
+ halign = "center";
+ valign = "center";
+ };
+ };
+ };
+}
diff --git a/home-manager/modules/hyprland/hyprpanel.nix b/home-manager/modules/hyprland/hyprpanel.nix
new file mode 100644
index 0000000..f5a8996
--- /dev/null
+++ b/home-manager/modules/hyprland/hyprpanel.nix
@@ -0,0 +1,186 @@
+# Hyprpanel is the bar on top of the screen
+# Display informations like workspaces, battery, wifi, ...
+{ inputs, config, ... }:
+let
+ transparentButtons = config.var.theme.bar.transparentButtons;
+
+ accent = "#${config.lib.stylix.colors.base0D}";
+ accent-alt = "#${config.lib.stylix.colors.base03}";
+ background = "#${config.lib.stylix.colors.base00}";
+ background-alt = "#${config.lib.stylix.colors.base01}";
+ foreground = "#${config.lib.stylix.colors.base05}";
+ font = "${config.stylix.fonts.serif.name}";
+ fontSize = "${toString config.stylix.fonts.sizes.desktop}";
+
+ rounding = config.var.theme.rounding;
+ border-size = config.var.theme.border-size;
+
+ gaps-out = config.var.theme.gaps-out;
+ gaps-in = config.var.theme.gaps-in;
+
+ floating = config.var.theme.bar.floating;
+ transparent = config.var.theme.bar.transparent;
+ position = config.var.theme.bar.position;
+
+ location = config.var.location;
+in
+{
+
+ imports = [ inputs.hyprpanel.homeManagerModules.hyprpanel ];
+
+ programs.hyprpanel = {
+ enable = true;
+ systemd.enable = true;
+ hyprland.enable = true;
+ overwrite.enable = true;
+ overlay.enable = true;
+ settings = {
+ layout = {
+ "bar.layouts" = {
+ "0" = {
+ "left" = [
+ "dashboard"
+ "workspaces"
+ "windowtitle"
+ ];
+ "middle" = [ "media" ];
+ "right" = [
+ "systray"
+ "volume"
+ "bluetooth"
+ "battery"
+ "network"
+ "clock"
+ "notifications"
+ ];
+ };
+ };
+ };
+ };
+ override = {
+ "theme.font.name" = "${font}";
+ "theme.font.size" = "${fontSize}px";
+ "theme.bar.outer_spacing" = "${if floating && transparent then "0" else "8"}px";
+ "theme.bar.buttons.y_margins" = "${if floating && transparent then "0" else "8"}px";
+ "theme.bar.buttons.spacing" = "0.3em";
+ "theme.bar.buttons.radius" = "${
+ if transparent then toString rounding else toString (rounding - 8)
+ }px";
+ "theme.bar.floating" = "${if floating then "true" else "false"}";
+ "theme.bar.buttons.padding_x" = "0.8rem";
+ "theme.bar.buttons.padding_y" = "0.4rem";
+ "theme.bar.buttons.workspaces.hover" = "${accent-alt}";
+ "theme.bar.buttons.workspaces.active" = "${accent}";
+ "theme.bar.buttons.workspaces.available" = "${accent-alt}";
+ "theme.bar.buttons.workspaces.occupied" = "${accent-alt}";
+ "theme.bar.margin_top" = "${if position == "top" then toString (gaps-in * 2) else "0"}px";
+ "theme.bar.margin_bottom" = "${if position == "top" then "0" else toString (gaps-in * 2)}px";
+ "theme.bar.margin_sides" = "${toString gaps-out}px";
+ "theme.bar.border_radius" = "${toString rounding}px";
+ "bar.launcher.icon" = "ï";
+ "theme.bar.transparent" = "${if transparent then "true" else "false"}";
+ "bar.workspaces.show_numbered" = false;
+ "bar.workspaces.workspaces" = 5;
+ "bar.workspaces.hideUnoccupied" = false;
+ "bar.windowtitle.label" = true;
+ "bar.volume.label" = false;
+ "bar.network.truncation_size" = 12;
+ "bar.bluetooth.label" = false;
+ "bar.clock.format" = "%a %b %d %I:%M %p";
+ "bar.notifications.show_total" = true;
+ "theme.notification.border_radius" = "${toString rounding}px";
+ "theme.osd.enable" = true;
+ "theme.osd.orientation" = "vertical";
+ "theme.osd.location" = "left";
+ "theme.osd.radius" = "${toString rounding}px";
+ "theme.osd.margins" = "0px 0px 0px 10px";
+ "theme.osd.muted_zero" = true;
+ "menus.clock.weather.location" = "${location}";
+ "menus.clock.weather.unit" = "metric";
+ "menus.dashboard.powermenu.confirmation" = false;
+
+ "menus.dashboard.shortcuts.left.shortcut1.icon" = "îȘź";
+ "menus.dashboard.shortcuts.left.shortcut1.command" = "zen";
+ "menus.dashboard.shortcuts.left.shortcut1.tooltip" = "Zen";
+ "menus.dashboard.shortcuts.left.shortcut2.icon" = "ó°
¶";
+ "menus.dashboard.shortcuts.left.shortcut2.command" = "caffeine";
+ "menus.dashboard.shortcuts.left.shortcut2.tooltip" = "Caffeine";
+ "menus.dashboard.shortcuts.left.shortcut3.icon" = "ó°";
+ "menus.dashboard.shortcuts.left.shortcut3.command" = "night-shift";
+ "menus.dashboard.shortcuts.left.shortcut3.tooltip" = "Night-shift";
+ "menus.dashboard.shortcuts.left.shortcut4.icon" = "î";
+ "menus.dashboard.shortcuts.left.shortcut4.command" = "menu";
+ "menus.dashboard.shortcuts.left.shortcut4.tooltip" = "Search Apps";
+ "menus.dashboard.shortcuts.right.shortcut1.icon" = "ï»";
+ "menus.dashboard.shortcuts.right.shortcut1.command" = "hyprpicker -a";
+ "menus.dashboard.shortcuts.right.shortcut1.tooltip" = "Color Picker";
+ "menus.dashboard.shortcuts.right.shortcut3.icon" = "ó°";
+ "menus.dashboard.shortcuts.right.shortcut3.command" = "screenshot region swappy";
+ "menus.dashboard.shortcuts.right.shortcut3.tooltip" = "Screenshot";
+
+ "theme.bar.menus.monochrome" = true;
+ "wallpaper.enable" = false;
+ "theme.bar.menus.background" = "${background}";
+ "theme.bar.menus.cards" = "${background-alt}";
+ "theme.bar.menus.card_radius" = "${toString rounding}px";
+ "theme.bar.menus.label" = "${foreground}";
+ "theme.bar.menus.text" = "${foreground}";
+ "theme.bar.menus.border.size" = "${toString border-size}px";
+ "theme.bar.menus.border.color" = "${accent}";
+ "theme.bar.menus.border.radius" = "${toString rounding}px";
+ "theme.bar.menus.popover.text" = "${foreground}";
+ "theme.bar.menus.popover.background" = "${background-alt}";
+ "theme.bar.menus.listitems.active" = "${accent}";
+ "theme.bar.menus.icons.active" = "${accent}";
+ "theme.bar.menus.switch.enabled" = "${accent}";
+ "theme.bar.menus.check_radio_button.active" = "${accent}";
+ "theme.bar.menus.buttons.default" = "${accent}";
+ "theme.bar.menus.buttons.active" = "${accent}";
+ "theme.bar.menus.iconbuttons.active" = "${accent}";
+ "theme.bar.menus.progressbar.foreground" = "${accent}";
+ "theme.bar.menus.slider.primary" = "${accent}";
+ "theme.bar.menus.tooltip.background" = "${background-alt}";
+ "theme.bar.menus.tooltip.text" = "${foreground}";
+ "theme.bar.menus.dropdownmenu.background" = "${background-alt}";
+ "theme.bar.menus.dropdownmenu.text" = "${foreground}";
+ "theme.bar.background" = "${background + (if transparentButtons && transparent then "00" else "")}";
+ "theme.bar.buttons.style" = "default";
+ "theme.bar.buttons.monochrome" = true;
+ "theme.bar.buttons.text" = "${foreground}";
+ "theme.bar.buttons.background" = "${
+ (if transparent then background else background-alt) + (if transparentButtons then "00" else "")
+ }";
+ "theme.bar.buttons.icon" = "${accent}";
+ "theme.bar.buttons.notifications.background" = "${background-alt}";
+ "theme.bar.buttons.hover" = "${background}";
+ "theme.bar.buttons.notifications.hover" = "${background}";
+ "theme.bar.buttons.notifications.total" = "${accent}";
+ "theme.bar.buttons.notifications.icon" = "${accent}";
+ "theme.notification.background" = "${background-alt}";
+ "theme.notification.actions.background" = "${accent}";
+ "theme.notification.actions.text" = "${foreground}";
+ "theme.notification.label" = "${accent}";
+ "theme.notification.border" = "${background-alt}";
+ "theme.notification.text" = "${foreground}";
+ "theme.notification.labelicon" = "${accent}";
+ "theme.osd.bar_color" = "${accent}";
+ "theme.osd.bar_overflow_color" = "${accent-alt}";
+ "theme.osd.icon" = "${background}";
+ "theme.osd.icon_container" = "${accent}";
+ "theme.osd.label" = "${accent}";
+ "theme.osd.bar_container" = "${background-alt}";
+ "theme.bar.menus.menu.media.background.color" = "${background-alt}";
+ "theme.bar.menus.menu.media.card.color" = "${background-alt}";
+ "theme.bar.menus.menu.media.card.tint" = 90;
+ "bar.customModules.updates.pollingInterval" = 1440000;
+ "bar.media.show_active_only" = true;
+ "theme.bar.location" = "${position}";
+ "bar.workspaces.numbered_active_indicator" = "color";
+ "bar.workspaces.monitorSpecific" = false;
+ "bar.workspaces.applicationIconEmptyWorkspace" = "ï";
+ "bar.workspaces.showApplicationIcons" = true;
+ "bar.workspaces.showWsIcons" = true;
+ "theme.bar.dropdownGap" = "4.5em";
+ };
+ };
+}
diff --git a/home-manager/modules/hyprland/hyprspace.nix b/home-manager/modules/hyprland/hyprspace.nix
index a39ecc5..2e0f98a 100644
--- a/home-manager/modules/hyprland/hyprspace.nix
+++ b/home-manager/modules/hyprland/hyprspace.nix
@@ -1,19 +1,20 @@
{ inputs, pkgs, ... }:
{
-
wayland.windowManager.hyprland = {
plugins = [ inputs.hyprspace.packages.${pkgs.system}.Hyprspace ];
settings = {
plugin = {
overview = {
+ centerAligned = true;
+ hideTopLayers = true;
+ hideOverlayLayers = true;
+ showNewWorkspace = true;
+ exitOnClick = true;
+ exitOnSwitch = true;
+ drawActiveWorkspace = true;
autoDrag = false;
};
};
-
- bind = [
- "$mod,TAB, overview:toggle"
-
- ];
};
};
}
diff --git a/home-manager/modules/hyprpanel.nix b/home-manager/modules/hyprpanel.nix
index 9ca3db9..f5a8996 100644
--- a/home-manager/modules/hyprpanel.nix
+++ b/home-manager/modules/hyprpanel.nix
@@ -34,28 +34,29 @@ in
hyprland.enable = true;
overwrite.enable = true;
overlay.enable = true;
- layout = {
- "bar.layouts" = {
- "0" = {
- "left" = [
- "dashboard"
- "workspaces"
- "windowtitle"
- ];
- "middle" = [ "media" ];
- "right" = [
- "systray"
- "volume"
- "bluetooth"
- "battery"
- "network"
- "clock"
- "notifications"
- ];
+ settings = {
+ layout = {
+ "bar.layouts" = {
+ "0" = {
+ "left" = [
+ "dashboard"
+ "workspaces"
+ "windowtitle"
+ ];
+ "middle" = [ "media" ];
+ "right" = [
+ "systray"
+ "volume"
+ "bluetooth"
+ "battery"
+ "network"
+ "clock"
+ "notifications"
+ ];
+ };
};
};
};
-
override = {
"theme.font.name" = "${font}";
"theme.font.size" = "${fontSize}px";
diff --git a/home-manager/modules/hyprspace.nix b/home-manager/modules/hyprspace.nix
index 7ea8bfb..2e0f98a 100644
--- a/home-manager/modules/hyprspace.nix
+++ b/home-manager/modules/hyprspace.nix
@@ -5,6 +5,13 @@
settings = {
plugin = {
overview = {
+ centerAligned = true;
+ hideTopLayers = true;
+ hideOverlayLayers = true;
+ showNewWorkspace = true;
+ exitOnClick = true;
+ exitOnSwitch = true;
+ drawActiveWorkspace = true;
autoDrag = false;
};
};
diff --git a/home-manager/modules/kitty.nix b/home-manager/modules/kitty.nix
index ef85e02..b88e3e6 100644
--- a/home-manager/modules/kitty.nix
+++ b/home-manager/modules/kitty.nix
@@ -17,11 +17,13 @@
remember_window_size = "no";
disable_ligatures = "never";
url_style = "curly";
+ copy_on_select = "clipboard";
cursor_shape = "Underline";
cursor_underline_thickness = 3;
cursor_trail = 3;
cursor_trail_decay = "0.1 0.4";
window_padding_width = 10;
+ open_url_with = "default";
};
font = {
# name = lib.mkForce "Comic Code";
diff --git a/home-manager/modules/thunar.nix b/home-manager/modules/thunar.nix
index c1a415f..3a8cfed 100644
--- a/home-manager/modules/thunar.nix
+++ b/home-manager/modules/thunar.nix
@@ -1,5 +1,5 @@
# Thunar is a file explorer
-{ pkgs, ... }:
+{ pkgs, user, ... }:
{
# ctrl + m to toggle the menubar
home.packages = with pkgs.xfce; [
@@ -9,6 +9,26 @@
thunar-archive-plugin
thunar-volman
];
+ gtk = {
+ iconTheme = {
+ name = "WhiteSur";
+ package = pkgs.whitesur-icon-theme.override {
+ boldPanelIcons = true;
+ alternativeIcons = true;
+ };
+ };
+ };
+
+ home.sessionVariables = {
+ XDG_ICON_DIR = "${pkgs.whitesur-icon-theme}/share/icons/WhiteSur";
+ };
+
+ # bookmarks for the side pane
+ gtk.gtk3.bookmarks = [
+ "file:///home/gwg313/Documents Documents"
+ "file:///home/gwg313/Downloads Downloads"
+ "file:///home/gwg313/repos Repositories"
+ ];
home.file.".config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml".text = ''
diff --git a/home-manager/modules/zsh.nix b/home-manager/modules/zsh.nix
index 11331c6..9e6698d 100644
--- a/home-manager/modules/zsh.nix
+++ b/home-manager/modules/zsh.nix
@@ -11,6 +11,14 @@
enableCompletion = true;
autosuggestion.enable = true;
syntaxHighlighting.enable = true;
+ syntaxHighlighting.highlighters = [
+ "main"
+ "brackets"
+ "pattern"
+ "regexp"
+ "root"
+ "line"
+ ];
historySubstringSearch.enable = true;
shellAliases = {
update = "sudo nixos-rebuild switch";