treewide: add warning comment to “boot” packages

This adds a warning to the top of each “boot” package that reads:

  Note: this package is used for bootstrapping fetchurl, and thus cannot
  use fetchpatch! All mutable patches (generated by GitHub or cgit) that
  are needed here should be included directly in Nixpkgs as files.

This makes it clear to maintainer that they may need to treat this
package a little differently than others. Importantly, we can’t use
fetchpatch here due to using <nix/fetchurl.nix>. To avoid having stale
hashes, we need to include patches that are subject to changing
overtime (for instance, gitweb’s patches contain a version number at
the bottom).
This commit is contained in:
Matthew Bauer
2020-07-31 08:56:53 +02:00
committed by Frederik Rietdijk
parent f36899e118
commit d0677e6d45
43 changed files with 216 additions and 1 deletions
+5
View File
@@ -1,6 +1,11 @@
{ stdenv, fetchurl, lzip
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation (rec {
name = "ed-${version}";
version = "1.16";
@@ -31,6 +31,11 @@
, buildPackages
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
# LTO needs libelf and zlib.
assert libelf != null -> zlib != null;
@@ -2,6 +2,11 @@
, enableThreading ? true, coreutils, makeWrapper
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
with lib;
let
@@ -36,6 +36,11 @@
, enableOptimizations ? (!stdenv.isDarwin)
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
assert x11Support -> tcl != null
&& tk != null
&& xorgproto != null
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, gettext, attr }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "acl-2.2.53";
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, gettext }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "attr-2.4.48";
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, writeTextDir }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let self =
stdenv.mkDerivation rec {
name = "c-ares-1.15.0";
@@ -1,5 +1,10 @@
{ stdenv, fetchurl }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "expat-2.2.8";
@@ -1,5 +1,10 @@
{ stdenv, lib, fetchurl, libiconv, xz, fetchpatch }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "gettext";
version = "0.20.1";
@@ -17,6 +17,11 @@
but the exact set depends on the library version and the configuration.
*/
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
{ stdenv, lib
, buildPackages
, fetchurl
+5
View File
@@ -3,6 +3,11 @@
, buildPackages
, withStatic ? false }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let inherit (stdenv.lib) optional; in
let self = stdenv.mkDerivation rec {
@@ -8,6 +8,11 @@
, staticOnly ? false
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let
libOnly = type == "lib";
in
@@ -2,6 +2,11 @@
, fetchurl, autoreconfHook, gettext
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "libelf-0.8.13";
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, static ? false }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "libev";
version="4.33";
@@ -3,6 +3,11 @@
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "libffi-3.3";
@@ -1,5 +1,10 @@
{ fetchurl, stdenv, libiconv, libunistring, help2man, buildPackages }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
with stdenv.lib;
stdenv.mkDerivation rec {
@@ -2,6 +2,11 @@
, gmp, mpfr
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let
version = "1.1.0";
in
@@ -1,5 +1,10 @@
{ fetchurl, stdenv, libiconv }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "libunistring";
version = "0.9.10";
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, gmp }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
version = "4.0.2";
pname = "mpfr";
@@ -12,6 +12,11 @@
, enablePython ? false, python ? null, cython ? null, ncurses ? null, setuptools ? null
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
assert enableHpack -> jansson != null;
assert enableAsioLib -> boost != null;
assert enableGetAssets -> libxml2 != null;
@@ -5,6 +5,11 @@
, static ? false
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
with stdenv.lib;
let
@@ -12,6 +12,11 @@
, splitStaticOutput ? static
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
assert splitStaticOutput -> static;
stdenv.mkDerivation (rec {
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, m4, perl }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "autoconf-2.69";
@@ -10,6 +10,11 @@
, texinfo
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let
reuseLibs = enableShared && withAllTargets;
@@ -1,5 +1,10 @@
{ stdenv, fetchurl }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation {
name = "gnum4-1.4.18";
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, perlPackages, gettext }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "help2man-1.47.16";
@@ -1,5 +1,10 @@
{stdenv, fetchurl, m4, perl}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "libtool-1.5.26";
@@ -1,5 +1,10 @@
{ stdenv, fetchurl }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "patchelf-0.11";
@@ -6,6 +6,11 @@
, interactive ? false, ncurses, procps
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let
crossBuildTools = interactive && stdenv.hostPlatform != stdenv.buildPlatform;
in
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, m4, perl, help2man }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "bison";
version = "3.6.4";
@@ -53,6 +53,11 @@
, ...
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
assert stdenv.isLinux;
let
@@ -1,5 +1,10 @@
{ stdenv, fetchurl }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "keyutils";
version = "1.6.1";
+5
View File
@@ -12,6 +12,11 @@ assert interactive -> readline70 != null;
assert withDocs -> texinfo != null;
assert stdenv.hostPlatform.isDarwin -> binutils != null;
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let
upstreamPatches = import ./bash-4.4-patches.nix (nr: sha256: fetchurl {
url = "mirror://gnu/bash/bash-4.4-patches/bash44-${nr}";
+5
View File
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, autoreconfHook, acl }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "gnutar";
version = "1.32";
+5
View File
@@ -3,6 +3,11 @@
, autoreconfHook
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "bzip2";
version = "1.0.6.0.1";
+5
View File
@@ -4,6 +4,11 @@
, writeText
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "gzip";
version = "1.10";
+5
View File
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, texinfo }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "lzip";
version = "1.21";
+5
View File
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, enableStatic ? false }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "xz-5.2.5";
+5
View File
@@ -10,6 +10,11 @@
, singleBinary ? "symlinks" # you can also pass "shebangs" or false
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
assert aclSupport -> acl != null;
assert selinuxSupport -> libselinux != null && libsepol != null;
+5
View File
@@ -2,6 +2,11 @@
, coreutils
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "findutils";
version = "4.7.0";
+5
View File
@@ -12,6 +12,11 @@
, brotliSupport ? false, brotli ? null
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
assert http2Support -> nghttp2 != null;
assert idnSupport -> libidn != null;
assert ldapSupport -> openldap != null;
+5
View File
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, xz, coreutils ? null }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
name = "diffutils-3.7";
+6 -1
View File
@@ -1,5 +1,10 @@
{ stdenv, fetchurl, pcre, libiconv, perl }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let version = "3.4"; in
stdenv.mkDerivation {
@@ -19,7 +24,7 @@ stdenv.mkDerivation {
# cygwin: FAIL: multibyte-white-space
# freebsd: FAIL mb-non-UTF8-performance
# all platforms: timing sensitivity in long-pattern-perf
# all platforms: timing sensitivity in long-pattern-perf
#doCheck = !stdenv.isDarwin && !stdenv.isSunOS && !stdenv.isCygwin && !stdenv.isFreeBSD;
doCheck = false;