···416 */
417 oldestSupportedRelease =
418 # Update on master only. Do not backport.
419- 2405;
420421 /**
422 Whether a feature is supported in all supported releases (at the time of
···416 */
417 oldestSupportedRelease =
418 # Update on master only. Do not backport.
419+ 2411;
420421 /**
422 Whether a feature is supported in all supported releases (at the time of
···4 pkgs,
5 ...
6}:
0007{
8 # added 2019-11-11
9 imports = [
10- (lib.mkRemovedOptionModule [ "services" "xserver" "displayManager" "slim" ] ''
11 The SLIM project is abandoned and their last release was in 2013.
12 Because of this it poses a security risk to your system.
13 Other issues include it not fully supporting systemd and logind sessions.
···4 pkgs,
5 ...
6}:
7+8+with lib;
9+10{
11 # added 2019-11-11
12 imports = [
13+ (mkRemovedOptionModule [ "services" "xserver" "displayManager" "slim" ] ''
14 The SLIM project is abandoned and their last release was in 2013.
15 Because of this it poses a security risk to your system.
16 Other issues include it not fully supporting systemd and logind sessions.
···7}:
8crystal.buildCrystalPackage rec {
9 pname = "gi-crystal";
10- version = "0.22.2";
1112 src = fetchFromGitHub {
13 owner = "hugopl";
14 repo = "gi-crystal";
15 rev = "v${version}";
16- hash = "sha256-JfBbKqobikpTGMryeO86zZ46EbOHybem+Cc5FZEL6i4=";
17 };
1819 # Make sure gi-crystal picks up the name of the so or dylib and not the leading nix store path
···7}:
8crystal.buildCrystalPackage rec {
9 pname = "gi-crystal";
10+ version = "0.24.0";
1112 src = fetchFromGitHub {
13 owner = "hugopl";
14 repo = "gi-crystal";
15 rev = "v${version}";
16+ hash = "sha256-0LsYREn4zWLQYUTpNWJhLLHWmg7UQzxOoQiAMmw3ZXQ=";
17 };
1819 # Make sure gi-crystal picks up the name of the so or dylib and not the leading nix store path
···4 fetchFromGitHub,
5 perl,
6 which,
7- boost,
8 rdkafka,
9 jansson,
10 curl,
···35 ];
3637 buildInputs = [
38- boost
39 rdkafka
40 jansson
41 curl
···43 avro-cpp
44 ];
4546- makeFlags = [ "GEN_PKG_CONFIG=y" ];
0000000000004748 postPatch = ''
49 patchShebangs configure lds-gen.pl
000050 '';
5152 # Has a configure script but it’s not Autoconf so steal some bits from multiple-outputs.sh:
···4 fetchFromGitHub,
5 perl,
6 which,
07 rdkafka,
8 jansson,
9 curl,
···34 ];
3536 buildInputs = [
037 rdkafka
38 jansson
39 curl
···41 avro-cpp
42 ];
4344+ configureFlags = [
45+ # avro-cpp public headers use at least C++17 features, but libserdes configure scripts
46+ # basically cap it at C++11. It's really unfortunate that we have to patch the configure scripts for this,
47+ # but this seems to be the most sensible way.
48+ # - NIX_CFLAGS_COMPILE - fails because of -Werror in compiler checks since --std=... has no effect for C compilers.
49+ # - CXXFLAGS without patching configure.self does nothing, because --std=c++11 is appended to the final flags, overriding
50+ # everything specified manually.
51+ "--CXXFLAGS=${toString [ "--std=c++17" ]}"
52+ ];
53+54+ makeFlags = [
55+ "GEN_PKG_CONFIG=y"
56+ ];
5758 postPatch = ''
59 patchShebangs configure lds-gen.pl
60+ # Don't append the standard to CXXFLAGS, since we want to set it higher for avro-cpp.
61+ substituteInPlace configure.self --replace-fail \
62+ 'mkl_mkvar_append CXXFLAGS CXXFLAGS "--std=c++11"' \
63+ ":" # Do nothing, we set the standard ourselves.
64 '';
6566 # Has a configure script but it’s not Autoconf so steal some bits from multiple-outputs.sh:
···89buildGoModule rec {
10 pname = "nsc";
11- version = "2.10.1";
1213 src = fetchFromGitHub {
14 owner = "nats-io";
15 repo = pname;
16 rev = "v${version}";
17- hash = "sha256-8HFlWrkDgekW/0IV9LQdn68vygFq0QtR6p4xyJZwAw4=";
18 };
1920 ldflags = [
···47 # the test strips table formatting from the command output in a naive way
48 # that removes all the table characters, including '-'.
49 # The nix build directory looks something like:
50- # /private/tmp/nix-build-nsc-2.10.1.drv-0/nsc_test2000598938/keys
51 # Then the `-` are removed from the path unintentionally and the test fails.
52 # This should be fixed upstream to avoid mangling the path when
53 # removing the table decorations from the command output.
···89buildGoModule rec {
10 pname = "nsc";
11+ version = "2.10.2";
1213 src = fetchFromGitHub {
14 owner = "nats-io";
15 repo = pname;
16 rev = "v${version}";
17+ hash = "sha256-F/9yAF1vXG4eWMmS6l/qWqlEV8YkS7nihHN2vK3JFbE=";
18 };
1920 ldflags = [
···47 # the test strips table formatting from the command output in a naive way
48 # that removes all the table characters, including '-'.
49 # The nix build directory looks something like:
50+ # /private/tmp/nix-build-nsc-2.10.2.drv-0/nsc_test2000598938/keys
51 # Then the `-` are removed from the path unintentionally and the test fails.
52 # This should be fixed upstream to avoid mangling the path when
53 # removing the table decorations from the command output.
···14To update this package
15======================
1617-#. Bump the ``./package.json`` version pin
18-#. Run ``nix-shell -p nodejs --command "npm i --package-lock-only"``
19#. Update ``npmDeps.hash`` in the ``package.nix``
···14To update this package
15======================
1617+#. Bump the ``./manifests/package.json`` version pin
18+#. Run ``(cd manifests && nix-shell -p nodejs --command "npm i --package-lock-only")``
19#. Update ``npmDeps.hash`` in the ``package.nix``
···8buildPythonPackage rec {
9 pname = "libusbsio";
10 format = "setuptools";
11- version = "2.1.12";
12 # If the versions come back into sync switch back to inheriting from c lib
13 # inherit (libusbsio) version;
1415 src = fetchPypi {
16 inherit pname version;
17- hash = "sha256-RdUhwilBOwg19ay3Po3zsxqlBV9FTy3btJDbO4YEKS8=";
18 };
1920 # The source includes both the python module directly and also prebuilt binaries
···8buildPythonPackage rec {
9 pname = "libusbsio";
10 format = "setuptools";
11+ version = "2.1.13";
12 # If the versions come back into sync switch back to inheriting from c lib
13 # inherit (libusbsio) version;
1415 src = fetchPypi {
16 inherit pname version;
17+ hash = "sha256-3xudSyqfXq3wsFdOgBeGK1nSY0NZjx9UhmTqbQGXWyU=";
18 };
1920 # The source includes both the python module directly and also prebuilt binaries
···398 });
399400 yarn2nix = mkYarnPackage {
401- src = lib.fileset.toSource {
402- root = ./.;
403- fileset = lib.fileset.unions [
404- ./bin
405- ./lib
406- ./package.json
407- ./yarn.lock
408- ];
409- };
410411 # yarn2nix is the only package that requires the yarnNix option.
412 # All the other projects can auto-generate that file.
···415 # Using the filter above and importing package.json from the filtered
416 # source results in an error in restricted mode. To circumvent this,
417 # we import package.json from the unfiltered source
418- packageJSON = ./package.json;
419420 yarnFlags = defaultYarnFlags ++ [ "--ignore-scripts" "--production=true" ];
421···446 mkdir -p $out/lib
447 mkdir -p $out/bin
448449- cp ${./lib/urlToName.js} $out/lib/urlToName.js
450 cp ${./internal/fixup_yarn_lock.js} $out/bin/fixup_yarn_lock
451452 patchShebangs $out
···398 });
399400 yarn2nix = mkYarnPackage {
401+ src = ./yarn2nix;
00000000402403 # yarn2nix is the only package that requires the yarnNix option.
404 # All the other projects can auto-generate that file.
···407 # Using the filter above and importing package.json from the filtered
408 # source results in an error in restricted mode. To circumvent this,
409 # we import package.json from the unfiltered source
410+ packageJSON = ./yarn2nix/package.json;
411412 yarnFlags = defaultYarnFlags ++ [ "--ignore-scripts" "--production=true" ];
413···438 mkdir -p $out/lib
439 mkdir -p $out/bin
440441+ cp ${./yarn2nix/lib/urlToName.js} $out/lib/urlToName.js
442 cp ${./internal/fixup_yarn_lock.js} $out/bin/fixup_yarn_lock
443444 patchShebangs $out
···6}:
78let
9- src = lib.fileset.toSource {
10- root = ./local;
11- fileset = lib.fileset.unions [
12- ./local/app
13- ./local/CHANGELOG.md
14- ./local/local.cabal
15- ];
16- };
17- # This prevents the source from depending on the formatting of the ./local/generated.nix file
18- localRaw = haskell.lib.compose.overrideSrc {
19- inherit src;
20- } (haskellPackages.callPackage ./local/generated.nix { });
21in
22lib.recurseIntoAttrs rec {
23···2829 localFromCabalSdist = haskellPackages.buildFromCabalSdist localRaw;
3031- # NOTE: ./local refers to the "./." path in `./local/generated.nix`.
32 # This test makes sure that localHasNoDirectReference can actually fail if
33 # it doesn't do anything. If this test fails, either the test setup was broken,
34 # or Haskell packaging has changed the way `src` is treated in such a way that
···39 drvPath = builtins.unsafeDiscardOutputDependency localRaw.drvPath;
40 }
41 ''
42- grep ${src} $drvPath >/dev/null
43 touch $out
44 '';
45···49 drvPath = builtins.unsafeDiscardOutputDependency localFromCabalSdist.drvPath;
50 }
51 ''
52- grep -v ${src} $drvPath >/dev/null
53 touch $out
54 '';
55}
···6}:
78let
9+ localRaw = haskellPackages.callPackage ./generated.nix { };
0000000000010in
11lib.recurseIntoAttrs rec {
12···1718 localFromCabalSdist = haskellPackages.buildFromCabalSdist localRaw;
19020 # This test makes sure that localHasNoDirectReference can actually fail if
21 # it doesn't do anything. If this test fails, either the test setup was broken,
22 # or Haskell packaging has changed the way `src` is treated in such a way that
···27 drvPath = builtins.unsafeDiscardOutputDependency localRaw.drvPath;
28 }
29 ''
30+ grep ${localRaw.src} $drvPath >/dev/null
31 touch $out
32 '';
33···37 drvPath = builtins.unsafeDiscardOutputDependency localFromCabalSdist.drvPath;
38 }
39 ''
40+ grep -v ${localRaw.src} $drvPath >/dev/null
41 touch $out
42 '';
43}
···1-# nix run ../../../../..#cabal2nix -- ./.
2{
3 mkDerivation,
4 base,
···7mkDerivation {
8 pname = "local";
9 version = "0.1.0.0";
10- src = ./.; # also referred to as ./local in the test; these are the same path constants
11 isLibrary = false;
12 isExecutable = true;
13 executableHaskellDepends = [ base ];
14 description = "Nixpkgs test case";
15 license = lib.licenses.mit;
016}
···27, # Allow a configuration attribute set to be passed in as an argument.
28 config ? {}
29000030, # List of overlays layers used to extend Nixpkgs.
31 overlays ? []
32···47 crossSystem0 = crossSystem;
4849in let
50- lib = import ../../lib;
000000000000000005152 inherit (lib) throwIfNot;
53
···27, # Allow a configuration attribute set to be passed in as an argument.
28 config ? {}
2930+, # Temporary hack to let Nixpkgs forbid internal use of `lib.fileset`
31+ # until <https://github.com/NixOS/nix/issues/11503> is fixed.
32+ __allowFileset ? true
33+34, # List of overlays layers used to extend Nixpkgs.
35 overlays ? []
36···51 crossSystem0 = crossSystem;
5253in let
54+ pristineLib = import ../../lib;
55+56+ lib =
57+ if __allowFileset then
58+ pristineLib
59+ else
60+ pristineLib.extend (_: _: {
61+ fileset = abort ''
62+63+ The use of `lib.fileset` is currently forbidden in Nixpkgs due to the
64+ upstream Nix bug <https://github.com/NixOS/nix/issues/11503>. This
65+ causes difficult‐to‐debug errors when combined with chroot stores,
66+ such as in the NixOS installer.
67+68+ For packages that require source to be vendored inside Nixpkgs,
69+ please use a subdirectory of the package instead.
70+ '';
71+ });
7273 inherit (lib) throwIfNot;
74
+4-1
pkgs/top-level/release-cross.nix
···17, # Strip most of attributes when evaluating to spare memory usage
18 scrubJobs ? true
19, # Attributes passed to nixpkgs. Don't build packages marked as unfree.
20- nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; }
00021}:
2223let
···17, # Strip most of attributes when evaluating to spare memory usage
18 scrubJobs ? true
19, # Attributes passed to nixpkgs. Don't build packages marked as unfree.
20+ nixpkgsArgs ? {
21+ config = { allowUnfree = false; inHydra = true; };
22+ __allowFileset = false;
23+ }
24}:
2526let
···37 cudaSupport = true;
38 inHydra = true;
39 };
0040 },
41 # We only build the full package set on infrequently releasing channels.
42 full ? false,
···37 cudaSupport = true;
38 inHydra = true;
39 };
40+41+ __allowFileset = false;
42 },
43 # We only build the full package set on infrequently releasing channels.
44 full ? false,
+14-10
pkgs/top-level/release.nix
···28 # Strip most of attributes when evaluating to spare memory usage
29, scrubJobs ? true
30 # Attributes passed to nixpkgs. Don't build packages marked as unfree.
31-, nixpkgsArgs ? { config = {
32- allowUnfree = false;
33- inHydra = true;
34- # Exceptional unsafe packages that we still build and distribute,
35- # so users choosing to allow don't have to rebuild them every time.
36- permittedInsecurePackages = [
37- "olm-3.2.16" # see PR #347899
38- "kanidm_1_3-1.3.3"
39- ];
40- }; }
00004142 # This flag, if set to true, will inhibit the use of `mapTestOn`
43 # and `release-lib.packagePlatforms`. Generally, it causes the
···28 # Strip most of attributes when evaluating to spare memory usage
29, scrubJobs ? true
30 # Attributes passed to nixpkgs. Don't build packages marked as unfree.
31+, nixpkgsArgs ? {
32+ config = {
33+ allowUnfree = false;
34+ inHydra = true;
35+ # Exceptional unsafe packages that we still build and distribute,
36+ # so users choosing to allow don't have to rebuild them every time.
37+ permittedInsecurePackages = [
38+ "olm-3.2.16" # see PR #347899
39+ "kanidm_1_3-1.3.3"
40+ ];
41+ };
42+43+ __allowFileset = false;
44+ }
4546 # This flag, if set to true, will inhibit the use of `mapTestOn`
47 # and `release-lib.packagePlatforms`. Generally, it causes the