nanopb: add tests via passthru.tests
[NixPkgs.git] / flake.nix
blob52fd2f82a37e7c5aeb11cdb3c243919e29994da9
1 # Experimental flake interface to Nixpkgs.
2 # See https://github.com/NixOS/rfcs/pull/49 for details.
4   edition = 201909;
6   description = "A collection of packages for the Nix package manager";
8   outputs = { self }:
9     let
11       jobs = import ./pkgs/top-level/release.nix {
12         nixpkgs = self;
13       };
15       lib = import ./lib;
17       systems = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-linux" ];
19       forAllSystems = f: lib.genAttrs systems (system: f system);
21     in
22     {
23       lib = lib // {
24         nixosSystem = { modules, ... } @ args:
25           import ./nixos/lib/eval-config.nix (args // {
26             modules = modules ++
27               [ { system.nixos.versionSuffix =
28                     ".${lib.substring 0 8 (self.lastModifiedDate or self.lastModified)}.${self.shortRev or "dirty"}";
29                   system.nixos.revision = lib.mkIf (self ? rev) self.rev;
30                 }
31               ];
32           });
33       };
35       checks.x86_64-linux.tarball = jobs.tarball;
37       htmlDocs = {
38         nixpkgsManual = jobs.manual;
39         nixosManual = (import ./nixos/release-small.nix {
40           nixpkgs = self;
41         }).nixos.manual.x86_64-linux;
42       };
44       legacyPackages = forAllSystems (system: import ./. { inherit system; });
46       nixosModules = {
47         notDetected = import ./nixos/modules/installer/scan/not-detected.nix;
48       };
49     };