diff --git a/flake.lock b/flake.lock index fdc40ac7..5cb1ab2d 100644 --- a/flake.lock +++ b/flake.lock @@ -1,86 +1,5 @@ { "nodes": { - "aquamarine": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1772292445, - "narHash": "sha256-4F1Q7U313TKUDDovCC96m/Za4wZcJ3yqtu4eSrj8lk8=", - "owner": "hyprwm", - "repo": "aquamarine", - "rev": "1dbbba659c1cef0b0202ce92cadfe13bae550e8f", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "aquamarine", - "type": "github" - } - }, - "caelestia": { - "inputs": { - "caelestia-cli": "caelestia-cli", - "nixpkgs": [ - "nixpkgs" - ], - "quickshell": [ - "quickshell" - ] - }, - "locked": { - "lastModified": 1773328492, - "narHash": "sha256-ajjfsBnYR54VHhh/haYuPqBOyvgerlvYK6kZvmt2GRw=", - "owner": "caelestia-dots", - "repo": "shell", - "rev": "d97ba8a9c08bc931261766b1070bce610e7cb22e", - "type": "github" - }, - "original": { - "owner": "caelestia-dots", - "repo": "shell", - "type": "github" - } - }, - "caelestia-cli": { - "inputs": { - "caelestia-shell": [ - "caelestia" - ], - "nixpkgs": [ - "caelestia", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1772764582, - "narHash": "sha256-hSwjmpXHFqzSXrndVekA0IheKrbC7wi0IbfZTYwlmXw=", - "owner": "caelestia-dots", - "repo": "cli", - "rev": "4bcd42f482d038b98145b0b03388244b68b7d35d", - "type": "github" - }, - "original": { - "owner": "caelestia-dots", - "repo": "cli", - "type": "github" - } - }, "crane": { "locked": { "lastModified": 1754269165, @@ -223,22 +142,6 @@ } }, "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1767039857, - "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", - "owner": "NixOS", - "repo": "flake-compat", - "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { "flake": false, "locked": { "lastModified": 1747046372, @@ -254,7 +157,7 @@ "type": "github" } }, - "flake-compat_3": { + "flake-compat_2": { "locked": { "lastModified": 1767039857, "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", @@ -269,7 +172,7 @@ "type": "github" } }, - "flake-compat_4": { + "flake-compat_3": { "locked": { "lastModified": 1733328505, "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", @@ -348,7 +251,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems_3" + "systems": "systems" }, "locked": { "lastModified": 1731533236, @@ -366,7 +269,7 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_6" + "systems": "systems_3" }, "locked": { "lastModified": 1731533236, @@ -383,28 +286,6 @@ } }, "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" - } - }, - "gitignore_2": { "inputs": { "nixpkgs": [ "lanzaboote", @@ -482,399 +363,6 @@ "type": "github" } }, - "hypr-dynamic-cursors": { - "inputs": { - "hyprland": [ - "hyprland" - ], - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1773098910, - "narHash": "sha256-hHMMP4h9VvacDLb8lkI6gZcUnhDbEt+GP2RLLL2s2C4=", - "owner": "VirtCode", - "repo": "hypr-dynamic-cursors", - "rev": "57e14edd0ae265b01828e466e287e96eb1e84dd3", - "type": "github" - }, - "original": { - "owner": "VirtCode", - "repo": "hypr-dynamic-cursors", - "type": "github" - } - }, - "hyprcursor": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753964049, - "narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", - "owner": "hyprwm", - "repo": "hyprcursor", - "rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprcursor", - "type": "github" - } - }, - "hyprgraphics": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1770511807, - "narHash": "sha256-suKmSbSk34uPOJDTg/GbPrKEJutzK08vj0VoTvAFBCA=", - "owner": "hyprwm", - "repo": "hyprgraphics", - "rev": "7c75487edd43a71b61adb01cae8326d277aab683", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprgraphics", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "aquamarine": "aquamarine", - "hyprcursor": "hyprcursor", - "hyprgraphics": "hyprgraphics", - "hyprland-guiutils": "hyprland-guiutils", - "hyprland-protocols": "hyprland-protocols", - "hyprlang": "hyprlang", - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "hyprwire": "hyprwire", - "nixpkgs": [ - "nixpkgs" - ], - "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems", - "xdph": "xdph" - }, - "locked": { - "lastModified": 1773316626, - "narHash": "sha256-BrDGYt2w2tSkCvjMtgcVGIAp3FWsV5Ycl4ongLZ/fLk=", - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "e8684034525829d58054c32da914d1713398fbb8", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "Hyprland", - "type": "github" - } - }, - "hyprland-guiutils": { - "inputs": { - "aquamarine": [ - "hyprland", - "aquamarine" - ], - "hyprgraphics": [ - "hyprland", - "hyprgraphics" - ], - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprtoolkit": "hyprtoolkit", - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1767023960, - "narHash": "sha256-R2HgtVS1G3KSIKAQ77aOZ+Q0HituOmPgXW9nBNkpp3Q=", - "owner": "hyprwm", - "repo": "hyprland-guiutils", - "rev": "c2e906261142f5dd1ee0bfc44abba23e2754c660", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-guiutils", - "type": "github" - } - }, - "hyprland-plugins": { - "inputs": { - "hyprland": [ - "hyprland" - ], - "nixpkgs": [ - "nixpkgs" - ], - "systems": [ - "hyprland-plugins", - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1771865848, - "narHash": "sha256-xwNa+1D8WPsDnJtUofDrtyDCZKZotbUymzV/R5s+M0I=", - "owner": "hyprwm", - "repo": "hyprland-plugins", - "rev": "b85a56b9531013c79f2f3846fd6ee2ff014b8960", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-plugins", - "type": "github" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1765214753, - "narHash": "sha256-P9zdGXOzToJJgu5sVjv7oeOGPIIwrd9hAUAP3PsmBBs=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "3f3860b869014c00e8b9e0528c7b4ddc335c21ab", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprlang": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1771866172, - "narHash": "sha256-fYFoXhQLrm1rD8vSFKQBOEX4OGCuJdLt1amKfHd5GAw=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "0b219224910e7642eb0ed49f0db5ec3d008e3e41", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprspace": { - "inputs": { - "hyprland": [ - "hyprland" - ], - "systems": "systems_2" - }, - "locked": { - "lastModified": 1767871242, - "narHash": "sha256-Gge7LY1lrPc2knDnyw8GBQ2sxRPzM7W2T6jNG1HY5bA=", - "owner": "KZDKM", - "repo": "Hyprspace", - "rev": "bcd969224ffeb6266c6618c192949461135eef38", - "type": "github" - }, - "original": { - "owner": "KZDKM", - "repo": "Hyprspace", - "type": "github" - } - }, - "hyprtoolkit": { - "inputs": { - "aquamarine": [ - "hyprland", - "hyprland-guiutils", - "aquamarine" - ], - "hyprgraphics": [ - "hyprland", - "hyprland-guiutils", - "hyprgraphics" - ], - "hyprlang": [ - "hyprland", - "hyprland-guiutils", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprland-guiutils", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprland-guiutils", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "hyprland-guiutils", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-guiutils", - "systems" - ] - }, - "locked": { - "lastModified": 1764592794, - "narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=", - "owner": "hyprwm", - "repo": "hyprtoolkit", - "rev": "5cfe0743f0e608e1462972303778d8a0859ee63e", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprtoolkit", - "type": "github" - } - }, - "hyprutils": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1771271487, - "narHash": "sha256-41gEiUS0Pyw3L/ge1l8MXn61cK14VAhgWB/JV8s/oNI=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "340a792e3b3d482c4ae5f66d27a9096bdee6d76d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1770501770, - "narHash": "sha256-NWRM6+YxTRv+bT9yvlhhJ2iLae1B1pNH3mAL5wi2rlQ=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "0bd8b6cde9ec27d48aad9e5b4deefb3746909d40", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, - "hyprwire": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1771606233, - "narHash": "sha256-F3PLUqQ/TwgR70U+UeOqJnihJZ2EuunzojYC4g5xHr0=", - "owner": "hyprwm", - "repo": "hyprwire", - "rev": "06c7f1f8c4194786c8400653c4efc49dc14c0f3a", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwire", - "type": "github" - } - }, "hytale-launcher": { "inputs": { "nixpkgs": "nixpkgs_2" @@ -915,7 +403,7 @@ "lanzaboote": { "inputs": { "crane": "crane", - "flake-compat": "flake-compat_2", + "flake-compat": "flake-compat", "flake-parts": "flake-parts", "nixpkgs": [ "nixpkgs" @@ -1038,7 +526,7 @@ }, "nix-alien": { "inputs": { - "flake-compat": "flake-compat_3", + "flake-compat": "flake-compat_2", "nix-index-database": "nix-index-database", "nixpkgs": "nixpkgs_4" }, @@ -1221,29 +709,13 @@ "type": "github" } }, - "nixpkgs_7": { - "locked": { - "lastModified": 1750776420, - "narHash": "sha256-/CG+w0o0oJ5itVklOoLbdn2dGB0wbZVOoDm4np6w09A=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "30a61f056ac492e3b7cdcb69c1e6abdcf00e39cf", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "nixvim": { "inputs": { "flake-parts": "flake-parts_2", "nixpkgs": [ "nixpkgs" ], - "systems": "systems_4" + "systems": "systems_2" }, "locked": { "lastModified": 1772402258, @@ -1259,52 +731,9 @@ "type": "github" } }, - "noctalia": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ], - "noctalia-qs": "noctalia-qs" - }, - "locked": { - "lastModified": 1773336753, - "narHash": "sha256-f5UoaExHUvoFuixpxcDXmTL+8UT+VkjwNAuh88/MOrU=", - "owner": "noctalia-dev", - "repo": "noctalia-shell", - "rev": "5ee84e3ab386727eaf4b2381adfdcd86ad94553b", - "type": "github" - }, - "original": { - "owner": "noctalia-dev", - "repo": "noctalia-shell", - "type": "github" - } - }, - "noctalia-qs": { - "inputs": { - "nixpkgs": [ - "noctalia", - "nixpkgs" - ], - "systems": "systems_5" - }, - "locked": { - "lastModified": 1773175685, - "narHash": "sha256-YOkWzVq7opym1ovJvSCvqpG6OCDGJwPo/EPeRxcGay4=", - "owner": "noctalia-dev", - "repo": "noctalia-qs", - "rev": "6b9eceefde3d47ca83c544b54bcdd358be4cbd2f", - "type": "github" - }, - "original": { - "owner": "noctalia-dev", - "repo": "noctalia-qs", - "type": "github" - } - }, "nps": { "inputs": { - "flake-compat": "flake-compat_4", + "flake-compat": "flake-compat_3", "flake-utils": "flake-utils_2", "naersk": "naersk", "nixpkgs": [ @@ -1346,36 +775,13 @@ "type": "github" } }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat", - "gitignore": "gitignore", - "nixpkgs": [ - "hyprland", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1772024342, - "narHash": "sha256-+eXlIc4/7dE6EcPs9a2DaSY3fTA9AE526hGqkNID3Wg=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "6e34e97ed9788b17796ee43ccdbaf871a5c2b476", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ "lanzaboote", "flake-compat" ], - "gitignore": "gitignore_2", + "gitignore": "gitignore", "nixpkgs": [ "lanzaboote", "nixpkgs" @@ -1417,39 +823,14 @@ "url": "https://git.outfoxxed.me/quickshell/quickshell" } }, - "quickshell_2": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1773313344, - "narHash": "sha256-wH4EkAGRBmmSnn8CeryL82z4648KogtPlxi0med6WEQ=", - "owner": "quickshell-mirror", - "repo": "quickshell", - "rev": "706d6de7b0236cec2c25556e284b91104a4e834b", - "type": "github" - }, - "original": { - "owner": "quickshell-mirror", - "repo": "quickshell", - "type": "github" - } - }, "root": { "inputs": { - "caelestia": "caelestia", "dank-material-shell": "dank-material-shell", "danksearch": "danksearch", "devshell": "devshell", "disko": "disko", "hardware": "hardware", "home-manager": "home-manager", - "hypr-dynamic-cursors": "hypr-dynamic-cursors", - "hyprland": "hyprland", - "hyprland-plugins": "hyprland-plugins", - "hyprspace": "hyprspace", "hytale-launcher": "hytale-launcher", "impermanence": "impermanence", "lanzaboote": "lanzaboote", @@ -1460,13 +841,10 @@ "nixpkgs": "nixpkgs_5", "nixpkgs-stable": "nixpkgs-stable_2", "nixvim": "nixvim", - "noctalia": "noctalia", "nps": "nps", "nur": "nur", - "quickshell": "quickshell_2", "sops-nix": "sops-nix", - "textfox": "textfox", - "waifu-cursors": "waifu-cursors" + "textfox": "textfox" } }, "rust-analyzer-src": { @@ -1529,31 +907,31 @@ }, "systems": { "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", "type": "github" }, "original": { "owner": "nix-systems", - "repo": "default-linux", + "repo": "default", "type": "github" } }, "systems_2": { "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", "type": "github" }, "original": { "owner": "nix-systems", - "repo": "default-linux", + "repo": "default", "type": "github" } }, @@ -1572,51 +950,6 @@ "type": "github" } }, - "systems_4": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_5": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_6": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "textfox": { "inputs": { "firefox-addons": "firefox-addons", @@ -1638,65 +971,6 @@ "type": "github" } }, - "waifu-cursors": { - "inputs": { - "nixpkgs": "nixpkgs_7" - }, - "locked": { - "lastModified": 1771429565, - "narHash": "sha256-68QmW2WK0OxyMlcdTxhjCRY4SMmKWy+eDF8yA6dkx4c=", - "owner": "kagurazakei", - "repo": "waifu-cursors", - "rev": "8e692c1daacf241b3d76ea3b2024f0fa4d662531", - "type": "github" - }, - "original": { - "owner": "kagurazakei", - "repo": "waifu-cursors", - "type": "github" - } - }, - "xdph": { - "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1761431178, - "narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "4b8801228ff958d028f588f0c2b911dbf32297f9", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "type": "github" - } - }, "xwayland-satellite-stable": { "flake": false, "locked": { diff --git a/flake.nix b/flake.nix index e502a935..fddc8f8b 100644 --- a/flake.nix +++ b/flake.nix @@ -54,21 +54,21 @@ niri.inputs.nixpkgs.follows = "nixpkgs"; # Quickshell - quickshell.url = "github:quickshell-mirror/quickshell"; - quickshell.inputs.nixpkgs.follows = "nixpkgs"; + # quickshell.url = "github:quickshell-mirror/quickshell"; + # quickshell.inputs.nixpkgs.follows = "nixpkgs"; # Noctalia shell - noctalia.url = "github:noctalia-dev/noctalia-shell"; - noctalia.inputs.nixpkgs.follows = "nixpkgs"; + # noctalia.url = "github:noctalia-dev/noctalia-shell"; + # noctalia.inputs.nixpkgs.follows = "nixpkgs"; # noctalia.inputs.quickshell.follows = "quickshell"; # Lol - waifu-cursors.url = "github:kagurazakei/waifu-cursors"; + # waifu-cursors.url = "github:kagurazakei/waifu-cursors"; # Caelestia shell - caelestia.url = "github:caelestia-dots/shell"; - caelestia.inputs.nixpkgs.follows = "nixpkgs"; - caelestia.inputs.quickshell.follows = "quickshell"; + # caelestia.url = "github:caelestia-dots/shell"; + # caelestia.inputs.nixpkgs.follows = "nixpkgs"; + # caelestia.inputs.quickshell.follows = "quickshell"; # caelestia-cli.url = "github:caelestia-dots/cli"; # caelestia-cli.inputs.nixpkgs.follows = "nixpkgs"; @@ -84,19 +84,19 @@ danksearch.inputs.nixpkgs.follows = "nixpkgs"; # Hyprland (use flake so plugins are not built from source) - hyprland.url = "github:hyprwm/Hyprland"; - hyprland.inputs.nixpkgs.follows = "nixpkgs"; + # hyprland.url = "github:hyprwm/Hyprland"; + # hyprland.inputs.nixpkgs.follows = "nixpkgs"; # HyprPlugins - hyprland-plugins.url = "github:hyprwm/hyprland-plugins"; - hyprland-plugins.inputs.nixpkgs.follows = "nixpkgs"; - hyprland-plugins.inputs.hyprland.follows = "hyprland"; - hypr-dynamic-cursors.url = "github:VirtCode/hypr-dynamic-cursors"; - hypr-dynamic-cursors.inputs.nixpkgs.follows = "nixpkgs"; - hypr-dynamic-cursors.inputs.hyprland.follows = "hyprland"; - hyprspace.url = "github:KZDKM/Hyprspace"; + # hyprland-plugins.url = "github:hyprwm/hyprland-plugins"; + # hyprland-plugins.inputs.nixpkgs.follows = "nixpkgs"; + # hyprland-plugins.inputs.hyprland.follows = "hyprland"; + # hypr-dynamic-cursors.url = "github:VirtCode/hypr-dynamic-cursors"; + # hypr-dynamic-cursors.inputs.nixpkgs.follows = "nixpkgs"; + # hypr-dynamic-cursors.inputs.hyprland.follows = "hyprland"; + # hyprspace.url = "github:KZDKM/Hyprspace"; # hyprspace.inputs.nixpkgs.follows = "nixpkgs"; - hyprspace.inputs.hyprland.follows = "hyprland"; + # hyprspace.inputs.hyprland.follows = "hyprland"; # NeoVim <3 nixvim.url = "github:nix-community/nixvim"; diff --git a/home/christoph/default.nix b/home/christoph/default.nix index 0e4c824b..15aa6b38 100644 --- a/home/christoph/default.nix +++ b/home/christoph/default.nix @@ -47,7 +47,8 @@ in extraPackages = with pkgs; [ papirus-icon-theme bibata-cursors - inputs.waifu-cursors.packages.${pkgs.stdenv.hostPlatform.system}.all + # Lol + # inputs.waifu-cursors.packages.${pkgs.stdenv.hostPlatform.system}.all ]; cursor = "Bibata-Modern-Classic"; @@ -87,190 +88,6 @@ in signCommits = true; }; - hyprland = { - enable = nixosConfig.programs.hyprland.enable; - dunst.enable = !config.homemodules.hyprpanel.enable; # Disable for hyprpanel - bars.enable = false; - dynamicCursor.enable = false; - trails.enable = true; - hyprspace.enable = false; # Always broken - hyprpanel.enable = true; - caelestia.enable = false; - - keybindings = { - main-mod = "SUPER"; - - bindings = lib.mergeAttrsList [ - # Use Rofi if we don't have caelestia - (lib.optionalAttrs (!config.homemodules.hyprland.caelestia.enable) { - "$mainMod, a" = ["exec, rofi -drun-show-actions -show drun"]; - "$mainMod, c" = ["exec, clipman pick --tool=rofi"]; - "$mainMod SHIFT, l" = ["exec, loginctl lock-session"]; - }) - - # Caelestia - (lib.optionalAttrs (config.homemodules.hyprland.caelestia.enable) { - "$mainMod, a" = ["exec, caelestia shell drawers toggle launcher"]; - # "$mainMod, c" = ["exec, caelestia clipboard"]; - "$mainMod SHIFT, l" = ["exec, caelestia shell lock lock"]; - - "$mainMod, escape" = ["exec, caelestia shell drawers toggle session"]; - }) - - { - # Applications - "$mainMod, t" = ["exec, kitty"]; - "$mainMod, e" = ["exec, kitty --title=Yazi yazi"]; - "$mainMod, n" = ["exec, neovide"]; - # "$mainMod, r" = ["exec, kitty --title=Rmpc rmpc"]; - "$mainMod CTRL, n" = ["exec, kitty --title=Navi navi"]; - "$mainMod SHIFT, n" = ["exec, neovide ${config.paths.dotfiles}/navi/christoph.cheat"]; - "$mainMod SHIFT, f" = ["exec, neovide ${config.paths.dotfiles}/flake.nix"]; - # "ALT, tab" = ["exec, rofi -show window"]; - - # Screenshots - "$mainMod, p" = ["exec, hyprpicker --autocopy --format=hex"]; - "$mainMod, s" = ["exec, grim -g \"$(slurp)\""]; - "$mainMod SHIFT, s" = ["exec, grim -g \"$(slurp)\" - | wl-copy"]; - - # Audio - ", XF86AudioRaiseVolume" = ["exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"]; - ", XF86AudioLowerVolume" = ["exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-"]; - ", XF86AudioPlay" = ["exec, playerctl play-pause"]; - ", XF86AudioPrev" = ["exec, playerctl previous"]; - ", XF86AudioNext" = ["exec, playerctl next"]; - - # Brightness - ", XF86MonBrightnessDown" = ["exec, hyprctl hyprsunset gamma -10"]; - ", XF86MonBrightnessUp" = ["exec, hyprctl hyprsunset gamma +10"]; - "$mainMod, XF86MonBrightnessDown" = ["exec, hyprctl hyprsunset temperature 5750"]; - "$mainMod, XF86MonBrightnessUp" = ["exec, hyprctl hyprsunset identity"]; - - "CTRL ALT, f" = let - hyprctl = "${config.wayland.windowManager.hyprland.package}/bin/hyprctl"; - grep = "${pkgs.gnugrep}/bin/grep"; - awk = "${pkgs.gawk}/bin/gawk"; - notify = "${pkgs.libnotify}/bin/notify-send"; - - toggleMouseFocus = pkgs.writeScriptBin "hypr-toggle-mouse-focus" '' - CURRENT=$(${hyprctl} getoption input:follow_mouse | ${grep} int | ${awk} -F' ' '{print $2}') - - if [[ "$CURRENT" == "1" ]]; then - ${hyprctl} keyword input:follow_mouse 0 - ${notify} "Disabled Mouse Focus!" - else - ${hyprctl} keyword input:follow_mouse 1 - ${notify} "Enabled Mouse Focus!" - fi - ''; - in ["exec, ${toggleMouseFocus}/bin/hypr-toggle-mouse-focus"]; - - # "CTRL ALT, t" = ["exec, bash -c 'systemctl --user restart hyprpanel.service'"]; - } - ]; - - ws-bindings = { - # "" = ""; - "1" = "1"; - "2" = "2"; - "3" = "3"; - "4" = "4"; - "5" = "5"; - "6" = "6"; - "7" = "7"; - "8" = "8"; - "9" = "9"; - "10" = "0"; - }; - - special-ws-bindings = { - "ferdium" = "x"; - "msty" = "z"; - "btop" = "b"; - "rmpc" = "r"; - }; - }; - - autostart = { - immediate = [ - "kitty --hold fastfetch" - "zeal" - "nextcloud --background" - "protonvpn-app" - - # "kdeconnect-indicator" # started by services.kdeconnect.indicator - ]; - - delayed = [ - "keepassxc" # The tray doesn't work when started too early - ]; - - special-silent = { - "ferdium" = ["ferdium"]; - "msty" = ["msty"]; - "btop" = ["kitty --title=Btop btop"]; - "rmpc" = ["kitty --title=Rmpc rmpc"]; - }; - }; - - windowrules = [ - # Fix jetbrains tooltip flicker - "match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, float 1" - "match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, no_initial_focus 1" - ]; - - workspacerules = { - "1" = []; - "2" = ["Zotero" "neovide" "code-url-handler"]; - "3" = ["obsidian"]; - "4" = ["firefox" "Google-chrome" "chromium-browser" "org.qutebrowser.qutebrowser"]; - "5" = ["steam"]; - "6" = ["steam_app_(.+)"]; - "7" = ["signal"]; - "8" = ["tidal-hifi"]; - "9" = ["discord"]; - "10" = ["python3"]; - }; - - floating = [ - {class = "org.kde.polkit-kde-authentication-agent-1";} - { - class = "thunar"; - title = "File Operation Progress"; - } - {class = "ffplay";} - {class = "Unity";} - ]; - - transparent-opacity = "0.75"; - - transparent = [ - "kitty" - "Alacritty" - "discord" - "signal" - "vesktop" - "Spotify" - "tidal-hifi" - "obsidian" - "firefox" - "org.qutebrowser.qutebrowser" - "jetbrains-clion" - "jetbrains-idea" - "jetbrains-pycharm" - "jetbrains-rustrover" - "jetbrains-rider" - "jetbrains-webstorm" - "code-url-handler" - "neovide" - "steam" - "ferdium" - "Msty" - ]; - }; - - # hyprpanel.enable = !headless; # Enabled by hyprland module - kitty.enable = !headless; lazygit.enable = true; mpd.enable = !headless; @@ -290,7 +107,7 @@ in enable = !headless; }; - waybar.enable = false; # Use hyprpanel + waybar.enable = false; yazi.enable = true; zathura.enable = !headless; }; diff --git a/home/christoph/nixinator/default.nix b/home/christoph/nixinator/default.nix index 67302bf9..11e0fa83 100644 --- a/home/christoph/nixinator/default.nix +++ b/home/christoph/nixinator/default.nix @@ -17,51 +17,6 @@ # because it forces en-US keyboard layout. fcitx.enable = true; - hyprland = { - keyboard = { - layout = "us"; - variant = "altgr-intl"; - option = "nodeadkeys"; - }; - - monitors = { - "DP-1" = { - width = 3440; - height = 1440; - rate = 165; - x = 1920; - y = 0; - scale = 1; - }; - - "DP-2" = { - width = 1920; - height = 1080; - rate = 60; - x = 0; - y = 0; - scale = 1; - }; - }; - - workspaces = { - "DP-1" = [1 2 3 4 5 6 7 8 9]; - "DP-2" = [10]; - }; - - autostart = { - delayed = [ - "fcitx5" - ]; - }; - - floating = [ - { - class = "fcitx"; - } - ]; - }; - waybar.monitor = "DP-1"; }; diff --git a/home/homemodules/hyprland/autostart.nix b/home/homemodules/1_deprecated/hyprland/autostart.nix similarity index 100% rename from home/homemodules/hyprland/autostart.nix rename to home/homemodules/1_deprecated/hyprland/autostart.nix diff --git a/home/homemodules/hyprland/caelestia.nix b/home/homemodules/1_deprecated/hyprland/caelestia.nix similarity index 100% rename from home/homemodules/hyprland/caelestia.nix rename to home/homemodules/1_deprecated/hyprland/caelestia.nix diff --git a/home/homemodules/hyprland/default.nix b/home/homemodules/1_deprecated/hyprland/default.nix similarity index 100% rename from home/homemodules/hyprland/default.nix rename to home/homemodules/1_deprecated/hyprland/default.nix diff --git a/home/homemodules/hyprland/dunst.nix b/home/homemodules/1_deprecated/hyprland/dunst.nix similarity index 100% rename from home/homemodules/hyprland/dunst.nix rename to home/homemodules/1_deprecated/hyprland/dunst.nix diff --git a/home/homemodules/hyprland/hypridle.nix b/home/homemodules/1_deprecated/hyprland/hypridle.nix similarity index 100% rename from home/homemodules/hyprland/hypridle.nix rename to home/homemodules/1_deprecated/hyprland/hypridle.nix diff --git a/home/homemodules/1_deprecated/hyprland/hyprland-nixinator.nix b/home/homemodules/1_deprecated/hyprland/hyprland-nixinator.nix new file mode 100644 index 00000000..e8c236f8 --- /dev/null +++ b/home/homemodules/1_deprecated/hyprland/hyprland-nixinator.nix @@ -0,0 +1,44 @@ +{ + keyboard = { + layout = "us"; + variant = "altgr-intl"; + option = "nodeadkeys"; + }; + + monitors = { + "DP-1" = { + width = 3440; + height = 1440; + rate = 165; + x = 1920; + y = 0; + scale = 1; + }; + + "DP-2" = { + width = 1920; + height = 1080; + rate = 60; + x = 0; + y = 0; + scale = 1; + }; + }; + + workspaces = { + "DP-1" = [1 2 3 4 5 6 7 8 9]; + "DP-2" = [10]; + }; + + autostart = { + delayed = [ + "fcitx5" + ]; + }; + + floating = [ + { + class = "fcitx"; + } + ]; +} diff --git a/home/homemodules/1_deprecated/hyprland/hyprland.nix b/home/homemodules/1_deprecated/hyprland/hyprland.nix new file mode 100644 index 00000000..167dca6c --- /dev/null +++ b/home/homemodules/1_deprecated/hyprland/hyprland.nix @@ -0,0 +1,186 @@ +{ + nixosConfig, + config, + lib, + pkgs, +}: { + enable = nixosConfig.programs.hyprland.enable; + dunst.enable = !config.homemodules.hyprpanel.enable; # Disable for hyprpanel + bars.enable = false; + dynamicCursor.enable = false; + trails.enable = true; + hyprspace.enable = false; # Always broken + hyprpanel.enable = true; + caelestia.enable = false; + + keybindings = { + main-mod = "SUPER"; + + bindings = lib.mergeAttrsList [ + # Use Rofi if we don't have caelestia + (lib.optionalAttrs (!config.homemodules.hyprland.caelestia.enable) { + "$mainMod, a" = ["exec, rofi -drun-show-actions -show drun"]; + "$mainMod, c" = ["exec, clipman pick --tool=rofi"]; + "$mainMod SHIFT, l" = ["exec, loginctl lock-session"]; + }) + + # Caelestia + (lib.optionalAttrs (config.homemodules.hyprland.caelestia.enable) { + "$mainMod, a" = ["exec, caelestia shell drawers toggle launcher"]; + # "$mainMod, c" = ["exec, caelestia clipboard"]; + "$mainMod SHIFT, l" = ["exec, caelestia shell lock lock"]; + + "$mainMod, escape" = ["exec, caelestia shell drawers toggle session"]; + }) + + { + # Applications + "$mainMod, t" = ["exec, kitty"]; + "$mainMod, e" = ["exec, kitty --title=Yazi yazi"]; + "$mainMod, n" = ["exec, neovide"]; + # "$mainMod, r" = ["exec, kitty --title=Rmpc rmpc"]; + "$mainMod CTRL, n" = ["exec, kitty --title=Navi navi"]; + "$mainMod SHIFT, n" = ["exec, neovide ${config.paths.dotfiles}/navi/christoph.cheat"]; + "$mainMod SHIFT, f" = ["exec, neovide ${config.paths.dotfiles}/flake.nix"]; + # "ALT, tab" = ["exec, rofi -show window"]; + + # Screenshots + "$mainMod, p" = ["exec, hyprpicker --autocopy --format=hex"]; + "$mainMod, s" = ["exec, grim -g \"$(slurp)\""]; + "$mainMod SHIFT, s" = ["exec, grim -g \"$(slurp)\" - | wl-copy"]; + + # Audio + ", XF86AudioRaiseVolume" = ["exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"]; + ", XF86AudioLowerVolume" = ["exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-"]; + ", XF86AudioPlay" = ["exec, playerctl play-pause"]; + ", XF86AudioPrev" = ["exec, playerctl previous"]; + ", XF86AudioNext" = ["exec, playerctl next"]; + + # Brightness + ", XF86MonBrightnessDown" = ["exec, hyprctl hyprsunset gamma -10"]; + ", XF86MonBrightnessUp" = ["exec, hyprctl hyprsunset gamma +10"]; + "$mainMod, XF86MonBrightnessDown" = ["exec, hyprctl hyprsunset temperature 5750"]; + "$mainMod, XF86MonBrightnessUp" = ["exec, hyprctl hyprsunset identity"]; + + "CTRL ALT, f" = let + hyprctl = "${config.wayland.windowManager.hyprland.package}/bin/hyprctl"; + grep = "${pkgs.gnugrep}/bin/grep"; + awk = "${pkgs.gawk}/bin/gawk"; + notify = "${pkgs.libnotify}/bin/notify-send"; + + toggleMouseFocus = pkgs.writeScriptBin "hypr-toggle-mouse-focus" '' + CURRENT=$(${hyprctl} getoption input:follow_mouse | ${grep} int | ${awk} -F' ' '{print $2}') + + if [[ "$CURRENT" == "1" ]]; then + ${hyprctl} keyword input:follow_mouse 0 + ${notify} "Disabled Mouse Focus!" + else + ${hyprctl} keyword input:follow_mouse 1 + ${notify} "Enabled Mouse Focus!" + fi + ''; + in ["exec, ${toggleMouseFocus}/bin/hypr-toggle-mouse-focus"]; + + # "CTRL ALT, t" = ["exec, bash -c 'systemctl --user restart hyprpanel.service'"]; + } + ]; + + ws-bindings = { + # "" = ""; + "1" = "1"; + "2" = "2"; + "3" = "3"; + "4" = "4"; + "5" = "5"; + "6" = "6"; + "7" = "7"; + "8" = "8"; + "9" = "9"; + "10" = "0"; + }; + + special-ws-bindings = { + "ferdium" = "x"; + "msty" = "z"; + "btop" = "b"; + "rmpc" = "r"; + }; + }; + + autostart = { + immediate = [ + "kitty --hold fastfetch" + "zeal" + "nextcloud --background" + "protonvpn-app" + + # "kdeconnect-indicator" # started by services.kdeconnect.indicator + ]; + + delayed = [ + "keepassxc" # The tray doesn't work when started too early + ]; + + special-silent = { + "ferdium" = ["ferdium"]; + "msty" = ["msty"]; + "btop" = ["kitty --title=Btop btop"]; + "rmpc" = ["kitty --title=Rmpc rmpc"]; + }; + }; + + windowrules = [ + # Fix jetbrains tooltip flicker + "match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, float 1" + "match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, no_initial_focus 1" + ]; + + workspacerules = { + "1" = []; + "2" = ["Zotero" "neovide" "code-url-handler"]; + "3" = ["obsidian"]; + "4" = ["firefox" "Google-chrome" "chromium-browser" "org.qutebrowser.qutebrowser"]; + "5" = ["steam"]; + "6" = ["steam_app_(.+)"]; + "7" = ["signal"]; + "8" = ["tidal-hifi"]; + "9" = ["discord"]; + "10" = ["python3"]; + }; + + floating = [ + {class = "org.kde.polkit-kde-authentication-agent-1";} + { + class = "thunar"; + title = "File Operation Progress"; + } + {class = "ffplay";} + {class = "Unity";} + ]; + + transparent-opacity = "0.75"; + + transparent = [ + "kitty" + "Alacritty" + "discord" + "signal" + "vesktop" + "Spotify" + "tidal-hifi" + "obsidian" + "firefox" + "org.qutebrowser.qutebrowser" + "jetbrains-clion" + "jetbrains-idea" + "jetbrains-pycharm" + "jetbrains-rustrover" + "jetbrains-rider" + "jetbrains-webstorm" + "code-url-handler" + "neovide" + "steam" + "ferdium" + "Msty" + ]; +} diff --git a/home/homemodules/hyprland/hyprlock.nix b/home/homemodules/1_deprecated/hyprland/hyprlock.nix similarity index 100% rename from home/homemodules/hyprland/hyprlock.nix rename to home/homemodules/1_deprecated/hyprland/hyprlock.nix diff --git a/home/homemodules/hyprland/hyprpaper.nix b/home/homemodules/1_deprecated/hyprland/hyprpaper.nix similarity index 100% rename from home/homemodules/hyprland/hyprpaper.nix rename to home/homemodules/1_deprecated/hyprland/hyprpaper.nix diff --git a/home/homemodules/hyprland/mappings.nix b/home/homemodules/1_deprecated/hyprland/mappings.nix similarity index 100% rename from home/homemodules/hyprland/mappings.nix rename to home/homemodules/1_deprecated/hyprland/mappings.nix diff --git a/home/homemodules/hyprland/options.nix b/home/homemodules/1_deprecated/hyprland/options.nix similarity index 100% rename from home/homemodules/hyprland/options.nix rename to home/homemodules/1_deprecated/hyprland/options.nix diff --git a/home/homemodules/hyprland/settings.nix b/home/homemodules/1_deprecated/hyprland/settings.nix similarity index 100% rename from home/homemodules/hyprland/settings.nix rename to home/homemodules/1_deprecated/hyprland/settings.nix diff --git a/home/homemodules/hyprpanel/default.nix b/home/homemodules/1_deprecated/hyprpanel/default.nix similarity index 100% rename from home/homemodules/hyprpanel/default.nix rename to home/homemodules/1_deprecated/hyprpanel/default.nix diff --git a/home/homemodules/hyprpanel/options.nix b/home/homemodules/1_deprecated/hyprpanel/options.nix similarity index 100% rename from home/homemodules/hyprpanel/options.nix rename to home/homemodules/1_deprecated/hyprpanel/options.nix diff --git a/home/homemodules/niri/noctalia.nix b/home/homemodules/1_deprecated/niri/noctalia.nix similarity index 100% rename from home/homemodules/niri/noctalia.nix rename to home/homemodules/1_deprecated/niri/noctalia.nix diff --git a/home/homemodules/default.nix b/home/homemodules/default.nix index f1b93d43..51e934fb 100644 --- a/home/homemodules/default.nix +++ b/home/homemodules/default.nix @@ -12,8 +12,6 @@ ./firefox ./fish ./git - ./hyprland - ./hyprpanel ./kitty ./lazygit ./mpd @@ -33,8 +31,8 @@ inputs.nixvim.homeModules.nixvim inputs.textfox.homeManagerModules.default # inputs.niri.homeModules.niri # Imported by system module - inputs.noctalia.homeModules.default - inputs.caelestia.homeManagerModules.default + # inputs.noctalia.homeModules.default + # inputs.caelestia.homeManagerModules.default inputs.dank-material-shell.homeModules.dank-material-shell inputs.dank-material-shell.homeModules.niri inputs.danksearch.homeModules.default diff --git a/home/homemodules/niri/default.nix b/home/homemodules/niri/default.nix index a6c1f12c..ed70e074 100644 --- a/home/homemodules/niri/default.nix +++ b/home/homemodules/niri/default.nix @@ -17,10 +17,6 @@ in { assertion = nixosConfig.programs.niri.enable; message = "Can't enable Niri config with Niri disabled!"; } - { - assertion = !(programs.noctalia-shell.enable && programs.dank-material-shell.enable); - message = "Can't enable Noctalia and DankMaterialShell at the same time!"; - } ]; gtk = { @@ -87,7 +83,6 @@ in { programs = { # TODO: Those should be modules with their own options - noctalia-shell = import ./noctalia.nix {inherit color;}; dank-material-shell = import ./dankMaterialShell.nix {inherit config color;}; dsearch.enable = false; diff --git a/home/homemodules/rofi/default.nix b/home/homemodules/rofi/default.nix index 631dd468..75b12fa5 100644 --- a/home/homemodules/rofi/default.nix +++ b/home/homemodules/rofi/default.nix @@ -35,168 +35,69 @@ in { sidebar-mode = false; }; - # https://github.com/davatorium/rofi/blob/next/doc/rofi-theme.5.markdown#basic-layout-structure - # https://github.com/davatorium/rofi/blob/next/doc/rofi-theme.5.markdown#base-widgets - theme = let - inherit (config.lib.formats.rasi) mkLiteral; - - trans = "rgba(0, 0, 0, 0)"; - in { - "element-text,element-icon,mode-switcher" = { - background-color = mkLiteral "inherit"; - text-color = mkLiteral "inherit"; - }; - - "window" = { - height = mkLiteral "50%"; - width = mkLiteral "33%"; - border = mkLiteral "2 solid 2 solid 2 solid 2 solid"; - border-radius = 6; - border-color = mkLiteral color.hexS.accent; - - # This is not opacity but translucency - background-color = mkLiteral "rgba(${color.rgbS.base}, 0.25)"; - }; - - "mainbox" = { - background-color = mkLiteral trans; - }; - - # TOP INPUT BAR START - - "inputbar" = { - children = builtins.map mkLiteral ["prompt" "entry"]; - background-color = mkLiteral trans; - }; - - "prompt" = { - background-color = mkLiteral color.hexS.accentHl; - padding = 6; - text-color = mkLiteral color.hexS.accentText; - border-radius = 3; - margin = mkLiteral "10px 0px 0px 10px"; - }; - - "entry" = { - padding = 6; - margin = mkLiteral "10px 10px 0px 5px"; - text-color = mkLiteral color.hexS.text; - background-color = mkLiteral trans; - border = mkLiteral "2 solid 2 solid 2 solid 2 solid"; - border-radius = 3; - border-color = mkLiteral color.hexS.accentHl; - }; - - # MESSAGEBOX (usually not visible) - - "message" = { - background-color = mkLiteral trans; - }; - - "error-message" = { - background-color = mkLiteral trans; - margin = mkLiteral "0px 0px 10px 0px"; - }; - - "textbox" = { - background-color = mkLiteral trans; - padding = 6; - margin = mkLiteral "10px 10px 0px 10px"; - border-radius = 3; - }; - - # LISTVIEW - - "listview" = { - # border = mkLiteral "0px 0px 0px"; - padding = 0; - margin = mkLiteral "5px 10px 10px 10px"; - columns = 1; - background-color = mkLiteral trans; - border = mkLiteral "2 solid 2 solid 2 solid 2 solid"; - border-radius = 3; - border-color = mkLiteral color.hexS.accentDim; - }; - - "element" = { - padding = 5; - margin = 0; - background-color = mkLiteral trans; - text-color = mkLiteral color.hexS.text; - # border-radius = 3; - }; - - "element-icon" = { - size = 25; - }; - - "element selected" = { - background-color = mkLiteral color.hexS.accentDim; - text-color = mkLiteral color.hexS.accentText; - }; - }; + theme = import ./theme.nix color config.lib.formats.rasi; }; - homemodules.hyprland.keybindings = let - vpn-menu = - pkgs.writeScriptBin - "rofi-menu-vpn" - (builtins.readFile ./menus/vpn.fish); - - keybinds-menu = - pkgs.writeScriptBin - "rofi-menu-keybinds" - (builtins.readFile ./menus/keybinds.fish); - - lectures-menu = - pkgs.writeScriptBin - "rofi-menu-lectures" - (builtins.readFile ./menus/lectures.fish); - - power-menu = - mylib.rofi.mkSimpleMenu - "power" - { - "󰤂 Poweroff" = "poweroff"; - "󰜉 Reboot" = "reboot"; - "󰌾 Lock" = "loginctl lock-session"; - " Reload Hyprpanel" = "systemctl --user restart hyprpanel.service"; - " Reload Hyprland" = "hyprctl reload"; - " Exit Hyprland" = "hyprctl dispatch exit"; - }; - - wallpaper-menu = let - setWallpaperOnMonitor = name: monitor: - "hyprctl hyprpaper wallpaper " - + "${monitor},${config.paths.nixflake}/wallpapers/${name}.jpg"; - - setWallpaperOnMonitors = monitors: name: { - ${name} = - monitors - |> builtins.map (setWallpaperOnMonitor name) - |> builtins.concatStringsSep " && "; - }; - - monitors = builtins.attrNames config.homemodules.hyprland.monitors; - in - mylib.rofi.mkSimpleMenu - "wall" - (color.wallpapers - |> builtins.map (setWallpaperOnMonitors monitors) - |> lib.mergeAttrsList); - in - lib.mkIf (!config.homemodules.hyprland.caelestia.enable) { - bindings = lib.mergeAttrsList [ - { - "$mainMod, escape" = ["exec, \"${power-menu}/bin/rofi-menu-power\""]; - "$mainMod, m" = ["exec, \"${keybinds-menu}/bin/rofi-menu-keybinds\""]; - "$mainMod, w" = ["exec, \"${wallpaper-menu}/bin/rofi-menu-wall\""]; - # "$mainMod, o" = ["exec, \"${lectures-menu}\""]; - } - (lib.optionalAttrs (!nixosConfig.systemmodules.network.useNetworkManager) { - "$mainMod, U" = ["exec, \"${vpn-menu}/rofi-menu-vpn\""]; - }) - ]; - }; + # homemodules.hyprland.keybindings = let + # vpn-menu = + # pkgs.writeScriptBin + # "rofi-menu-vpn" + # (builtins.readFile ./menus/vpn.fish); + # + # keybinds-menu = + # pkgs.writeScriptBin + # "rofi-menu-keybinds" + # (builtins.readFile ./menus/keybinds.fish); + # + # lectures-menu = + # pkgs.writeScriptBin + # "rofi-menu-lectures" + # (builtins.readFile ./menus/lectures.fish); + # + # power-menu = + # mylib.rofi.mkSimpleMenu + # "power" + # { + # "󰤂 Poweroff" = "poweroff"; + # "󰜉 Reboot" = "reboot"; + # "󰌾 Lock" = "loginctl lock-session"; + # " Reload Hyprpanel" = "systemctl --user restart hyprpanel.service"; + # " Reload Hyprland" = "hyprctl reload"; + # " Exit Hyprland" = "hyprctl dispatch exit"; + # }; + # + # wallpaper-menu = let + # setWallpaperOnMonitor = name: monitor: + # "hyprctl hyprpaper wallpaper " + # + "${monitor},${config.paths.nixflake}/wallpapers/${name}.jpg"; + # + # setWallpaperOnMonitors = monitors: name: { + # ${name} = + # monitors + # |> builtins.map (setWallpaperOnMonitor name) + # |> builtins.concatStringsSep " && "; + # }; + # + # monitors = builtins.attrNames config.homemodules.hyprland.monitors; + # in + # mylib.rofi.mkSimpleMenu + # "wall" + # (color.wallpapers + # |> builtins.map (setWallpaperOnMonitors monitors) + # |> lib.mergeAttrsList); + # in + # lib.mkIf (!config.homemodules.hyprland.caelestia.enable) { + # bindings = lib.mergeAttrsList [ + # { + # "$mainMod, escape" = ["exec, \"${power-menu}/bin/rofi-menu-power\""]; + # "$mainMod, m" = ["exec, \"${keybinds-menu}/bin/rofi-menu-keybinds\""]; + # "$mainMod, w" = ["exec, \"${wallpaper-menu}/bin/rofi-menu-wall\""]; + # # "$mainMod, o" = ["exec, \"${lectures-menu}\""]; + # } + # (lib.optionalAttrs (!nixosConfig.systemmodules.network.useNetworkManager) { + # "$mainMod, U" = ["exec, \"${vpn-menu}/rofi-menu-vpn\""]; + # }) + # ]; + # }; }; } diff --git a/home/homemodules/rofi/theme.nix b/home/homemodules/rofi/theme.nix new file mode 100644 index 00000000..cac70019 --- /dev/null +++ b/home/homemodules/rofi/theme.nix @@ -0,0 +1,101 @@ +# https://github.com/davatorium/rofi/blob/next/doc/rofi-theme.5.markdown#basic-layout-structure +# https://github.com/davatorium/rofi/blob/next/doc/rofi-theme.5.markdown#base-widgets +{ + color, + mkLiteral, +}: let + trans = "rgba(0, 0, 0, 0)"; +in { + "element-text,element-icon,mode-switcher" = { + background-color = mkLiteral "inherit"; + text-color = mkLiteral "inherit"; + }; + + "window" = { + height = mkLiteral "50%"; + width = mkLiteral "33%"; + border = mkLiteral "2 solid 2 solid 2 solid 2 solid"; + border-radius = 6; + border-color = mkLiteral color.hexS.accent; + + # This is not opacity but translucency + background-color = mkLiteral "rgba(${color.rgbS.base}, 0.25)"; + }; + + "mainbox" = { + background-color = mkLiteral trans; + }; + + # TOP INPUT BAR START + + "inputbar" = { + children = builtins.map mkLiteral ["prompt" "entry"]; + background-color = mkLiteral trans; + }; + + "prompt" = { + background-color = mkLiteral color.hexS.accentHl; + padding = 6; + text-color = mkLiteral color.hexS.accentText; + border-radius = 3; + margin = mkLiteral "10px 0px 0px 10px"; + }; + + "entry" = { + padding = 6; + margin = mkLiteral "10px 10px 0px 5px"; + text-color = mkLiteral color.hexS.text; + background-color = mkLiteral trans; + border = mkLiteral "2 solid 2 solid 2 solid 2 solid"; + border-radius = 3; + border-color = mkLiteral color.hexS.accentHl; + }; + + # MESSAGEBOX (usually not visible) + + "message" = { + background-color = mkLiteral trans; + }; + + "error-message" = { + background-color = mkLiteral trans; + margin = mkLiteral "0px 0px 10px 0px"; + }; + + "textbox" = { + background-color = mkLiteral trans; + padding = 6; + margin = mkLiteral "10px 10px 0px 10px"; + border-radius = 3; + }; + + # LISTVIEW + + "listview" = { + # border = mkLiteral "0px 0px 0px"; + padding = 0; + margin = mkLiteral "5px 10px 10px 10px"; + columns = 1; + background-color = mkLiteral trans; + border = mkLiteral "2 solid 2 solid 2 solid 2 solid"; + border-radius = 3; + border-color = mkLiteral color.hexS.accentDim; + }; + + "element" = { + padding = 5; + margin = 0; + background-color = mkLiteral trans; + text-color = mkLiteral color.hexS.text; + # border-radius = 3; + }; + + "element-icon" = { + size = 25; + }; + + "element selected" = { + background-color = mkLiteral color.hexS.accentDim; + text-color = mkLiteral color.hexS.accentText; + }; +}