Compare commits
10
Commits
7b0131f0c8
...
fe0d9e5198
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fe0d9e5198 | ||
|
|
b5920c6211 | ||
|
|
54e04477eb | ||
|
|
aa5da23957 | ||
|
|
7cefe60b84 | ||
|
|
76f6e74305 | ||
|
|
ad474292fd | ||
|
|
5b031f8a54 | ||
|
|
bbcf7c1f44 | ||
|
|
4e1aebf265 |
No files matched your search
Generated
+124
-144
@@ -40,11 +40,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772460678,
|
"lastModified": 1784368054,
|
||||||
"narHash": "sha256-NYaWs8fYJ38IgFld0hGSdT2LEVhrgO8SiRReBjIH7YY=",
|
"narHash": "sha256-zF1iJkBQSDWmRO4/LEeHR1SpKY0lqZaxkoQJpPS9K9U=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "5d2cb726b16ee349df443f84b64cff53221b6983",
|
"rev": "9b5f14d9483445e766294eb8fbe0b8f370269ed0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -80,11 +80,11 @@
|
|||||||
"tg_owt": "tg_owt"
|
"tg_owt": "tg_owt"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783221862,
|
"lastModified": 1786871475,
|
||||||
"narHash": "sha256-Qr/TMEYbTsrQMacKkOdUtyBy6MbY2o/ywt57s0eKIl8=",
|
"narHash": "sha256-3fe2SP2B+TpNokmOX29Leap5eMbZ/LqSJJVAdDJiAiY=",
|
||||||
"owner": "ayugram-port",
|
"owner": "ayugram-port",
|
||||||
"repo": "ayugram-desktop",
|
"repo": "ayugram-desktop",
|
||||||
"rev": "8f88025a43b140cdfacca55169f7429e2b30d643",
|
"rev": "e9827abe91fc6554740dee590dea03da57b5bb8c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -165,11 +165,11 @@
|
|||||||
"firefox-gnome-theme": {
|
"firefox-gnome-theme": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1779670703,
|
"lastModified": 1783570805,
|
||||||
"narHash": "sha256-UdfMivNMwCCqQsYDg5pSz8X2IOaOrIZLIIy+Bg3CO2o=",
|
"narHash": "sha256-ptl5aRlCv9/uRSv2u8Hq8UFVFeZ6Q/bT049bpqNgc3w=",
|
||||||
"owner": "rafaelmardojai",
|
"owner": "rafaelmardojai",
|
||||||
"repo": "firefox-gnome-theme",
|
"repo": "firefox-gnome-theme",
|
||||||
"rev": "942159e73e40bf785816f7f1f5feed9ef3d7c8f9",
|
"rev": "5602ed62d638142c1ab31dccd01dfbfb28841225",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -202,11 +202,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1778716662,
|
"lastModified": 1782949081,
|
||||||
"narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=",
|
"narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb",
|
"rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -249,43 +249,23 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"gitignore": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"hyprland",
|
|
||||||
"pre-commit-hooks",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1709087332,
|
|
||||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "gitignore.nix",
|
|
||||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "gitignore.nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"gnome-shell": {
|
"gnome-shell": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767737596,
|
"host": "gitlab.gnome.org",
|
||||||
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=",
|
"lastModified": 1776175984,
|
||||||
|
"narHash": "sha256-RJFlFW8GiMei6oqUGrMkGEvVqOH8U7Q8abc1yK4VKD8=",
|
||||||
"owner": "GNOME",
|
"owner": "GNOME",
|
||||||
"repo": "gnome-shell",
|
"repo": "gnome-shell",
|
||||||
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
"rev": "e0fdc4c13250e9a9b8ea9594c83925274f4a5dca",
|
||||||
"type": "github"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
"host": "gitlab.gnome.org",
|
||||||
"owner": "GNOME",
|
"owner": "GNOME",
|
||||||
|
"ref": "50.1",
|
||||||
"repo": "gnome-shell",
|
"repo": "gnome-shell",
|
||||||
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
"type": "gitlab"
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
@@ -295,11 +275,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783358420,
|
"lastModified": 1787379775,
|
||||||
"narHash": "sha256-UEyBpf+XmQe8laXfDzIlo11Er7E0rKrLS8jeMnMj0Ds=",
|
"narHash": "sha256-XL2qfqmocfsvuEGyomZg4nOZfkuSe8vZtrOX99I+b6I=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "0d33882bd46c1f9ef62276700f5e5f2bd6ff6604",
|
"rev": "ec1a8fdf74ed3f276148ee106299a2ba0e65d51f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -324,11 +304,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772461003,
|
"lastModified": 1776511930,
|
||||||
"narHash": "sha256-pVICsV7FtcEeVwg5y/LFh3XFUkVJninm/P1j/JHzEbM=",
|
"narHash": "sha256-fCpwFiTW0rT7oKJqr3cqHMnkwypSwQKpbtUEtxdkgrM=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprcursor",
|
"repo": "hyprcursor",
|
||||||
"rev": "b62396457b9cfe2ebf24fe05404b09d2a40f8ed7",
|
"rev": "39435900785d0c560c6ae8777d29f28617d031ef",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -353,11 +333,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772461523,
|
"lastModified": 1782566056,
|
||||||
"narHash": "sha256-mI6A51do+hEUzeJKk9YSWfVHdI/SEEIBi2tp5Whq5mI=",
|
"narHash": "sha256-haEZcHzYrePnjFOYSWTbxm/Nrla0aPslJfmvdCvqtVc=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprgraphics",
|
"repo": "hyprgraphics",
|
||||||
"rev": "7d63c04b4a2dd5e59ef943b4b143f46e713df804",
|
"rev": "c6e7b9f673f4360bc813d3dc75028f75ee88d3f8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -383,16 +363,16 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773149218,
|
"lastModified": 1785170029,
|
||||||
"narHash": "sha256-m5Ewi+rgn18qPP54Um4O2zwZ02oiomlZssHvXYEUv3U=",
|
"narHash": "sha256-8CKDx282HhxlD1pwXPnC4uK29Abn1Jsnh7LgPzeIXxI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "59f9f2688ac508a0584d1462151195a6c4992f99",
|
"rev": "5c9377c15f85c50648f35ca5a213754f95b93ca0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"ref": "v0.54.2-b",
|
"ref": "v0.56.1",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -430,11 +410,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772467975,
|
"lastModified": 1784196523,
|
||||||
"narHash": "sha256-kipyuDBxrZq+beYpZqWzGvFWm4QbayW9agAvi94vDXY=",
|
"narHash": "sha256-ahtKMGXFJdlQNhatQm1+BBU/pGfGYnAqQt3vWvq4p8s=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-guiutils",
|
"repo": "hyprland-guiutils",
|
||||||
"rev": "5e1c6b9025aaf4d578f3eff7c0eb1f0c197a9507",
|
"rev": "a6ccb6cb112ed5a244c0191fb972347ecfa893e0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -460,11 +440,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1782769258,
|
"lastModified": 1787071735,
|
||||||
"narHash": "sha256-HAhqQOoz4S0gzIOMnClL49B+rMT7zdp3UDWeqxtMs/k=",
|
"narHash": "sha256-1DDAvYcJ7q1x4JdhoXU+PTQWxAUcv53gSNmmi9pBVuU=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-plugins",
|
"repo": "hyprland-plugins",
|
||||||
"rev": "71b8953d7d92dbebe87a6ff9895bdd30e7495873",
|
"rev": "83ce4b2a70d3c1a6ed8dc6db7f1fac17db2215b1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -514,11 +494,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772459629,
|
"lastModified": 1777320127,
|
||||||
"narHash": "sha256-/iwvNUYShmmnwmz/czEUh6+0eF5vCMv0xtDW0STPIuM=",
|
"narHash": "sha256-Qu+Wf2Bp5qUjyn2YpZNq8a7JyzTGowhT1knrwE38a9U=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprlang",
|
"repo": "hyprlang",
|
||||||
"rev": "7615ee388de18239a4ab1400946f3d0e498a8186",
|
"rev": "090117506ddc3d7f26e650ff344d378c2ec329cc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -566,11 +546,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772462885,
|
"lastModified": 1782554491,
|
||||||
"narHash": "sha256-5pHXrQK9zasMnIo6yME6EOXmWGFMSnCITcfKshhKJ9I=",
|
"narHash": "sha256-+p3MlyN/nqRefcf2IckPlGRUn9+hielqpS9XClbLleM=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprtoolkit",
|
"repo": "hyprtoolkit",
|
||||||
"rev": "9af245a69fa6b286b88ddfc340afd288e00a6998",
|
"rev": "bdba25ced39ea39ab004a8f31593ba0b0ff1ca35",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -591,11 +571,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772459870,
|
"lastModified": 1784323413,
|
||||||
"narHash": "sha256-xxkK2Cvqxpf/4UGcJ/TyCwrvmiNWsKsJfFzHMp2bxis=",
|
"narHash": "sha256-XnAVV+H4f8Xdv0yZcSwJ5kCjLyE8fHxPeLX6a3HSrAU=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "e63f3a79334dec49f8eb1691f66f18115df04085",
|
"rev": "5f03477ab3a005ff27c527486f551883535aea2f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -616,11 +596,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772459835,
|
"lastModified": 1777159683,
|
||||||
"narHash": "sha256-978jRz/y/9TKmZb/qD4lEYHCQGHpEXGqy+8X2lFZsak=",
|
"narHash": "sha256-Jxixw6wZphUp+nHYxOKUYSckL17QMBx2d5Zp0rJHr1g=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwayland-scanner",
|
"repo": "hyprwayland-scanner",
|
||||||
"rev": "0a692d4a645165eebd65f109146b8861e3a925e7",
|
"rev": "b8632713a6beaf28b56f2a7b0ab2fb7088dbb404",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -645,11 +625,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772463520,
|
"lastModified": 1778410714,
|
||||||
"narHash": "sha256-GIjASzYnV4fK19HnyJKmHyqyxHxIpjusK9foEA4Yo+4=",
|
"narHash": "sha256-o6RzFj4nJXaPRY7EM01siuCQeT41RfwwmcmFQqwFJJg=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwire",
|
"repo": "hyprwire",
|
||||||
"rev": "4e1933ae5602b350c5b6633f5c932549c9b8aca2",
|
"rev": "85148a8e612808cf5ddb25d0b3c5840f3498a7dc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -692,11 +672,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783148766,
|
"lastModified": 1787204541,
|
||||||
"narHash": "sha256-uslt2pqShTIXDdAHRHv2QkYLsVdY8Oqwz0EA48/RSM8=",
|
"narHash": "sha256-OURZPknrTjQrlNyxPdqzyqmU/81Wes1CUP/Ft1Rv/YI=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a50de1b7d8a586adc18d2395c19de7d6058e6030",
|
"rev": "5880666fd9eb563038431edb35c2d0aa595884e6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -708,11 +688,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1782959384,
|
"lastModified": 1786599213,
|
||||||
"narHash": "sha256-xnJJk+ct+D2+wdRxj1wk36w5zV9RVESwRqcklPdt3fM=",
|
"narHash": "sha256-yNJd40f11EzXBjSByCB7IPpeFFAdeoSKKM67dGkfFoU=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "65179426c83bb3f6bc14898b42ea1c6f01d374b0",
|
"rev": "0e251e24a4f24e036a084b6b4b2d2491af4167f4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -724,11 +704,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772542754,
|
"lastModified": 1784356753,
|
||||||
"narHash": "sha256-WGV2hy+VIeQsYXpsLjdr4GvHv5eECMISX1zKLTedhdg=",
|
"narHash": "sha256-12KrbMiWLcf8m7pCvAtZh1ZrgF85ZXDXvfR/fWTKy84=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "8c809a146a140c5c8806f13399592dbcb1bb5dc4",
|
"rev": "61b7c44c4073f0b827768aff0049561b5110ea5a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -740,11 +720,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783224372,
|
"lastModified": 1787360063,
|
||||||
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=",
|
"narHash": "sha256-dt4WdcvsA8/RCe+VZZwqU0X+XMM3wBbGCWA0/sFWzGo=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d407951447dcd00442e97087bf374aad70c04cea",
|
"rev": "2c423e03bbafcff28bfadc6781a4a8257f205cb5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -772,11 +752,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_6": {
|
"nixpkgs_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1780243769,
|
"lastModified": 1785454630,
|
||||||
"narHash": "sha256-x5UQuRsH3MqI0U9afaXSNqzTPSeZlRLvFAav2Ux1pNw=",
|
"narHash": "sha256-LQy14TZp77TwbQf40gg1V3jo8FwJG0jGDkAH+zRHqg8=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "331800de5053fcebacf6813adb5db9c9dca22a0c",
|
"rev": "1559d3daa3ecc813a650b79375ea61b6741b8746",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -788,11 +768,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_7": {
|
"nixpkgs_7": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1779877693,
|
"lastModified": 1783279667,
|
||||||
"narHash": "sha256-NOF9NAREhxr50bbBfVcVOq+ArCMSoe8dP79Pk2uyARk=",
|
"narHash": "sha256-/NAkDSsve+GNM0Bt6tleJdCGfsTlK89nPjkVOzZMo0s=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4100e830e085863741bc69b156ec4ccd53ab5be0",
|
"rev": "f205b5574fd0cb7da5b702a2da51507b7f4fdd1b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -804,11 +784,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_8": {
|
"nixpkgs_8": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783224372,
|
"lastModified": 1787360063,
|
||||||
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=",
|
"narHash": "sha256-dt4WdcvsA8/RCe+VZZwqU0X+XMM3wBbGCWA0/sFWzGo=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d407951447dcd00442e97087bf374aad70c04cea",
|
"rev": "2c423e03bbafcff28bfadc6781a4a8257f205cb5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -830,11 +810,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1780281641,
|
"lastModified": 1785549842,
|
||||||
"narHash": "sha256-M/+hUKoKbHXpV0xGVfELbN1Ds1aoe3pL5p5/t46YhVo=",
|
"narHash": "sha256-DCwBZmGsySF7oKGTRgEv2HvpxVXkHT+38VhTM76k0B4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "30f9ae2f04174de63ba8bcf3580ca90843b28a01",
|
"rev": "a9f987b57594e845e3e5cdd423b9a70846d70308",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -846,18 +826,17 @@
|
|||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"gitignore": "gitignore",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"hyprland",
|
"hyprland",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772024342,
|
"lastModified": 1784288435,
|
||||||
"narHash": "sha256-+eXlIc4/7dE6EcPs9a2DaSY3fTA9AE526hGqkNID3Wg=",
|
"narHash": "sha256-ReRHaLgr/uVqdD8afFSn+myXIfpHeOhP0yYe0TJqAA8=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "6e34e97ed9788b17796ee43ccdbaf871a5c2b476",
|
"rev": "43b3c1ab9d40fb1dbb008f451988a91e375825e9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -887,11 +866,11 @@
|
|||||||
"russia-blocked-geoip": {
|
"russia-blocked-geoip": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783376348,
|
"lastModified": 1787412446,
|
||||||
"narHash": "sha256-iKqGDS4FNXiqU+savy3QfMhldYiIZKSuSu/ywrmOgUU=",
|
"narHash": "sha256-+/t4RRFjYuLAt8MHwO9NU9NP6qpCW9jNdN94MZB1vzI=",
|
||||||
"owner": "runetfreedom",
|
"owner": "runetfreedom",
|
||||||
"repo": "russia-blocked-geoip",
|
"repo": "russia-blocked-geoip",
|
||||||
"rev": "d0203cdf5f939e6ee936d3e0b521a63eb2514543",
|
"rev": "76eec907ede95b4d752359a76d44bec23362a73b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -909,11 +888,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1779851998,
|
"lastModified": 1783320166,
|
||||||
"narHash": "sha256-UkkMh3bX9QW4Luqkm98nUaOqKWrU6i65mUnph3WeSSw=",
|
"narHash": "sha256-l7C/OsjcnWDOk2K3ssj+SBduwL67LashjBqis9+t468=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "6cddd512fa2bf7231f098d3a2f92f6e4cff71e0a",
|
"rev": "20ee15370c9256669d66968b89ee20a4b0a4e673",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -927,11 +906,11 @@
|
|||||||
"nixpkgs": "nixpkgs_5"
|
"nixpkgs": "nixpkgs_5"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783174389,
|
"lastModified": 1786629091,
|
||||||
"narHash": "sha256-aCWC8ngycU7OdJrU2+Je3qf+1a2ykuBvpPhZT/9tXMc=",
|
"narHash": "sha256-gkig4nPi1CWc4Z50GBsjE4ygSE7hMpl/TwID2an2Cck=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "f1406619a3884cd5c47992a70b8b35c9c0fcb4c9",
|
"rev": "a8627b21b9107c5711c96b84f32a9a4b3d45295f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -958,11 +937,11 @@
|
|||||||
"tinted-zed": "tinted-zed"
|
"tinted-zed": "tinted-zed"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783358511,
|
"lastModified": 1787175104,
|
||||||
"narHash": "sha256-/F85cBWvU8b2hpawuCog464065ZTJtdMgVPWwJ9yHjE=",
|
"narHash": "sha256-tzNjlb0loxeWlipvxSNAUUihloeTZoyGFhEen87yM9k=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "14814ef555d8148ab82eba5054e654cd9eae3a1f",
|
"rev": "a9e5a76a1b75b137f266e4f445e1eaba82e9783e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -988,15 +967,16 @@
|
|||||||
},
|
},
|
||||||
"systems_2": {
|
"systems_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1774449309,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
|
||||||
"owner": "nix-systems",
|
"owner": "nix-systems",
|
||||||
"repo": "default",
|
"repo": "default",
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
"rev": "c29398b59d2048c4ab79345812849c9bd15e9150",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-systems",
|
"owner": "nix-systems",
|
||||||
|
"ref": "future-26.11",
|
||||||
"repo": "default",
|
"repo": "default",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -1024,11 +1004,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1778847431,
|
"lastModified": 1786240588,
|
||||||
"narHash": "sha256-D7N+DQLcUFYANMo+N/odsVEwc263fFMlnMek+LaLBdg=",
|
"narHash": "sha256-DWh/h7iwocR2ZTLT0RFpxZQYF98G+2fqhEpuK1/OAP8=",
|
||||||
"owner": "ndfined-crp",
|
"owner": "ndfined-crp",
|
||||||
"repo": "tg_owt",
|
"repo": "tg_owt",
|
||||||
"rev": "1cc099e066c910e9cb3180777ce03f3d72cbfa27",
|
"rev": "809e550ad27e704ff21a344e565c2909ae403499",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1056,11 +1036,11 @@
|
|||||||
"tinted-schemes": {
|
"tinted-schemes": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1777806186,
|
"lastModified": 1785153830,
|
||||||
"narHash": "sha256-PDF0/wObw4nIsSBeXVYLsloXOiphXCgIdsrNcVXguKs=",
|
"narHash": "sha256-fNdfCTeCXU3tZG3TMincd+u68qBHQgCr2Ljr/M1mWP0=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "schemes",
|
"repo": "schemes",
|
||||||
"rev": "0c94645546f4f3ddac77a1a5fce54eb95bf50795",
|
"rev": "9bd28ed313560db3c5b605c63bc4e309e78e3fc8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1072,11 +1052,11 @@
|
|||||||
"tinted-tmux": {
|
"tinted-tmux": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1778379944,
|
"lastModified": 1785031658,
|
||||||
"narHash": "sha256-wPDFzMGSlARlw0Sfsn48Q2+jPSfk6N0Ng6BC/d+7Q24=",
|
"narHash": "sha256-mZp9O2LjzdMzlqQF3l3fjqsuPBzXy+1qTfBEUGjTlpk=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "tinted-tmux",
|
"repo": "tinted-tmux",
|
||||||
"rev": "fe0203a198690e71a5ff11e08812a4673de3678d",
|
"rev": "5d2c67f61ea7af36f16865ab6d541cdba41dc257",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1088,11 +1068,11 @@
|
|||||||
"tinted-zed": {
|
"tinted-zed": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1778378178,
|
"lastModified": 1785030526,
|
||||||
"narHash": "sha256-OXPXRIQgGwV77HjYRryOHguh4ALX96jkg+tseLkGgHA=",
|
"narHash": "sha256-klZf8UviewRkxuu74Bhbq6tqy7oxebQC7UVRWbbtQxU=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-zed",
|
"repo": "base16-zed",
|
||||||
"rev": "9cd816033ff969415b190722cddf134e78a5665f",
|
"rev": "16f5a8adf4a6b1310d0a61ab172de963e8f76a02",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1129,11 +1109,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772476586,
|
"lastModified": 1784371182,
|
||||||
"narHash": "sha256-N/ZwsRLULLpBP5ecvAUzNq8E/CgLRwPwSrHyY3xB5KM=",
|
"narHash": "sha256-S8A1lezEalltWcCp3gAic5lssS0xTSISK6fKODefhOk=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "eb6c02a2ead882f3474f3d7f2fbe966b64ed5110",
|
"rev": "08d99f727944dd15e4740090305e31c5fb92a50a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1149,11 +1129,11 @@
|
|||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783334588,
|
"lastModified": 1787425172,
|
||||||
"narHash": "sha256-8EZMWD8i8zji2uSHBjUBCUlLpXkt2rC+dSxaqvZi4SI=",
|
"narHash": "sha256-k/2m35w4RV/dvBvjxMGa6O6ARlLZaJYLL1usO0UDM4M=",
|
||||||
"owner": "sxyazi",
|
"owner": "sxyazi",
|
||||||
"repo": "yazi",
|
"repo": "yazi",
|
||||||
"rev": "aa850f9a3bece5fa353b45adea9eee59fc7e6996",
|
"rev": "e8b53ece2700ae1600164b6dab71cbf8020205b2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1165,11 +1145,11 @@
|
|||||||
"yazi-plugins": {
|
"yazi-plugins": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783246245,
|
"lastModified": 1787402219,
|
||||||
"narHash": "sha256-f4y952sUF/lrHMX6enQts/obk2DeatqAcaVHfjTD65k=",
|
"narHash": "sha256-16QrkNkTMVfmjVqnIYsCGlw6jBDstPhOTnuWgyL+i9s=",
|
||||||
"owner": "yazi-rs",
|
"owner": "yazi-rs",
|
||||||
"repo": "plugins",
|
"repo": "plugins",
|
||||||
"rev": "8cd50c622898d3ace3ca821f540241965308289a",
|
"rev": "72f9e3c007956c122d8657f6d39c78e7585a4718",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1184,11 +1164,11 @@
|
|||||||
"zapret-flowseal": "zapret-flowseal"
|
"zapret-flowseal": "zapret-flowseal"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783019330,
|
"lastModified": 1786907827,
|
||||||
"narHash": "sha256-iHxRHymhZD62FueROpiFjG6zmX7epR7rUNUDh/JW7sE=",
|
"narHash": "sha256-FFWwH9QxoPGyMNJvjqPoFlB10pUtQhKkWxNiJWb+gt4=",
|
||||||
"owner": "kartavkun",
|
"owner": "kartavkun",
|
||||||
"repo": "zapret-discord-youtube",
|
"repo": "zapret-discord-youtube",
|
||||||
"rev": "c2786375ddc3e87e72ee297095b3d312cd846fda",
|
"rev": "3b99a88a3a199a118558f6063288a01693e48ee7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1200,11 +1180,11 @@
|
|||||||
"zapret-flowseal": {
|
"zapret-flowseal": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783190817,
|
"lastModified": 1786894729,
|
||||||
"narHash": "sha256-8hNSwkVREf+16npV4mYnaNeyb9MGicxwSN9TZnZ9E1A=",
|
"narHash": "sha256-v1A9eiapP3wCfQS33ZBKD7oP3GGqIpSc9yF11VYpexI=",
|
||||||
"owner": "Flowseal",
|
"owner": "Flowseal",
|
||||||
"repo": "zapret-discord-youtube",
|
"repo": "zapret-discord-youtube",
|
||||||
"rev": "d75903b44cb7c8e7eedb998c3dd9ff674d10880a",
|
"rev": "1112e479e5a4a669fc3fabfcdbba8b2443cfdcf6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
hyprland.url = "github:hyprwm/Hyprland/v0.54.2-b";
|
hyprland.url = "github:hyprwm/Hyprland/v0.56.1";
|
||||||
hyprland-plugins = {
|
hyprland-plugins = {
|
||||||
url = "github:hyprwm/hyprland-plugins";
|
url = "github:hyprwm/hyprland-plugins";
|
||||||
inputs.hyprland.follows = "hyprland";
|
inputs.hyprland.follows = "hyprland";
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
./modules/grab.nix
|
./modules/grab.nix
|
||||||
./modules/swap.nix
|
./modules/swap.nix
|
||||||
./modules/intel.nix
|
./modules/intel.nix
|
||||||
|
./modules/grab.nix
|
||||||
./modules/nvidia.nix
|
./modules/nvidia.nix
|
||||||
./modules/fingerprint.nix
|
./modules/fingerprint.nix
|
||||||
|
|
||||||
@@ -29,6 +30,9 @@
|
|||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
|
host.laptop = true;
|
||||||
|
host.nvidia.prime.enable = true;
|
||||||
|
|
||||||
programs.gamemode.enable = true;
|
programs.gamemode.enable = true;
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
|
|||||||
@@ -1,29 +1,53 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, lib, ... }: let
|
||||||
|
primeCfg = config.host.nvidia.prime;
|
||||||
{
|
in {
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
config = lib.mkIf primeCfg.enable {
|
||||||
|
boot = {
|
||||||
hardware.nvidia = {
|
kernelParams = [ "nvidia-drm.modeset=1" ];
|
||||||
modesetting.enable = true;
|
initrd.kernelModules = [ "i915" ];
|
||||||
|
|
||||||
powerManagement = {
|
|
||||||
enable = true;
|
|
||||||
finegrained = false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.legacy_470;
|
services.xserver.videoDrivers = [ "modesetting" "nvidia" ];
|
||||||
|
|
||||||
open = false;
|
hardware = {
|
||||||
|
graphics = {
|
||||||
|
enable = true;
|
||||||
|
enable32Bit = true;
|
||||||
|
};
|
||||||
|
|
||||||
prime = {
|
nvidia = {
|
||||||
offload.enable = true;
|
modesetting.enable = true;
|
||||||
|
|
||||||
intelBusId = "PCI:0:2:0";
|
powerManagement = {
|
||||||
nvidiaBusId = "PCI:1:0:0";
|
enable = true;
|
||||||
|
finegrained = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
open = false;
|
||||||
|
nvidiaSettings = true;
|
||||||
|
|
||||||
|
package = config.boot.kernelPackages.nvidiaPackages.legacy_470;
|
||||||
|
|
||||||
|
prime = {
|
||||||
|
offload = {
|
||||||
|
enable = true;
|
||||||
|
enableOffloadCmd = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
intelBusId = primeCfg.intelBusId;
|
||||||
|
nvidiaBusId = primeCfg.nvidiaBusId;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.sessionVariables = {
|
||||||
|
__GL_VRR_ALLOWED = 1;
|
||||||
|
ELECTRON_OZONE_PLATFORM_HINT = "auto";
|
||||||
|
NIXOS_OZONE_WL = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.shellAliases = {
|
||||||
|
nvidia-offload = "__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
}
|
||||||
environment.shellAliases = {
|
|
||||||
nvidia-offload = "__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
wayland.windowManager.hyprland.settings.monitor = [
|
||||||
|
{
|
||||||
|
output = "eDP-1";
|
||||||
|
mode = "1920x1200@60";
|
||||||
|
position = "0x0";
|
||||||
|
scale = 1;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -6,6 +6,26 @@
|
|||||||
./packages.nix
|
./packages.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
options = {
|
||||||
|
host = {
|
||||||
|
laptop = lib.mkEnableOption "laptop mode";
|
||||||
|
|
||||||
|
nvidia.prime = {
|
||||||
|
enable = lib.mkEnableOption "NVIDIA PRIME offload for hybrid graphics";
|
||||||
|
intelBusId = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
default = "PCI:0:2:0";
|
||||||
|
description = "Intel/iGPU Bus ID used by NVIDIA PRIME.";
|
||||||
|
};
|
||||||
|
nvidiaBusId = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
default = "PCI:1:0:0";
|
||||||
|
description = "NVIDIA dGPU Bus ID used by NVIDIA PRIME.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
networking.hostName = hostname;
|
networking.hostName = hostname;
|
||||||
time.timeZone = lib.mkDefault "Europe/Moscow";
|
time.timeZone = lib.mkDefault "Europe/Moscow";
|
||||||
|
|||||||
@@ -25,6 +25,8 @@
|
|||||||
noto-fonts-cjk-sans # Japanese
|
noto-fonts-cjk-sans # Japanese
|
||||||
powerline-symbols # Console decoration
|
powerline-symbols # Console decoration
|
||||||
unifont # Other
|
unifont # Other
|
||||||
|
(pkgs.google-fonts.override { fonts = [ "Gabriela" ]; })
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
fonts.fontconfig.enable = true;
|
||||||
}
|
}
|
||||||
+19
-1
@@ -1,3 +1,4 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./host/bluetooth.nix
|
./host/bluetooth.nix
|
||||||
@@ -13,7 +14,24 @@
|
|||||||
#./host/ai-agent.nix
|
#./host/ai-agent.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.hyprland.enable = true;
|
programs = {
|
||||||
|
dconf.enable = true;
|
||||||
|
hyprland.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
extraPortals = with pkgs; [
|
||||||
|
xdg-desktop-portal-hyprland
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
|
xdg-desktop-portal-termfilechooser
|
||||||
|
];
|
||||||
|
config = {
|
||||||
|
common.default = [ "hyprland" "gtk" ];
|
||||||
|
hyprland.default = [ "hyprland" "gtk" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
services = {
|
services = {
|
||||||
udisks2.enable = true;
|
udisks2.enable = true;
|
||||||
fstrim.enable = true;
|
fstrim.enable = true;
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
{
|
{ lib, ... }: {
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
EDITOR = "hx";
|
EDITOR = "hx";
|
||||||
RANGER_LOAD_DEFAULT_RC = "FALSE";
|
RANGER_LOAD_DEFAULT_RC = "FALSE";
|
||||||
QT_QPA_PLATFORMTHEME = "qt5ct";
|
GTK_USE_PORTAL = "1";
|
||||||
GSETTINGS_BACKEND = "keyfile";
|
QT_QPA_PLATFORMTHEME = lib.mkForce "xdgdesktopportal";
|
||||||
|
TDESKTOP_USE_GTK_FILE_DIALOG = "1";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -4,6 +4,7 @@
|
|||||||
./user/yazi.nix
|
./user/yazi.nix
|
||||||
./user/sleepMode.nix
|
./user/sleepMode.nix
|
||||||
./user/ghostty.nix
|
./user/ghostty.nix
|
||||||
|
./user/qt.nix
|
||||||
./user/zed-idea.nix
|
./user/zed-idea.nix
|
||||||
./user/walker.nix
|
./user/walker.nix
|
||||||
./user/btop.nix
|
./user/btop.nix
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
{ config, inputs, pkgs, ... }: {
|
{ config, inputs, pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
hyprLua = import ./hyprland/lua.nix { inherit lib; };
|
||||||
|
in {
|
||||||
imports = [ inputs.ags.homeManagerModules.default ];
|
imports = [ inputs.ags.homeManagerModules.default ];
|
||||||
|
|
||||||
programs.ags = {
|
programs.ags = {
|
||||||
@@ -20,7 +23,7 @@
|
|||||||
pulsemixer
|
pulsemixer
|
||||||
];
|
];
|
||||||
|
|
||||||
wayland.windowManager.hyprland.settings.exec-once = [ "ags run" ];
|
wayland.windowManager.hyprland.settings.on = [ (hyprLua.onStart [ "ags run" ]) ];
|
||||||
|
|
||||||
xdg.configFile."ags".source = (pkgs.callPackage ./ags/ags.nix { colors = config.lib.stylix.colors; });
|
xdg.configFile."ags".source = (pkgs.callPackage ./ags/ags.nix { colors = config.lib.stylix.colors; });
|
||||||
}
|
}
|
||||||
+109
-200
@@ -1,218 +1,127 @@
|
|||||||
{ pkgs, lib, config, swww_flags, inputs }: {
|
{ pkgs, lib, config, swww_flags, inputs, host ? null }:
|
||||||
home.packages = with pkgs; [
|
let
|
||||||
ghostty
|
hyprLua = import ./hyprland/lua.nix { inherit lib; };
|
||||||
pamixer
|
direction = { left = "l"; right = "r"; up = "u"; down = "d"; };
|
||||||
wofi
|
wallpaper_changer = pkgs.writers.writePython3Bin "wallpaper_changer" {
|
||||||
clipse
|
libraries = [ pkgs.python3Packages.requests ];
|
||||||
wl-clipboard
|
flakeIgnore = [ "E501" "E111" "E701" "E241" "E731" ];
|
||||||
wl-clip-persist
|
} /*py*/ ''
|
||||||
xclip
|
from random import choice
|
||||||
];
|
from os import system, listdir
|
||||||
|
folder = "${config.home.homeDirectory}/wallpapers"
|
||||||
wayland.windowManager.hyprland =
|
filename = choice(listdir(folder))
|
||||||
let
|
system(f"${lib.getExe pkgs.awww} img {folder}/{filename} ${swww_flags}")
|
||||||
colors = config.lib.stylix.colors;
|
'';
|
||||||
|
workspaceBinds = lib.concatMap (workspace:
|
||||||
wallpaper_changer = pkgs.writers.writePython3Bin "wallpaper_changer" {
|
let key = if workspace == 10 then "0" else toString workspace; workspaceValue = toString workspace;
|
||||||
libraries = [ pkgs.python3Packages.requests ];
|
in [
|
||||||
flakeIgnore = [ "E501" "E111" "E701" "E241" "E731" ];
|
(hyprLua.bind "SUPER + ${key}" "hl.dsp.focus({ workspace = ${workspaceValue} })")
|
||||||
} /*py*/ ''
|
(hyprLua.bind "SUPER + SHIFT + ${key}" "hl.dsp.window.move({ workspace = ${workspaceValue}, follow = false })")
|
||||||
from random import choice
|
]) (lib.range 1 10);
|
||||||
from os import system, listdir
|
in {
|
||||||
|
imports = lib.optional (host != null && builtins.pathExists ../../host/${host.name}/modules/hyprland.nix) ../../host/${host.name}/modules/hyprland.nix;
|
||||||
|
|
||||||
folder = "${config.home.homeDirectory}/wallpapers"
|
home.packages = with pkgs; [ ghostty pamixer wofi clipse wl-clipboard wl-clip-persist xclip ];
|
||||||
filename = choice(listdir(folder))
|
wayland.windowManager.hyprland = {
|
||||||
system(f"${lib.getExe pkgs.awww} img {folder}/{filename} ${swww_flags}")
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
configType = "hyprlang";
|
configType = "lua";
|
||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
|
|
||||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||||
plugins = with inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}; [
|
plugins = with inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}; [ ];
|
||||||
# hyprbars # Version mismatch
|
|
||||||
];
|
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
"$mainMod" = "SUPER";
|
config = {
|
||||||
|
ecosystem = { no_donation_nag = true; no_update_news = true; };
|
||||||
ecosystem = {
|
cursor.no_hardware_cursors = 1;
|
||||||
no_donation_nag = true;
|
debug = { disable_logs = false; enable_stdout_logs = true; };
|
||||||
no_update_news = true;
|
general."col.inactive_border" = lib.mkDefault "rgba(00000000)";
|
||||||
};
|
decoration = { inactive_opacity = lib.mkDefault 0.95; border_part_of_window = false; };
|
||||||
|
misc.focus_on_activate = true;
|
||||||
env = [
|
input = {
|
||||||
"XDG_SESSION_TYPE,wayland"
|
kb_layout = "us,ru"; kb_options = "grp:caps_toggle"; numlock_by_default = true;
|
||||||
"QT_QPA_PLATFORM,wayland"
|
follow_mouse = 1; touchpad.natural_scroll = false; sensitivity = 0;
|
||||||
|
|
||||||
"XDG_CURRENT_DESKTOP,Hyprland"
|
|
||||||
"XDG_SESSION_DESKTOP,Hyprland"
|
|
||||||
|
|
||||||
"XCURSOR_SIZE, ${toString config.stylix.cursor.size}"
|
|
||||||
"XCURSOR_THEME, ${config.stylix.cursor.name}"
|
|
||||||
|
|
||||||
"XDG_SCREENSHOTS_DIR,~/screens"
|
|
||||||
];
|
|
||||||
|
|
||||||
cursor.no_hardware_cursors = true;
|
|
||||||
|
|
||||||
debug = {
|
|
||||||
disable_logs = false;
|
|
||||||
enable_stdout_logs = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
misc = {
|
|
||||||
focus_on_activate = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
input = {
|
|
||||||
kb_layout = "us,ru";
|
|
||||||
kb_options = "grp:caps_toggle";
|
|
||||||
numlock_by_default = true;
|
|
||||||
|
|
||||||
follow_mouse = 1;
|
|
||||||
|
|
||||||
touchpad = {
|
|
||||||
natural_scroll = false;
|
|
||||||
};
|
};
|
||||||
|
gestures = { workspace_swipe_invert = true; workspace_swipe_distance = 200; workspace_swipe_forever = true; };
|
||||||
sensitivity = 0;
|
|
||||||
};
|
};
|
||||||
|
env = [
|
||||||
gestures = {
|
{ _args = [ "XDG_SESSION_TYPE" "wayland" ]; }
|
||||||
workspace_swipe_invert = true;
|
{ _args = [ "QT_QPA_PLATFORM" "wayland" ]; }
|
||||||
workspace_swipe_distance = 200;
|
{ _args = [ "QT_QPA_PLATFORMTHEME" "xdgdesktopportal" ]; }
|
||||||
workspace_swipe_forever = true;
|
{ _args = [ "GTK_USE_PORTAL" "1" ]; }
|
||||||
};
|
{ _args = [ "TDESKTOP_USE_GTK_FILE_DIALOG" "1" ]; }
|
||||||
|
{ _args = [ "NIXOS_OZONE_WL" "1" ]; }
|
||||||
gesture = [
|
{ _args = [ "ELECTRON_OZONE_PLATFORM_HINT" "auto" ]; }
|
||||||
"3, horizontal, workspace"
|
{ _args = [ "XDG_CURRENT_DESKTOP" "Hyprland" ]; }
|
||||||
|
{ _args = [ "XDG_SESSION_DESKTOP" "Hyprland" ]; }
|
||||||
|
{ _args = [ "XCURSOR_SIZE" (toString config.stylix.cursor.size) ]; }
|
||||||
|
{ _args = [ "XCURSOR_THEME" config.stylix.cursor.name ]; }
|
||||||
|
{ _args = [ "XDG_SCREENSHOTS_DIR" "~/screens" ]; }
|
||||||
];
|
];
|
||||||
|
gesture = [ { fingers = 3; direction = "horizontal"; action = "workspace"; } ];
|
||||||
windowrule = [
|
workspace_rule = [ { workspace = "w[t1]"; gaps_out = 0; } ];
|
||||||
"match:class imv, float 1"
|
window_rule = [
|
||||||
"match:class feh, float 1"
|
{ match.class = "imv"; float = true; }
|
||||||
"match:class mpv, float 1"
|
{ match.class = "feh"; float = true; }
|
||||||
|
{ match.class = "mpv"; float = true; }
|
||||||
"match:title Список друзей, float 1"
|
{ match.title = "Список друзей"; float = true; }
|
||||||
"match:title nmtui, float 1"
|
{ match.title = "wifitui"; float = true; }
|
||||||
"match:title pulsemixer, float 1"
|
{ match.title = "pulsemixer"; float = true; }
|
||||||
|
{ match.title = "clipse"; float = true; }
|
||||||
"match:title clipse, float 1"
|
{ match.title = "clipse"; size = [ 622 652 ]; }
|
||||||
"match:title clipse, size 622 652"
|
{ match.focus = true; rounding = 0; }
|
||||||
|
{ match = { float = false; workspace = "w[t1]"; }; border_size = 0; }
|
||||||
"match:focus 1, rounding 0"
|
|
||||||
"match:float 0, match:workspace w[t1], border_size 0"
|
|
||||||
];
|
];
|
||||||
|
on = [ (hyprLua.onStart [
|
||||||
exec-once = [
|
|
||||||
"systemctl --user start plasma-polkit-agent"
|
"systemctl --user start plasma-polkit-agent"
|
||||||
|
"${lib.getExe' pkgs.dbus "dbus-update-activation-environment"} --systemd --all"
|
||||||
|
"systemctl --user import-environment XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE WAYLAND_DISPLAY DISPLAY GTK_USE_PORTAL QT_QPA_PLATFORMTHEME TDESKTOP_USE_GTK_FILE_DIALOG NIXOS_OZONE_WL ELECTRON_OZONE_PLATFORM_HINT"
|
||||||
"${lib.getExe' pkgs.awww "awww-daemon"}"
|
"${lib.getExe' pkgs.awww "awww-daemon"}"
|
||||||
"${pkgs.bash}/bin/bash -c 'sleep 1 && ${lib.getExe wallpaper_changer}'"
|
|
||||||
"wl-clip-persist --clipboard both"
|
"wl-clip-persist --clipboard both"
|
||||||
"clipse -listen"
|
"clipse -listen"
|
||||||
"${lib.getExe' pkgs.udiskie "udiskie"}"
|
"${lib.getExe' pkgs.udiskie "udiskie"}"
|
||||||
];
|
"${lib.getExe wallpaper_changer}"
|
||||||
|
]) ];
|
||||||
bind = [
|
bind = [
|
||||||
"$mainMod, V, exec, ghostty --title=clipse -e clipse"
|
(hyprLua.bind "SUPER + V" (hyprLua.exec "ghostty --title=clipse -e clipse"))
|
||||||
|
(hyprLua.bind "SUPER + RETURN" (hyprLua.exec "ghostty"))
|
||||||
"$mainMod, Return, exec, ghostty"
|
(hyprLua.bind "SUPER + Q" "hl.dsp.window.close()")
|
||||||
"$mainMod, Q, killactive,"
|
(hyprLua.bind "SUPER + M" "hl.dsp.exit()")
|
||||||
"$mainMod, M, exit,"
|
(hyprLua.bind "SUPER + E" (hyprLua.exec "ghostty -e sh -c yazi"))
|
||||||
"$mainMod, E, exec, ghostty -e sh -c yazi"
|
(hyprLua.bind "SUPER + F" "hl.dsp.window.float({ action = \"toggle\" })")
|
||||||
"$mainMod, F, togglefloating,"
|
(hyprLua.bind "SUPER + J" "hl.dsp.layout(\"togglesplit\")")
|
||||||
"$mainMod, J, layoutmsg, togglesplit, # dwindle"
|
(hyprLua.bind "SUPER + LEFT" "hl.dsp.focus({ direction = \"${direction.left}\" })")
|
||||||
|
(hyprLua.bind "SUPER + RIGHT" "hl.dsp.focus({ direction = \"${direction.right}\" })")
|
||||||
# Move focus with mainMod + arrow keys
|
(hyprLua.bind "SUPER + UP" "hl.dsp.focus({ direction = \"${direction.up}\" })")
|
||||||
"$mainMod, left, movefocus, l"
|
(hyprLua.bind "SUPER + DOWN" "hl.dsp.focus({ direction = \"${direction.down}\" })")
|
||||||
"$mainMod, right, movefocus, r"
|
(hyprLua.bind "SUPER + SHIFT + LEFT" "hl.dsp.window.swap({ direction = \"${direction.left}\" })")
|
||||||
"$mainMod, up, movefocus, u"
|
(hyprLua.bind "SUPER + SHIFT + RIGHT" "hl.dsp.window.swap({ direction = \"${direction.right}\" })")
|
||||||
"$mainMod, down, movefocus, d"
|
(hyprLua.bind "SUPER + SHIFT + UP" "hl.dsp.window.swap({ direction = \"${direction.up}\" })")
|
||||||
|
(hyprLua.bind "SUPER + SHIFT + DOWN" "hl.dsp.window.swap({ direction = \"${direction.down}\" })")
|
||||||
# Moving windows
|
(hyprLua.bind "SUPER + CTRL + LEFT" "hl.dsp.window.resize({ x = -60, y = 0, relative = true })")
|
||||||
"$mainMod SHIFT, left, swapwindow, l"
|
(hyprLua.bind "SUPER + CTRL + RIGHT" "hl.dsp.window.resize({ x = 60, y = 0, relative = true })")
|
||||||
"$mainMod SHIFT, right, swapwindow, r"
|
(hyprLua.bind "SUPER + CTRL + UP" "hl.dsp.window.resize({ x = 0, y = -60, relative = true })")
|
||||||
"$mainMod SHIFT, up, swapwindow, u"
|
(hyprLua.bind "SUPER + CTRL + DOWN" "hl.dsp.window.resize({ x = 0, y = 60, relative = true })")
|
||||||
"$mainMod SHIFT, down, swapwindow, d"
|
] ++ workspaceBinds ++ [
|
||||||
|
(hyprLua.bind "SUPER + SHIFT + F" "hl.dsp.window.fullscreen({ action = \"toggle\", mode = \"fullscreen\" })")
|
||||||
# Window resizing X Y
|
(hyprLua.bind "SUPER + mouse_down" "hl.dsp.focus({ workspace = \"e+1\" })")
|
||||||
"$mainMod CTRL, left, resizeactive, -60 0"
|
(hyprLua.bind "SUPER + mouse_up" "hl.dsp.focus({ workspace = \"e-1\" })")
|
||||||
"$mainMod CTRL, right, resizeactive, 60 0"
|
(hyprLua.bind "SUPER + F3" (hyprLua.exec "${lib.getExe pkgs.brightnessctl} -d *::kbd_backlight set +33%"))
|
||||||
"$mainMod CTRL, up, resizeactive, 0 -60"
|
(hyprLua.bind "SUPER + F2" (hyprLua.exec "${lib.getExe pkgs.brightnessctl} -d *::kbd_backlight set 33%-"))
|
||||||
"$mainMod CTRL, down, resizeactive, 0 60"
|
(hyprLua.bind "XF86AudioMute" (hyprLua.exec "pamixer -t"))
|
||||||
|
(hyprLua.bind "XF86AudioMicMute" (hyprLua.exec "pamixer --default-source -m"))
|
||||||
# Switch workspaces with mainMod + [0-9]
|
(hyprLua.bind "XF86AudioPlay" (hyprLua.exec "${lib.getExe pkgs.playerctl} play-pause"))
|
||||||
"$mainMod, 1, workspace, 1"
|
(hyprLua.bind "XF86AudioPrev" (hyprLua.exec "${lib.getExe pkgs.playerctl} position 5-"))
|
||||||
"$mainMod, 2, workspace, 2"
|
(hyprLua.bind "XF86AudioNext" (hyprLua.exec "${lib.getExe pkgs.playerctl} position 5+"))
|
||||||
"$mainMod, 3, workspace, 3"
|
(hyprLua.bind "XF86Explorer" (hyprLua.exec "ghostty -e sh -c yazi"))
|
||||||
"$mainMod, 4, workspace, 4"
|
(hyprLua.bind "XF86Mail" (hyprLua.exec "thunderbird"))
|
||||||
"$mainMod, 5, workspace, 5"
|
(hyprLua.bind "XF86WWW" (hyprLua.exec "google-chrome-stable"))
|
||||||
"$mainMod, 6, workspace, 6"
|
(hyprLua.bind "XF86MonBrightnessDown" (hyprLua.exec "${lib.getExe pkgs.brightnessctl} set 5%-"))
|
||||||
"$mainMod, 7, workspace, 7"
|
(hyprLua.bind "XF86MonBrightnessUp" (hyprLua.exec "${lib.getExe pkgs.brightnessctl} set +5%"))
|
||||||
"$mainMod, 8, workspace, 8"
|
(hyprLua.bindWithFlags "XF86AudioRaiseVolume" (hyprLua.exec "pamixer -i 5") { repeating = true; })
|
||||||
"$mainMod, 9, workspace, 9"
|
(hyprLua.bindWithFlags "XF86AudioLowerVolume" (hyprLua.exec "pamixer -d 5") { repeating = true; })
|
||||||
"$mainMod, 0, workspace, 10"
|
(hyprLua.bindWithFlags "XF86AudioPrev" (hyprLua.exec "${lib.getExe pkgs.playerctl} previous") { long_press = true; })
|
||||||
|
(hyprLua.bindWithFlags "XF86AudioNext" (hyprLua.exec "${lib.getExe pkgs.playerctl} next") { long_press = true; })
|
||||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
(hyprLua.bindWithFlags "SUPER + mouse:272" "hl.dsp.window.drag()" { mouse = true; })
|
||||||
"$mainMod SHIFT, 1, movetoworkspacesilent, 1"
|
(hyprLua.bindWithFlags "SUPER + mouse:273" "hl.dsp.window.resize()" { mouse = true; })
|
||||||
"$mainMod SHIFT, 2, movetoworkspacesilent, 2"
|
|
||||||
"$mainMod SHIFT, 3, movetoworkspacesilent, 3"
|
|
||||||
"$mainMod SHIFT, 4, movetoworkspacesilent, 4"
|
|
||||||
"$mainMod SHIFT, 5, movetoworkspacesilent, 5"
|
|
||||||
"$mainMod SHIFT, 6, movetoworkspacesilent, 6"
|
|
||||||
"$mainMod SHIFT, 7, movetoworkspacesilent, 7"
|
|
||||||
"$mainMod SHIFT, 8, movetoworkspacesilent, 8"
|
|
||||||
"$mainMod SHIFT, 9, movetoworkspacesilent, 9"
|
|
||||||
"$mainMod SHIFT, 0, movetoworkspacesilent, 10"
|
|
||||||
|
|
||||||
"$mainMod SHIFT, F, fullscreen"
|
|
||||||
|
|
||||||
# Scroll through existing workspaces with mainMod + scroll
|
|
||||||
"$mainMod, mouse_down, workspace, e+1"
|
|
||||||
"$mainMod, mouse_up, workspace, e-1"
|
|
||||||
|
|
||||||
# Keyboard backlight
|
|
||||||
"$mainMod, F3, exec, ${lib.getExe pkgs.brightnessctl} -d *::kbd_backlight set +33%"
|
|
||||||
"$mainMod, F2, exec, ${lib.getExe pkgs.brightnessctl} -d *::kbd_backlight set 33%-"
|
|
||||||
|
|
||||||
# Volume and Media Control
|
|
||||||
", XF86AudioMute, exec, pamixer -t"
|
|
||||||
", XF86AudioMicMute, exec, pamixer --default-source -m"
|
|
||||||
", XF86AudioPlay, exec, ${lib.getExe pkgs.playerctl} play-pause"
|
|
||||||
", XF86AudioPrev, exec, ${lib.getExe pkgs.playerctl} position 5-"
|
|
||||||
", XF86AudioNext, exec, ${lib.getExe pkgs.playerctl} position 5+"
|
|
||||||
|
|
||||||
", XF86Explorer, exec, ghostty -e sh -c yazi"
|
|
||||||
", XF86Mail, exec, thunderbird"
|
|
||||||
", XF86WWW, exec, google-chrome-stable" # TODO: Replace hard-code to some variable
|
|
||||||
|
|
||||||
# Brightness control
|
|
||||||
", XF86MonBrightnessDown, exec, ${lib.getExe pkgs.brightnessctl} set 5%- "
|
|
||||||
", XF86MonBrightnessUp, exec, ${lib.getExe pkgs.brightnessctl} set +5% "
|
|
||||||
|
|
||||||
# Waybar
|
|
||||||
"$mainMod, B, exec, pkill -SIGUSR1 waybar"
|
|
||||||
#"$mainMod, W, exec, pkill -SIGUSR2 waybar"
|
|
||||||
|
|
||||||
"$mainMod, W, exec, ${lib.getExe wallpaper_changer}"
|
|
||||||
];
|
|
||||||
|
|
||||||
binde = [
|
|
||||||
", XF86AudioRaiseVolume, exec, pamixer -i 5 "
|
|
||||||
", XF86AudioLowerVolume, exec, pamixer -d 5 "
|
|
||||||
];
|
|
||||||
|
|
||||||
bindo = [
|
|
||||||
", XF86AudioPrev, exec, ${lib.getExe pkgs.playerctl} previous"
|
|
||||||
", XF86AudioNext, exec, ${lib.getExe pkgs.playerctl} next"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
|
||||||
bindm = [
|
|
||||||
"$mainMod, mouse:272, movewindow"
|
|
||||||
"$mainMod, mouse:273, resizewindow"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
{ lib }:
|
||||||
|
let
|
||||||
|
inline = lib.generators.mkLuaInline;
|
||||||
|
quote = builtins.toJSON;
|
||||||
|
in rec {
|
||||||
|
inherit inline;
|
||||||
|
exec = command: "hl.dsp.exec_cmd(${quote command})";
|
||||||
|
bind = keys: dispatcher: { _args = [ keys (inline dispatcher) ]; };
|
||||||
|
bindWithFlags = keys: dispatcher: flags: { _args = [ keys (inline dispatcher) flags ]; };
|
||||||
|
onStart = commands: {
|
||||||
|
_args = [
|
||||||
|
"hyprland.start"
|
||||||
|
(inline ("function()\n" + lib.concatMapStringsSep "\n" (command: " hl.exec_cmd(${quote command})") commands + "\nend"))
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
{ lib, ... }: {
|
||||||
|
stylix.targets.qt.standardDialogs = "xdgdesktopportal";
|
||||||
|
|
||||||
|
home.sessionVariables = {
|
||||||
|
QT_QPA_PLATFORMTHEME = lib.mkForce "xdgdesktopportal";
|
||||||
|
TDESKTOP_USE_GTK_FILE_DIALOG = "1";
|
||||||
|
};
|
||||||
|
|
||||||
|
qt = {
|
||||||
|
enable = true;
|
||||||
|
platformTheme.name = "qtct";
|
||||||
|
style.name = "kvantum";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,5 +1,8 @@
|
|||||||
{ pkgs, lib, ... }: {
|
{ pkgs, lib, ... }:
|
||||||
wayland.windowManager.hyprland.settings.exec-once = [ "hyprlock" ];
|
let
|
||||||
|
hyprLua = import ./hyprland/lua.nix { inherit lib; };
|
||||||
|
in {
|
||||||
|
wayland.windowManager.hyprland.settings.on = [ (hyprLua.onStart [ "hyprlock" ]) ];
|
||||||
|
|
||||||
programs.hyprlock = let
|
programs.hyprlock = let
|
||||||
image = pkgs.fetchurl {
|
image = pkgs.fetchurl {
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
{
|
{ lib, ... }:
|
||||||
|
let
|
||||||
|
hyprLua = import ./hyprland/lua.nix { inherit lib; };
|
||||||
|
in {
|
||||||
services = {
|
services = {
|
||||||
walker = {
|
walker = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -9,6 +12,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
wayland.windowManager.hyprland.settings.bind = [
|
wayland.windowManager.hyprland.settings.bind = [
|
||||||
"$mainMod, D, exec, walker"
|
(hyprLua.bind "SUPER + D" (hyprLua.exec "walker"))
|
||||||
];
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
+8
-12
@@ -1,4 +1,5 @@
|
|||||||
{ config, pkgs, lib, ... }: let
|
{ config, pkgs, lib, ... }: let
|
||||||
|
hyprLua = import ./hyprland/lua.nix { inherit lib; };
|
||||||
c = config.lib.stylix.colors;
|
c = config.lib.stylix.colors;
|
||||||
|
|
||||||
wobSocket = ''"''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}/wob.sock"'';
|
wobSocket = ''"''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}/wob.sock"'';
|
||||||
@@ -53,16 +54,11 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
wayland.windowManager.hyprland.settings = {
|
wayland.windowManager.hyprland.settings.bind = [
|
||||||
bindel = [
|
(hyprLua.bindWithFlags "XF86AudioRaiseVolume" (hyprLua.exec "${lib.getExe volumeStep} up") { repeating = true; locked = true; })
|
||||||
", XF86AudioRaiseVolume, exec, ${lib.getExe volumeStep} up"
|
(hyprLua.bindWithFlags "XF86AudioLowerVolume" (hyprLua.exec "${lib.getExe volumeStep} down") { repeating = true; locked = true; })
|
||||||
", XF86AudioLowerVolume, exec, ${lib.getExe volumeStep} down"
|
(hyprLua.bindWithFlags "XF86MonBrightnessUp" (hyprLua.exec "${lib.getExe brightnessStep} up") { repeating = true; locked = true; })
|
||||||
", XF86MonBrightnessUp, exec, ${lib.getExe brightnessStep} up"
|
(hyprLua.bindWithFlags "XF86MonBrightnessDown" (hyprLua.exec "${lib.getExe brightnessStep} down") { repeating = true; locked = true; })
|
||||||
", XF86MonBrightnessDown, exec, ${lib.getExe brightnessStep} down"
|
(hyprLua.bind "XF86AudioMute" (hyprLua.exec "${lib.getExe volumeStep} mute"))
|
||||||
];
|
];
|
||||||
|
|
||||||
bind = [
|
|
||||||
", XF86AudioMute, exec, ${lib.getExe volumeStep} mute"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
@@ -121,8 +121,14 @@ in {
|
|||||||
Exec=${lib.getExe fileManager1}
|
Exec=${lib.getExe fileManager1}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
wayland.windowManager.hyprland.settings.windowrule = [
|
wayland.windowManager.hyprland.settings.window_rule = [
|
||||||
"match:class dragon-drop, move cursor_x-window_w/2 cursor_y-window_h/2"
|
{
|
||||||
|
match.class = "dragon-drop";
|
||||||
|
move = [
|
||||||
|
"(cursor_x-(window_w*0.5))"
|
||||||
|
"(cursor_y-(window_h*0.5))"
|
||||||
|
];
|
||||||
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.yazi = {
|
programs.yazi = {
|
||||||
|
|||||||
@@ -1,79 +1,97 @@
|
|||||||
{ pkgs, lib, config, inputs, ... }: {
|
{ pkgs, lib, config, inputs, host, ... }:
|
||||||
|
{
|
||||||
imports = [(
|
imports = [(
|
||||||
import ../../../modules/user/hyprland.nix {
|
import ../../../modules/user/hyprland.nix {
|
||||||
inherit lib;
|
inherit lib;
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
inherit config;
|
inherit config;
|
||||||
inherit inputs;
|
inherit inputs;
|
||||||
|
inherit host;
|
||||||
swww_flags = "--transition-type center";
|
swww_flags = "--transition-type center";
|
||||||
}
|
}
|
||||||
)];
|
)];
|
||||||
|
|
||||||
wayland.windowManager.hyprland = let
|
wayland.windowManager.hyprland = let
|
||||||
colors = config.lib.stylix.colors;
|
colors = config.lib.stylix.colors;
|
||||||
|
hyprLua = import ../../../modules/user/hyprland/lua.nix { inherit lib; };
|
||||||
in {
|
in {
|
||||||
settings = {
|
settings = {
|
||||||
monitor = [
|
config = {
|
||||||
"eDP-1, preferred, auto, 1"
|
general = {
|
||||||
|
gaps_in = 5;
|
||||||
|
gaps_out = 5;
|
||||||
|
border_size = 2;
|
||||||
|
"col.active_border" = lib.mkForce {
|
||||||
|
colors = [
|
||||||
|
"rgba(${colors.base0C}ee)"
|
||||||
|
"rgba(${colors.base0B}ee)"
|
||||||
|
];
|
||||||
|
angle = 45;
|
||||||
|
};
|
||||||
|
"col.inactive_border" = lib.mkForce "rgba(${colors.base05}aa)";
|
||||||
|
layout = "dwindle";
|
||||||
|
};
|
||||||
|
|
||||||
|
decoration = {
|
||||||
|
border_part_of_window = false;
|
||||||
|
rounding = 10;
|
||||||
|
blur = {
|
||||||
|
enabled = true;
|
||||||
|
size = 16;
|
||||||
|
passes = 2;
|
||||||
|
new_optimizations = true;
|
||||||
|
};
|
||||||
|
shadow = {
|
||||||
|
enabled = true;
|
||||||
|
range = 4;
|
||||||
|
render_power = 3;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
animations.enabled = true;
|
||||||
|
dwindle.smart_split = true;
|
||||||
|
master.new_status = "master";
|
||||||
|
|
||||||
|
misc = {
|
||||||
|
focus_on_activate = true;
|
||||||
|
animate_manual_resizes = true;
|
||||||
|
animate_mouse_windowdragging = true;
|
||||||
|
enable_swallow = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
animation = [
|
||||||
|
{ leaf = "windows"; enabled = true; speed = 7; bezier = "myBezier"; }
|
||||||
|
{ leaf = "windowsOut"; enabled = true; speed = 7; bezier = "default"; style = "popin 80%"; }
|
||||||
|
{ leaf = "border"; enabled = true; speed = 10; bezier = "default"; }
|
||||||
|
{ leaf = "borderangle"; enabled = true; speed = 8; bezier = "default"; }
|
||||||
|
{ leaf = "fade"; enabled = true; speed = 7; bezier = "default"; }
|
||||||
|
{ leaf = "workspaces"; enabled = true; speed = 6; bezier = "default"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
general = {
|
curve = {
|
||||||
gaps_in = 5;
|
_args = [
|
||||||
gaps_out = 10;
|
"myBezier"
|
||||||
border_size = 3;
|
{
|
||||||
"col.active_border" = lib.mkForce "rgba(${colors.base0C}ee) rgba(${colors.base0B}ee) 45deg";
|
type = "bezier";
|
||||||
"col.inactive_border" = lib.mkForce "rgba(${colors.base05}aa)";
|
points = [
|
||||||
|
[ 0.05 0.9 ]
|
||||||
layout = "dwindle";
|
[ 0.1 1.05 ]
|
||||||
};
|
];
|
||||||
|
}
|
||||||
decoration = {
|
|
||||||
rounding = 10;
|
|
||||||
|
|
||||||
blur = {
|
|
||||||
enabled = true;
|
|
||||||
size = 16;
|
|
||||||
passes = 2;
|
|
||||||
new_optimizations = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
shadow = {
|
|
||||||
enabled = true;
|
|
||||||
range = 4;
|
|
||||||
render_power = 3;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
animations = {
|
|
||||||
enabled = true;
|
|
||||||
|
|
||||||
bezier = "myBezier, 0.05, 0.9, 0.1, 1.05";
|
|
||||||
|
|
||||||
animation = [
|
|
||||||
"windows, 1, 7, myBezier"
|
|
||||||
"windowsOut, 1, 7, default, popin 80%"
|
|
||||||
"border, 1, 10, default"
|
|
||||||
"borderangle, 1, 8, default"
|
|
||||||
"fade, 1, 7, default"
|
|
||||||
"workspaces, 1, 6, default"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
dwindle = {
|
workspace_rule = [
|
||||||
smart_split = true;
|
{
|
||||||
};
|
workspace = "2";
|
||||||
|
layout = "scrolling";
|
||||||
master.new_status = "master";
|
}
|
||||||
|
];
|
||||||
misc = {
|
|
||||||
animate_manual_resizes = true;
|
|
||||||
animate_mouse_windowdragging = true;
|
|
||||||
enable_swallow = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
bind = [
|
bind = [
|
||||||
"$mainMod Shift, S, exec, ${lib.getExe pkgs.grimblast} --notify --freeze copy area"
|
(hyprLua.bind "SUPER + SHIFT + S" (hyprLua.exec "${lib.getExe pkgs.grimblast} --notify --freeze copy area"))
|
||||||
", F11, exec, ghostty -e sh -c hyprlock"
|
(hyprLua.bind "F11" (hyprLua.exec "ghostty -e sh -c hyprlock"))
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -13,8 +13,6 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
gtk.gtk4.theme = lib.mkForce config.gtk.theme;
|
|
||||||
|
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
overlays.enable = false;
|
overlays.enable = false;
|
||||||
@@ -79,5 +77,18 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
dconf.settings = {
|
||||||
|
"org/gnome/desktop/interface".color-scheme = "prefer-dark";
|
||||||
|
};
|
||||||
|
|
||||||
|
gtk = {
|
||||||
|
gtk4.extraConfig = {
|
||||||
|
gtk-application-prefer-dark-theme = true;
|
||||||
|
};
|
||||||
|
gtk3.extraConfig = {
|
||||||
|
gtk-application-prefer-dark-theme = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
xdg.configFile."helix/config.toml".text = ''theme = "catppuccin_mocha"'';
|
xdg.configFile."helix/config.toml".text = ''theme = "catppuccin_mocha"'';
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,173 @@
|
|||||||
{ osConfig, config, pkgs, lib, ... }: {
|
{ osConfig, config, pkgs, lib, ... }: let
|
||||||
|
c = config.lib.stylix.colors.withHashtag;
|
||||||
|
|
||||||
|
# ---- Left edge power bar (separate waybar instance) ----
|
||||||
|
leftWidth = 50;
|
||||||
|
|
||||||
|
networkSpeed = pkgs.writeShellApplication {
|
||||||
|
name = "network-speed";
|
||||||
|
runtimeInputs = [ pkgs.coreutils pkgs.gawk pkgs.iproute2 ];
|
||||||
|
text = ''
|
||||||
|
set -euo pipefail
|
||||||
|
state=/tmp/waybar-network-speed
|
||||||
|
|
||||||
|
iface=$(ip route show default | awk '{print $5; exit}')
|
||||||
|
if [ -z "$iface" ]; then
|
||||||
|
iface=$(awk 'NR > 2 && $1 != "lo:" { sub(":", "", $1); print $1; exit }' /proc/net/dev)
|
||||||
|
fi
|
||||||
|
[ -z "$iface" ] && exit 0
|
||||||
|
|
||||||
|
read -r rx tx < <(awk -v i="$iface" '$1 ~ i":" { print $2, $10 }' /proc/net/dev)
|
||||||
|
if [ -f "$state" ]; then
|
||||||
|
read -r prx ptx ts < "$state"
|
||||||
|
now=$(date +%s)
|
||||||
|
dt=$((now - ts)); [ "$dt" -lt 1 ] && dt=1
|
||||||
|
down=$(((rx - prx) / dt)); [ "$down" -lt 0 ] && down=0
|
||||||
|
up=$(((tx - ptx) / dt)); [ "$up" -lt 0 ] && up=0
|
||||||
|
echo " $(numfmt --to=iec --suffix=B/s "$down") $(numfmt --to=iec --suffix=B/s "$up")"
|
||||||
|
fi
|
||||||
|
printf '%s %s %s\n' "$rx" "$tx" "$(date +%s)" > "$state"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
pinnedApps = [
|
||||||
|
{ id = "browser"; icon = ""; command = "vivaldi"; }
|
||||||
|
{ id = "telegram"; icon = ""; command = "AyuGram"; }
|
||||||
|
{ id = "vpn"; icon = ""; command = "clash-verge"; }
|
||||||
|
];
|
||||||
|
|
||||||
|
pinnedModules = lib.listToAttrs (map (a: lib.nameValuePair "custom/pin-${a.id}" {
|
||||||
|
format = a.icon;
|
||||||
|
on-click = a.command;
|
||||||
|
tooltip = false;
|
||||||
|
}) pinnedApps);
|
||||||
|
|
||||||
|
pinnedCss = lib.concatMapStringsSep "," (a: "#custom-pin-${a.id}") pinnedApps;
|
||||||
|
pinnedCssHover = lib.concatMapStringsSep "," (a: "#custom-pin-${a.id}:hover") pinnedApps;
|
||||||
|
|
||||||
|
leftbarJson = {
|
||||||
|
collapsed = pkgs.writeText "leftbar-collapsed.json" (builtins.toJSON {
|
||||||
|
layer = "top";
|
||||||
|
exclusive = false;
|
||||||
|
position = "left";
|
||||||
|
width = 1;
|
||||||
|
spacing = 0;
|
||||||
|
modules-left = [ "custom/hidden" ];
|
||||||
|
modules-center = [ ];
|
||||||
|
modules-right = [ ];
|
||||||
|
"custom/hidden" = {
|
||||||
|
format = "";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
expanded = pkgs.writeText "leftbar-expanded.json" (builtins.toJSON ({
|
||||||
|
layer = "top";
|
||||||
|
exclusive = false;
|
||||||
|
position = "left";
|
||||||
|
width = leftWidth;
|
||||||
|
spacing = 0;
|
||||||
|
modules-left = [ "custom/network-speed" ];
|
||||||
|
modules-center = map (a: "custom/pin-${a.id}") pinnedApps;
|
||||||
|
modules-right = [ "disk" ];
|
||||||
|
"custom/network-speed" = {
|
||||||
|
exec = "${lib.getExe networkSpeed}";
|
||||||
|
interval = 2;
|
||||||
|
rotate = 90;
|
||||||
|
tooltip = false;
|
||||||
|
};
|
||||||
|
disk = {
|
||||||
|
interval = 30;
|
||||||
|
rotate = 90;
|
||||||
|
format = "{used}/{free}";
|
||||||
|
paths = [ "/" ];
|
||||||
|
};
|
||||||
|
} // pinnedModules));
|
||||||
|
};
|
||||||
|
|
||||||
|
leftbarCss = {
|
||||||
|
collapsed = pkgs.writeText "leftbar-collapsed.css" ''
|
||||||
|
window#waybar {
|
||||||
|
background: ${c.base0B};
|
||||||
|
min-width: 1px;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
expanded = pkgs.writeText "leftbar-expanded.css" ''
|
||||||
|
window#waybar {
|
||||||
|
background: transparent;
|
||||||
|
min-width: ${toString leftWidth}px;
|
||||||
|
font-family: "Symbols Nerd Font Mono", "Monocraft", "Font Awesome 7 Free";
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-network-speed,
|
||||||
|
#disk {
|
||||||
|
background: ${c.base00};
|
||||||
|
color: ${c.base05};
|
||||||
|
border-radius: 6px;
|
||||||
|
min-height: 34px;
|
||||||
|
margin: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-network-speed:hover,
|
||||||
|
#disk:hover {
|
||||||
|
background: ${c.base0B};
|
||||||
|
color: ${c.base00};
|
||||||
|
}
|
||||||
|
|
||||||
|
${pinnedCss} {
|
||||||
|
background: ${c.base00};
|
||||||
|
color: ${c.base04};
|
||||||
|
border-radius: 6px;
|
||||||
|
min-height: 34px;
|
||||||
|
margin: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
${pinnedCssHover} {
|
||||||
|
background: ${c.base01};
|
||||||
|
color: ${c.base0B};
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
leftbarHover = pkgs.writeShellApplication {
|
||||||
|
name = "leftbar-hover";
|
||||||
|
runtimeInputs = [ pkgs.coreutils pkgs.systemd pkgs.findutils ];
|
||||||
|
text = ''
|
||||||
|
set -euo pipefail
|
||||||
|
hyprctl="${(config.wayland.windowManager.hyprland.package or pkgs.hyprland)}/bin/hyprctl"
|
||||||
|
rt="''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}"
|
||||||
|
json="$rt/leftbar.json"
|
||||||
|
css="$rt/leftbar.css"
|
||||||
|
state=collapsed
|
||||||
|
|
||||||
|
cp -f "${leftbarJson.collapsed}" "$json"
|
||||||
|
cp -f "${leftbarCss.collapsed}" "$css"
|
||||||
|
|
||||||
|
while true; do
|
||||||
|
sig=$(basename "$(find "$rt/hypr" -mindepth 1 -maxdepth 1 -type d 2>/dev/null | head -1)")
|
||||||
|
[ -n "$sig" ] && export HYPRLAND_INSTANCE_SIGNATURE="$sig"
|
||||||
|
pos="$(${pkgs.coreutils}/bin/timeout 1 "$hyprctl" cursorpos 2>/dev/null)" || pos=""
|
||||||
|
x="''${pos%%,*}"
|
||||||
|
if [ -n "$x" ]; then
|
||||||
|
if [ "$state" != expanded ] && [ "$x" -ge 0 ] && [ "$x" -le 1 ]; then
|
||||||
|
state=expanded
|
||||||
|
cp -f "${leftbarJson.expanded}" "$json"
|
||||||
|
cp -f "${leftbarCss.expanded}" "$css"
|
||||||
|
systemctl --user restart waybar-left || true
|
||||||
|
elif [ "$state" != collapsed ] && [ "$x" -gt ${toString leftWidth} ]; then
|
||||||
|
state=collapsed
|
||||||
|
cp -f "${leftbarJson.collapsed}" "$json"
|
||||||
|
cp -f "${leftbarCss.collapsed}" "$css"
|
||||||
|
systemctl --user restart waybar-left || true
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
sleep 0.05
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in {
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
#Fonts
|
#Fonts
|
||||||
font-awesome
|
font-awesome
|
||||||
@@ -323,4 +492,36 @@
|
|||||||
in builtins.readFile cssFile;
|
in builtins.readFile cssFile;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Left edge bar: own waybar instance with its own config/style,
|
||||||
|
# toggled between 1px accent strip and 8px button bar by the hover daemon.
|
||||||
|
xdg.configFile."waybar/leftbar-collapsed.json".source = leftbarJson.collapsed;
|
||||||
|
xdg.configFile."waybar/leftbar-expanded.json".source = leftbarJson.expanded;
|
||||||
|
xdg.configFile."waybar/leftbar-collapsed.css".source = leftbarCss.collapsed;
|
||||||
|
xdg.configFile."waybar/leftbar-expanded.css".source = leftbarCss.expanded;
|
||||||
|
|
||||||
|
systemd.user.services.waybar-left = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Waybar left edge bar";
|
||||||
|
After = [ "waybar-left-hover.service" ];
|
||||||
|
Wants = [ "waybar-left-hover.service" ];
|
||||||
|
};
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${lib.getExe pkgs.waybar} -c %t/leftbar.json -s %t/leftbar.css";
|
||||||
|
KillMode = "process";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 2;
|
||||||
|
};
|
||||||
|
Install.WantedBy = [ "default.target" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.user.services.waybar-left-hover = {
|
||||||
|
Unit.Description = "Waybar left edge bar hover daemon";
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${lib.getExe leftbarHover}";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 2;
|
||||||
|
};
|
||||||
|
Install.WantedBy = [ "default.target" ];
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user