core/flake.nix

47 lines
1.7 KiB
Nix
Raw Normal View History

2024-05-01 22:14:04 +00:00
{
2024-05-13 23:18:19 +00:00
outputs = { self, ... }:
2024-05-01 22:14:04 +00:00
let
2024-05-03 20:17:59 +00:00
forAllSystems = self.lib.genAttrs self.lib.systems.flakeExposed;
2024-05-01 22:14:04 +00:00
in
{
2024-05-03 20:17:59 +00:00
lib = import ./lib;
2024-05-02 00:46:19 +00:00
auxPackages = forAllSystems (system:
(
let requiredVersion = import ./lib/minver.nix; in
if ! builtins ? nixVersion || builtins.compareVersions requiredVersion builtins.nixVersion == 1 then
abort ''
This version of Nixpkgs requires Nix >= ${requiredVersion}, please upgrade:
- If you are running NixOS, `nixos-rebuild' can be used to upgrade your system.
- Alternatively, with Nix > 2.0 `nix upgrade-nix' can be used to imperatively
upgrade Nix. You may use `nix-env --version' to check which version you have.
- If you installed Nix using the install script (https://nixos.org/nix/install),
it is safe to upgrade by running it again:
curl -L https://nixos.org/nix/install | sh
For more information, please see the NixOS release notes at
https://nixos.org/nixos/manual or locally at
${toString ./nixos/doc/manual/release-notes}.
If you need further help, see https://nixos.org/nixos/support.html
''
else
import ./pkgs/top-level/default.nix { localSystem = system; }
)
);
2024-05-01 22:14:04 +00:00
2024-05-13 23:18:19 +00:00
legacyPackages = forAllSystems (system: import ./. { inherit system; });
2024-05-01 22:14:04 +00:00
# To test, run nix build .#tests.x86_64-linux.release
2024-05-03 20:17:59 +00:00
tests = forAllSystems (system: {
systems = import ./lib/tests/systems.nix;
2024-05-02 00:46:19 +00:00
release = import ./lib/tests/release.nix { pkgs = self.auxPackages.${system}; };
2024-05-03 20:17:59 +00:00
});
2024-05-01 22:14:04 +00:00
};
}