2014-09-25 00:22:27 +02:00
|
|
|
# This jobset is used to generate a NixOS channel that contains a
|
|
|
|
# small subset of Nixpkgs, mostly useful for servers that need fast
|
|
|
|
# security updates.
|
2023-03-15 20:36:49 +01:00
|
|
|
#
|
|
|
|
# Individual jobs can be tested by running:
|
|
|
|
#
|
|
|
|
# nix-build nixos/release-small.nix -A <jobname>
|
|
|
|
#
|
2018-02-01 10:34:03 +01:00
|
|
|
{ nixpkgs ? { outPath = (import ../lib).cleanSource ./..; revCount = 56789; shortRev = "gfedcba"; }
|
2014-09-25 00:22:27 +02:00
|
|
|
, stableBranch ? false
|
2022-09-30 00:59:15 +02:00
|
|
|
, supportedSystems ? [ "aarch64-linux" "x86_64-linux" ] # no i686-linux
|
2014-09-25 00:22:27 +02:00
|
|
|
}:
|
|
|
|
|
|
|
|
let
|
|
|
|
|
|
|
|
nixpkgsSrc = nixpkgs; # urgh
|
|
|
|
|
2019-06-19 12:01:31 +02:00
|
|
|
pkgs = import ./.. { system = "x86_64-linux"; };
|
2014-09-25 00:22:27 +02:00
|
|
|
|
|
|
|
lib = pkgs.lib;
|
|
|
|
|
|
|
|
nixos' = import ./release.nix {
|
|
|
|
inherit stableBranch supportedSystems;
|
|
|
|
nixpkgs = nixpkgsSrc;
|
|
|
|
};
|
|
|
|
|
|
|
|
nixpkgs' = builtins.removeAttrs (import ../pkgs/top-level/release.nix {
|
|
|
|
inherit supportedSystems;
|
|
|
|
nixpkgs = nixpkgsSrc;
|
|
|
|
}) [ "unstable" ];
|
|
|
|
|
|
|
|
in rec {
|
|
|
|
|
|
|
|
nixos = {
|
2020-11-19 23:45:40 +01:00
|
|
|
inherit (nixos') channel manual options iso_minimal amazonImage dummy;
|
2014-09-25 00:22:27 +02:00
|
|
|
tests = {
|
|
|
|
inherit (nixos'.tests)
|
2022-10-24 15:07:50 +02:00
|
|
|
acme
|
2016-04-26 22:38:47 +02:00
|
|
|
containers-imperative
|
2019-11-26 00:44:12 +01:00
|
|
|
containers-ip
|
2014-09-25 00:22:27 +02:00
|
|
|
firewall
|
|
|
|
ipv6
|
|
|
|
login
|
|
|
|
misc
|
|
|
|
nat
|
2024-02-27 16:23:51 +01:00
|
|
|
nfs4
|
2014-09-25 00:22:27 +02:00
|
|
|
openssh
|
2020-03-31 19:06:04 +02:00
|
|
|
php
|
2018-02-09 19:40:39 +01:00
|
|
|
predictable-interface-names
|
2014-09-25 00:22:27 +02:00
|
|
|
proxy
|
|
|
|
simple;
|
|
|
|
installer = {
|
|
|
|
inherit (nixos'.tests.installer)
|
|
|
|
lvm
|
|
|
|
separateBoot
|
|
|
|
simple;
|
|
|
|
};
|
2018-02-27 20:09:07 +01:00
|
|
|
boot = {
|
|
|
|
inherit (nixos'.tests.boot)
|
2022-10-08 22:33:53 +02:00
|
|
|
biosCdrom
|
|
|
|
uefiCdrom;
|
2018-02-27 20:09:07 +01:00
|
|
|
};
|
2014-09-25 00:22:27 +02:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
nixpkgs = {
|
|
|
|
inherit (nixpkgs')
|
2017-01-27 15:30:33 +01:00
|
|
|
apacheHttpd
|
2014-09-25 17:52:25 +02:00
|
|
|
cmake
|
|
|
|
cryptsetup
|
2014-09-25 00:22:27 +02:00
|
|
|
emacs
|
2014-09-25 17:52:25 +02:00
|
|
|
gettext
|
|
|
|
git
|
|
|
|
imagemagick
|
2015-01-02 00:49:20 +01:00
|
|
|
jdk
|
2014-09-25 17:52:25 +02:00
|
|
|
linux
|
2022-09-27 19:39:52 +02:00
|
|
|
mariadb
|
2014-09-25 00:22:27 +02:00
|
|
|
nginx
|
2014-09-25 12:50:08 +02:00
|
|
|
nodejs
|
2014-09-25 00:22:27 +02:00
|
|
|
openssh
|
|
|
|
php
|
2017-01-27 15:30:48 +01:00
|
|
|
postgresql
|
2014-09-25 00:22:27 +02:00
|
|
|
python
|
2024-04-20 22:49:08 +02:00
|
|
|
release-checks
|
2014-09-25 00:22:27 +02:00
|
|
|
rsyslog
|
|
|
|
stdenv
|
2014-09-25 17:52:25 +02:00
|
|
|
subversion
|
2014-09-25 00:22:27 +02:00
|
|
|
tarball
|
2023-02-23 07:30:29 +01:00
|
|
|
vim
|
|
|
|
tests-stdenv-gcc-stageCompare;
|
2014-09-25 00:22:27 +02:00
|
|
|
};
|
|
|
|
|
2022-09-30 00:59:15 +02:00
|
|
|
tested = let
|
|
|
|
onSupported = x: map (system: "${x}.${system}") supportedSystems;
|
|
|
|
onSystems = systems: x: map (system: "${x}.${system}")
|
|
|
|
(pkgs.lib.intersectLists systems supportedSystems);
|
|
|
|
in pkgs.releaseTools.aggregate {
|
2014-09-25 00:22:27 +02:00
|
|
|
name = "nixos-${nixos.channel.version}";
|
|
|
|
meta = {
|
|
|
|
description = "Release-critical builds for the NixOS channel";
|
|
|
|
maintainers = [ lib.maintainers.eelco ];
|
|
|
|
};
|
2022-09-30 00:59:15 +02:00
|
|
|
constituents = lib.flatten [
|
|
|
|
[
|
|
|
|
"nixos.channel"
|
2020-02-17 16:35:53 +01:00
|
|
|
"nixpkgs.tarball"
|
2024-04-17 08:53:10 +02:00
|
|
|
"nixpkgs.release-checks"
|
2022-09-30 00:59:15 +02:00
|
|
|
]
|
|
|
|
(map (onSystems [ "x86_64-linux" ]) [
|
|
|
|
"nixos.tests.boot.biosCdrom"
|
|
|
|
"nixos.tests.installer.lvm"
|
|
|
|
"nixos.tests.installer.separateBoot"
|
|
|
|
"nixos.tests.installer.simple"
|
|
|
|
])
|
|
|
|
(map onSupported [
|
|
|
|
"nixos.dummy"
|
|
|
|
"nixos.iso_minimal"
|
|
|
|
"nixos.amazonImage"
|
|
|
|
"nixos.manual"
|
2022-10-24 15:07:50 +02:00
|
|
|
"nixos.tests.acme"
|
2022-10-08 22:33:53 +02:00
|
|
|
"nixos.tests.boot.uefiCdrom"
|
2022-09-30 00:59:15 +02:00
|
|
|
"nixos.tests.containers-imperative"
|
|
|
|
"nixos.tests.containers-ip"
|
|
|
|
"nixos.tests.firewall"
|
|
|
|
"nixos.tests.ipv6"
|
|
|
|
"nixos.tests.login"
|
|
|
|
"nixos.tests.misc"
|
|
|
|
"nixos.tests.nat.firewall"
|
|
|
|
"nixos.tests.nat.standalone"
|
2024-02-27 16:23:51 +01:00
|
|
|
"nixos.tests.nfs4.simple"
|
2022-09-30 00:59:15 +02:00
|
|
|
"nixos.tests.openssh"
|
|
|
|
"nixos.tests.php.fpm"
|
|
|
|
"nixos.tests.php.pcre"
|
|
|
|
"nixos.tests.predictable-interface-names.predictable"
|
|
|
|
"nixos.tests.predictable-interface-names.predictableNetworkd"
|
|
|
|
"nixos.tests.predictable-interface-names.unpredictable"
|
|
|
|
"nixos.tests.predictable-interface-names.unpredictableNetworkd"
|
|
|
|
"nixos.tests.proxy"
|
|
|
|
"nixos.tests.simple"
|
|
|
|
"nixpkgs.jdk"
|
2023-02-23 07:30:29 +01:00
|
|
|
"nixpkgs.tests-stdenv-gcc-stageCompare"
|
2022-09-30 00:59:15 +02:00
|
|
|
])
|
|
|
|
];
|
2020-02-17 16:35:53 +01:00
|
|
|
};
|
2014-09-25 00:22:27 +02:00
|
|
|
|
|
|
|
}
|