Compare commits

..

1 Commits

Author SHA1 Message Date
bde6ae6da1
system: replace custom args with flakeArgs and flakeConfig 2025-03-01 14:52:49 -05:00
25 changed files with 184 additions and 310 deletions

View File

@ -1,6 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck disable=SC2317
# ^ SC2317 (Command appears to be unreachable.)
set -Exo pipefail set -Exo pipefail
@ -8,7 +6,6 @@ err=0
set_error () { set_error () {
err=1 err=1
pkill -s 0 -9 nix-eval-jobs || true
} }
trap set_error ERR trap set_error ERR
@ -19,19 +16,14 @@ system="$(nix eval --impure --raw --expr 'builtins.currentSystem')"
run_builds () { run_builds () {
for i in "$@" ; do for i in "$@" ; do
nix-fast-build --eval-workers 1 --no-nom --skip-cache --attic-cache main -f "$i" nix-fast-build --eval-workers 1 --no-nom --skip-cache --attic-cache main -f "$i"
pkill -s 0 -9 nix-eval-jobs || true
done done
} }
_build_systems () { build_systems () {
case "$system" in case "$system" in
# TODO this is messy and hard-coded, make an attribute set for
# each system containing the specializations as well as the nospec ver
x86_64-linux) run_builds \ x86_64-linux) run_builds \
.\#nixosConfigurations.nullbox.config.specialisation.hyprland.configuration.system.build.toplevel \ .\#nixosConfigurations.nullbox.config.system.build.toplevel \
.\#nospec.nullbox.config.system.build.toplevel \ .\#nixosConfigurations.slab.config.system.build.toplevel \
.\#nixosConfigurations.slab.config.specialisation.{hyprland,nvidia}.configuration.system.build.toplevel \
.\#nospec.slab.config.system.build.toplevel \
.\#nixosConfigurations.nixos-wsl.config.system.build.toplevel \ .\#nixosConfigurations.nixos-wsl.config.system.build.toplevel \
;; ;;
@ -41,23 +33,6 @@ _build_systems () {
esac esac
} }
build_systems () {
# system should be set in `nix develop` but just in case
local system
system="${system:-$(nix eval --impure --raw --expr 'builtins.currentSystem')}"
#nix eval --json .#legacyPackages."${system}".specialisedNixosConfigurations --apply 'builtins.attrNames' \
# | jq -c '.[]' \
# | while read -r line ; do
# local build
# build="$(printf '%s' "$line" | jq -r)"
# run_builds ".#legacyPackages.${system}.specialisedNixosConfigurations.${build}"
# done
run_builds ".#legacyPackages.${system}.specialisedNixosConfigurations"
}
build_packages () { build_packages () {
run_builds .\#packages."${system}".redlib run_builds .\#packages."${system}".redlib
} }

238
flake.lock generated
View File

@ -10,11 +10,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1745630506, "lastModified": 1736955230,
"narHash": "sha256-bHCFgGeu8XjWlVuaWzi3QONjDW3coZDqSHvnd4l7xus=", "narHash": "sha256-uenf8fv2eG5bKM8C/UvFaiJMZ4IpUFaQxk9OH5t/1gA=",
"owner": "ryantm", "owner": "ryantm",
"repo": "agenix", "repo": "agenix",
"rev": "96e078c646b711aee04b82ba01aefbff87004ded", "rev": "e600439ec4c273cf11e06fe4d9d906fb98fa097c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -43,11 +43,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744289235, "lastModified": 1739298463,
"narHash": "sha256-ZFkHLdimtFzQACsVVyZkZlfYdj4iNy3PkzXfrwmlse8=", "narHash": "sha256-oAFv9jKwwA7d7384d2LeywDSgwhvb3ZnrwbfoWPhXsI=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "c8282f4982b56dfa5e9b9f659809da93f8d37e7a", "rev": "f239e5aadd6d23c48e085c2de3397e2058e54d16",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -61,11 +61,11 @@
"fromYaml": "fromYaml" "fromYaml": "fromYaml"
}, },
"locked": { "locked": {
"lastModified": 1745523430, "lastModified": 1732200724,
"narHash": "sha256-EAYWV+kXbwsH+8G/8UtmcunDeKwLwSOyfcmzZUkWE/c=", "narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
"owner": "SenchoPens", "owner": "SenchoPens",
"repo": "base16.nix", "repo": "base16.nix",
"rev": "58bfe2553d937d8af0564f79d5b950afbef69717", "rev": "153d52373b0fb2d343592871009a286ec8837aec",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -146,11 +146,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744478979, "lastModified": 1700795494,
"narHash": "sha256-dyN+teG9G82G+m+PX/aSAagkC+vUv0SgUw3XkPhQodQ=", "narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
"owner": "lnl7", "owner": "lnl7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "43975d782b418ebf4969e9ccba82466728c2851b", "rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -163,11 +163,11 @@
"firefox-gnome-theme": { "firefox-gnome-theme": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1744642301, "lastModified": 1739223196,
"narHash": "sha256-5A6LL7T0lttn1vrKsNOKUk9V0ittdW0VEqh6AtefxJ4=", "narHash": "sha256-vAxN2f3rvl5q62gQQjZGVSvF93nAsOxntuFz+e/655w=",
"owner": "rafaelmardojai", "owner": "rafaelmardojai",
"repo": "firefox-gnome-theme", "repo": "firefox-gnome-theme",
"rev": "59e3de00f01e5adb851d824cf7911bd90c31083a", "rev": "a89108e6272426f4eddd93ba17d0ea101c34fb21",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -291,11 +291,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1743550720, "lastModified": 1738453229,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "c621e8422220273271f52058f618c94e405bb0f5", "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -433,11 +433,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1742649964, "lastModified": 1737465171,
"narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -537,11 +537,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745494811, "lastModified": 1703113217,
"narHash": "sha256-YZCh2o9Ua1n9uCvrvi5pRxtuVNml8X2a03qIFfRKpFs=", "narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "abfad3d2958c9e6300a883bd443512c55dfeb1be", "rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -557,11 +557,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745627989, "lastModified": 1740624780,
"narHash": "sha256-mOCdFmxocBPae7wg7RYWOtJzWMJk34u9493ItY0dVqw=", "narHash": "sha256-8TP61AI3QBQsjzVUQFIV8NoB5nbYfJB3iHczhBikDkU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "4d2d32231797bfa7213ae5e8ac89d25f8caaae82", "rev": "b8869e4ead721bbd4f0d6b927e8395705d4f16e6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -607,11 +607,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1742215578, "lastModified": 1738664950,
"narHash": "sha256-zfs71PXVVPEe56WEyNi2TJQPs0wabU4WAlq0XV7GcdE=", "narHash": "sha256-xIeGNM+iivwVHkv9tHwOqoUP5dDrtees34bbFKKMZYs=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprcursor", "repo": "hyprcursor",
"rev": "2fd36421c21aa87e2fe3bee11067540ae612f719", "rev": "7c6d165e1eb9045a996551eb9f121b6d1b30adc3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -636,11 +636,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745015490, "lastModified": 1739049071,
"narHash": "sha256-apEJ9zoSzmslhJ2vOKFcXTMZLUFYzh1ghfB6Rbw3Low=", "narHash": "sha256-3+7TpXMrbsUXSwgr5VAKAnmkzMb6JO+Rvc9XRb5NMg4=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "60754910946b4e2dc1377b967b7156cb989c5873", "rev": "175c6b29b6ff82100539e7c4363a35a02c74dd73",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -661,11 +661,11 @@
"systems": "systems_2" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1745357037, "lastModified": 1739465717,
"narHash": "sha256-eakUr+0ON1muX3nusJy3eC66unUQtjgnUUzQ5XMIB+k=", "narHash": "sha256-8Ulwr1Z6n5YjM518DYMSHZUbPsZOG53d6QO/bwhb4SA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hypridle", "repo": "hypridle",
"rev": "b18d83027676d0efbc6d56ed4a6935ac65d75067", "rev": "3e30a63b5db64a208e9394328a81048044571368",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -690,11 +690,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1745593751, "lastModified": 1740614171,
"narHash": "sha256-OmAsshc/Z/2hgN9+OK1ZHfEvSkoRC9pROTmxzUTh4QU=", "narHash": "sha256-6fWCR3TLTK39XNy6SDsW4L78VsmwIwi1sO5B8lq24vY=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "742bce016cb848d222fbfcfcf8d3894ea3fdaeff", "rev": "d5920bc5da75b8eaf3476bc814bd46d225709788",
"revCount": 6028, "revCount": 5849,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/hyprwm/Hyprland" "url": "https://github.com/hyprwm/Hyprland"
@ -742,11 +742,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1743714874, "lastModified": 1738422629,
"narHash": "sha256-yt8F7NhMFCFHUHy/lNjH/pjZyIDFNk52Q4tivQ31WFo=", "narHash": "sha256-5v+bv75wJWvahyM2xcMTSNNxmV8a7hb01Eey5zYnBJw=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-protocols", "repo": "hyprland-protocols",
"rev": "3a5c2bda1c1a4e55cc1330c782547695a93f05b2", "rev": "755aef8dab49d0fc4663c715fa4ad221b2aedaed",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -868,11 +868,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744468525, "lastModified": 1739048914,
"narHash": "sha256-9HySx+EtsbbKlZDlY+naqqOV679VdxP6x6fP3wxDXJk=", "narHash": "sha256-vd5rJBTmp2w7SDgfv23Zcd84ktI5eDA7e5UBzx+pKrU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "f1000c54d266e6e4e9d646df0774fac5b8a652df", "rev": "a7334904d591f38757c46fbe2ab68651877d9099",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -918,11 +918,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1743950287, "lastModified": 1739891528,
"narHash": "sha256-/6IAEWyb8gC/NKZElxiHChkouiUOrVYNq9YqG0Pzm4Y=", "narHash": "sha256-h8HOCZ/rw2Buzku+GKF77VXxrGjCSOQkLhptiEKMYg0=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "f2dc70e448b994cef627a157ee340135bd68fbc6", "rev": "61a5382f4b1ab578064d470b1b3d3f0df396b8ba",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -968,11 +968,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1739870480, "lastModified": 1739049028,
"narHash": "sha256-SiDN5BGxa/1hAsqhgJsS03C3t2QrLgBT8u+ENJ0Qzwc=", "narHash": "sha256-RleJp7LYbr6s+M1xgbmhtBs+fYa3ZdIiF7+QalJ4D1g=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "206367a08dc5ac4ba7ad31bdca391d098082e64b", "rev": "04146df74a8d5ec0b579657307be01f1e241125f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -988,11 +988,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1743417258, "lastModified": 1739465511,
"narHash": "sha256-YItzk1pj8Kz+b7VlC9zN1pSZ6CuX35asYy3HuMQ3lBQ=", "narHash": "sha256-kXdVW89VJoG+W6N1u0m8hgK2VIWUAweQVzehRZwdNSo=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "contrib", "repo": "contrib",
"rev": "bc2ad24e0b2e66c3e164994c4897cd94a933fd10", "rev": "59178a657b7e09ddf82b9e79681f482b6c2f378b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1049,11 +1049,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745120797, "lastModified": 1740281615,
"narHash": "sha256-owQ0VQ+7cSanTVPxaZMWEzI22Q4bGnuvhVjLAJBNQ3E=", "narHash": "sha256-dZWcbAQ1sF8oVv+zjSKkPVY0ebwENQEkz5vc6muXbKY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "69716041f881a2af935021c1182ed5b0cc04d40e", "rev": "465792533d03e6bb9dc849d58ab9d5e31fac9023",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1071,11 +1071,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745630674, "lastModified": 1740617752,
"narHash": "sha256-mMdr7XcmWWjEibSd3nBhyS3MVI23RE6gdJFVT+Q3KCU=", "narHash": "sha256-OTNAtsRtkojQ9qCwPNCjBOTJMAIJLaYk4Ti83IXYSBM=",
"owner": "Silveere", "owner": "Silveere",
"repo": "nix-minecraft", "repo": "nix-minecraft",
"rev": "bd415685ddbee6ae1ee4ca6cf2252ad5b0c4e6db", "rev": "68b45fd2540ec02ddf696f32e741a536b9cacf95",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1094,11 +1094,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745632480, "lastModified": 1740620959,
"narHash": "sha256-Rjr9Dh33zXciPbSgOSoYoOJ7gpvpJ+wy04WGIUOY+Nw=", "narHash": "sha256-2yp4ipvKG1cZf4OJYelOiDMtZ4qxGn4PPFXlpiVMcuo=",
"owner": "infinidoge", "owner": "infinidoge",
"repo": "nix-minecraft", "repo": "nix-minecraft",
"rev": "ad10d773fc3a39ace88f495c2c111a0bf7f5a481", "rev": "91ee2f20fe2500359ba04f6ca86d39e950345d1f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1115,11 +1115,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744290088, "lastModified": 1740567864,
"narHash": "sha256-/X9XVEl0EiyisNbF5srrxXRSVoRqdwExuqyspYqqEjQ=", "narHash": "sha256-eTS2wrC1jKR6PKXC9jZqQy5PwqbIOBLSLF3dwLiFJ8M=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "60b4904a1390ac4c89e93d95f6ed928975e525ed", "rev": "1f40b43d01626ce994eb47150afa0d7215f396ca",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1153,11 +1153,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1744932701, "lastModified": 1739020877,
"narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=", "narHash": "sha256-mIvECo/NNdJJ/bXjNqIh8yeoSjVLAuDuTUzAo7dzs8Y=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef", "rev": "a79cfe0ebd24952b580b1cf08cd906354996d547",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1169,17 +1169,14 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1743296961, "lastModified": 1738452942,
"narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=", "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
"owner": "nix-community", "type": "tarball",
"repo": "nixpkgs.lib", "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
"rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa",
"type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "type": "tarball",
"repo": "nixpkgs.lib", "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
"type": "github"
} }
}, },
"nixpkgs-mopidy": { "nixpkgs-mopidy": {
@ -1232,11 +1229,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1745377448, "lastModified": 1740547748,
"narHash": "sha256-jhZDfXVKdD7TSEGgzFJQvEEZ2K65UMiqW5YJ2aIqxMA=", "narHash": "sha256-Ly2fBL1LscV+KyCqPRufUBuiw+zmWrlJzpWOWbahplg=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "507b63021ada5fee621b6ca371c4fca9ca46f52c", "rev": "3a05eebede89661660945da1f151959900903b6a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1248,11 +1245,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1745487689, "lastModified": 1740463929,
"narHash": "sha256-FQoi3R0NjQeBAsEOo49b5tbDPcJSMWc3QhhaIi9eddw=", "narHash": "sha256-4Xhu/3aUdCKeLfdteEHMegx5ooKQvwPHNkOgNCXQrvc=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5630cf13cceac06cefe9fc607e8dfa8fb342dde3", "rev": "5d7db4668d7a0c6cc5fc8cf6ef33b008b2b1ed8b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1272,11 +1269,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1745459908, "lastModified": 1740408283,
"narHash": "sha256-bWqgohVf/py9EW3bLS/dYbenD2p9N2/Qsw1+CJk1S04=", "narHash": "sha256-2xECnhgF3MU9YjmvOkrRp8wRFo2OjjewgCtlfckhL5s=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "dbc4ba3233b2bf951521177bf0ee0a7679959035", "rev": "496a4a11162bdffb9a7b258942de138873f019f7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1295,11 +1292,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1742649964, "lastModified": 1737465171,
"narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1360,8 +1357,7 @@
"rust-overlay": "rust-overlay_2", "rust-overlay": "rust-overlay_2",
"stylix": "stylix", "stylix": "stylix",
"systems": "systems_7", "systems": "systems_7",
"treefmt-nix": "treefmt-nix_2", "treefmt-nix": "treefmt-nix_2"
"zen-browser": "zen-browser"
} }
}, },
"rust-overlay": { "rust-overlay": {
@ -1392,11 +1388,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1745634793, "lastModified": 1740623427,
"narHash": "sha256-8AuOyfLNlcbLy0AqERSNUUoDdY+3THZI7+9VrXUfGqg=", "narHash": "sha256-3SdPQrZoa4odlScFDUHd4CUPQ/R1gtH4Mq9u8CBiK8M=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "f1aeaeb91ba9c88f235ab82bd23d7a4931fe736c", "rev": "d342e8b5fd88421ff982f383c853f0fc78a847ab",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1433,11 +1429,11 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1745618823, "lastModified": 1740644467,
"narHash": "sha256-WGKSI0+CY3Ep2YnRASmBRU8oMIvTW4ngFyjA0dVcKgQ=", "narHash": "sha256-i2ArXwncE2OmneLBllo5OlpLB2UsXU5JX+T+7or5OX4=",
"owner": "danth", "owner": "danth",
"repo": "stylix", "repo": "stylix",
"rev": "11ceb2fde1901dc227421bbbef2d0800339f5126", "rev": "e7c09d206680e6fe6771e1ac9a83515313feaf95",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1588,11 +1584,11 @@
"tinted-schemes": { "tinted-schemes": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1744974599, "lastModified": 1740351358,
"narHash": "sha256-Fg+rdGs5FAgfkYNCs74lnl8vkQmiZVdBsziyPhVqrlY=", "narHash": "sha256-Hdk850xgAd3DL8KX0AbyU7tC834d3Lej1jOo3duWiOA=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "schemes", "repo": "schemes",
"rev": "28c26a621123ad4ebd5bbfb34ab39421c0144bdd", "rev": "a1bc2bd89e693e7e3f5764cfe8114e2ae150e184",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1604,11 +1600,11 @@
"tinted-tmux": { "tinted-tmux": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1745111349, "lastModified": 1740272597,
"narHash": "sha256-udV+nHdpqgkJI9D0mtvvAzbqubt9jdifS/KhTTbJ45w=", "narHash": "sha256-/etfUV3HzAaLW3RSJVwUaW8ULbMn3v6wbTlXSKbcoWQ=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "tinted-tmux", "repo": "tinted-tmux",
"rev": "e009f18a01182b63559fb28f1c786eb027c3dee9", "rev": "b6c7f46c8718cc484f2db8b485b06e2a98304cd0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1662,11 +1658,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744961264, "lastModified": 1739829690,
"narHash": "sha256-aRmUh0AMwcbdjJHnytg1e5h5ECcaWtIFQa6d9gI85AI=", "narHash": "sha256-mL1szCeIsjh6Khn3nH2cYtwO5YXG6gBiTw1A30iGeDU=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "8d404a69efe76146368885110f29a2ca3700bee6", "rev": "3d0579f5cc93436052d94b73925b48973a104204",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1703,11 +1699,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1744644585, "lastModified": 1737634991,
"narHash": "sha256-p0D/e4J6Sv6GSb+9u8OQcVHSE2gPNYB5ygIfGDyEiXQ=", "narHash": "sha256-dBAnb7Kbnier30cA7AgxVSxxARmxKZ1vHZT33THSIr8=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "be6771e754345f18244fb00aae5c9e5ab21ccc26", "rev": "e09dfe2726c8008f983e45a0aa1a3b7416aaeb8a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1715,26 +1711,6 @@
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"type": "github" "type": "github"
} }
},
"zen-browser": {
"inputs": {
"nixpkgs": [
"nixpkgs-unstable"
]
},
"locked": {
"lastModified": 1745121923,
"narHash": "sha256-8X9JuDfxAEQlBhB0ARgFj9fbDOlCvPx6AbQ1h2T47/g=",
"owner": "youwen5",
"repo": "zen-browser-flake",
"rev": "02084a38e9dbc4fa17f3474c3e9d43bb7db55799",
"type": "github"
},
"original": {
"owner": "youwen5",
"repo": "zen-browser-flake",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View File

@ -85,11 +85,6 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
zen-browser = {
url = "github:youwen5/zen-browser-flake";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
rust-overlay = { rust-overlay = {
url = "github:oxalica/rust-overlay"; url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@ -155,7 +150,6 @@
perSystem = { perSystem = {
config, config,
system,
pkgs, pkgs,
self', self',
... ...
@ -166,49 +160,9 @@
}; };
}; };
legacyPackages.specialisedNixosConfigurations = let
attrs = lib.pipe self.nixosConfigurations [
(lib.filterAttrs (n: v: !(builtins.elem n ["iso" "rpi4-x86_64"])))
(lib.filterAttrs (n: v: v.pkgs.system or "" == system))
(lib.mapAttrs' (configName: v: let
nospec =
(v.extendModules {
modules = [
({lib, ...}: {
config.specialisation = lib.mkForce {};
})
];
})
.config;
configs =
(
lib.mapAttrs'
(n: v: lib.nameValuePair "specialisation-${n}" v.configuration)
v.config.specialisation
)
// {inherit nospec;};
in
lib.nameValuePair configName configs))
(
lib.concatMapAttrs (
configName: v:
(
lib.mapAttrs' (
specName: v: lib.nameValuePair "${configName}--${specName}" v
)
)
v
)
)
(lib.mapAttrs (_: v: v.system.build.toplevel))
];
in
attrs;
devShells = { devShells = {
ci = pkgs.mkShell { ci = pkgs.mkShell {
buildInputs = with pkgs; [ buildInputs = with pkgs; [
jq
nix-update nix-update
nix-fast-build nix-fast-build
]; ];
@ -262,28 +216,6 @@
inherit (packages) mopidy-autoplay google-fonts; inherit (packages) mopidy-autoplay google-fonts;
atool-wrapped = packages.atool; atool-wrapped = packages.atool;
}; };
zen-browser-overlay = final: prev: let
inherit (final) system callPackage;
input = inputs.zen-browser;
packages = input.packages.${system};
sources = builtins.fromJSON (builtins.readFile (input + "/sources.json"));
warnExists = name: value: let
pass =
if prev ? ${name}
then builtins.warn "zen-browser-overlay: Package `${name}` already exists. This overlay is no longer needed and should be removed." value
else value;
in
pass;
in {
zen-browser-bin = callPackage packages.zen-browser.override {};
zen-browser-unwrapped = warnExists "zen-browser-unwrapped" (callPackage packages.zen-browser-unwrapped.override {
inherit (sources.${system}) hash url;
inherit (sources) version;
});
};
in [ in [
# TODO delete this, transfer all packages to new-packages overlay # TODO delete this, transfer all packages to new-packages overlay
packagesOverlay packagesOverlay
@ -302,7 +234,6 @@
inputs.rust-overlay.overlays.default inputs.rust-overlay.overlays.default
inputs.nixfiles-assets.overlays.default inputs.nixfiles-assets.overlays.default
nix-minecraft-patched-overlay nix-minecraft-patched-overlay
zen-browser-overlay
]; ];
systems = { systems = {
@ -369,16 +300,6 @@
iso = mkISOSystem "x86_64-linux"; iso = mkISOSystem "x86_64-linux";
}; # end nixosConfigurations }; # end nixosConfigurations
nospec = lib.mapAttrs (n: v:
v.extendModules {
modules = [
(
{lib, ...}: {specialisation = lib.mkForce {};}
)
];
})
config.flake.nixosConfigurations;
homeConfigurations = { homeConfigurations = {
# minimal root config # minimal root config
"root@rpi4" = mkHome { "root@rpi4" = mkHome {

View File

@ -6,7 +6,7 @@
inputs, inputs,
self, self,
... ...
}: let } @ flakeArgs: let
cfg = config.nixfiles.systems; cfg = config.nixfiles.systems;
inherit inherit
(lib) (lib)
@ -227,14 +227,22 @@ in {
++ lib.optional config.wsl wslModule; ++ lib.optional config.wsl wslModule;
extraConfig = { extraConfig = {
inherit (config) system modules; inherit (config) system modules;
# TODO get rid of specialArgs and pass things as a module specialArgs = {
specialArgs = let # TODO this is temporary, i prefer to not use specialArgs because
inherit (self) outputs; # it can't be exported. these are still better than my clunky
in { # "vars" arg that i would arbitrarily add things to.
inherit inputs outputs; #
inherit (outerConfig.nixfiles) vars; # we need to merge all of the module args like this because the
# module evaluator only calls each module with the args it asks
# for, but we explicitly want *all* args to be made available.
flakeArgs = outerConfig._module.args // outerConfig._module.specialArgs // flakeArgs;
# still unsure of what the best way to deal with this is. i can
# probably pass this submodule's args for a fairly clean way to
# pass it, but i'd want to refactor it because config.nixpkgs and
# config.home-manager.input are named inconsistently
inherit (config) nixpkgs; inherit (config) nixpkgs;
inherit (config.home-manager) input; home-manager = config.home-manager.input;
}; };
}; };
result = config.nixpkgs.lib.nixosSystem config.extraConfig; result = config.nixpkgs.lib.nixosSystem config.extraConfig;

View File

@ -7,6 +7,10 @@
... ...
}: let }: let
cfg = config.nixfiles.packageSets.communication; cfg = config.nixfiles.packageSets.communication;
rustdesk-pkg =
if (lib.strings.hasInfix "23.11" lib.version)
then inputs.nixpkgs-unstable.legacyPackages.${pkgs.system}.rustdesk-flutter
else pkgs.rustdesk-flutter;
vesktop-ozone-cmd = let vesktop-ozone-cmd = let
extraFlags = lib.optionalString config.nixfiles.workarounds.nvidiaPrimary " --disable-gpu"; extraFlags = lib.optionalString config.nixfiles.workarounds.nvidiaPrimary " --disable-gpu";
@ -48,7 +52,7 @@ in {
signal-desktop signal-desktop
thunderbird thunderbird
vesktop vesktop
rustdesk-flutter rustdesk-pkg
tor-browser tor-browser
onionshare onionshare
] ]

View File

@ -13,7 +13,6 @@ in {
libreoffice-fresh libreoffice-fresh
obsidian obsidian
anki anki
zen-browser-bin
# mapping/GIS # mapping/GIS
qgis qgis

View File

@ -2,9 +2,11 @@
pkgs, pkgs,
config, config,
lib, lib,
vars, flakeConfig,
... ...
}: { }: let
inherit (flakeConfig.nixfiles) vars;
in {
config = { config = {
networking.hostName = "nixos-wsl"; networking.hostName = "nixos-wsl";

View File

@ -6,7 +6,6 @@
config, config,
lib, lib,
pkgs, pkgs,
inputs,
... ...
}: { }: {
imports = [ imports = [

View File

@ -33,7 +33,6 @@ okbuddyhetero
peepeeshart peepeeshart
pressureroblox pressureroblox
prismlauncher prismlauncher
programmingcirclejerk
regretevator regretevator
rust rust
rustjerk rustjerk

View File

@ -6,7 +6,6 @@
config, config,
lib, lib,
pkgs, pkgs,
vars,
... ...
}: { }: {
imports = [ imports = [

View File

@ -23,7 +23,7 @@
# TODO mkif stylix.enable; danth/stylix#216 # TODO mkif stylix.enable; danth/stylix#216
home.pointerCursor = lib.mkIf (config.nixfiles.theming.enable && !config.stylix.enable) {size = 32;}; home.pointerCursor = lib.mkIf (config.nixfiles.theming.enable && !config.stylix.enable) {size = 32;};
stylix.cursor = lib.mkIf config.stylix.enable {size = 32;}; stylix.cursor = {size = 32;};
nixfiles.theming.catppuccin.themeDPI = "hdpi"; nixfiles.theming.catppuccin.themeDPI = "hdpi";

View File

@ -9,10 +9,7 @@
# not high priority, this still works well for this overlay. # not high priority, this still works well for this overlay.
nixfiles = self; nixfiles = self;
overlay = final: prev: let overlay = final: prev: let
pkgsStable = import nixfiles.inputs.nixpkgs.outPath { pkgsStable = import nixfiles.inputs.nixpkgs.outPath {inherit (prev) system;};
inherit (prev) system;
config.allowUnfree = true;
};
updateTime = nixfiles.inputs.nixpkgs-unstable.lastModified; updateTime = nixfiles.inputs.nixpkgs-unstable.lastModified;
inherit (final) callPackage fetchFromGitHub; inherit (final) callPackage fetchFromGitHub;
@ -82,25 +79,11 @@
in in
hold now 7 stable unstable; hold now 7 stable unstable;
gotenberg = let
stable = pkgsStable.gotenberg;
unstable = prev.gotenberg;
now = 1745707083;
in
hold now 90 stable unstable;
redlib = let redlib = let
redlib-new = final.callPackage nixfiles.packages.${prev.system}.redlib.override {}; redlib-new = final.callPackage nixfiles.packages.${prev.system}.redlib.override {};
inherit (prev) redlib; inherit (prev) redlib;
in in
pickNewer redlib-new redlib; pickNewer redlib-new redlib;
rustdesk-flutter = let
stable = pkgsStable.rustdesk-flutter;
unstable = prev.rustdesk-flutter;
now = 1741899501;
in
hold now 7 stable unstable;
} }
// ( // (
lib.genAttrs [ lib.genAttrs [

View File

@ -5,13 +5,13 @@
}: }:
buildNpmPackage rec { buildNpmPackage rec {
pname = "cross-seed"; pname = "cross-seed";
version = "6.11.2"; version = "6.11.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cross-seed"; owner = "cross-seed";
repo = "cross-seed"; repo = "cross-seed";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-m/TlEAW9BFEXOvBixOj09ylgstgHKL48e9zC50fzD5g="; hash = "sha256-+bIRLoiY9+23GUuKxPpKK23cb4Dng5nwxh3SUzMAtXA=";
}; };
npmDepsHash = "sha256-c8wTvEA7QQb17gBHdBKMUatn8I/wKOhXP1W5ftH3pJc="; npmDepsHash = "sha256-gNsD6+4+PIcygL/QCznecd5bVnLyorVJfHM/+cLG4og=";
} }

View File

@ -10,13 +10,13 @@
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "redlib"; pname = "redlib";
version = "0.35.1-unstable-2025-03-01"; version = "0.35.1-unstable-2025-02-18";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "redlib-org"; owner = "redlib-org";
repo = "redlib"; repo = "redlib";
rev = "357e7c2e096c1aa3bb871e42860dfd3be62e0bfb"; rev = "efcf2fc24c455acdf2ddc4adc8d20606883aa118";
hash = "sha256-KX76kq3AX+GI8wIulGixgS5cENlNUcrKaes1dZwRhxI="; hash = "sha256-tcazjCxioVg13BexUnuybWKG/zaXo4xBAvb7BSvpShI=";
}; };
patches = [ patches = [
@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
./no-hash.patch ./no-hash.patch
]; ];
cargoHash = "sha256-5cwF+pntkAwtTwerYrJOfL4NRcL8Sb7lLZiajNcvSZY="; cargoHash = "sha256-aQmMKXBEymvz44hwDyB7z8M4mQR0hcOHJnZ7rlJsuIw=";
buildInputs = lib.optionals stdenv.isDarwin [ buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security darwin.apple_sdk.frameworks.Security

View File

@ -3,10 +3,11 @@
lib, lib,
config, config,
options, options,
inputs, flakeArgs,
nixpkgs, nixpkgs,
... ...
}: let }: let
inherit (flakeArgs) inputs;
cfg = config.nixfiles.common.nix; cfg = config.nixfiles.common.nix;
in { in {
options.nixfiles.common.nix = { options.nixfiles.common.nix = {

View File

@ -3,9 +3,9 @@
config, config,
lib, lib,
options, options,
flakeArgs,
nixpkgs, nixpkgs,
home-manager, home-manager,
inputs,
utils, utils,
... ...
} @ args: } @ args:
@ -14,8 +14,15 @@
# inputs/outputs/overlays/etc into scope. this might even make nixfiles # inputs/outputs/overlays/etc into scope. this might even make nixfiles
# portable (it still shouldn't be imported by other flakes probably) # portable (it still shouldn't be imported by other flakes probably)
let let
inherit (flakeArgs) inputs;
cfg = config.nixfiles; cfg = config.nixfiles;
flakeType = cfg.lib.types.flake; flakeType = cfg.lib.types.flake;
mkReadOnlyOption = {...} @ args:
lib.mkOption ({
readOnly = true;
}
// args);
in { in {
imports = [ imports = [
./common ./common
@ -35,7 +42,15 @@ in {
inputs.lanzaboote.nixosModules.lanzaboote inputs.lanzaboote.nixosModules.lanzaboote
./stylix.nix # imports inputs.stylix ./stylix.nix # imports inputs.stylix
]; ];
config = {}; config = {
_module.args.flakeConfig = flakeArgs.config;
};
options.debug = {
args = mkReadOnlyOption {
description = "all module args";
default = config._module.args // config._module.specialArgs // args;
};
};
options.nixfiles = { options.nixfiles = {
meta.wayland = lib.mkOption { meta.wayland = lib.mkOption {
description = "Whether to prefer wayland applications and configuration"; description = "Whether to prefer wayland applications and configuration";
@ -44,12 +59,6 @@ in {
type = lib.types.bool; type = lib.types.bool;
}; };
utils = lib.mkOption {
description = "nixpkgs `utils` argument passthrough";
default = utils;
readOnly = true;
};
workarounds.nvidiaPrimary = lib.mkOption { workarounds.nvidiaPrimary = lib.mkOption {
description = "Whether to enable workarounds for NVIDIA as the primary GPU"; description = "Whether to enable workarounds for NVIDIA as the primary GPU";
default = false; default = false;

View File

@ -2,11 +2,12 @@
config, config,
lib, lib,
pkgs, pkgs,
inputs, flakeArgs,
... ...
}: let }: let
cfg = config.nixfiles.hardware.sound; inherit (flakeArgs) inputs;
inherit (lib) optionals mkEnableOption mkIf mkDefault; inherit (lib) optionals mkEnableOption mkIf mkDefault;
cfg = config.nixfiles.hardware.sound;
in { in {
# Enable sound. # Enable sound.
# sound.enable = true; # sound.enable = true;

View File

@ -2,9 +2,11 @@
config, config,
lib, lib,
pkgs, pkgs,
inputs, flakeArgs,
... ...
}: { }: let
inherit (flakeArgs) inputs;
in {
imports = [ imports = [
inputs.nix-minecraft.nixosModules.minecraft-servers inputs.nix-minecraft.nixosModules.minecraft-servers
]; ];

View File

@ -1,11 +1,10 @@
{ {
pkgs, pkgs,
config, config,
lib, flakeArgs,
inputs,
nixpkgs,
... ...
}: let }: let
inherit (flakeArgs) inputs;
p5 = config.services.xserver.desktopManager.plasma5.enable; p5 = config.services.xserver.desktopManager.plasma5.enable;
p6 = config.services.desktopManager.plasma6.enable; p6 = config.services.desktopManager.plasma6.enable;

View File

@ -2,7 +2,6 @@
config, config,
lib, lib,
pkgs, pkgs,
inputs,
... ...
}: let }: let
cfg = config.nixfiles.packageSets.gaming; cfg = config.nixfiles.packageSets.gaming;

View File

@ -2,9 +2,6 @@
config, config,
lib, lib,
pkgs, pkgs,
options,
inputs,
outputs,
... ...
} @ args: let } @ args: let
cfg = config.nixfiles.profile.base; cfg = config.nixfiles.profile.base;

View File

@ -2,10 +2,10 @@
config, config,
lib, lib,
pkgs, pkgs,
outputs, flakeConfig,
vars,
... ...
} @ args: let } @ args: let
inherit (flakeConfig.nixfiles) vars;
cfg = config.nixfiles.programs.adb; cfg = config.nixfiles.programs.adb;
in { in {
options.nixfiles.programs.adb = { options.nixfiles.programs.adb = {

View File

@ -79,13 +79,11 @@ in {
# here instead of above.) # here instead of above.)
programs.regreet = let programs.regreet = let
# lets us use wlr-randr # lets us use wlr-randr
wrapperPackage = wrapperPackage = pkgs.writeShellScriptBin "regreet-wrapper" ''
{inherit (pkgs.greetd.regreet) version;} ${cfg.settings.graphicalInit}
// (pkgs.writeShellScriptBin "regreet-wrapper" ''
${cfg.settings.graphicalInit}
exec ${escapeShellArg (lib.getExe pkgs.greetd.regreet)} "$@" exec ${escapeShellArg (lib.getExe pkgs.greetd.regreet)} "$@"
''); '';
in in
lib.mkIf cfg.presets.regreet.enable { lib.mkIf cfg.presets.regreet.enable {
enable = lib.mkDefault true; enable = lib.mkDefault true;

View File

@ -2,9 +2,10 @@
lib, lib,
pkgs, pkgs,
config, config,
inputs, flakeArgs,
... ...
}: let }: let
inherit (flakeArgs) inputs;
cfg = config.nixfiles.sessions.hyprland; cfg = config.nixfiles.sessions.hyprland;
flake-package = inputs.hyprland.packages.${pkgs.system}.hyprland; flake-package = inputs.hyprland.packages.${pkgs.system}.hyprland;
flake-portal = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; flake-portal = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;

View File

@ -2,9 +2,11 @@
pkgs, pkgs,
config, config,
lib, lib,
inputs, flakeArgs,
... ...
} @ args: { } @ args: let
inherit (flakeArgs) inputs;
in {
imports = [inputs.stylix.nixosModules.stylix]; imports = [inputs.stylix.nixosModules.stylix];
config = { config = {