···230230231231 postInstall = ''
232232 substituteInPlace $out/bin/solo5-virtio-mkimage \
233233- --replace "/usr/lib/syslinux" "${syslinux}/share/syslinux" \
234234- --replace "/usr/share/syslinux" "${syslinux}/share/syslinux" \
235235- --replace "cp " "cp --no-preserve=mode "
233233+ --replace-fail "/usr/lib/syslinux" "${syslinux}/share/syslinux" \
234234+ --replace-fail "/usr/share/syslinux" "${syslinux}/share/syslinux" \
235235+ --replace-fail "cp " "cp --no-preserve=mode "
236236237237 wrapProgram $out/bin/solo5-virtio-mkimage \
238238 --prefix PATH : ${lib.makeBinPath [ dosfstools mtools parted syslinux ]}
···1253125312541254Performs string substitution on the contents of \<infile\>, writing the result to \<outfile\>. The substitutions in \<subs\> are of the following form:
1255125512561256-#### `--replace` \<s1\> \<s2\> {#fun-substitute-replace}
12561256+#### `--replace-fail` \<s1\> \<s2\> {#fun-substitute-replace-fail}
12571257+12581258+Replace every occurrence of the string \<s1\> by \<s2\>.
12591259+Will error if no change is made.
12601260+12611261+#### `--replace-warn` \<s1\> \<s2\> {#fun-substitute-replace-warn}
12621262+12631263+Replace every occurrence of the string \<s1\> by \<s2\>.
12641264+Will print a warning if no change is made.
12651265+12661266+#### `--replace-quiet` \<s1\> \<s2\> {#fun-substitute-replace-quiet}
1257126712581268Replace every occurrence of the string \<s1\> by \<s2\>.
12691269+Will do nothing if no change can be made.
1259127012601271#### `--subst-var` \<varName\> {#fun-substitute-subst-var}
12611272···1269128012701281```shell
12711282substitute ./foo.in ./foo.out \
12721272- --replace /usr/bin/bar $bar/bin/bar \
12731273- --replace "a string containing spaces" "some other text" \
12831283+ --replace-fail /usr/bin/bar $bar/bin/bar \
12841284+ --replace-fail "a string containing spaces" "some other text" \
12741285 --subst-var someVar
12751286```
12761287
···9292boot.kernelPackages = pkgs.linuxPackagesFor yourCustomKernel;
9393```
94949595+## Rust {#sec-linux-rust}
9696+9797+The Linux kernel does not have Rust language support enabled by
9898+default. For kernel versions 6.7 or newer, experimental Rust support
9999+can be enabled. In a NixOS configuration, set:
100100+101101+```nix
102102+boot.kernelPatches = [
103103+ {
104104+ name = "Rust Support";
105105+ patch = null;
106106+ features = {
107107+ rust = true;
108108+ };
109109+ }
110110+];
111111+```
112112+95113## Developing kernel modules {#sec-linux-config-developing-modules}
9611497115This section was moved to the [Nixpkgs manual](https://nixos.org/nixpkgs/manual#sec-linux-kernel-developing-modules).
+4
nixos/doc/manual/release-notes/rl-2405.section.md
···133133134134- `services.resolved.fallbackDns` can now be used to disable the upstream fallback servers entirely by setting it to an empty list. To get the previous behaviour of the upstream defaults set it to null, the new default, instead.
135135136136+- `xxd` has been moved from `vim` default output to its own output to reduce closure size. The canonical way to reference it across all platforms is `unixtools.xxd`.
137137+136138- `services.avahi.nssmdns` got split into `services.avahi.nssmdns4` and `services.avahi.nssmdns6` which enable the mDNS NSS switch for IPv4 and IPv6 respectively.
137139 Since most mDNS responders only register IPv4 addresses, most users want to keep the IPv6 support disabled to avoid long timeouts.
138140···230232231233- The option [`services.nextcloud.config.dbport`] of the Nextcloud module was removed to match upstream.
232234 The port can be specified in [`services.nextcloud.config.dbhost`](#opt-services.nextcloud.config.dbhost).
235235+236236+- `stdenv`: The `--replace` flag in `substitute`, `substituteInPlace`, `substituteAll`, `substituteAllStream`, and `substituteStream` is now deprecated if favor of the new `--replace-fail`, `--replace-warn` and `--replace-quiet`. The deprecated `--replace` equates to `--replace-warn`.
233237234238- The Yama LSM is now enabled by default in the kernel, which prevents ptracing
235239 non-child processes. This means you will not be able to attach gdb to an
···525525 # additional -isystem flags will confuse gfortran (see
526526 # https://github.com/NixOS/nixpkgs/pull/209870#issuecomment-1500550903)
527527 + optionalString (libcxx == null && isClang && (useGccForLibs && gccForLibs.langCC or false)) ''
528528- for dir in ${gccForLibs}${lib.optionalString (hostPlatform != targetPlatform) "/${targetPlatform.config}"}/include/c++/*; do
528528+ for dir in ${gccForLibs}/include/c++/*; do
529529 echo "-isystem $dir" >> $out/nix-support/libcxx-cxxflags
530530 done
531531- for dir in ${gccForLibs}${lib.optionalString (hostPlatform != targetPlatform) "/${targetPlatform.config}"}/include/c++/*/${targetPlatform.config}; do
531531+ for dir in ${gccForLibs}/include/c++/*/${targetPlatform.config}; do
532532 echo "-isystem $dir" >> $out/nix-support/libcxx-cxxflags
533533 done
534534 ''
+6
pkgs/build-support/go/module.nix
···3939 # Not needed with buildGoModule
4040, goPackagePath ? ""
41414242+, ldflags ? [ ]
4343+4244 # needed for buildFlags{,Array} warning
4345, buildFlags ? ""
4446, buildFlagsArray ? ""
···153155154156 GOFLAGS = lib.optionals (!proxyVendor) [ "-mod=vendor" ] ++ lib.optionals (!allowGoReference) [ "-trimpath" ];
155157 inherit CGO_ENABLED enableParallelBuilding GO111MODULE GOTOOLCHAIN;
158158+159159+ # If not set to an explicit value, set the buildid empty for reproducibility.
160160+ ldflags = ldflags ++ lib.optionals (!lib.any (lib.hasPrefix "-buildid=") ldflags) [ "-buildid=" ];
156161157162 configurePhase = args.configurePhase or (''
158163 runHook preConfigure
···301306lib.warnIf (args' ? vendorSha256) "`vendorSha256` is deprecated. Use `vendorHash` instead"
302307lib.warnIf (buildFlags != "" || buildFlagsArray != "")
303308 "Use the `ldflags` and/or `tags` attributes instead of `buildFlags`/`buildFlagsArray`"
309309+lib.warnIf (builtins.elem "-buildid=" ldflags) "`-buildid=` is set by default as ldflag by buildGoModule"
304310 package
+6
pkgs/build-support/go/package.nix
···37373838, CGO_ENABLED ? go.CGO_ENABLED
39394040+, ldflags ? [ ]
4141+4042# needed for buildFlags{,Array} warning
4143, buildFlags ? ""
4244, buildFlagsArray ? ""
···9092 GOFLAGS = lib.optionals (!allowGoReference) [ "-trimpath" ];
91939294 GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
9595+9696+ # If not set to an explicit value, set the buildid empty for reproducibility.
9797+ ldflags = ldflags ++ lib.optionals (!lib.any (lib.hasPrefix "-buildid=") ldflags) [ "-buildid=" ];
93989499 configurePhase = args.configurePhase or (''
95100 runHook preConfigure
···280285in
281286lib.warnIf (buildFlags != "" || buildFlagsArray != "")
282287 "Use the `ldflags` and/or `tags` attributes instead of `buildFlags`/`buildFlagsArray`"
288288+lib.warnIf (builtins.elem "-buildid=" ldflags) "`-buildid=` is set by default as ldflag by buildGoModule"
283289 package
···11-From a908a574daf8bac10bb2a0ee3771052d2167a85f Mon Sep 17 00:00:00 2001
22-From: Randy Eckenrode <randy@largeandhighquality.com>
33-Date: Sun, 3 Dec 2023 15:41:20 -0500
44-Subject: [PATCH] Fix test failure on Darwin on a case-sensitive fs
55-66-This was encountered while looking into an issue with
77-https://github.com/NixOS/nixpkgs/pull/268583.
88-99-I run my Nix store on case-sensitive APFS, so the test fails due to
1010-trying to link `-framework ldap` instead of `-framework LDAP`.
1111----
1212- test cases/osx/5 extra frameworks/meson.build | 2 +-
1313- 1 file changed, 1 insertion(+), 1 deletion(-)
1414-1515-diff --git a/test cases/osx/5 extra frameworks/meson.build b/test cases/osx/5 extra frameworks/meson.build
1616-index f6c01e63a1bd..96532846c632 100644
1717---- a/test cases/osx/5 extra frameworks/meson.build
1818-+++ b/test cases/osx/5 extra frameworks/meson.build
1919-@@ -7,7 +7,7 @@ dep_main = dependency('Foundation')
2020- assert(dep_main.type_name() == 'extraframeworks', 'type_name is ' + dep_main.type_name())
2121-2222- # https://github.com/mesonbuild/meson/issues/10002
2323--ldap_dep = dependency('ldap', method : 'extraframework')
2424-+ldap_dep = dependency('LDAP', method : 'extraframework')
2525- assert(ldap_dep.type_name() == 'extraframeworks', 'type_name is ' + ldap_dep.type_name())
2626-2727- stlib = static_library('stat', 'stat.c', install : true, dependencies: [opengl_dep, ldap_dep])
···135135 # We pick "/" path to effectively avoid sysroot offset and make it work
136136 # as a native case.
137137 "--with-build-sysroot=/"
138138+ # Same with the stdlibc++ headers embedded in the gcc output
139139+ "--with-gxx-include-dir=${placeholder "out"}/include/c++/${version}/"
138140 ]
139141140142 # Basic configuration
···1212Typical examples are `nix` -> `nlohmann_json` and `pipewire` ->
1313`lttng-ust.dev`.
14141515+For this reason we want to remove the occurrences of hashes in the
1616+expansion of `__FILE__`. `nuke-references` does it by replacing hashes
1717+by `eeeeee...` but those paths are also used for debug symbols. It is
1818+handy to be able to invert the transformation to go back to the original
1919+store path for debuginfod servers. The chosen solution is to make the
2020+hash uppercase:
2121+- it does not trigger runtime references (except for all digit hashes,
2222+ which are unlikely enough)
2323+- it visually looks like a bogus store path
2424+- it is easy to find the original store path if required
2525+1526Ideally we would like to use `-fmacro-prefix-map=` feature of `gcc` as:
16271717- -fmacro-prefix-map=/nix/store/$hash1-nlohmann-json-ver=/nix/store/eeee.eee-nlohmann-json-ver
2828+ -fmacro-prefix-map=/nix/store/$hash1-nlohmann-json-ver=/nix/store/$HASH1-nlohmann-json-ver
1829 -fmacro-prefix-map=/nix/...
19302031In practice it quickly exhausts argument length limit due to `gcc`
···25362637Tested as:
27382828- $ printf "# 0 \"/nix/store/01234567890123456789012345678901-pppppp-vvvvvvv\" \nconst char * f(void) { return __FILE__; }" | NIX_STORE=/nix/store ./gcc/xgcc -Bgcc -x c - -S -o -
3939+ $ printf "# 0 \"/nix/store/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-pppppp-vvvvvvv\" \nconst char * f(void) { return __FILE__; }" | NIX_STORE=/nix/store ./gcc/xgcc -Bgcc -x c - -S -o -
2940 ...
3030- .string "/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-pppppp-vvvvvvv"
4141+ .string "/nix/store/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA-pppppp-vvvvvvv"
3142 ...
32433344Mangled successfully.
···4354 /* Perform user-specified mapping of filename prefixes. Return the
4455 GC-allocated new name corresponding to FILENAME or FILENAME if no
4556 remapping was performed. */
4646-@@ -76,7 +79,30 @@ remap_filename (file_prefix_map *maps, const char *filename)
5757+@@ -76,7 +79,31 @@ remap_filename (file_prefix_map *maps, const char *filename)
4758 if (filename_ncmp (filename, map->old_prefix, map->old_len) == 0)
4859 break;
4960 if (!map)
···5162+ {
5263+ if (maps == macro_prefix_maps)
5364+ {
5454-+ /* Remap all fo $NIX_STORE/.{32} paths to
5555-+ * equivalent $NIX_STORE/e{32}.
6565++ /* Remap the 32 characters after $NIX_STORE/ to uppercase
5666+ *
5767+ * That way we avoid argument parameters explosion
5868+ * and still avoid embedding headers into runtime closure:
···6676+ {
6777+ s = (char *) ggc_alloc_atomic (name_len + 1);
6878+ memcpy(s, name, name_len + 1);
6969-+ memset(s + nix_store_len + 1, 'e', 32);
7979++ for (int i = nix_store_len + 1; i < nix_store_len + 1 + 32; i++) {
8080++ s[i] = TOUPPER(s[i]);
8181++ }
7082+ return s;
7183+ }
7284+ }
···7587 name = filename + map->old_len;
7688 name_len = strlen (name) + 1;
77897878-@@ -90,7 +116,6 @@ remap_filename (file_prefix_map *maps, const char *filename)
9090+@@ -90,7 +117,6 @@ remap_filename (file_prefix_map *maps, const char *filename)
7991 ignore it in DW_AT_producer (dwarf2out.cc). */
80928193 /* Linked lists of file_prefix_map structures. */
···1212Typical examples are `nix` -> `nlohmann_json` and `pipewire` ->
1313`lttng-ust.dev`.
14141515+For this reason we want to remove the occurrences of hashes in the
1616+expansion of `__FILE__`. `nuke-references` does it by replacing hashes
1717+by `eeeeee...` but those paths are also used for debug symbols. It is
1818+handy to be able to invert the transformation to go back to the original
1919+store path for debuginfod servers. The chosen solution is to make the
2020+hash uppercase:
2121+- it does not trigger runtime references (except for all digit hashes,
2222+ which are unlikely enough)
2323+- it visually looks like a bogus store path
2424+- it is easy to find the original store path if required
2525+1526Ideally we would like to use `-fmacro-prefix-map=` feature of `gcc` as:
16271717- -fmacro-prefix-map=/nix/store/$hash1-nlohmann-json-ver=/nix/store/eeee.eee-nlohmann-json-ver
2828+ -fmacro-prefix-map=/nix/store/$hash1-nlohmann-json-ver=/nix/store/$HASH1-nlohmann-json-ver
1829 -fmacro-prefix-map=/nix/...
19302031In practice it quickly exhausts argument length limit due to `gcc`
···25362637Tested as:
27382828- $ printf "# 0 \"/nix/store/01234567890123456789012345678901-pppppp-vvvvvvv\" \nconst char * f(void) { return __FILE__; }" | NIX_STORE=/nix/store ./gcc/xgcc -Bgcc -x c - -S -o -
3939+ $ printf "# 0 \"/nix/store/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-pppppp-vvvvvvv\" \nconst char * f(void) { return __FILE__; }" | NIX_STORE=/nix/store ./gcc/xgcc -Bgcc -x c - -S -o -
2940 ...
3030- .string "/nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-pppppp-vvvvvvv"
4141+ .string "/nix/store/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA-pppppp-vvvvvvv"
3142 ...
32433344Mangled successfully.
···4354 /* Perform user-specified mapping of filename prefixes. Return the
4455 GC-allocated new name corresponding to FILENAME or FILENAME if no
4556 remapping was performed. */
4646-@@ -102,6 +105,29 @@ remap_filename (file_prefix_map *maps, const char *filename)
5757+@@ -102,6 +105,30 @@ remap_filename (file_prefix_map *maps, const char *filename)
4758 break;
4859 if (!map)
4960 {
5061+ if (maps == macro_prefix_maps)
5162+ {
5252-+ /* Remap all fo $NIX_STORE/.{32} paths to
5353-+ * equivalent $NIX_STORE/e{32}.
6363++ /* Remap all fo $NIX_STORE/.{32} paths to uppercase
5464+ *
5565+ * That way we avoid argument parameters explosion
5666+ * and still avoid embedding headers into runtime closure:
···6474+ {
6575+ s = (char *) ggc_alloc_atomic (name_len + 1);
6676+ memcpy(s, name, name_len + 1);
6767-+ memset(s + nix_store_len + 1, 'e', 32);
7777++ for (int i = nix_store_len + 1; i < nix_store_len + 1 + 32; i++) {
7878++ s[i] = TOUPPER(s[i]);
7979++ }
6880+ if (realname != filename)
6981+ free (const_cast <char *> (realname));
7082+ return s;
···7385 if (realname != filename)
7486 free (const_cast <char *> (realname));
7587 return filename;
7676-@@ -124,7 +150,6 @@ remap_filename (file_prefix_map *maps, const char *filename)
8888+@@ -124,7 +151,6 @@ remap_filename (file_prefix_map *maps, const char *filename)
7789 ignore it in DW_AT_producer (gen_command_line_string in opts.cc). */
78907991 /* Linked lists of file_prefix_map structures. */
···8193 static file_prefix_map *debug_prefix_maps; /* -fdebug-prefix-map */
8294 static file_prefix_map *profile_prefix_maps; /* -fprofile-prefix-map */
83958484-
···11-WGET_ARGS=( https://download.kde.org/stable/frameworks/5.113/ -A '*.tar.xz' )
11+WGET_ARGS=( https://download.kde.org/stable/frameworks/5.114/ -A '*.tar.xz' )
···5858 cmake/Modules/FindOpenSSL_EP.cmake
5959 '';
60606161+ # upstream will hopefully fix this in some newer release
6262+ env.CXXFLAGS = "-include random";
6363+6164 # (bundled) blosc headers have a warning on some archs that it will be using
6265 # unaccelerated routines.
6366 cmakeFlags = [
···6060 pytestCheckHook
6161 ] ++ lib.concatLists (lib.attrVals ([
6262 "woff"
6363- "interpolatable"
6363+ # "interpolatable" is not included because it only contains 2 tests at the time of writing but adds 270 extra dependencies
6464 "ufo"
6565 ] ++ lib.optionals (!skia-pathops.meta.broken) [
6666 "pathops" # broken
···66, isPyPy
77, pythonOlder
8899-# https://github.com/matplotlib/matplotlib/blob/main/doc/devel/dependencies.rst
109# build-system
1110, certifi
1212-, oldest-supported-numpy
1311, pkg-config
1412, pybind11
1513, setuptools
···109107 substituteInPlace src/_c_internal_utils.c \
110108 --replace libX11.so.6 ${libX11}/lib/libX11.so.6 \
111109 --replace libwayland-client.so.0 ${wayland}/lib/libwayland-client.so.0
112112- '' +
113113- # bring our own system libraries
114114- # https://github.com/matplotlib/matplotlib/blob/main/doc/devel/dependencies.rst#c-libraries
115115- ''
116116- echo "[libs]
117117- system_freetype=true
118118- system_qhull=true" > mplsetup.cfg
119110 '';
120111121112 nativeBuildInputs = [
122113 certifi
123114 numpy
124124- oldest-supported-numpy # TODO remove after updating to 3.8.0
125115 pkg-config
126116 pybind11
127117 setuptools
···184174 libs = {
185175 system_freetype = true;
186176 system_qhull = true;
187187- } // lib.optionalAttrs stdenv.isDarwin {
188177 # LTO not working in darwin stdenv, see #19312
189189- enable_lto = false;
178178+ enable_lto = !stdenv.isDarwin;
190179 };
191180 };
192181193182 env.MPLSETUPCFG = writeText "mplsetup.cfg" (lib.generators.toINI {} passthru.config);
194183195195- # Matplotlib needs to be built against a specific version of freetype in
196196- # order for all of the tests to pass.
184184+ # Encountering a ModuleNotFoundError, as describved and investigated at:
185185+ # https://github.com/NixOS/nixpkgs/issues/255262 . It could be that some of
186186+ # which may fail due to a freetype version that doesn't match the freetype
187187+ # version used by upstream.
197188 doCheck = false;
198189199190 meta = with lib; {
···55, mock
66, six
77, pytestCheckHook
88+, python-memcached
89, pythonOlder
910, zstd
1011, stdenv
···3233 faker
3334 mock
3435 pytestCheckHook
3636+ python-memcached
3537 zstd
3638 ];
3739···3941 sed -i "/--cov/d" setup.cfg
4042 '';
41434242- disabledTests = [
4343- # python-memcached is not available (last release in 2017)
4444- "TestClientSocketConnect"
4545- ] ++ lib.optionals stdenv.is32bit [
4444+ disabledTests = lib.optionals stdenv.is32bit [
4645 # test_compressed_complex is broken on 32-bit platforms
4746 # this can be removed on the next version bump
4847 # see also https://github.com/pinterest/pymemcache/pull/480
···11-{ lib, buildGoPackage, fetchFromGitHub }:
22-33-buildGoPackage rec {
44- pname = "gocode-unstable";
55- version = "2020-04-06";
66- rev = "4acdcbdea79de6b3dee1c637eca5cbea0fdbe37c";
77-88- goPackagePath = "github.com/mdempsky/gocode";
99-1010- # we must allow references to the original `go` package,
1111- # because `gocode` needs to dig into $GOROOT to provide completions for the
1212- # standard packages.
1313- allowGoReference = true;
1414-1515- src = fetchFromGitHub {
1616- inherit rev;
1717-1818- owner = "mdempsky";
1919- repo = "gocode";
2020- sha256 = "0i1hc089gb6a4mcgg56vn5l0q96wrlza2n08l4349s3dc2j559fb";
2121- };
2222-2323- goDeps = ./deps.nix;
2424-2525- meta = with lib; {
2626- description = "An autocompletion daemon for the Go programming language";
2727- longDescription = ''
2828- Gocode is a helper tool which is intended to be integrated with your
2929- source code editor, like vim, neovim and emacs. It provides several
3030- advanced capabilities, which currently includes:
3131-3232- - Context-sensitive autocompletion
3333-3434- It is called daemon, because it uses client/server architecture for
3535- caching purposes. In particular, it makes autocompletions very fast.
3636- Typical autocompletion time with warm cache is 30ms, which is barely
3737- noticeable.
3838- '';
3939- homepage = "https://github.com/mdempsky/gocode";
4040- license = licenses.mit;
4141- maintainers = with maintainers; [ kalbasit ];
4242- };
4343-}
-12
pkgs/development/tools/gocode/deps.nix
···11-# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
22-[
33- {
44- goPackagePath = "golang.org/x/tools";
55- fetch = {
66- type = "git";
77- url = "https://go.googlesource.com/tools";
88- rev = "72e4a01eba4315301fd9ce00c8c2f492580ded8a";
99- sha256 = "0a8c7j4w784w441j3j3bh640vy1g6g214641qv485wyi0xj49anf";
1010- };
1111- }
1212-]
···11+{ lib, stdenv, fetchurl, m4, perl, texinfo }:
22+33+# Note: this package is used for bootstrapping fetchurl, and thus
44+# cannot use fetchpatch! All mutable patches (generated by GitHub or
55+# cgit) that are needed here should be included directly in Nixpkgs as
66+# files.
77+88+stdenv.mkDerivation rec {
99+ pname = "autoconf";
1010+ version = "2.71";
1111+ outputs = [ "out" "doc" ];
1212+1313+ src = fetchurl {
1414+ url = "mirror://gnu/autoconf/autoconf-${version}.tar.xz";
1515+ sha256 = "197sl23irn6s9pd54rxj5vcp5y8dv65jb9yfqgr2g56cxg7q6k7i";
1616+ };
1717+ patches = [
1818+ # fix stale autom4te cache race condition:
1919+ # https://savannah.gnu.org/support/index.php?110521
2020+ ./2.71-fix-race.patch
2121+ ];
2222+2323+ strictDeps = true;
2424+ nativeBuildInputs = [ m4 perl texinfo ];
2525+ buildInputs = [ m4 ];
2626+ postBuild = "
2727+ make html
2828+ ";
2929+3030+ postInstall = "
3131+ make install-html
3232+ ";
3333+3434+ # Work around a known issue in Cygwin. See
3535+ # http://thread.gmane.org/gmane.comp.sysutils.autoconf.bugs/6822 for
3636+ # details.
3737+ # There are many test failures on `i386-pc-solaris2.11'.
3838+ doCheck = ((!stdenv.isCygwin) && (!stdenv.isSunOS));
3939+4040+ # Don't fixup "#! /bin/sh" in Autoconf, otherwise it will use the
4141+ # "fixed" path in generated files!
4242+ dontPatchShebangs = true;
4343+4444+ enableParallelBuilding = true;
4545+4646+ # Make the Autotest test suite run in parallel.
4747+ preCheck =''
4848+ export TESTSUITEFLAGS="-j$NIX_BUILD_CORES"
4949+ '';
5050+5151+ meta = {
5252+ homepage = "https://www.gnu.org/software/autoconf/";
5353+ description = "Part of the GNU Build System";
5454+5555+ longDescription = ''
5656+ GNU Autoconf is an extensible package of M4 macros that produce
5757+ shell scripts to automatically configure software source code
5858+ packages. These scripts can adapt the packages to many kinds of
5959+ UNIX-like systems without manual user intervention. Autoconf
6060+ creates a configuration script for a package from a template
6161+ file that lists the operating system features that the package
6262+ can use, in the form of M4 macro calls.
6363+ '';
6464+6565+ license = lib.licenses.gpl3Plus;
6666+6767+ platforms = lib.platforms.all;
6868+ };
6969+}
···381381 DRM_VC4_HDMI_CEC = yes;
382382 };
383383384384+ # Enables Rust support in the Linux kernel. This is currently not enabled by default, because it occasionally requires
385385+ # patching the Linux kernel for the specific Rust toolchain in nixpkgs. These patches usually take a bit
386386+ # of time to appear and this would hold up Linux kernel and Rust toolchain updates.
387387+ #
388388+ # Once Rust in the kernel has more users, we can reconsider enabling it by default.
389389+ rust = optionalAttrs ((features.rust or false) && versionAtLeast version "6.7") {
390390+ RUST = yes;
391391+ GCC_PLUGINS = no;
392392+ };
393393+384394 sound = {
385395 SND_DYNAMIC_MINORS = yes;
386396 SND_AC97_POWER_SAVE = yes; # AC97 Power-Saving Mode
···11-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
22-From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
33-Date: Sun, 6 Dec 2020 08:34:19 +0100
44-Subject: [PATCH] pkg-config: derive prefix from --prefix
55-66-Point prefix to the one configured, instead of `/usr` `systemd` has limited
77-support for making the pkgconfig prefix overridable, and interpolates those
88-values later down.
99-1010-So we only need to patch this one value to get the correct paths.
1111-See systemd/systemd@bc4e6e27922a2873985ab9367d79fb099f70b505 for details.
1212-1313-Co-Authored-By: Florian Klink <flokli@flokli.de>
1414----
1515- src/core/systemd.pc.in | 2 +-
1616- 1 file changed, 1 insertion(+), 1 deletion(-)
1717-1818-diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in
1919-index 5932a21b5b..20bf8e316d 100644
2020---- a/src/core/systemd.pc.in
2121-+++ b/src/core/systemd.pc.in
2222-@@ -11,7 +11,7 @@
2323- # considered deprecated (though there is no plan to remove them). New names
2424- # shall have underscores.
2525-2626--prefix=/usr
2727-+prefix={{PREFIX}}
2828- root_prefix={{ROOTPREFIX_NOSLASH}}
2929- rootprefix=${root_prefix}
3030- sysconf_dir={{SYSCONF_DIR}}
···1616 1 file changed, 8 insertions(+)
17171818diff --git a/src/core/manager.c b/src/core/manager.c
1919-index 771e8e7f16..acf3ead8d7 100644
1919+index 22cc5cc843..5dc7d4504f 100644
2020--- a/src/core/manager.c
2121+++ b/src/core/manager.c
2222-@@ -3899,9 +3899,17 @@ static int build_generator_environment(Manager *m, char ***ret) {
2222+@@ -3914,9 +3914,17 @@ static int build_generator_environment(Manager *m, char ***ret) {
2323 * adjust generated units to that. Let's pass down some bits of information that are easy for us to
2424 * determine (but a bit harder for generator scripts to determine), as environment variables. */
2525
···11-{ lib, stdenv, fetchurl, lua, jemalloc, pkg-config, nixosTests
11+{ lib, stdenv, fetchurl, fetchpatch, lua, jemalloc, pkg-config, nixosTests
22, tcl, which, ps, getconf
33, withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd, systemd
44# dependency ordering is broken at the moment when building with openssl
···12121313stdenv.mkDerivation (finalAttrs: {
1414 pname = "redis";
1515- version = "7.2.3";
1515+ version = "7.2.4";
16161717 src = fetchurl {
1818 url = "https://download.redis.io/releases/redis-${finalAttrs.version}.tar.gz";
1919- hash = "sha256-PisZbW603bnnQwiL/CkVzLtC1A9aij7djLaccW7DS+c=";
1919+ hash = "sha256-jRBMJqFUsp/WfWVotPN1ISISrUHgwsqj1mSA5429O1k=";
2020 };
21212222- patches = lib.optionals useSystemJemalloc [
2222+ patches = [
2323+ # fixes: make test [exception]: Executing test client: permission denied
2424+ # https://github.com/redis/redis/issues/12792
2525+ (fetchpatch {
2626+ url = "https://github.com/redis/redis/pull/12887.diff";
2727+ hash = "sha256-VZEMShW7Ckn5hLJHffQvE94Uly41WZW1bwvxny+Y3W8=";
2828+ })
2929+ ] ++ lib.optionals useSystemJemalloc [
2330 # use system jemalloc
2431 (fetchurl {
2532 url = "https://gitlab.archlinux.org/archlinux/packaging/packages/redis/-/raw/102cc861713c796756abd541bf341a4512eb06e6/redis-5.0-use-system-jemalloc.patch";
+26-1
pkgs/stdenv/generic/setup.sh
···815815######################################################################
816816# Textual substitution functions.
817817818818+# only log once, due to max logging limit on hydra
819819+_substituteStream_has_warned_replace_deprecation=""
818820819821substituteStream() {
820822 local var=$1
···822824 shift 2
823825824826 while (( "$#" )); do
827827+ local is_required=1
828828+ local is_quiet=""
825829 case "$1" in
830830+ --replace-quiet)
831831+ is_quiet=1
832832+ ;&
826833 --replace)
834834+ # deprecated 2023-11-22
835835+ # this will either get removed, or switch to the behaviour of --replace-fail in the future
836836+ if [ -z "$_substituteStream_has_warned_replace_deprecation" ]; then
837837+ echo "substituteStream(): WARNING: '--replace' is deprecated, use --replace-{fail,warn,quiet}. ($description)" >&2
838838+ _substituteStream_has_warned_replace_deprecation=1
839839+ fi
840840+ ;&
841841+ --replace-warn)
842842+ is_required=""
843843+ ;&
844844+ --replace-fail)
827845 pattern="$2"
828846 replacement="$3"
829847 shift 3
···832850 eval "$var"'=${'"$var"'//"$pattern"/"$replacement"}'
833851 if [ "$pattern" != "$replacement" ]; then
834852 if [ "${!var}" == "$savedvar" ]; then
835835- echo "substituteStream(): WARNING: pattern '$pattern' doesn't match anything in $description" >&2
853853+ if [ -z "$is_required" ]; then
854854+ if [ -z "$is_quiet" ]; then
855855+ printf "substituteStream(): WARNING: pattern %q doesn't match anything in %s\n" "$pattern" "$description" >&2
856856+ fi
857857+ else
858858+ printf "substituteStream(): ERROR: pattern %q doesn't match anything in %s\n" "$pattern" "$description" >&2
859859+ return 1
860860+ fi
836861 fi
837862 fi
838863 ;;
···11.
22.if n \{\
33-. \" Character translations for non-keyboard
44-. \" characters - to make them searchable
33+. \" With groff 1.23.0 "[t]he 'utf8' output device now maps the input
44+. \" characters '^' (caret, circumflex accent, or 'hat') and '~' (tilde)
55+. \" to U+02C6 (modifier letter circumflex accent) and U+02DC (small tilde),
66+. \" respectively, for consistency with groff's other output devices.
77+. \" This change is expected to expose glyph usage errors in man pages.
88+. \" See [http://git.savannah.gnu.org/cgit/groff.git/tree/PROBLEMS] for
99+. \" a recipe that will conceal these errors"
1010+. \" -- https://lists.gnu.org/archive/html/groff/2023-07/msg00051.html
1111+. \"
1212+. \" Conceal glyph usage errors in man pages with the following
1313+. \" character translations for non-keyboard characters to make them searchable.
514. if '\*[.T]'utf8' \{\
615. char \- \N'45'
716. char - \N'45'
88-. char ' \N'39'
99-. char \' \N'39'
1717+. char \' \[aq]
1818+. char ' \[aq]
1919+. char ` \[ga]
2020+. char ^ \[ha]
2121+. char ~ \[ti]
1022. \}
2323+.\}
1124.
1225.ds doc-default-operating-system Nixpkgs
1326.ds doc-volume-operating-system Nixpkgs
+4-4
pkgs/tools/video/rav1e/default.nix
···15151616rustPlatform.buildRustPackage rec {
1717 pname = "rav1e";
1818- version = "0.6.6";
1818+ version = "0.7.1";
19192020 src = fetchCrate {
2121 inherit pname version;
2222- sha256 = "sha256-urYMT1sJUMBj1L/2Hi+hcYbWbi0ScSls0pm9gLj9H3o=";
2222+ sha256 = "sha256-Db7qb7HBAy6lniIiN07iEzURmbfNtuhmgJRv7OUagUM=";
2323 };
24242525- cargoHash = "sha256-qQfEpynhlIEKU1Ptq/jM1Wdtn+BVCZT1lmou2S1GL4I=";
2525+ cargoHash = "sha256-VyQ6n2kIJ7OjK6Xlf0T0GNsBvgESRETzKZDZzAn8ZuY=";
26262727 depsBuildBuild = [ pkg-config ];
2828···3838 # Darwin uses `llvm-strip`, which results in link errors when using `-x` to strip the asm library
3939 # and linking it with cctools ld64.
4040 postPatch = lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
4141- substituteInPlace build.rs --replace 'cmd.arg("-x")' 'cmd.arg("-S")'
4141+ substituteInPlace build.rs --replace-fail '.arg("-x")' '.arg("-S")'
4242 '';
43434444 checkType = "debug";
+1-14
pkgs/tools/virtualization/mkosi/default.nix
···3030let
3131 # For systemd features used by mkosi, see
3232 # https://github.com/systemd/mkosi/blob/19bb5e274d9a9c23891905c4bcbb8f68955a701d/action.yaml#L64-L72
3333- systemdForMkosi = (systemd.overrideAttrs (oldAttrs: {
3434- patches = oldAttrs.patches ++ [
3535- # Enable setting a deterministic verity seed for systemd-repart. Remove when upgrading to systemd 255.
3636- (fetchpatch {
3737- url = "https://github.com/systemd/systemd/commit/81e04781106e3db24e9cf63c1d5fdd8215dc3f42.patch";
3838- hash = "sha256-KO3poIsvdeepPmXWQXNaJJCPpmBb4sVmO+ur4om9f5k=";
3939- })
4040- # repart: make sure rewinddir() is called before readdir() when performing rm -rf. Remove when upgrading to systemd 255.
4141- (fetchpatch {
4242- url = "https://github.com/systemd/systemd/commit/6bbb893b90e2dcb05fb310ba4608f9c9dc587845.patch";
4343- hash = "sha256-A6cF2QAeYHGc0u0V1JMxIcV5shzf5x3Q6K+blZOWSn4=";
4444- })
4545- ];
4646- })).override {
3333+ systemdForMkosi = systemd.override {
4734 withRepart = true;
4835 withBootloader = true;
4936 withSysusers = true;
+38-28
pkgs/top-level/aliases.nix
···2424 # to appear while listing all the packages available.
2525 removeRecurseForDerivations = alias: with lib;
2626 if alias.recurseForDerivations or false
2727- then removeAttrs alias ["recurseForDerivations"]
2727+ then removeAttrs alias [ "recurseForDerivations" ]
2828 else alias;
29293030 # Disabling distribution prevents top-level aliases for non-recursed package
···4141 else alias;
42424343 mapAliases = aliases:
4444- lib.mapAttrs (n: alias:
4545- removeDistribute
4646- (removeRecurseForDerivations
4747- (checkInPkgs n alias)))
4444+ lib.mapAttrs
4545+ (n: alias:
4646+ removeDistribute
4747+ (removeRecurseForDerivations
4848+ (checkInPkgs n alias)))
4849 aliases;
4950in
5051···5960 a4term = a4; # Added 2023-10-06
6061 aether = throw "aether has been removed from nixpkgs; upstream unmaintained, security issues"; # Added 2023-10-03
6162 airfield = throw "airfield has been removed due to being unmaintained"; # Added 2023-05-19
6262- alertmanager-bot = throw "alertmanager-bot is broken and has been archived by upstream" ; # Added 2023-07-28
6363+ alertmanager-bot = throw "alertmanager-bot is broken and has been archived by upstream"; # Added 2023-07-28
6364 alsa-project = throw "alsa-project was removed and its sub-attributes were promoted to top-level."; # Added 2023-11-12
6465 alsaLib = alsa-lib; # Added 2021-06-09
6566 alsaOss = alsa-oss; # Added 2021-06-10
···102103 bitwig-studio2 = throw "bitwig-studio2 has been removed, you can upgrade to 'bitwig-studio'"; # Added 2023-01-03
103104 blender-with-packages = args:
104105 lib.warn "blender-with-packages is deprecated in favor of blender.withPackages, e.g. `blender.withPackages(ps: [ ps.foobar ])`"
105105- (blender.withPackages (_: args.packages)).overrideAttrs (lib.optionalAttrs (args ? name) { pname = "blender-" + args.name; }); # Added 2023-10-30
106106+ (blender.withPackages (_: args.packages)).overrideAttrs
107107+ (lib.optionalAttrs (args ? name) { pname = "blender-" + args.name; }); # Added 2023-10-30
106108 bluezFull = throw "'bluezFull' has been renamed to/replaced by 'bluez'"; # Converted to throw 2023-09-10
107109 bookletimposer = throw "bookletimposer has been removed from nixpkgs; upstream unmaintained and broke with pypdf3"; # Added 2024-01-01
108110 boost168 = throw "boost168 has been deprecated in favor of the latest version"; # Added 2023-06-08
···188190 clang16Stdenv = lowPrio llvmPackages_16.stdenv;
189191 clang17Stdenv = lowPrio llvmPackages_17.stdenv;
190192191191- clang-tools_6 = throw "clang-tools_6 has been removed from nixpkgs"; # Added 2024-01-08
192192- clang-tools_7 = throw "clang-tools_7 has been removed from nixpkgs"; # Added 2023-11-19
193193- clang_6 = throw "clang_6 has been removed from nixpkgs"; # Added 2024-01-08
194194- clang_7 = throw "clang_7 has been removed from nixpkgs"; # Added 2023-11-19
193193+ clang-tools_6 = throw "clang-tools_6 has been removed from nixpkgs"; # Added 2024-01-08
194194+ clang-tools_7 = throw "clang-tools_7 has been removed from nixpkgs"; # Added 2023-11-19
195195+ clang_6 = throw "clang_6 has been removed from nixpkgs"; # Added 2024-01-08
196196+ clang_7 = throw "clang_7 has been removed from nixpkgs"; # Added 2023-11-19
195197196198 ### D ###
197199···223225 dotnet-sdk_3 = dotnetCorePackages.sdk_3_1; # Added 2020-01-19
224226 dotnet-sdk_5 = dotnetCorePackages.sdk_5_0; # Added 2020-09-11
225227 drgeo = throw "'drgeo' has been removed as it is outdated and unmaintained"; # Added 2023-10-15
226226- dtv-scan-tables_linuxtv = dtv-scan-tables; # Added 2023-03-03
227227- dtv-scan-tables_tvheadend = dtv-scan-tables; # Added 2023-03-03
228228+ dtv-scan-tables_linuxtv = dtv-scan-tables; # Added 2023-03-03
229229+ dtv-scan-tables_tvheadend = dtv-scan-tables; # Added 2023-03-03
228230 dylibbundler = macdylibbundler; # Added 2021-04-24
229231230232 ### E ###
···344346345347 gnuradio-with-packages = gnuradio3_7.override {
346348 extraPackages = lib.attrVals [
347347- "osmosdr" "ais" "gsm" "nacl" "rds" "limesdr"
348348- ] gnuradio3_7Packages;
349349+ "osmosdr"
350350+ "ais"
351351+ "gsm"
352352+ "nacl"
353353+ "rds"
354354+ "limesdr"
355355+ ]
356356+ gnuradio3_7Packages;
349357 }; # Added 2020-10-16
350358351359 gmock = gtest; # moved from top-level 2021-03-14
···371379 google-chrome-dev = throw "'google-chrome-dev' has been removed due to the lack of maintenance in nixpkgs. Consider using 'google-chrome' instead."; # Added 2023-10-18
372380 google-gflags = throw "'google-gflags' has been renamed to/replaced by 'gflags'"; # Converted to throw 2023-09-10
373381 go-thumbnailer = thud; # Added 2023-09-21
382382+ gocode = throw "'gocode' has been removed as the upstream project was archived. 'gopls' is suggested as replacement"; # Added 2023-12-26
374383 govendor = throw "'govendor' has been removed as it is no longer maintained upstream, please use Go modules instead"; # Added 2023-12-26
375384 gometer = throw "gometer has been removed from nixpkgs because goLance stopped offering Linux support"; # Added 2023-02-10
376385···471480 kerberos = libkrb5; # moved from top-level 2021-03-14
472481 kexectools = kexec-tools; # Added 2021-09-03
473482 keysmith = libsForQt5.kdeGear.keysmith; # Added 2021-07-14
474474- kfctl = throw "kfctl is broken and has been archived by upstream" ; # Added 2023-08-21
483483+ kfctl = throw "kfctl is broken and has been archived by upstream"; # Added 2023-08-21
475484 kgx = gnome-console; # Added 2022-02-19
476485 kibana7 = throw "Kibana 7.x has been removed from nixpkgs as it depends on an end of life Node.js version and received no maintenance in time."; # Added 2023-30-10
477486 kibana = kibana7;
···518527 librewolf-wayland = librewolf; # Added 2022-11-15
519528 libseat = seatd; # Added 2021-06-24
520529 libsigcxx12 = throw "'libsigcxx12' has been removed, please use newer versions"; # Added 2023-10-20
521521- libsForQt515 = libsForQt5; # Added 2022-11-24
530530+ libsForQt515 = libsForQt5; # Added 2022-11-24
522531 libtensorflow-bin = libtensorflow; # Added 2022-09-25
523532 libtorrentRasterbar = libtorrent-rasterbar; # Added 2020-12-20
524533 libtorrentRasterbar-1_2_x = libtorrent-rasterbar-1_2_x; # Added 2020-12-20
···705714 neochat = libsForQt5.kdeGear.neochat; # added 2022-05-10
706715 nitrokey-udev-rules = libnitrokey; # Added 2023-03-25
707716 nix-direnv-flakes = nix-direnv;
708708- nix-repl = throw ( # Added 2018-08-26
717717+ nix-repl = throw (
718718+ # Added 2018-08-26
709719 "nix-repl has been removed because it's not maintained anymore, " +
710720 "use `nix repl` instead. Also see https://github.com/NixOS/nixpkgs/pull/44903"
711721 );
712722 nix-review = throw "'nix-review' has been renamed to/replaced by 'nixpkgs-review'"; # Converted to throw 2023-09-10
713713- nix-template-rpm = throw "'nix-template-rpm' has been removed as it is broken and unmaintained" ; # Added 2023-11-20
723723+ nix-template-rpm = throw "'nix-template-rpm' has been removed as it is broken and unmaintained"; # Added 2023-11-20
714724 nixFlakes = nixVersions.stable; # Added 2021-05-21
715725 nixStable = nixVersions.stable; # Added 2022-01-24
716726 nixUnstable = nixVersions.unstable; # Added 2022-01-26
···866876 qlandkartegt = throw "'qlandkartegt' has been removed from nixpkgs, as it was broken and unmaintained"; # Added 2023-04-17
867877 qscintilla = libsForQt5.qscintilla; # Added 2023-09-20
868878 qscintilla-qt6 = qt6Packages.qscintilla; # Added 2023-09-20
869869- qt515 = qt5; # Added 2022-11-24
879879+ qt515 = qt5; # Added 2022-11-24
870880 qt5ct = libsForQt5.qt5ct; # Added 2021-12-27
871881 qt6ct = qt6Packages.qt6ct; # Added 2023-03-07
872882 qtcurve = libsForQt5.qtcurve; # Added 2020-11-07
···955965 sgtpuzzles = throw "'sgtpuzzles' has been renamed to 'sgt-puzzles'"; # Added 2023-10-06
956966 sgtpuzzles-mobile = throw "'sgtpuzzles-mobile' has been renamed to 'sgt-puzzles-mobile'"; # Added 2023-10-06
957967 inherit (libsForQt5.mauiPackages) shelf; # added 2022-05-17
958958- shhgit = throw "shhgit is broken and is no longer maintained. See https://github.com/eth0izzle/shhgit#-shhgit-is-no-longer-maintained-" ; # Added 2023-08-08
968968+ shhgit = throw "shhgit is broken and is no longer maintained. See https://github.com/eth0izzle/shhgit#-shhgit-is-no-longer-maintained-"; # Added 2023-08-08
959969 shipyard = jumppad; # Added 2023-06-06
960970 signumone-ks = throw "signumone-ks has been removed from nixpkgs because the developers stopped offering the binaries"; # Added 2023-08-17
961971 simplenote = throw "'simplenote' has been removed because it is no longer maintained and insecure"; # Added 2023-10-09
···10741084 vamp = { vampSDK = vamp-plugin-sdk; }; # Added 2020-03-26
10751085 vaapiIntel = intel-vaapi-driver; # Added 2023-05-31
10761086 vaultwarden-vault = vaultwarden.webvault; # Added 2022-12-13
10771077- vdirsyncerStable = vdirsyncer; # Added 2020-11-08, see https://github.com/NixOS/nixpkgs/issues/103026#issuecomment-723428168
10871087+ vdirsyncerStable = vdirsyncer; # Added 2020-11-08, see https://github.com/NixOS/nixpkgs/issues/103026#issuecomment-723428168
10781088 ventoy-bin = ventoy; # Added 2023-04-12
10791089 ventoy-bin-full = ventoy-full; # Added 2023-04-12
10801090 ViennaRNA = viennarna; # Added 2023-08-23
···11721182 });
1173118311741184 /* If these are in the scope of all-packages.nix, they cause collisions
11751175- between mixed versions of qt. See:
11851185+ between mixed versions of qt. See:
11761186 https://github.com/NixOS/nixpkgs/pull/101369 */
1177118711781188 inherit (plasma5Packages)
···11951205 plasma-vault plasma-workspace plasma-workspace-wallpapers polkit-kde-agent
11961206 powerdevil qqc2-breeze-style sddm-kcm skanlite skanpage spectacle
11971207 systemsettings xdg-desktop-portal-kde yakuake zanshin
11981198- ;
12081208+ ;
1199120912001200- kalendar = merkuro; # Renamed in 23.08
12101210+ kalendar = merkuro; # Renamed in 23.08
12011211 kfloppy = throw "kfloppy has been removed upstream in KDE Gear 23.08";
1202121212031213 inherit (plasma5Packages.thirdParty)
···12081218 kwin-tiling
12091219 plasma-applet-caffeine-plus
12101220 plasma-applet-virtual-desktop-bar
12111211- ;
12211221+ ;
1212122212131223 inherit (libsForQt5)
12141224 sddm
12151215- ;
12251225+ ;
1216122612171227 inherit (pidginPackages)
12181228 pidgin-indicator
···12401250 tdlib-purple
12411251 pidgin-opensteamworks
12421252 purple-facebook
12431243- ;
12531253+ ;
1244125412451255})
···356356 pyramid_multiauth = pyramid-multiauth; # added 2023-08-24
357357 pyreadability = readability-lxml; # added 2022-05-24
358358 pyres = throw "pyres has been removed, since it is abandoned and broken"; # added 2023-06-20
359359+ pyRFC3339 = pyrfc3339; # added 2024-01-07
359360 pyroute2-core = throw "pyroute2 migrated back to a single package scheme in version 0.7.1"; # added 2022-07-16
360361 pyroute2-ethtool = throw "pyroute2 migrated back to a single package scheme in version 0.7.1"; # added 2022-07-16
361362 pyroute2-ipdb = throw "pyroute2 migrated back to a single package scheme in version 0.7.1"; # added 2022-07-16