let sources = import ./Sources.nix { sourcesFile = ./Sources.json; }; config = { allowAliases = true; allowBroken = true; allowUnfree = true; checkMeta = true; cudaSupport = true; }; system = __currentSystem; # override pinned deps with our sources, this must come before other # package overlays, because of the 'null' from 'overrideSource' depsOverlay = _: pkgs: pkgs.overridePinnedDeps pkgs.overrideSource; overlays = [ (_: _: { inherit sources; }) (import ./CcacheWrapper.nix) (import ./Functions.nix) depsOverlay (import ./Deps.nix) (import ./Python.nix) (import ./Haskell.nix) ]; nixos-unstable-small = import sources.nixos-unstable-small { inherit system config overlays; }; in { nixos-24_05 = import sources.nixos-24_05 { inherit system config; overlays = overlays ++ [ (_: _: { # backport newer packages from unstable unstable = nixos-unstable-small.pkgs; }) ]; }; inherit nixos-unstable-small; }