diff options
author | Alyssa Ross <hi@alyssa.is> | 2022-05-31 09:59:33 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2022-05-31 09:59:57 +0000 |
commit | 9ff36293d1e428cd7bf03e8d4b03611b6d361c28 (patch) | |
tree | 1ab51a42b868c55b83f6ccdb80371b9888739dd9 /pkgs/top-level/release.nix | |
parent | 1c4fcd0d4b0541e674ee56ace1053e23e562cc80 (diff) | |
parent | ddc3c396a51918043bb0faa6f676abd9562be62c (diff) | |
download | nixpkgs-archive.tar nixpkgs-archive.tar.gz nixpkgs-archive.tar.bz2 nixpkgs-archive.tar.lz nixpkgs-archive.tar.xz nixpkgs-archive.tar.zst nixpkgs-archive.zip |
Last good Nixpkgs for Weston+nouveau? archive
I came this commit hash to terwiz[m] on IRC, who is trying to figure out what the last version of Spectrum that worked on their NUC with Nvidia graphics is.
Diffstat (limited to 'pkgs/top-level/release.nix')
-rw-r--r-- | pkgs/top-level/release.nix | 224 |
1 files changed, 224 insertions, 0 deletions
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix new file mode 100644 index 00000000000..0c759095f56 --- /dev/null +++ b/pkgs/top-level/release.nix @@ -0,0 +1,224 @@ +/* This file defines the builds that constitute the Nixpkgs. + Everything defined here ends up in the Nixpkgs channel. Individual + jobs can be tested by running: + + $ nix-build pkgs/top-level/release.nix -A <jobname>.<system> + + e.g. + + $ nix-build pkgs/top-level/release.nix -A coreutils.x86_64-linux +*/ +{ nixpkgs ? { outPath = (import ../../lib).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; revision = "0000000000000000000000000000000000000000"; } +, officialRelease ? false + # The platforms for which we build Nixpkgs. +, supportedSystems ? [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" ] +, limitedSupportedSystems ? [ "i686-linux" ] + # Strip most of attributes when evaluating to spare memory usage +, scrubJobs ? true + # Attributes passed to nixpkgs. Don't build packages marked as unfree. +, nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; } +}: + +with import ./release-lib.nix { inherit supportedSystems scrubJobs nixpkgsArgs; }; + +let + + systemsWithAnySupport = supportedSystems ++ limitedSupportedSystems; + + supportDarwin = lib.genAttrs [ + "x86_64" + "aarch64" + ] (arch: builtins.elem "${arch}-darwin" systemsWithAnySupport); + + jobs = + { tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease supportedSystems; }; + + metrics = import ./metrics.nix { inherit pkgs nixpkgs; }; + + manual = import ../../doc { inherit pkgs nixpkgs; }; + lib-tests = import ../../lib/tests/release.nix { inherit pkgs; }; + pkgs-lib-tests = import ../pkgs-lib/tests { inherit pkgs; }; + + darwin-tested = if supportDarwin.x86_64 then pkgs.releaseTools.aggregate + { name = "nixpkgs-darwin-${jobs.tarball.version}"; + meta.description = "Release-critical builds for the Nixpkgs darwin channel"; + constituents = + [ jobs.tarball + jobs.cabal2nix.x86_64-darwin + jobs.ghc.x86_64-darwin + jobs.git.x86_64-darwin + jobs.go.x86_64-darwin + jobs.mariadb.x86_64-darwin + jobs.nix.x86_64-darwin + jobs.nixpkgs-review.x86_64-darwin + jobs.nix-info.x86_64-darwin + jobs.nix-info-tested.x86_64-darwin + jobs.openssh.x86_64-darwin + jobs.openssl.x86_64-darwin + jobs.pandoc.x86_64-darwin + jobs.postgresql.x86_64-darwin + jobs.python2.x86_64-darwin + jobs.python3.x86_64-darwin + jobs.ruby.x86_64-darwin + jobs.rustc.x86_64-darwin + # blocking ofBorg CI 2020-02-28 + # jobs.stack.x86_64-darwin + jobs.stdenv.x86_64-darwin + jobs.vim.x86_64-darwin + jobs.cachix.x86_64-darwin + + # UI apps + # jobs.firefox-unwrapped.x86_64-darwin + jobs.qt5.qtmultimedia.x86_64-darwin + jobs.inkscape.x86_64-darwin + jobs.gimp.x86_64-darwin + jobs.emacs.x86_64-darwin + jobs.wireshark.x86_64-darwin + jobs.transmission-gtk.x86_64-darwin + + # Tests + /* + jobs.tests.cc-wrapper.x86_64-darwin + jobs.tests.cc-wrapper-clang.x86_64-darwin + jobs.tests.cc-wrapper-libcxx.x86_64-darwin + jobs.tests.stdenv-inputs.x86_64-darwin + jobs.tests.macOSSierraShared.x86_64-darwin + jobs.tests.patch-shebangs.x86_64-darwin + */ + ]; + } else null; + + unstable = pkgs.releaseTools.aggregate + { name = "nixpkgs-${jobs.tarball.version}"; + meta.description = "Release-critical builds for the Nixpkgs unstable channel"; + constituents = + [ jobs.tarball + jobs.metrics + jobs.manual + jobs.lib-tests + jobs.pkgs-lib-tests + jobs.stdenv.x86_64-linux + jobs.cargo.x86_64-linux + jobs.go.x86_64-linux + jobs.linux.x86_64-linux + jobs.pandoc.x86_64-linux + jobs.python2.x86_64-linux + jobs.python3.x86_64-linux + # Needed by contributors to test PRs (by inclusion of the PR template) + jobs.nixpkgs-review.x86_64-linux + # Needed for support + jobs.nix-info.x86_64-linux + jobs.nix-info-tested.x86_64-linux + # Ensure that X11/GTK are in order. + jobs.thunderbird-unwrapped.x86_64-linux + jobs.cachix.x86_64-linux + + /* + jobs.tests.cc-wrapper.x86_64-linux + jobs.tests.cc-wrapper-gcc7.x86_64-linux + jobs.tests.cc-wrapper-gcc8.x86_64-linux + + # broken see issue #40038 + + jobs.tests.cc-wrapper-clang.x86_64-linux + jobs.tests.cc-wrapper-libcxx.x86_64-linux + jobs.tests.cc-wrapper-clang-5.x86_64-linux + jobs.tests.cc-wrapper-libcxx-5.x86_64-linux + jobs.tests.cc-wrapper-clang-6.x86_64-linux + jobs.tests.cc-wrapper-libcxx-6.x86_64-linux + jobs.tests.cc-multilib-gcc.x86_64-linux + jobs.tests.cc-multilib-clang.x86_64-linux + jobs.tests.stdenv-inputs.x86_64-linux + jobs.tests.patch-shebangs.x86_64-linux + */ + ] + ++ lib.collect lib.isDerivation jobs.stdenvBootstrapTools + ++ lib.optionals supportDarwin.x86_64 [ + jobs.stdenv.x86_64-darwin + jobs.cargo.x86_64-darwin + jobs.cachix.x86_64-darwin + jobs.go.x86_64-darwin + jobs.python2.x86_64-darwin + jobs.python3.x86_64-darwin + jobs.nixpkgs-review.x86_64-darwin + jobs.nix-info.x86_64-darwin + jobs.nix-info-tested.x86_64-darwin + jobs.git.x86_64-darwin + jobs.mariadb.x86_64-darwin + jobs.vim.x86_64-darwin + jobs.inkscape.x86_64-darwin + jobs.qt5.qtmultimedia.x86_64-darwin + /* + jobs.tests.cc-wrapper.x86_64-darwin + jobs.tests.cc-wrapper-gcc7.x86_64-darwin + # jobs.tests.cc-wrapper-gcc8.x86_64-darwin + jobs.tests.cc-wrapper-clang.x86_64-darwin + jobs.tests.cc-wrapper-libcxx.x86_64-darwin + jobs.tests.cc-wrapper-clang-5.x86_64-darwin + jobs.tests.cc-wrapper-libcxx-6.x86_64-darwin + jobs.tests.cc-wrapper-clang-6.x86_64-darwin + jobs.tests.cc-wrapper-libcxx-6.x86_64-darwin + jobs.tests.stdenv-inputs.x86_64-darwin + jobs.tests.macOSSierraShared.x86_64-darwin + jobs.tests.patch-shebangs.x86_64-darwin + */ + ]; + }; + + stdenvBootstrapTools = with lib; + genAttrs systemsWithAnySupport + (system: { + inherit + (import ../stdenv/linux/make-bootstrap-tools.nix { + localSystem = { inherit system; }; + }) + dist test; + }) + # darwin is special in this + // optionalAttrs supportDarwin.x86_64 { + x86_64-darwin = + let + bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix { system = "x86_64-darwin"; }; + in { + # Lightweight distribution and test + inherit (bootstrap) dist test; + # Test a full stdenv bootstrap from the bootstrap tools definition + inherit (bootstrap.test-pkgs) stdenv; + }; + } // optionalAttrs supportDarwin.aarch64 { + # Cross compiled bootstrap tools + aarch64-darwin = + let + bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix { system = "x86_64-darwin"; crossSystem = "aarch64-darwin"; }; + in { + # Distribution only for now + inherit (bootstrap) dist; + }; + }; + + } // (mapTestOn ((packagePlatforms pkgs) // { + haskell.compiler = packagePlatforms pkgs.haskell.compiler; + haskellPackages = packagePlatforms pkgs.haskellPackages; + idrisPackages = packagePlatforms pkgs.idrisPackages; + agdaPackages = packagePlatforms pkgs.agdaPackages; + + pkgsLLVM.stdenv = [ "x86_64-linux" "aarch64-linux" ]; + pkgsMusl.stdenv = [ "x86_64-linux" "aarch64-linux" ]; + pkgsStatic.stdenv = [ "x86_64-linux" "aarch64-linux" ]; + + tests = packagePlatforms pkgs.tests; + + # Language packages disabled in https://github.com/NixOS/nixpkgs/commit/ccd1029f58a3bb9eca32d81bf3f33cb4be25cc66 + + #emacsPackages = packagePlatforms pkgs.emacsPackages; + #rPackages = packagePlatforms pkgs.rPackages; + ocamlPackages = { }; + perlPackages = { }; + + darwin = packagePlatforms pkgs.darwin // { + cf-private = {}; + xcode = {}; + }; + } )); + +in jobs |