diff --git a/flake.lock b/flake.lock index d6589ec..a58039b 100644 --- a/flake.lock +++ b/flake.lock @@ -1,140 +1,50 @@ { "nodes": { - "aagl": { - "inputs": { - "flake-compat": "flake-compat", - "nixpkgs": "nixpkgs", - "rust-overlay": "rust-overlay" - }, + "easy-hosts": { "locked": { - "lastModified": 1755609725, - "narHash": "sha256-r0Y5VDxpiA1AJy02VkmeCNudZ8/JJR1OP3ldtfce0ls=", - "owner": "ezKEa", - "repo": "aagl-gtk-on-nix", - "rev": "7566a0bcc55dbfaeb28791c06aa02060cf5bd0bf", + "lastModified": 1755470564, + "narHash": "sha256-KB1ZryVDoQcbIsItOf4WtxkHhh3ppj+XwMpSnt/2QHc=", + "owner": "tgirlcloud", + "repo": "easy-hosts", + "rev": "d0422bc7b3db26268982aa15d07e60370e76ee1d", "type": "github" }, "original": { - "owner": "ezKEa", - "repo": "aagl-gtk-on-nix", + "owner": "tgirlcloud", + "repo": "easy-hosts", "type": "github" } }, - "ags": { + "flake-parts": { "inputs": { - "astal": "astal", - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1756679577, - "narHash": "sha256-pkfftqE2CxVN6nKDZvlNdBxIkb/x5ch4wVfwZMYNGCM=", - "owner": "Aylur", - "repo": "ags", - "rev": "04d51ac4082af3ec47e8a803417a1a55b75151d7", - "type": "github" - }, - "original": { - "owner": "Aylur", - "repo": "ags", - "type": "github" - } - }, - "aquamarine": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "hyprwayland-scanner": [ - "hyprland", - "hyprwayland-scanner" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1755946532, - "narHash": "sha256-POePremlUY5GyA1zfbtic6XLxDaQcqHN6l+bIxdT5gc=", - "owner": "hyprwm", - "repo": "aquamarine", - "rev": "81584dae2df6ac79f6b6dae0ecb7705e95129ada", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "aquamarine", - "type": "github" - } - }, - "astal": { - "inputs": { - "nixpkgs": [ - "ags", + "nixpkgs-lib": [ "nixpkgs" ] }, "locked": { - "lastModified": 1756474652, - "narHash": "sha256-iiBU6itpEqE0spXeNJ3uJTfioSyKYjt5bNepykpDXTE=", - "owner": "aylur", - "repo": "astal", - "rev": "20bd8318e4136fbd3d4eb2d64dbabc3acbc915dd", + "lastModified": 1762980239, + "narHash": "sha256-8oNVE8TrD19ulHinjaqONf9QWCKK+w4url56cdStMpM=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "52a2caecc898d0b46b2b905f058ccc5081f842da", "type": "github" }, "original": { - "owner": "aylur", - "repo": "astal", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1747046372, - "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { - "flake": false, - "locked": { - "lastModified": 1747046372, - "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", + "owner": "hercules-ci", + "repo": "flake-parts", "type": "github" } }, "flake-utils": { "inputs": { - "systems": "systems_2" + "systems": "systems" }, "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { @@ -158,31 +68,11 @@ "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" - } - }, "home-manager": { "inputs": { - "nixpkgs": "nixpkgs_4" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { "lastModified": 1757075491, @@ -198,321 +88,50 @@ "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": 1755678602, - "narHash": "sha256-uEC5O/NIUNs1zmc1aH1+G3GRACbODjk2iS0ET5hXtuk=", - "owner": "hyprwm", - "repo": "hyprgraphics", - "rev": "157cc52065a104fc3b8fa542ae648b992421d1c7", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprgraphics", - "type": "github" - } - }, - "hyprland": { - "inputs": { - "aquamarine": "aquamarine", - "hyprcursor": "hyprcursor", - "hyprgraphics": "hyprgraphics", - "hyprland-protocols": "hyprland-protocols", - "hyprland-qtutils": "hyprland-qtutils", - "hyprlang": "hyprlang", - "hyprutils": "hyprutils", - "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": "nixpkgs_5", - "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems", - "xdph": "xdph" - }, - "locked": { - "lastModified": 1756977414, - "narHash": "sha256-Hz5S4fILpYd1smWDZ+uLYjHgW22v6JS/04j15I4cFZE=", - "ref": "refs/heads/main", - "rev": "4e785d12a91117cd5b255052799d1a051d9976c0", - "revCount": 6409, - "type": "git", - "url": "https://github.com/hyprwm/Hyprland" - }, - "original": { - "type": "git", - "url": "https://github.com/hyprwm/Hyprland" - } - }, - "hyprland-contrib": { - "inputs": { - "nixpkgs": "nixpkgs_6" - }, - "locked": { - "lastModified": 1755680610, - "narHash": "sha256-g7/g5o0spemkZCzPa8I21RgCmN0Kv41B5z9Z5HQWraY=", - "owner": "hyprwm", - "repo": "contrib", - "rev": "04721247f417256ca96acf28cdfe946cf1006263", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "contrib", - "type": "github" - } - }, - "hyprland-protocols": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1749046714, - "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprland-qt-support": { - "inputs": { - "hyprlang": [ - "hyprland", - "hyprland-qtutils", - "hyprlang" - ], - "nixpkgs": [ - "hyprland", - "hyprland-qtutils", - "nixpkgs" - ], - "systems": [ - "hyprland", - "hyprland-qtutils", - "systems" - ] - }, - "locked": { - "lastModified": 1749154592, - "narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=", - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qt-support", - "type": "github" - } - }, - "hyprland-qtutils": { - "inputs": { - "hyprland-qt-support": "hyprland-qt-support", - "hyprlang": [ - "hyprland", - "hyprlang" - ], - "hyprutils": [ - "hyprland", - "hyprland-qtutils", - "hyprlang", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753819801, - "narHash": "sha256-tHe6XeNeVeKapkNM3tcjW4RuD+tB2iwwoogWJOtsqTI=", - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "rev": "b308a818b9dcaa7ab8ccab891c1b84ebde2152bc", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-qtutils", - "type": "github" - } - }, - "hyprlang": { - "inputs": { - "hyprutils": [ - "hyprland", - "hyprutils" - ], - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1753622892, - "narHash": "sha256-0K+A+gmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA=", - "owner": "hyprwm", - "repo": "hyprlang", - "rev": "23f0debd2003f17bd65f851cd3f930cff8a8c809", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprlang", - "type": "github" - } - }, - "hyprutils": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1756117388, - "narHash": "sha256-oRDel6pNl/T2tI+nc/USU9ZP9w08dxtl7hiZxa0C/Wc=", - "owner": "hyprwm", - "repo": "hyprutils", - "rev": "b2ae3204845f5f2f79b4703b441252d8ad2ecfd0", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprutils", - "type": "github" - } - }, - "hyprwayland-scanner": { - "inputs": { - "nixpkgs": [ - "hyprland", - "nixpkgs" - ], - "systems": [ - "hyprland", - "systems" - ] - }, - "locked": { - "lastModified": 1755184602, - "narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=", - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprwayland-scanner", - "type": "github" - } - }, "lix": { "flake": false, "locked": { - "lastModified": 1729298361, - "narHash": "sha256-hiGtfzxFkDc9TSYsb96Whg0vnqBVV7CUxyscZNhed0U=", - "rev": "ad9d06f7838a25beec425ff406fe68721fef73be", + "lastModified": 1763415215, + "narHash": "sha256-20HAylsK5h/DiNMbYfL1xDjgzoMIFz3jCyoIjvoKL5I=", + "rev": "08b0ce8736510f816a25061c97d3ca51fb36d757", "type": "tarball", - "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/ad9d06f7838a25beec425ff406fe68721fef73be.tar.gz?rev=ad9d06f7838a25beec425ff406fe68721fef73be" + "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/08b0ce8736510f816a25061c97d3ca51fb36d757.tar.gz" }, "original": { "type": "tarball", - "url": "https://git.lix.systems/lix-project/lix/archive/2.91.1.tar.gz" + "url": "https://git.lix.systems/lix-project/lix/archive/main.tar.gz" } }, "lix-module": { "inputs": { "flake-utils": "flake-utils", "flakey-profile": "flakey-profile", - "lix": "lix", - "nixpkgs": "nixpkgs_7" + "lix": [ + "lix" + ], + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { - "lastModified": 1732605668, - "narHash": "sha256-DN5/166jhiiAW0Uw6nueXaGTueVxhfZISAkoxasmz/g=", - "rev": "f19bd752910bbe3a861c9cad269bd078689d50fe", + "lastModified": 1761960361, + "narHash": "sha256-FvuAw56NIVJpS3Kr8Wv9PpU4eehZMcdIVkxjStuYmqc=", + "rev": "c47f62187601ea2991b79a9bacdbfdf76cd29fbe", "type": "tarball", - "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/f19bd752910bbe3a861c9cad269bd078689d50fe.tar.gz" + "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/c47f62187601ea2991b79a9bacdbfdf76cd29fbe.tar.gz" }, "original": { "type": "tarball", - "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz" + "url": "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz" } }, "niri": { "inputs": { "niri-stable": "niri-stable", "niri-unstable": "niri-unstable", - "nixpkgs": "nixpkgs_8", + "nixpkgs": [ + "nixpkgs" + ], "nixpkgs-stable": "nixpkgs-stable", "xwayland-satellite-stable": "xwayland-satellite-stable", "xwayland-satellite-unstable": "xwayland-satellite-unstable" @@ -566,18 +185,15 @@ }, "nixpkgs": { "locked": { - "lastModified": 1754498491, - "narHash": "sha256-erbiH2agUTD0Z30xcVSFcDHzkRvkRXOQ3lb887bcVrs=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "c2ae88e026f9525daf89587f3cbee584b92b6134", - "type": "github" + "lastModified": 1763312402, + "narHash": "sha256-uuJnccye1O5FHnnHYBge1lN2Pq4Z2lp1E3+rc2zsUr4=", + "rev": "85a6c4a07faa12aaccd81b36ba9bfc2bec974fa1", + "type": "tarball", + "url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre897164.85a6c4a07faa/nixexprs.tar.xz" }, "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" + "type": "tarball", + "url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz" } }, "nixpkgs-stable": { @@ -596,206 +212,23 @@ "type": "github" } }, - "nixpkgs_10": { - "locked": { - "lastModified": 1744868846, - "narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1744536153, - "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1756542300, - "narHash": "sha256-tlOn88coG5fzdyqz6R93SQL5Gpq+m/DsWpekNFhqPQk=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "d7600c775f877cd87b4f5a831c28aa94137377aa", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1756542300, - "narHash": "sha256-tlOn88coG5fzdyqz6R93SQL5Gpq+m/DsWpekNFhqPQk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d7600c775f877cd87b4f5a831c28aa94137377aa", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1756266583, - "narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_6": { - "locked": { - "lastModified": 1712163089, - "narHash": "sha256-Um+8kTIrC19vD4/lUCN9/cU9kcOsD1O1m+axJqQPyMM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "fd281bd6b7d3e32ddfa399853946f782553163b5", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_7": { - "locked": { - "lastModified": 1729070438, - "narHash": "sha256-KOTTUfPkugH52avUvXGxvWy8ibKKj4genodIYUED+Kc=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "5785b6bb5eaae44e627d541023034e1601455827", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_8": { - "locked": { - "lastModified": 1756787288, - "narHash": "sha256-rw/PHa1cqiePdBxhF66V7R+WAP8WekQ0mCDG4CFqT8Y=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d0fc30899600b9b3466ddb260fd83deb486c32f1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_9": { - "locked": { - "lastModified": 1756787288, - "narHash": "sha256-rw/PHa1cqiePdBxhF66V7R+WAP8WekQ0mCDG4CFqT8Y=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d0fc30899600b9b3466ddb260fd83deb486c32f1", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "ref": "nixos-unstable", - "type": "indirect" - } - }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat_2", - "gitignore": "gitignore", - "nixpkgs": [ - "hyprland", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1755960406, - "narHash": "sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "e891a93b193fcaf2fc8012d890dc7f0befe86ec2", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, "root": { "inputs": { - "aagl": "aagl", - "ags": "ags", + "easy-hosts": "easy-hosts", + "flake-parts": "flake-parts", "home-manager": "home-manager", - "hyprland": "hyprland", - "hyprland-contrib": "hyprland-contrib", + "lix": "lix", "lix-module": "lix-module", "niri": "niri", - "nixpkgs": "nixpkgs_9", + "nixpkgs": "nixpkgs", "sops-nix": "sops-nix" } }, - "rust-overlay": { - "inputs": { - "nixpkgs": "nixpkgs_2" - }, - "locked": { - "lastModified": 1754575663, - "narHash": "sha256-afOx8AG0KYtw7mlt6s6ahBBy7eEHZwws3iCRoiuRQS4=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "6db0fb0e9cec2e9729dc52bf4898e6c135bb8a0f", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, "sops-nix": { "inputs": { - "nixpkgs": "nixpkgs_10" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { "lastModified": 1754988908, @@ -812,21 +245,6 @@ } }, "systems": { - "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_2": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -841,47 +259,6 @@ "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": 1755354946, - "narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=", - "owner": "hyprwm", - "repo": "xdg-desktop-portal-hyprland", - "rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0", - "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 eeb4bd0..37dafc1 100644 --- a/flake.nix +++ b/flake.nix @@ -1,94 +1,89 @@ { - inputs = { - nixpkgs.url = "nixpkgs/nixos-unstable"; + outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } { + imports = with inputs; [ + easy-hosts.flakeModule + home-manager.flakeModules.home-manager + ]; - home-manager.url = "github:nix-community/home-manager"; + systems = [ "x86_64-linux" ]; + easy-hosts = { + autoConstruct = true; + path = ./hosts; + onlySystem = "x86_64-nixos"; - lix-module.url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.1-2.tar.gz"; + shared = { + modules = [ + inputs.lix-module.nixosModules.default + ./nixosModules + ]; + }; + }; - hyprland.url = "git+https://github.com/hyprwm/Hyprland"; - hyprland-contrib.url = "github:hyprwm/contrib"; - - niri.url = "github:sodiboo/niri-flake"; - - sops-nix.url = "github:Mic92/sops-nix"; - ags.url = "github:Aylur/ags"; - aagl.url = "github:ezKEa/aagl-gtk-on-nix"; + flake = { + homeConfigurations = let + userConfig = system: extraModules: + inputs.home-manager.lib.homeManagerConfiguration { + extraSpecialArgs = { inherit inputs; }; + pkgs = inputs.nixpkgs.legacyPackages.${system}; + modules = [ ./hmModules ] ++ extraModules; + }; + in { + "pan@juri" = userConfig "x86_64-linux" [ ./users/juri ]; + "pan@jibril" = userConfig "x86_64-linux" [ ./users/jibril ]; + "pan@onizuka" = userConfig "x86_64-linux" [ ./users/onizuka ]; + }; + }; }; - outputs = { self, home-manager, nixpkgs, lix-module, ... }@inputs: let - system = "x86_64-linux"; - pkgs = nixpkgs.legacyPackages.${system}; - fs = pkgs.lib.fileset; - st = pkgs.lib.strings; - as = pkgs.lib.attrsets; + inputs = { + # Save data with this url. Source: + # at://did:plc:mojgntlezho4qt7uvcfkdndg/app.bsky.feed.post/3loogwsoqok2w + # cid: bafyreidhuuxs3cuabneygtxir65hnd7hvy4hwj5rwrylpwmp7jhxciasve + nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; - hosts = let - hostFilter = { name, ...}: name == "host.nix"; - hostPaths = fs.toList (fs.fileFilter hostFilter ./hosts); - # Assumes dir structure is start_of_path/hosts/hostname/host.nix - extractHostName = path: builtins.unsafeDiscardStringContext ( - st.removeSuffix "/host.nix" ( - builtins.elemAt (st.splitString "/hosts/" path) 1 - ) - ); - in builtins.listToAttrs (map (path: { - value = path; - name = extractHostName path; - }) hostPaths); - - users = let - userFilter = { name, ...}: name == "user.nix"; - userPaths = fs.toList (fs.fileFilter userFilter ./hosts); - in builtins.listToAttrs (map (path: let - dirsAndFiles = st.splitString "/" path; - dAFLength = builtins.length dirsAndFiles; - # Assumes dir structure is start_of_path/hosts/hostname/users/username/user.nix - hostname = builtins.unsafeDiscardStringContext ( - builtins.elemAt dirsAndFiles (dAFLength - 4)); - username = builtins.unsafeDiscardStringContext ( - builtins.elemAt dirsAndFiles (dAFLength - 2)); - in { - name = username + "@" + hostname; - value = path; - } - ) userPaths); - - userConfig = usernameAtHostname: userpath: home-manager.lib.homeManagerConfiguration { - inherit pkgs; - extraSpecialArgs = { - inherit inputs; - inherit usernameAtHostname; - }; - modules = [ - ./hmModules - userpath - ]; + home-manager = { + type = "github"; + owner = "nix-community"; + repo = "home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; }; - hostConfig = hostname: hostpath: nixpkgs.lib.nixosSystem { - specialArgs = let - hostFilteredUsers = as.filterAttrs ( - name: value: let - userHostname = builtins.elemAt (st.splitString "@" name) 1; - in userHostname == hostname - ) users; - - hostUsers = as.mapAttrsToList ( - name: value: builtins.elemAt (st.splitString "@" name) 0 - ) hostFilteredUsers; - in { - inherit inputs; - inherit hostname; - "usernameList" = hostUsers; - }; - modules = [ - ./nixosModules - hostpath - ]; + flake-parts = { + type = "github"; + owner = "hercules-ci"; + repo = "flake-parts"; + inputs.nixpkgs-lib.follows = "nixpkgs"; + }; + + easy-hosts = { + type = "github"; + owner = "tgirlcloud"; + repo = "easy-hosts"; + }; + + lix = { + url = "https://git.lix.systems/lix-project/lix/archive/main.tar.gz"; + flake = false; + }; + + lix-module = { + url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.lix.follows = "lix"; + }; + + niri = { + type = "github"; + owner = "sodiboo"; + repo = "niri-flake"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + sops-nix = { + type = "github"; + owner = "Mic92"; + repo = "sops-nix"; + inputs.nixpkgs.follows = "nixpkgs"; }; - in { - nixosConfigurations = builtins.mapAttrs (name: path: hostConfig name path) hosts; - homeConfigurations = builtins.mapAttrs (name: path: userConfig name path) users; }; } diff --git a/hmModules/apps/hypr/app.nix b/hmModules/apps/hypr/app.nix index 85e7b6f..8bdc848 100644 --- a/hmModules/apps/hypr/app.nix +++ b/hmModules/apps/hypr/app.nix @@ -1,5 +1,5 @@ -{ config, inputs, pkgs, lib, ... }: -let rootPath = ./.; in +{ config, lib, ... }: +# let rootPath = ./.; in { options.hypr = { enable = lib.mkEnableOption "Enables hyprland"; @@ -34,220 +34,224 @@ let rootPath = ./.; in polkit.enable = lib.mkEnableOption "Enables polkit agent"; screenshot.enable = lib.mkEnableOption "Enables Screenshotting"; }; + + config.warnings = lib.mkIf config.hypr.enable ['' + hypr.* has been deprecated to allow the removal of hyprland from flake inputs. + '']; - imports = [ inputs.hyprland.homeManagerModules.default ]; + # imports = [ inputs.hyprland.homeManagerModules.default ]; - config = let - lopts = lib.lists.optionals; - in { - nix.settings = { - substituters = ["https://hyprland.cachix.org"]; - trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; - }; - } // lib.mkIf config.hypr.enable { - wayland.windowManager.hyprland = let - mod = config.hypr.mod_key; - # p-s = let - # chw = config.hypr.workspace; - # findDefaultWs = id: if (builtins.hasAttr id chw.workspaces) - # then (builtins.head (builtins.getAttr id chw.workspaces)) - # else ""; - # in with config.hypr.workspace; lib.mkIf primary-secondary.enable { - # primaryWs = findDefaultWs primary-secondary.primary; - # secondaryWs = findDefaultWs primary-secondary.secondary; - # }; - in { - enable = true; - settings = { - monitor = config.hypr.monitor.details; - workspace = let - wsMonitor = monitor: wrksps: map (ws: - if ws == (builtins.head wrksps) - then "name:"+ws+", monitor:"+monitor+", persistent:true, default:true" - else "name:"+ws+", monitor:"+monitor+", persistent:true" - ) wrksps; - makeRules = wsAttr: builtins.concatLists (builtins.attrValues ( - builtins.mapAttrs wsMonitor wsAttr - )); - in makeRules config.hypr.workspace.workspaces - ++ [ - "w[t1], gapsout:0, gapsin:0" - "w[tg1], gapsout:0, gapsin:0" - "f[1], gapsout:0, gapsin:0" - ] - ++ lopts config.hypr.workspace.scratchpad.enable [ - "special:scratch, on-created-empty: [float; size 50% 50%; center] ${config.defaultApps.terminal}" - ]; - input = { - accel_profile = "flat"; - sensitivity = config.hypr.mouse.sensitivity; - }; - general = { - gaps_in = 3; - gaps_out = 3; - border_size = 2; - "col.active_border" = "rgb(F5C2E7)"; - "col.inactive_border" = "rgb(1E1D2F)"; - layout = "master"; - }; - decoration = { - rounding = 2; - blur = { - enabled = true; - size = 12; - passes = 2; - special = true; - }; - }; - animation = [ - "windows, 1, 4, default, popin 50%" - "windowsOut, 1, 4, default, popin 50%" - "windowsMove, 1, 3, default" - "border, 1, 3, default" - "fade, 1, 3, default" - "workspaces, 1, 3, default" - ]; - master = { - mfact = config.hypr.master.mfact; - }; - misc = { - focus_on_activate = true; - }; - - exec-once = lopts config.hypr.polkit.enable [ - "${pkgs.kdePackages.polkit-kde-agent-1}/bin/libexec/polkit-kde-authentication-agent-1" - ] ++ lopts config.hypr.background.enable [ - "${pkgs.swww}/bin/swww-daemon" - "${pkgs.swww}/bin/swww img ${config.hypr.background.path}" - ] ++ lopts config.ags.enable [ - "ags" - ] ++ lopts config.beeper.enable [ - "[workspace name:chat silent] Beeper" - ]; - - env = with config.hypr; [ - # "HYPR_MON_PRIMARY, ${workspace.primary-secondary.primary}" - # "HYPR_MON_SECONDARY, ${workspace.primary-secondary.secondary}" - "HYPR_WORK_DB, ${config.xdg.cacheHome}/hypr/workspace.db" - ] ++ lopts cursor.enable [ - "HYPRCURSOR_THEME,${cursor.theme}" - "HYPRCURSOR_SIZE,${cursor.size}" - ] ++ lopts config.nvidia.enable [ - "LIBVA_DRIVER_NAME,nvidia" - "XDG_SESSION_TYPE,wayland" - "GBM_BACKEND,nvidia-drm" - "__GLX_VENDOR_LIBRARY_NAME,nvidia" - "WLR_RENDERER_ALLOW_SOFTWARE,1" - "WLR_DRM_DEVICES,/dev/dri/card1" - ]; - - windowrulev2 = let - workspaceDefaults = wsname: applist: map ( - app: "workspace " + wsname + ", " + app - ) applist; - allDefault = wsAttr: builtins.concatLists (builtins.attrValues ( - builtins.mapAttrs workspaceDefaults wsAttr - )); - in allDefault config.hypr.workspace.defaults - ++ [ - "bordersize 0, floating:0, onworkspace:w[t1]" - "rounding 0, floating:0, onworkspace:w[t1]" - "bordersize 0, floating:0, onworkspace:w[tg1]" - "rounding 0, floating:0, onworkspace:w[tg1]" - "bordersize 0, floating:0, onworkspace:f[1]" - "rounding 0, floating:0, onworkspace:f[1]" - ] - ++ lopts config.hypr.xwayland.videobridge.enable [ - "opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$" - "noanim,class:^(xwaylandvideobridge)$" - "noinitialfocus,class:^(xwaylandvideobridge)$" - "maxsize 1 1,class:^(xwaylandvideobridge)$" - "noblur,class:^(xwaylandvideobridge)$" - ] ++ map (id: "opacity 1 override, " + id) config.hypr.windows.opaque - ++ [ - "opacity 0.94 fullscreen:0" - "opacity 0.79 override, class:^(${config.defaultApps.terminal})$" - ]; - - # 1, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh home - # 2, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh web - # 3, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh med - # 4, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh game - # 5, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh etc - # _, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh hell - # TAB, exec, $XDG_CONFIG_HOME/hypr/scripts/changesecondary.xsh - # - # SHIFT, 1, movetoworkspacesilent, name:home - # SHIFT, 2, movetoworkspacesilent, name:web - # SHIFT, 3, movetoworkspacesilent, name:med - # SHIFT, 4, movetoworkspacesilent, name:game - # SHIFT, TAB, movetoworkspacesilent, r-1 - - bind = let - modPrefix = kb: if (lib.strings.hasPrefix "&" kb) - then ("${mod}" + kb) - else ("${mod}, " + kb); - in map modPrefix ([ - "Return, exec, ${config.defaultApps.terminal}" - "&SHIFT, Q, exit" - "h, focusmonitor, l" - "l, focusmonitor, r" - "j, cyclenext," - "k, cyclenext, prev" - "&SHIFT, h, movecurrentworkspacetomonitor, -1" - "&SHIFT, l, movecurrentworkspacetomonitor, +1" - "&SHIFT, j, swapnext," - "&SHIFT, k, swapnext, prev" - "c, killactive" - "f, togglefloating" - "&SHIFT, f, fullscreen" - ] ++ (let - workspaces = builtins.concatLists ( - builtins.attrValues config.hypr.workspace.workspaces); - wsBinds = with builtins; wrksps: depth: if depth > (length wrksps) - then [] - else let ws = builtins.elemAt wrksps (depth -1); in [ - "${toString depth}, workspace, name:${ws}" - "&SHIFT, ${toString depth}, movetoworkspacesilent, name:${ws}" - ] ++ wsBinds wrksps (depth + 1); - in wsBinds workspaces 1) ++ lopts config.rofi.enable [ - "&SHIFT, return, exec, ${pkgs.rofi}/bin/rofi -show run" - ] ++ lopts config.hypr.screenshot.enable [ - "P, exec, ${pkgs.grimblast}/bin/grimblast --freeze copy area" - "&SHIFT, P, exec, ${pkgs.grimblast}/bin/grimblast --freeze copysave area" - ] ++ lopts config.hypr.workspace.scratchpad.enable [ - "i, togglespecialworkspace, scratch" - ]); - - bindm = map (kb: "${mod}, " + kb) [ - "mouse:272, movewindow" - "mouse:273, movewindow" - ]; - }; - }; - - home.packages = with pkgs; [ - wlr-randr # Xrandr for wayland - wl-clipboard # Clipboard manager for wayland - ] ++ lopts config.hypr.xwayland.videobridge.enable [ - kdePackages.xwaylandvideobridge - ] ++ lopts config.hypr.cursor.enable [ - hyprcursor - ] ++ lopts config.hypr.screenshot.enable [ - hyprpicker # Colorpicker, needed for screenshot tool - inputs.hyprland-contrib.packages.${pkgs.system}.grimblast - ]; - - xdg.configFile."hypr-scripts" = { - source = rootPath + "/scripts"; - target = "hypr/scripts"; - executable = true; - }; - - xdg.dataFile."hypr-icons" = lib.mkIf config.hypr.cursor.enable { - source = rootPath + "/icons"; - target = "icons/"; - recursive = true; - }; - }; + # config = let + # lopts = lib.lists.optionals; + # in { + # nix.settings = { + # substituters = ["https://hyprland.cachix.org"]; + # trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; + # }; + # } // lib.mkIf config.hypr.enable { + # wayland.windowManager.hyprland = let + # mod = config.hypr.mod_key; + # # p-s = let + # # chw = config.hypr.workspace; + # # findDefaultWs = id: if (builtins.hasAttr id chw.workspaces) + # # then (builtins.head (builtins.getAttr id chw.workspaces)) + # # else ""; + # # in with config.hypr.workspace; lib.mkIf primary-secondary.enable { + # # primaryWs = findDefaultWs primary-secondary.primary; + # # secondaryWs = findDefaultWs primary-secondary.secondary; + # # }; + # in { + # enable = true; + # settings = { + # monitor = config.hypr.monitor.details; + # workspace = let + # wsMonitor = monitor: wrksps: map (ws: + # if ws == (builtins.head wrksps) + # then "name:"+ws+", monitor:"+monitor+", persistent:true, default:true" + # else "name:"+ws+", monitor:"+monitor+", persistent:true" + # ) wrksps; + # makeRules = wsAttr: builtins.concatLists (builtins.attrValues ( + # builtins.mapAttrs wsMonitor wsAttr + # )); + # in makeRules config.hypr.workspace.workspaces + # ++ [ + # "w[t1], gapsout:0, gapsin:0" + # "w[tg1], gapsout:0, gapsin:0" + # "f[1], gapsout:0, gapsin:0" + # ] + # ++ lopts config.hypr.workspace.scratchpad.enable [ + # "special:scratch, on-created-empty: [float; size 50% 50%; center] ${config.defaultApps.terminal}" + # ]; + # input = { + # accel_profile = "flat"; + # sensitivity = config.hypr.mouse.sensitivity; + # }; + # general = { + # gaps_in = 3; + # gaps_out = 3; + # border_size = 2; + # "col.active_border" = "rgb(F5C2E7)"; + # "col.inactive_border" = "rgb(1E1D2F)"; + # layout = "master"; + # }; + # decoration = { + # rounding = 2; + # blur = { + # enabled = true; + # size = 12; + # passes = 2; + # special = true; + # }; + # }; + # animation = [ + # "windows, 1, 4, default, popin 50%" + # "windowsOut, 1, 4, default, popin 50%" + # "windowsMove, 1, 3, default" + # "border, 1, 3, default" + # "fade, 1, 3, default" + # "workspaces, 1, 3, default" + # ]; + # master = { + # mfact = config.hypr.master.mfact; + # }; + # misc = { + # focus_on_activate = true; + # }; + # + # exec-once = lopts config.hypr.polkit.enable [ + # "${pkgs.kdePackages.polkit-kde-agent-1}/bin/libexec/polkit-kde-authentication-agent-1" + # ] ++ lopts config.hypr.background.enable [ + # "${pkgs.swww}/bin/swww-daemon" + # "${pkgs.swww}/bin/swww img ${config.hypr.background.path}" + # ] ++ lopts config.ags.enable [ + # "ags" + # ] ++ lopts config.beeper.enable [ + # "[workspace name:chat silent] Beeper" + # ]; + # + # env = with config.hypr; [ + # # "HYPR_MON_PRIMARY, ${workspace.primary-secondary.primary}" + # # "HYPR_MON_SECONDARY, ${workspace.primary-secondary.secondary}" + # "HYPR_WORK_DB, ${config.xdg.cacheHome}/hypr/workspace.db" + # ] ++ lopts cursor.enable [ + # "HYPRCURSOR_THEME,${cursor.theme}" + # "HYPRCURSOR_SIZE,${cursor.size}" + # ] ++ lopts config.nvidia.enable [ + # "LIBVA_DRIVER_NAME,nvidia" + # "XDG_SESSION_TYPE,wayland" + # "GBM_BACKEND,nvidia-drm" + # "__GLX_VENDOR_LIBRARY_NAME,nvidia" + # "WLR_RENDERER_ALLOW_SOFTWARE,1" + # "WLR_DRM_DEVICES,/dev/dri/card1" + # ]; + # + # windowrulev2 = let + # workspaceDefaults = wsname: applist: map ( + # app: "workspace " + wsname + ", " + app + # ) applist; + # allDefault = wsAttr: builtins.concatLists (builtins.attrValues ( + # builtins.mapAttrs workspaceDefaults wsAttr + # )); + # in allDefault config.hypr.workspace.defaults + # ++ [ + # "bordersize 0, floating:0, onworkspace:w[t1]" + # "rounding 0, floating:0, onworkspace:w[t1]" + # "bordersize 0, floating:0, onworkspace:w[tg1]" + # "rounding 0, floating:0, onworkspace:w[tg1]" + # "bordersize 0, floating:0, onworkspace:f[1]" + # "rounding 0, floating:0, onworkspace:f[1]" + # ] + # ++ lopts config.hypr.xwayland.videobridge.enable [ + # "opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$" + # "noanim,class:^(xwaylandvideobridge)$" + # "noinitialfocus,class:^(xwaylandvideobridge)$" + # "maxsize 1 1,class:^(xwaylandvideobridge)$" + # "noblur,class:^(xwaylandvideobridge)$" + # ] ++ map (id: "opacity 1 override, " + id) config.hypr.windows.opaque + # ++ [ + # "opacity 0.94 fullscreen:0" + # "opacity 0.79 override, class:^(${config.defaultApps.terminal})$" + # ]; + # + # # 1, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh home + # # 2, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh web + # # 3, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh med + # # 4, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh game + # # 5, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh etc + # # _, exec, $XDG_CONFIG_HOME/hypr/scripts/changeprimary.xsh hell + # # TAB, exec, $XDG_CONFIG_HOME/hypr/scripts/changesecondary.xsh + # # + # # SHIFT, 1, movetoworkspacesilent, name:home + # # SHIFT, 2, movetoworkspacesilent, name:web + # # SHIFT, 3, movetoworkspacesilent, name:med + # # SHIFT, 4, movetoworkspacesilent, name:game + # # SHIFT, TAB, movetoworkspacesilent, r-1 + # + # bind = let + # modPrefix = kb: if (lib.strings.hasPrefix "&" kb) + # then ("${mod}" + kb) + # else ("${mod}, " + kb); + # in map modPrefix ([ + # "Return, exec, ${config.defaultApps.terminal}" + # "&SHIFT, Q, exit" + # "h, focusmonitor, l" + # "l, focusmonitor, r" + # "j, cyclenext," + # "k, cyclenext, prev" + # "&SHIFT, h, movecurrentworkspacetomonitor, -1" + # "&SHIFT, l, movecurrentworkspacetomonitor, +1" + # "&SHIFT, j, swapnext," + # "&SHIFT, k, swapnext, prev" + # "c, killactive" + # "f, togglefloating" + # "&SHIFT, f, fullscreen" + # ] ++ (let + # workspaces = builtins.concatLists ( + # builtins.attrValues config.hypr.workspace.workspaces); + # wsBinds = with builtins; wrksps: depth: if depth > (length wrksps) + # then [] + # else let ws = builtins.elemAt wrksps (depth -1); in [ + # "${toString depth}, workspace, name:${ws}" + # "&SHIFT, ${toString depth}, movetoworkspacesilent, name:${ws}" + # ] ++ wsBinds wrksps (depth + 1); + # in wsBinds workspaces 1) ++ lopts config.rofi.enable [ + # "&SHIFT, return, exec, ${pkgs.rofi}/bin/rofi -show run" + # ] ++ lopts config.hypr.screenshot.enable [ + # "P, exec, ${pkgs.grimblast}/bin/grimblast --freeze copy area" + # "&SHIFT, P, exec, ${pkgs.grimblast}/bin/grimblast --freeze copysave area" + # ] ++ lopts config.hypr.workspace.scratchpad.enable [ + # "i, togglespecialworkspace, scratch" + # ]); + # + # bindm = map (kb: "${mod}, " + kb) [ + # "mouse:272, movewindow" + # "mouse:273, movewindow" + # ]; + # }; + # }; + # + # home.packages = with pkgs; [ + # wlr-randr # Xrandr for wayland + # wl-clipboard # Clipboard manager for wayland + # ] ++ lopts config.hypr.xwayland.videobridge.enable [ + # kdePackages.xwaylandvideobridge + # ] ++ lopts config.hypr.cursor.enable [ + # hyprcursor + # ] ++ lopts config.hypr.screenshot.enable [ + # hyprpicker # Colorpicker, needed for screenshot tool + # inputs.hyprland-contrib.packages.${pkgs.system}.grimblast + # ]; + # + # xdg.configFile."hypr-scripts" = { + # source = rootPath + "/scripts"; + # target = "hypr/scripts"; + # executable = true; + # }; + # + # xdg.dataFile."hypr-icons" = lib.mkIf config.hypr.cursor.enable { + # source = rootPath + "/icons"; + # target = "icons/"; + # recursive = true; + # }; + # }; } diff --git a/hmModules/apps/lf/app.nix b/hmModules/apps/lf/app.nix index f4ff3da..ecc428e 100644 --- a/hmModules/apps/lf/app.nix +++ b/hmModules/apps/lf/app.nix @@ -33,7 +33,7 @@ relativenumber = true; }; commands = { - dragon-out = ''%${pkgs.xdragon}/bin/xdragon -a -x "$fx"''; + dragon-out = ''%${pkgs.dragon-drop}/bin/dragon-drop -a -x "$fx"''; trash = lib.mkIf config.trash.enable '' %${pkgs.trash-cli}/bin/trash "$fx" ''; diff --git a/hmModules/automatic/default.nix b/hmModules/automatic/default.nix index f974b21..18c78ef 100644 --- a/hmModules/automatic/default.nix +++ b/hmModules/automatic/default.nix @@ -1,4 +1,4 @@ -{ config, lib, usernameAtHostname, ... }: +{ config, lib, ... }: { options = { @@ -9,17 +9,15 @@ browser = lib.mkOption { default = ""; }; }; }; - config = let - st = lib.strings; - in { + config = { # Let Home Manager install and manage itself. programs.home-manager.enable = true; nixpkgs.config.allowUnfree = true; home.stateVersion = "23.05"; home = { - username = builtins.elemAt (st.splitString "@" usernameAtHostname) 0; - homeDirectory = "/home/" + config.home.username; + username = "pan"; + homeDirectory = "/home/pan"; packages = config.extraPkgs; }; diff --git a/hmModules/services/widgets/ags/default.nix b/hmModules/services/widgets/ags/default.nix index 5d248d1..5403b1e 100644 --- a/hmModules/services/widgets/ags/default.nix +++ b/hmModules/services/widgets/ags/default.nix @@ -1,25 +1,30 @@ -{ config, inputs, pkgs, lib, ... }: +{ config, lib, ... }: { options.ags = { enable = lib.mkEnableOption "Enable ags"; }; + + config.warnings = lib.mkIf config.ags.enable ['' + ags.enable has been deprecated to allow the removal of ags from flake + inputs. + '']; - imports = [ inputs.ags.homeManagerModules.default ]; + # imports = [ inputs.ags.homeManagerModules.default ]; - config = lib.mkIf config.ags.enable { - home.packages = with pkgs; [ - libnotify # Notifications through ags - ]; - programs.ags = { - enable = true; - configDir = ./config; - - extraPackages = with pkgs; [ - gtksourceview - webkitgtk - accountsservice - ]; - }; - }; + # config = lib.mkIf config.ags.enable { + # home.packages = with pkgs; [ + # libnotify # Notifications through ags + # ]; + # programs.ags = { + # enable = true; + # configDir = ./config; + # + # extraPackages = with pkgs; [ + # gtksourceview + # webkitgtk + # accountsservice + # ]; + # }; + # }; } diff --git a/hosts/jibril/host.nix b/hosts/jibril/default.nix similarity index 100% rename from hosts/jibril/host.nix rename to hosts/jibril/default.nix diff --git a/hosts/juri/host.nix b/hosts/juri/default.nix similarity index 100% rename from hosts/juri/host.nix rename to hosts/juri/default.nix diff --git a/hosts/onizuka/host.nix b/hosts/onizuka/default.nix similarity index 91% rename from hosts/onizuka/host.nix rename to hosts/onizuka/default.nix index d2dbc49..46a9717 100644 --- a/hosts/onizuka/host.nix +++ b/hosts/onizuka/default.nix @@ -20,8 +20,6 @@ steam.enable = true; steam.gamemode = true; - aagl.enable = true; - aagl.honkai-rail = true; input-remapper.enable = true; postgres.enable = true; diff --git a/nixosModules/apps/animelauncher/app.nix b/nixosModules/apps/animelauncher/app.nix index 5cf1a9b..27f1406 100644 --- a/nixosModules/apps/animelauncher/app.nix +++ b/nixosModules/apps/animelauncher/app.nix @@ -1,4 +1,4 @@ -{ config, inputs, lib, ... }: +{ config, lib, ... }: { options.aagl = { @@ -12,16 +12,21 @@ "Enables honkai 3rd impact"; }; - imports = [ inputs.aagl.nixosModules.default ]; + # imports = [ inputs.aagl.nixosModules.default ]; - config = lib.mkIf config.aagl.enable { - nix.settings = inputs.aagl.nixConfig; + config.warnings = lib.mkIf (config.aagl.enable || config.aagl.honkai-rail || + config.aagl.genshin || config.aagl.honkai-3rd) ['' + aagl.* has been deprecated to allow the removal of aagl from flake inputs. + '']; - programs.honkers-railway-launcher.enable = - lib.mkIf config.aagl.honkai-rail true; - programs.anime-game-launcher.enable = - lib.mkIf config.aagl.genshin true; - programs.honkers-launcher.enable = - lib.mkIf config.aagl.honkai-3rd true; - }; + # config = lib.mkIf config.aagl.enable { + # nix.settings = inputs.aagl.nixConfig; + # + # programs.honkers-railway-launcher.enable = + # lib.mkIf config.aagl.honkai-rail true; + # programs.anime-game-launcher.enable = + # lib.mkIf config.aagl.genshin true; + # programs.honkers-launcher.enable = + # lib.mkIf config.aagl.honkai-3rd true; + # }; } diff --git a/nixosModules/automatic/default.nix b/nixosModules/automatic/default.nix index 2f80ace..2bbeffd 100644 --- a/nixosModules/automatic/default.nix +++ b/nixosModules/automatic/default.nix @@ -1,4 +1,4 @@ -{ config, pkgs, lib, hostname, usernameList, ... }: +{ config, pkgs, lib, ... }: { options.system = { @@ -22,7 +22,6 @@ boot.loader.efi.canTouchEfiVariables = true; }) { - networking.hostName = hostname; system.stateVersion = lib.mkDefault "23.05"; time.timeZone = config.system.timezone; @@ -39,24 +38,24 @@ # XDG Compliance nix.settings.use-xdg-base-directories = true; - users = { - users = builtins.listToAttrs (map ( - user: { - name = user; - value = { - name = user; - isNormalUser = true; - extraGroups = [ "network" ]; - }; - } - ) usernameList); - groups = { - wheel = { - members = config.system.users.bigWheels; - }; - network = { }; - }; - }; + # users = { + # users = builtins.listToAttrs (map ( + # user: { + # name = user; + # value = { + # name = user; + # isNormalUser = true; + # extraGroups = [ "network" ]; + # }; + # } + # ) usernameList); + # groups = { + # wheel = { + # members = config.system.users.bigWheels; + # }; + # network = { }; + # }; + # }; fonts = { enableDefaultPackages = true; diff --git a/nixosModules/services/hyprland/service.nix b/nixosModules/services/hyprland/service.nix index 779a8fe..3d13ac0 100644 --- a/nixosModules/services/hyprland/service.nix +++ b/nixosModules/services/hyprland/service.nix @@ -1,4 +1,4 @@ -{ inputs, config, lib, ... }: +{ config, lib, ... }: { @@ -6,18 +6,14 @@ enable = lib.mkEnableOption "Enables hyprland"; }; - imports = [ - inputs.hyprland.nixosModules.default - ]; + # imports = [ + # inputs.hyprland.nixosModules.default + # ]; - config = { - nix.settings = { - substituters = [ "https://hyprland.cachix.org" ]; - trusted-public-keys = [ - "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" - ]; - experimental-features = [ "nix-command" "flakes" ]; - }; - programs.hyprland.enable = lib.mkIf config.hyprland.enable true; - }; + config.warnings = lib.mkIf config.hyprland.enable ['' + hyprland.enable has been deprecated to allow the removal of hyprland from + flake inputs. + '']; + + # config.programs.hyprland.enable = lib.mkIf config.hyprland.enable true; } diff --git a/hosts/juri/users/badtz/user.nix b/users/badtz@juri/user.nix similarity index 100% rename from hosts/juri/users/badtz/user.nix rename to users/badtz@juri/user.nix diff --git a/hosts/jibril/users/pan/user.nix b/users/jibril/default.nix similarity index 100% rename from hosts/jibril/users/pan/user.nix rename to users/jibril/default.nix diff --git a/hosts/juri/users/pan/user.nix b/users/juri/default.nix similarity index 100% rename from hosts/juri/users/pan/user.nix rename to users/juri/default.nix diff --git a/hosts/onizuka/users/pan/user.nix b/users/onizuka/default.nix similarity index 100% rename from hosts/onizuka/users/pan/user.nix rename to users/onizuka/default.nix