Compare commits

..

1394 Commits

Author SHA1 Message Date
worldofpeace
5272327b81 rl-2003: release date
(cherry picked from commit 6380be302a)
2020-04-20 11:58:47 -04:00
worldofpeace
b5fc240b3b nixos/manual: 19.09 -> 20.03
(cherry picked from commit 40f3faedbd)
2020-04-20 11:58:47 -04:00
worldofpeace
c6696bd6c7 CONTRIBUTING.md: 20.03
(cherry picked from commit a045b050dc)
2020-04-20 11:58:46 -04:00
worldofpeace
2a7ea90237 README.md: 20.03 release
(cherry picked from commit 51fcafe779)
2020-04-20 11:58:46 -04:00
Maximilian Bosch
e03eeffd61 Merge pull request #85557 from kmcopper/r20.03/vswitch-2.13
[20.03] openvswitch 2.12.0 -> 2.13.0
2020-04-20 01:57:02 +02:00
Florian Klink
426646cc9b Merge pull request #85584 from emilazy/acme-test-cleanups-20.03
[20.03] ACME test cleanups
2020-04-20 00:30:38 +02:00
Emily
f035e2638f nixos/tests/common/acme: don't set nameservers for client
The resolver is mainly useful for the ACME server, and acme.nix uses its
own DNS server to test DNS-01 challenges.

(cherry picked from commit 21f183a3fe)
2020-04-19 23:26:19 +01:00
Emily
60e6ba6630 nixos/tests/acme: use CAP_NET_BIND_SERVICE
(cherry picked from commit 695fd78ac4)
2020-04-19 23:26:18 +01:00
Emily
2b8100d702 nixos/tests/acme: use *.test domains
Shimming out the Let's Encrypt domain name to reuse client configuration
doesn't work properly (Pebble uses different endpoint URL formats), is
recommended against by upstream,[1] and is unnecessary now that the ACME
module supports specifying an ACME server. This commit changes the tests
to use the domain name acme.test instead, and renames the letsencrypt
node to acme to reflect that it has nothing to do with the ACME server
that Let's Encrypt runs. The imports are renamed for clarity:

* nixos/tests/common/{letsencrypt => acme}/{common.nix => client}
* nixos/tests/common/{letsencrypt => acme}/{default.nix => server}

The test's other domain names are also adjusted to use *.test for
consistency (and to avoid misuse of non-reserved domain names such
as standalone.com).

[1] https://github.com/letsencrypt/pebble/issues/283#issuecomment-545123242

Co-authored-by: Yegor Timoshenko <yegortimoshenko@riseup.net>
(cherry picked from commit d0f04c1623)
2020-04-19 23:26:14 +01:00
Emily
8283094333 nixos/tests/acme: don't restrict to x86_64
This was added in aade4e577b, but the
implementation of the ACME module has been entirely rewritten since
then, and the test seems to run fine on AArch64.

(cherry picked from commit 352e30df8a)
2020-04-19 23:25:04 +01:00
Emily
b0d26e9d67 nixos/tests/common/acme: enable Pebble strict mode
This lets us get early warning about any bugs or backwards-compatibility
hazards in lego.

Pebble will default to this in the future, but doesn't currently;
see https://github.com/letsencrypt/pebble/blob/v2.3.0/README.md#strict-mode.

(cherry picked from commit e6d5e83cf1)
2020-04-19 23:25:03 +01:00
Emily
e1c41b8c56 pebble: v2.2.2 -> v2.3.0
Also add myself to maintainers and correct meta.homepage.

(cherry picked from commit 6285d5eabd)
2020-04-19 23:25:02 +01:00
R. RyanTM
60ce81079a openvswitch: 2.12.0 -> 2.13.0
(cherry picked from commit c8523fe003)
2020-04-19 11:08:14 +00:00
worldofpeace
a17e021b94 Merge pull request #85366 from immae/fix_acme_postrun_20_03
nixos/acme: Fix postRun in acme certificate being ran at every run
2020-04-18 13:16:30 -04:00
Markus Wamser
7fcae3781e maintainers: add wamserma
Signed-off-by: Markus S. Wamser <github-dev@mail2013.wamser.eu>
2020-04-18 10:02:16 -04:00
Florian Klink
e79b7c45c3 Merge pull request #85370 from immae/fix_acme_reuse_key_20_03
Update the release documentation
2020-04-18 14:14:45 +02:00
Benjamin Hipple
a60473031a Merge pull request #85430 from kuznero/release-20.03
vscode, vscodium: 1.44.0 -> 1.44.1
2020-04-17 23:05:24 -04:00
Ismaël Bouya
ed20edf012 nixos/acme: Fix postRun in acme certificate being ran at every run
(cherry picked from commit 8e88b8dce2)
2020-04-17 23:51:32 +02:00
rnhmjoj
2e08e8cb26 mitmproxy: fix build
ZHF: #80379
2020-04-17 23:10:48 +02:00
Ismaël Bouya
21c4a33cee rl-2003: Update the release documentation
It currently says that everything will be backward compatible between lego and simp-le certificates, but it’s not.
2020-04-17 22:19:34 +02:00
Maximilian Bosch
668d0ded6b grocy: 2.7.0 -> 2.7.1
https://github.com/grocy/grocy/releases/tag/v2.7.1
(cherry picked from commit 135ae45d24)
2020-04-17 22:03:52 +02:00
Maximilian Bosch
e3354dfc8c neomutt: 20200320 -> 20200417
https://github.com/neomutt/neomutt/releases/tag/20200417

To fix the tests, I had to copy the recently created
`neomutt-test-files`[1] repository into the build-environment.

Also applied a patch from master[2] which ensures that the
`change-folder` macro actually switches to the specified folder.

[1] https://github.com/neomutt/neomutt-test-files
[2] 9e7537cadd

(cherry picked from commit 192485f8fa)
2020-04-17 19:39:55 +02:00
Dominik Xaver Hörl
8e053b9b2a neomutt: configure with zlib to enable imap compression
(cherry picked from commit 45cc3c986d)
2020-04-17 19:39:55 +02:00
worldofpeace
708ed56f52 Merge pull request #85436 from symphorien/paperwork-broken
paperwork: unmark as broken
2020-04-17 13:23:02 -04:00
worldofpeace
a68f099e18 Merge pull request #85395 from tollb/flashplayer-32.0.0.363-release-20.03
[20.03] flashplayer: 32.0.0.330 -> 32.0.0.363
2020-04-17 12:33:52 -04:00
nschoe
a96fbaac8c st: copy config file in 'prePatch' instead of 'preBuild'
The patch phase runs after the build phase. Which means than when
using an override to override both 'conf' and 'patches' to provide
a custom config file and apply some patches, it doesn't work:
- first the patches applied (optionally changing config.def.h)
- then preBuild is run which overrides config.def.h with the user
supplied one (effectively cancelling previously applied patches)

By copying the config file in the prePatch phase instead, changes
are kept and applied in order.

(cherry picked from commit b584941ab9)
2020-04-17 14:56:35 +01:00
Tim Steinbach
edd58cf4a7 linux: 5.4.32 -> 5.4.33
(cherry picked from commit e341107367)
2020-04-17 08:35:59 -04:00
Tim Steinbach
ca713d3f76 linux: 4.19.115 -> 4.19.116
(cherry picked from commit d9258d33be)
2020-04-17 08:35:59 -04:00
Symphorien Gibol
b27ac93054 paperwork: unmark as broken on x86 2020-04-17 12:00:00 +00:00
Jörg Thalheim
9094d35925 python38.pkgs.python-jsonrpc-server: disable for python38
(cherry picked from commit ee6f5a32bb)
2020-04-17 11:25:18 +01:00
Roman Kuznetsov
41ed7bf2ef vscodium: 1.44.0 -> 1.44.1
(cherry picked from commit 4fd1f49ea4)
2020-04-17 09:58:29 +02:00
Roman Kuznetsov
a5f5386b5c vscode: 1.44.0 -> 1.44.1
(cherry picked from commit 4a129e6a32)
2020-04-17 09:55:13 +02:00
worldofpeace
5fe104de46 Merge pull request #85331 from NixOS/treewide-broken-20.03
treewide: mark broken packages for 20.03
2020-04-16 22:01:08 -04:00
worldofpeace
48c5aaa2fc treewide: mark broken wip 2020-04-16 21:29:49 -04:00
Maximilian Bosch
be4a41d062 mautrix-whatsapp: 2020-04-02 -> 2020-04-12
(cherry picked from commit e61c924adb)
2020-04-17 01:47:37 +02:00
Maximilian Bosch
962976d340 evcxr: 0.5.0 -> 0.5.1
582ce09f21/RELEASE_NOTES.md (version-051)
(cherry picked from commit cd5bc89cca)
2020-04-17 01:47:37 +02:00
Maximilian Bosch
34104aa360 grocy: 2.6.2 -> 2.7.0
(cherry picked from commit d4659dece2)
2020-04-16 23:31:44 +02:00
Maximilian Bosch
077bbd67d9 nixos/tests: fix inclusion of hydra test
(cherry picked from commit 5e124e5abd)
2020-04-16 23:31:44 +02:00
Maximilian Bosch
e7fea4336a hydra*: add passthru.tests to reference VM-tests
(cherry picked from commit ef80b6324b)
2020-04-16 23:31:44 +02:00
Maximilian Bosch
68ab8cf78b hydra-unstable: 2020-04-07 -> 2020-04-16
(cherry picked from commit 6f6c08af30)
2020-04-16 23:31:44 +02:00
Michael Weiss
1775cb5701 chromium: 81.0.4044.92 -> 81.0.4044.113
https://chromereleases.googleblog.com/2020/04/stable-channel-update-for-desktop_15.html

This update includes 1 security fix.

CVEs: CVE-2020-6457
(cherry picked from commit ef2c3ab20e)
Backport of #85360.
2020-04-16 22:35:18 +02:00
Michael Weiss
81dccfd358 google-chrome-{beta,dev}: Fix one substituteInPlace pattern
(cherry picked from commit 16477d764f)
2020-04-16 22:35:18 +02:00
taku0
23f337162d [20.03] flashplayer: 32.0.0.330 -> 32.0.0.363
(cherry picked from commit ac374d41c816f7365a3945e657d2beba3962587d)

Backported 32.0.0.363 to release 20.03 for important bug fixes.

Also needed because old upstream release is no longer available.
2020-04-16 12:51:42 -04:00
Matthew Bauer
5eb6f1ed44 build-bazel-package: fix linkopt flags
These values were incorrect. We need to use NIX_LDFLAGS, not
NIX_LD_FLAGS. Also need to prefix all flags with -Wl, for GCC to
accept it.

(cherry picked from commit 184cd9f6ff)
2020-04-16 11:33:59 -05:00
Benjamin Hipple
956a83820b Merge pull request #85375 from lbpdt/bp/node-problem-detector
[20.03] node-problem-detector: init at 0.8.1
2020-04-16 12:03:38 -04:00
Emily
f2d4179af3 nixos/stage-1: check secret paths before copying
Fixes #84976.

(cherry picked from commit 91c6809946)
2020-04-16 18:01:56 +03:00
Vladimír Čunát
0e48b5079a Merge branch 'staging-20.03' into release-20.03 2020-04-16 16:50:43 +02:00
James Ottaway
dd3652df6b git: 2.25.0 -> 2.25.3
v2.25.3 addresses CVE-2020-5260.  /cc roundup #75974.

See https://lore.kernel.org/lkml/xmqqy2qy7xn8.fsf@gitster.c.googlers.com/
2020-04-16 16:45:50 +02:00
Michael Weiss
7e466bfc9b Merge pull request #85372 from primeos/signal-desktop-backport
[20.03] signal-desktop: 1.33.0 -> 1.33.1 (backport)
2020-04-16 16:38:56 +02:00
Louis Blin
d73ea8dbde node-problem-detector: init at 0.8.1
Package is missing, built from Golang sources on GitHub.

(cherry picked from commit 511cb624b7)
2020-04-16 15:04:05 +01:00
worldofpeace
2ee6b5ce7c Merge pull request #85333 from arianvp/revert-acme-backport
[20.03] Revert "nixos/acme: Fix allowKeysForGroup not applying immediately"
2020-04-16 08:43:41 -04:00
Michael Weiss
efdee67fca signal-desktop: 1.33.0 -> 1.33.1
(cherry picked from commit 56f7c93a2f)
2020-04-16 14:32:53 +02:00
Pascal Bach
900b58e4ee unifiStable: 5.12.35 -> 5.12.66
(cherry picked from commit 05cc2b1f51)
2020-04-16 12:57:32 +02:00
Vladimír Čunát
a8e2838a29 Merge branch 'release-20.03' into staging-20.03 2020-04-16 11:44:06 +02:00
Maximilian Bosch
c7153272cb nixos/doc: fix database-setup example for matrix-synapse
Closes #85327

(cherry picked from commit 74d6e86ec2)
2020-04-16 11:43:26 +02:00
Arian van Putten
c51c677140 Revert "nixos/acme: Fix allowKeysForGroup not applying immediately"
This reverts commit 5532065d06.

As far as I can tell setting RemainAfterExit=true here completely breaks
certificate renewal, which is really bad!

the sytemd timer will activate the service unit every OnCalendar=,
however with RemainAfterExit=true the service is already active! So the
timer doesn't rerun the service!

The commit also broke the actual tests, (As it broke activation too)
but this was fixed later in https://github.com/NixOS/nixpkgs/pull/76052
I wrongly assumed that PR fixed renewal too, which it didn't!

testing renewals is hard, as we need to sleep in tests.
2020-04-16 10:36:34 +02:00
Ben Wolsieffer
0f920b05cb g2o: fix log limit exceeded error in Hydra
(cherry picked from commit dd14ee840c)
2020-04-16 02:34:20 -04:00
Dmitry Kudriavtsev
92d43c9279 multimc: 0.6.7 -> 0.6.11
(cherry picked from commit d44b9d3028)
2020-04-16 02:11:28 -04:00
worldofpeace
931c4db67a pantheon.pantheon-agent-geoclue2: 1.0.3 -> 1.0.4
https://github.com/elementary/pantheon-agent-geoclue2/releases/tag/1.0.4
(cherry picked from commit 7eb0a87ace)
2020-04-16 02:06:45 -04:00
worldofpeace
e6b82df11d pantheon.elementary-videos: 2.7.0 -> 2.7.1
https://github.com/elementary/videos/releases/tag/2.7.1
(cherry picked from commit 8da467e04b)
2020-04-16 02:06:45 -04:00
worldofpeace
17f92998ad ephemeral: 6.3.1 -> 6.3.3
https://github.com/cassidyjames/ephemeral/releases/tag/6.3.2
https://github.com/cassidyjames/ephemeral/releases/tag/6.3.3
(cherry picked from commit c3408adb7d)
2020-04-16 02:06:45 -04:00
worldofpeace
a37adb3367 monitor: add note how to use indicator.
(cherry picked from commit fbd4290fa9)
2020-04-16 02:06:44 -04:00
worldofpeace
2c0f6ef15f monitor: 0.6.2 -> 0.7.1
https://github.com/stsdc/monitor/releases/tag/0.7.0
https://github.com/stsdc/monitor/compare/0.7.0...0.7.1
(cherry picked from commit f646069c4c)
2020-04-16 02:06:44 -04:00
worldofpeace
a5ad726734 agenda: 1.0.12 -> 1.1.0
https://github.com/dahenson/agenda/releases/tag/1.1.0
(cherry picked from commit e4dc205023)
2020-04-16 02:06:44 -04:00
R. RyanTM
9c11bd9318 ephemeral: 6.3.0 -> 6.3.1
(cherry picked from commit e38859deac)
2020-04-16 02:06:44 -04:00
Mario Rodas
3abf820bc1 Merge pull request #85353 from das-g/release-20.03_chromedriver-81.0.4044
chromedriver: 78.0.3904.70 -> 81.0.4044.69
2020-04-15 23:26:20 -05:00
Raphael Das Gupta
d219b7b59f chromedriver: 78.0.3904.70 -> 81.0.4044.69
backport of NixOS/nixpkgs#85302
2020-04-16 05:09:28 +02:00
worldofpeace
142afb8942 nasc: fix build
(cherry picked from commit 433ea74af1)
2020-04-15 17:20:51 -04:00
worldofpeace
6ca86a05fb ping: use vala_0_40
fails to build otherwise.

(cherry picked from commit 10c03528c0)
2020-04-15 17:20:40 -04:00
Samuel Leathers
c6be4c1957 treewide: mark broken packages for 20.03 2020-04-15 17:07:33 -04:00
Maximilian Bosch
8c3b765bc6 cargo-make: 0.30.4 -> 0.30.5
https://github.com/sagiegurari/cargo-make/releases/tag/0.30.5
(cherry picked from commit b7c3c3f5cc)
2020-04-15 22:40:10 +02:00
vasile luta
a438aed5a6 tig: fix tig-completion's dependency on __git_complete
tig recently updated it's bash-completion making it depend on __git-complete from git.
Becase __git-complete is not automatically sourced tig bash completion fails.
Also this PR makes tig completion load on-demand.

(cherry picked from commit f57da8ef0a)
2020-04-15 22:23:44 +02:00
R. RyanTM
67e45efa3a nix-zsh-completions: 0.4.3 -> 0.4.4 (#85267)
(cherry picked from commit 7c21abdf4c)
2020-04-15 19:01:50 +02:00
Roberto Di Remigio
946287b319 mkl: 2020.0.166 -> 2020.1.217
(cherry picked from commit 488527eaa6)
2020-04-15 08:21:35 -04:00
Florian
e393449b43 airsonic: enable nginx.recommendedProxySettings with virtualHost
This fixes music playback when using the `services.airsonic.virtualHost`
option.

(cherry picked from commit 519d4f8e33)
2020-04-15 09:33:55 +02:00
Michael Weiss
07b3634cb4 Merge pull request #84713 from primeos/gn-backport
[20.03] gn: 20190403 -> 2020-03-09 (backport)
2020-04-14 22:07:14 +02:00
Michael Weiss
9a7d216703 chromiumDev: Override gn to fix the configuration phase
The configuration phase was failing due to:
```
configuring
ERROR at //BUILD.gn:1376:5: Unknown function.
    filter_exclude([ "$root_build_dir/foo" ],
    ^-------------
```

(cherry picked from commit ad3220f9ff)
2020-04-14 21:14:14 +02:00
Michael Weiss
72acf9cd34 aseprite.skia: Override the gn version to fix the build
With #83290 merged the build would fail during the configuration phase:
```
configuring
ERROR at //gn/BUILDCONFIG.gn:85:14: Script returned non-zero exit code.
  is_clang = exec_script("gn/is_clang.py",
             ^----------
Current dir: /build/source/out/Release/
Command: python /build/source/gn/gn/is_clang.py cc c++
Returned 2.
stderr:

python: can't open file '/build/source/gn/gn/is_clang.py': [Errno 2] No such file or directory
```

(cherry picked from commit ad66bbd98b)
2020-04-14 21:14:14 +02:00
Michael Weiss
4424442dc8 gn: 20190403 -> 2020-03-09
This updates gn to the required version for chromiumDev (the recommended
version for the stable release of Chromium isn't sufficient [0]).

[0]: The Chromium build fails during the configuration phase:
ERROR at //mojo/public/tools/bindings/mojom.gni:393:16: Undefined identifier
               "cpp_typemaps",
               ^-------------

(cherry picked from commit a1b4bfe34f)
2020-04-14 21:14:14 +02:00
Linus Heckemann
7f9c1d0ec3 nixos/libinput: refer to libinput manual
(cherry picked from commit 9953a26be1)
2020-04-14 09:43:27 -04:00
Sander van der Burg
6fd93c3389 nixos/dysnomia: fix documentRoot property
(cherry picked from commit 0ffb720e8c)
2020-04-14 14:44:47 +02:00
Sander van der Burg
8b40e8907b dysnomia: 0.9 -> 0.9.1
(cherry picked from commit dc13460a6c)
2020-04-14 14:44:47 +02:00
worldofpeace
7cf85ddf67 Merge pull request #84648 from cleverca22/fix-kafka-test
nixos: kafka test: fix building for other arches
2020-04-14 08:41:03 -04:00
Florian Klink
897182cdaf nixosTests.networking.virtual: fix with networkd
We only need to wait for network.target to get up, and the
network-addresses-${interfaceName} units are scripted networking only.

(cherry picked from commit a501abd5499d8f82f0991a7b78bcbc4169b0537f)
ZHF: #80379
Fix a failing test.
2020-04-14 14:35:06 +02:00
Dominik Honnef
3add50e56d luminance-hdr: use Qt5's mkDerivation
(cherry picked from commit b233a19fe1)
2020-04-14 08:33:10 -04:00
worldofpeace
e5ba0c5da5 Merge pull request #84431 from srhb/bp-ceph-14.2.8
[20.03] ceph 14.2.6 -> 14.2.8
2020-04-14 08:25:08 -04:00
Benjamin Hipple
89b864de64 ethminer: mark as broken
Doesn't build with gcc9, and if overlayed to use gcc8 stdenv fails on CUDA issues.

(cherry picked from commit 7f453f1822)
2020-04-14 08:16:23 -04:00
Lucas Savva
ecfd73db44 acme: share accounts between certificates
There are strict rate limits on account creation for Let's Encrypt
certificates. It is important to reuse credentails when possible.

(cherry picked from commit 827d5e6b44)
2020-04-14 13:13:40 +01:00
R. RyanTM
21750051b2 modemmanager: 1.12.6 -> 1.12.8
(cherry picked from commit b2fe03baf4)
2020-04-13 17:53:09 -04:00
R. RyanTM
8aa17dea0f modemmanager: 1.12.4 -> 1.12.6
(cherry picked from commit fe898d5f76)
2020-04-13 17:53:07 -04:00
Pavol Rusnak
22b5a32fad electron: fix wrapGAppsHook usage
(cherry picked from commit 96f52cb22b)
2020-04-13 17:43:46 -04:00
Pavol Rusnak
3ad8596931 Revert "riot-desktop: wrap with wrapGAppsHook"
This reverts commit fe6addbbf7.

(cherry picked from commit 3abd151f8e)
2020-04-13 17:43:45 -04:00
Linus Heckemann
9f0f06ac8b freeradius: make debug logging optional
(cherry picked from commit 0587329191)
2020-04-13 20:34:14 +02:00
Michael Weiss
ef7f4788c7 android-studio: Fix the license (unfree)
Android Studio states that it contains proprietary code!

(cherry picked from commit adcd8baa02)
2020-04-13 18:06:13 +02:00
Tim Steinbach
cb8b71c645 linux: 5.5.16 -> 5.5.17 2020-04-13 08:40:59 -04:00
Tim Steinbach
bab08a49df linux: 5.4.31 -> 5.4.32 2020-04-13 08:40:59 -04:00
Tim Steinbach
44537fa3f4 linux: 4.9.218 -> 4.9.219 2020-04-13 08:40:59 -04:00
Tim Steinbach
788dd86a62 linux: 4.19.114 -> 4.19.115 2020-04-13 08:40:59 -04:00
Tim Steinbach
585f651020 linux: 4.14.175 -> 4.14.176 2020-04-13 08:40:59 -04:00
Tim Steinbach
be8daae10c linux: 4.4.218 -> 4.4.219 2020-04-13 08:40:59 -04:00
Renato Alves
2fd2e031a3 mnemosyne: Install mnemosyne.desktop
(cherry picked from commit f5814e2075)
2020-04-13 14:00:22 +02:00
Renato Alves
7a0cb9c305 mnemosyne: Add pyopengl to silence OpenGL warning
(cherry picked from commit 4ea30958a8)
2020-04-13 14:00:22 +02:00
Renato Alves
ec099df093 mnemosyne: Fix 'Could not find Qt' segfault
(cherry picked from commit f6889aa21e)
2020-04-13 14:00:22 +02:00
Renato Alves
93e93f82e6 pythonPackages.gtts: init at 2.1.1
(cherry picked from commit 71113dbc69)
2020-04-13 14:00:22 +02:00
Renato Alves
c2d209265d pythonPackages.googletrans: init at 2.4.0
(cherry picked from commit e30abffb66)
2020-04-13 14:00:22 +02:00
Renato Alves
0182312e11 mnemosyne: add googletrans and gtts python dependencies
These python packages interface with Google Translate and their absence
causes mnemosyne to fail at launch.
2020-04-13 13:51:56 +02:00
Maximilian Bosch
96e35bf2a0 EmptyEpsilon: 2020.03.22 -> 2020.04.09
https://github.com/daid/EmptyEpsilon/releases/tag/EE-2020.04.09
(cherry picked from commit 0516977e49)
2020-04-13 12:23:19 +02:00
Maximilian Bosch
9325edaa1e linuxPackages.bpftrace: 0.9.3 -> 0.9.4
https://github.com/iovisor/bpftrace/releases/tag/v0.9.4
(cherry picked from commit 89d2967c9e)
2020-04-13 12:23:19 +02:00
Maximilian Bosch
56ff118499 packer: 1.5.4 -> 1.5.5
https://github.com/hashicorp/packer/releases/tag/v1.5.5
(cherry picked from commit 42ca8f54db)
2020-04-13 12:23:18 +02:00
Maximilian Bosch
26702dfb58 wdisplays: 2020-01-12 -> 2020-03-15
ba331ca...0faafdc
(cherry picked from commit 6b5186c2ca)
2020-04-13 12:23:18 +02:00
Vincent Laporte
1610b4ab21 coqPackages.dpdgraph: fix build with OCaml ≥ 4.08
(cherry picked from commit f2eeeb83f2)
2020-04-13 11:29:26 +02:00
John Ericson
708cb6b307 Merge pull request #85101 from Ericson2314/document-haskell-env-changes
nixos/doc: Document breaking change to Haskell dev shells for 20.03
2020-04-12 16:42:03 -04:00
worldofpeace
88661bfb64 Merge pull request #84846 from worldofpeace/backports-vscode-vscodium
vscode vscodium backports [20.03]
2020-04-12 15:15:10 -04:00
Andreas Rammhold
18cad55231 Merge pull request #84591 from andir/20.03/firefox
[20.03] firefox: 74.0.1 -> 75.0 and releated updates
2020-04-12 20:09:56 +02:00
worldofpeace
ea1c1ba19e Merge pull request #84971 from Emantor/fix/release_notes_i915
nixos/relrease-notes/rl-2003.xml: remove section on intel GPU workaround
2020-04-12 06:04:42 -04:00
Rouven Czerwinski
da764d22ce rl-2003: remove section on intel GPU workaround
According to my analysis the last critical fix went into v5.4.23, I have
confirmed this by running WebGL over night and haven't seen a single
i915 GPU hang. Lets remove the notes from the release notes.
2020-04-12 06:03:56 -04:00
Mario Rodas
ba1f98542d Merge pull request #84537 from JeffLabonte/20.03-brave_1.5.115_to_1.5.123
brave: 1.5.115 -> 1.5.123
2020-04-12 04:33:23 -05:00
Vladimír Čunát
21b3020b1a Merge #83022: simutrans: 120.2.2 -> 120.4.1 (unbreak)
(cherry picked from commit e7ca19f7cb)
2020-04-12 10:26:30 +02:00
Maximilian Bosch
b3f4b4dc3c feh: 3.3 -> 3.4
https://feh.finalrewind.org/archive/3.4/
(cherry picked from commit 2d836ab922)
2020-04-12 10:12:57 +02:00
Dmitry Kalinkin
d0982c0e0e herwig: 7.2.0 -> 7.2.1
thepeg: 2.2.0 -> 2.2.1

A minor bugfix

(cherry picked from commit 7cbffa0530)
2020-04-11 15:18:16 -04:00
R. RyanTM
1f4c855782 snakemake: 5.10.0 -> 5.13.0 (#83839)
(cherry picked from commit cff5adc2fb)
2020-04-11 14:40:48 -04:00
Dmitry Kalinkin
42f4fa6b0b snakemake: 5.9.1 -> 5.10.0
(cherry picked from commit 68db99ad97)
2020-04-11 14:40:43 -04:00
Dmitry Kalinkin
f070c90c01 pythonPackages.awkward1: use pytestCheckHook
(cherry picked from commit 5c72e84169)
2020-04-11 11:50:49 -04:00
Dmitry Kalinkin
8246657ddb pythonPackages.awkward1: 0.1.38 -> 0.2.12
(cherry picked from commit ab1c67eacd)
2020-04-11 11:50:43 -04:00
Michael Raskin
4528f9dbfb Merge pull request #84918 from woffs/backport-pingus-83706-20.03
[nixos-20.03] pingus: 0.7.6 -> unstable
2020-04-11 10:35:25 +00:00
Florian Klink
836e4b71c4 Merge pull request #84930 from flokli/rl-2003-highlights
nixos/release-notes/rl-2003.xml: add highlights
2020-04-11 12:11:22 +02:00
Maximilian Bosch
c218f19494 nixos/release-notes: fix minor spelling mistake in the Nextcloud section
As discovered by flokli.

(cherry picked from commit 9cddcac995)
2020-04-11 10:38:40 +02:00
Samuel Dionne-Riel
f3a3c969fe nextcloud: Review installation upgrade warning wording
The new wording does not assume the user is upgrading.

This is because a user could be setting up a new installation on 20.03
on a server that has a 19.09 or before stateVersion!!

The new wording ensures that confusion is reduced by stating that they
do not have to care about the assumed 16→17 transition.

Then, the wording explains that they should, and how to upgrade to
version 18.

It also reviews the confusing wording about "multiple" upgrades.

* * *

The only thing we cannot really do is stop a fresh install of 17 if
there was no previous install, as it cannot be detected. That makes a
useless upgrade forced for new users with old state versions.

It is also important to state that they must set their package to
Nextcloud 18, as future upgrades to Nextcloud will not allow an uprade
from 17!

I assume future warning messages will exist specifically stating what to
do to go from 18 to 19, then 19 to 20, etc...

(cherry picked from commit a1efbdb600)
2020-04-11 00:02:27 -04:00
worldofpeace
806ddfb696 Merge pull request #84950 from bhipple/bp/nose
[20.03] python3Packages.nose2: 0.9.1 -> 0.9.2 and fix build for ZHF
2020-04-10 22:53:51 -04:00
Niklas Hambüchen
fd7ac7e607 Merge pull request #84963 from nh2/issue-84391-nginx-as-root-changelog-20.03
[20.03] release notes: Explain how to run nginx master as root
2020-04-11 03:46:49 +02:00
Niklas Hambüchen
0e79744e20 release notes: Explain how to run nginx master as root. Fixes #84391
(cherry picked from commit ba50a7a3f1)
2020-04-11 03:34:24 +02:00
Mario Rodas
9099f30636 Merge pull request #84948 from nyanloutre/nginx_sso_backport_0_24_1
[20.03] nginx-sso: 0.24.0 -> 0.24.1
2020-04-10 19:09:11 -05:00
Benjamin Hipple
bb5bd4e831 python3Packages.nose2: 0.9.1 -> 0.9.2 and fix build for ZHF
See inline comment; this is currently broken and not going to continue working
on python2 without significant effort, so mark it python >= 3.6 only.

https://hydra.nixos.org/build/114680648
https://hydra.nixos.org/build/115518949

CC @NixOS/nixos-release-managers

ZHF: #80379
(cherry picked from commit f9bc195430)
2020-04-10 19:08:24 -04:00
nyanloutre
dc25644537 nginx-sso: 0.24.0 -> 0.24.1
(cherry picked from commit 0e087981ec)
2020-04-11 00:55:46 +02:00
worldofpeace
c26487314f nixos/gnome-remote-desktop: enable pipewire
We need the pipewire service to actually use this.
Tested with g-c-c Sharing.

(cherry picked from commit 94eb65a287)
2020-04-10 18:08:44 -04:00
worldofpeace
8d37cca45f pantheon.wingpanel-applications-menu: 2.5.0 -> 2.6.0
https://github.com/elementary/applications-menu/releases/tag/2.6.0
(cherry picked from commit dd805599a9)
2020-04-10 18:08:23 -04:00
worldofpeace
74ae69926e pantheon.switchboard-plug-security-privacy: 2.2.2 -> 2.2.3
* gtk toolbar to actionbar

https://github.com/elementary/switchboard-plug-security-privacy/releases/tag/2.2.3
(cherry picked from commit e7d592edb6)
2020-04-10 18:08:22 -04:00
worldofpeace
75a32d7434 pantheon.switchboard-plug-pantheon-shell: 2.8.2 -> 2.8.3
Don't need backgrounds patch anymore because of my patch upstream [0]

https://github.com/elementary/switchboard-plug-pantheon-shell/releases/tag/2.8.3

[0]: 541b1711fe

(cherry picked from commit 3c4cf5db81)
2020-04-10 18:08:22 -04:00
worldofpeace
e43ec384f7 pantheon.switchboard-plug-mouse-touchpad: 2.4.0 -> 2.4.1
https://github.com/elementary/switchboard-plug-mouse-touchpad/releases/tag/2.4.1
(cherry picked from commit cc1550c1ac)
2020-04-10 18:08:22 -04:00
worldofpeace
2507c5f0b4 pantheon.switchboard-plug-applications: 2.1.6 -> 2.1.7
https://github.com/elementary/switchboard-plug-applications/releases/tag/2.1.7
(cherry picked from commit c8a38c9ee1)
2020-04-10 18:08:22 -04:00
worldofpeace
44821b7121 pantheon.switchboard-plug-display: 2.2.0 -> 2.2.1
https://github.com/elementary/switchboard-plug-display/releases/tag/2.2.1
(cherry picked from commit a86f2a18ad)
2020-04-10 18:08:22 -04:00
worldofpeace
698d28006b pantheon.switchboard-plug-about: 2.6.1 -> 2.6.2
just translations

(cherry picked from commit 45e3470ae4)
2020-04-10 18:08:22 -04:00
worldofpeace
99e05f5a23 pantheon.wingpanel-indicators-bluetooth: 2.1.4 -> 2.1.5
(cherry picked from commit ac2f83c1ad)
2020-04-10 18:08:22 -04:00
worldofpeace
2165cd7a81 pantheon.elementary-capnet-assist: 2.2.4 -> 2.2.5
just translations

(cherry picked from commit 082d977eac)
2020-04-10 18:08:22 -04:00
worldofpeace
f64401aa1f pantheon.pantheon-agent-polkit: 1.0.0 -> 1.0.1
just translations

(cherry picked from commit b810ce57f7)
2020-04-10 18:08:22 -04:00
worldofpeace
86822f8ed8 pantheon.wingpanel: 2.3.0 -> 2.3.1 2020-04-10 18:08:22 -04:00
worldofpeace
9db8c33847 pantheon.elementary-photos: 2.6.5 -> 2.7.0
https://github.com/elementary/photos/releases/tag/2.7.0
(cherry picked from commit d484e6a9e9)
2020-04-10 18:08:22 -04:00
worldofpeace
da30881e58 pantheon.appcenter: 3.2.3 -> 3.2.4
https://github.com/elementary/appcenter/releases/tag/3.2.4
(cherry picked from commit 0ec78fe131)
2020-04-10 18:08:22 -04:00
Frank Doepper
e8ae534af7 pingus: move cmake to nativeBuildInputs
(cherry picked from commit de6a28d63a73f5d68187fafc5330f80d2857b86c)
2020-04-10 23:47:23 +02:00
Joshua Fern
f35b2f29d2 citra: 2019-10-05 -> 2020-03-21
Version bump, also fixes the common qt xcb plugin error

(cherry picked from commit 83616f1bc5)

This contains a fix for issue #65399.
2020-04-10 22:06:52 +02:00
worldofpeace
7c9f30befa rl-2003: qa touchups
Fixes https://github.com/NixOS/nixpkgs/issues/82777
2020-04-10 15:44:58 -04:00
Izorkin
59d50ed9db maxscale: make broken package
(cherry picked from commit 63d9ab069a)
2020-04-10 15:41:57 -04:00
Florian Klink
ec11fd2163 nixos/release-notes/rl-2003.xml: add highlights
Fixes #79180.
2020-04-10 21:14:37 +02:00
Eelco Dolstra
63c1baa3eb nix: Fix fallback paths
(cherry picked from commit aa084e2a24)
2020-04-10 21:14:14 +02:00
Eelco Dolstra
609878cafb nix: 2.3.3 -> 2.3.4
(cherry picked from commit cea352d276)
2020-04-10 21:14:09 +02:00
Eelco Dolstra
12b319cd86 nix-fallback-paths.nix: Fix x86_64-linux path
https://github.com/NixOS/nix/issues/3370
(cherry picked from commit 21a3b141c3)
2020-04-10 21:14:06 +02:00
Eelco Dolstra
d676b04132 nix: 2.3.2 -> 2.3.3
(cherry picked from commit 3c47f78e82)
2020-04-10 21:11:19 +02:00
worldofpeace
66d8a2bda5 Merge pull request #84811 from Emantor/bump/20.03/xorg_server
[20.03] xorg.xorgserver: 1.20.7 -> 1.20.8
2020-04-10 14:36:12 -04:00
Michael Raskin
a63370143f pingus: 0.7.6 -> unstable; fixes build conflicts with dependency updates
(cherry picked from commit 35a2f790f6)
2020-04-10 19:13:45 +02:00
worldofpeace
ab018f754b Merge pull request #84221 from erictapen/dhcpcd-error-on-bridges
[20.03] nixos/network-interfaces: Assert that bridges can get an address via DHCP
2020-04-10 12:49:44 -04:00
Benjamin Hipple
f19157dfa0 Merge pull request #84840 from helsinki-systems/backport/20.03/unit
[20.03] unit: 1.14.0 -> 1.16.0
2020-04-10 12:40:39 -04:00
Justin Humm
54ad186461 nixos/network-interfaces: assertion for DHCP on bridges
Assert that the user doesn't have a bridge configured while
networking.useDHCP is true. Due to new behaviour of dhcpcd [0], this
would result in the bridge not getting an address via DHCP, regardless
of wether it has networking.interfaces.<name?>.useDHCP set or not.

[0] https://roy.marples.name/archives/dhcpcd-discuss/0002621.html
2020-04-10 17:28:22 +02:00
worldofpeace
c2d5fe8586 Merge pull request #84891 from schmittlauch/cawbird1.0.5-backport
[backport] cawbird: 1.0.4 -> 1.0.5
2020-04-10 11:06:07 -04:00
Joachim F
f372211402 Merge pull request #84893 from andriokha/tor-browser-bundle-bin-9.0.9-release-20.03
[20.03] tor-browser-bundle-bin: 9.0.7 -> 9.0.9
2020-04-10 14:56:53 +00:00
Frederik Rietdijk
a1119e2239 Merge release-20.03 into staging-20.03 2020-04-10 12:09:49 +02:00
Andy Fowlston
c713b1b49f tor-browser-bundle-bin: 9.0.7 -> 9.0.9
https://blog.torproject.org/new-release-tor-browser-909
https://blog.torproject.org/new-release-tor-browser-908
(cherry picked from commit 85e4f2d554)
2020-04-10 10:29:26 +01:00
ajs124
1e925e1545 performous: fix build (#84841)
(cherry picked from commit 87f75f8e35)

Co-authored-by: Orivej Desh <orivej@gmx.fr>
2020-04-10 01:33:51 +00:00
worldofpeace
d3d904c2f1 Merge pull request #84707 from zowoq/gh-backport
[20.03] gitAndTools.gh: 0.5.3 -> 0.6.4
2020-04-09 20:57:09 -04:00
worldofpeace
9e50a36859 Merge pull request #84863 from worldofpeace/backport-83551
[20.03] iso-image: normalize volumeID
2020-04-09 20:51:45 -04:00
worldofpeace
17d67c00c9 iso-image: make $ARCH shorter
we use stdenv.hostPlatform.uname.processor, which I believe is just like
`uname -p`.

Example values:
```
(import <nixpkgs> { system = "x86_64-linux"; }).stdenv.hostPlatform.uname.processor
"x86_64"

(import <nixpkgs> { system = "aarch64-linux"; }).stdenv.hostPlatform.uname.processor
aarch64

(import <nixpkgs> { system = "armv7l-linux"; }).stdenv.hostPlatform.uname.processor
"armv7l"
```

(cherry picked from commit df8c30fa25)
2020-04-09 20:26:57 -04:00
worldofpeace
0a634109d4 iso-image: make sure volumeID is less than 32 chars
(cherry picked from commit 591e8d5708)
2020-04-09 19:36:09 -04:00
worldofpeace
519ace8441 iso-image: normalize volumeID
The volumeID will now be in the format of:
nixos-$EDITON-$RELEASE-$ARCH

an example for the minimal image would look like:
nixos-minimal-20.09-x86-64-linux

(cherry picked from commit 70a8e9ace9)
2020-04-09 19:36:09 -04:00
worldofpeace
84b906d5c4 make-iso9660-image.sh: enable joliet extension
This is per the advice of the osinfo-db maintainers https://gitlab.com/libosinfo/osinfo-db/-/merge_requests/107#note_313094852

(cherry picked from commit f59aa66fc1)
2020-04-09 19:36:09 -04:00
Maximilian Bosch
a74e7092b0 gitAndTools.tig: 2.5.0 -> 2.5.1
https://github.com/jonas/tig/releases/tag/tig-2.5.1
(cherry picked from commit a3eaf6c88b)
2020-04-09 22:29:19 +02:00
Maximilian Bosch
5f33f338ce thermald: also install thermal-conf.xml into $out
Otherwise you get errors like this when running `thermald.service` from
the `services.thermald` module:

```
[WARN]22 CPUID levels; family:model:stepping 0x6:8e:a (6:142:10)
[WARN]Polling mode is enabled: 4
[WARN]sensor id 10 : No temp sysfs for reading raw temp
I/O warning : failed to load external entity "/nix/store/7d7cfc1949g7n7ywx47a0dsfz3b3rix5-thermald-1.9.1/etc/thermald/thermal-conf.xml"
[WARN]error: could not parse file /nix/store/7d7cfc1949g7n7ywx47a0dsfz3b3rix5-thermald-1.9.1/etc/thermald/thermal-conf.xml
[WARN]sysfs open failed
I/O warning : failed to load external entity "/nix/store/7d7cfc1949g7n7ywx47a0dsfz3b3rix5-thermald-1.9.1/etc/thermald/thermal-conf.xml"
[WARN]error: could not parse file /nix/store/7d7cfc1949g7n7ywx47a0dsfz3b3rix5-thermald-1.9.1/etc/thermald/thermal-conf.xml
I/O warning : failed to load external entity "/nix/store/7d7cfc1949g7n7ywx47a0dsfz3b3rix5-thermald-1.9.1/etc/thermald/thermal-conf.xml"
[WARN]error: could not parse file /nix/store/7d7cfc1949g7n7ywx47a0dsfz3b3rix5-thermald-1.9.1/etc/thermald/thermal-conf.xml
```

(cherry picked from commit 9fc8856b25)
2020-04-09 22:29:18 +02:00
Patrick Hilhorst
69f1529084 vscode, vscodium: 1.43.2 -> 1.44.0
(cherry picked from commit 939041bce4)
2020-04-09 16:26:06 -04:00
Edmund Wu
763a3b46ec vscodium: 1.43.0 -> 1.43.2
(cherry picked from commit 3f75bc2660)
2020-04-09 16:26:05 -04:00
Edmund Wu
829f656072 vscode: 1.43.0 -> 1.43.2
(cherry picked from commit a05f67ea0a)
2020-04-09 16:26:05 -04:00
worldofpeace
13d0920dad vscodium: add backports notice
(cherry picked from commit f9fc1d3be4)
2020-04-09 16:26:05 -04:00
worldofpeace
de5269a3ff vscode: add backports notice
(cherry picked from commit c9fd76de75)
2020-04-09 16:26:04 -04:00
Domen Kožar
d6209e540c vscode: fix build on darwin
(cherry picked from commit be80721e74)
2020-04-09 16:26:04 -04:00
Patrick Hilhorst
5c8fd2d9e1 vscode, vscodium: 1.42.1 -> 1.43.0
(cherry picked from commit 9be58002ed)
2020-04-09 16:26:04 -04:00
Domen Kožar
35b1992f6d vscode: specify runtimeDependencies instead of LD_LIBRARY_PATH
This avoids glibc verions mismatches in vscode terminal, as
LD_LIBRARY_PATH leaks into terminal and break with user installed
executables.

(cherry picked from commit 40d7ce7828)
2020-04-09 16:26:04 -04:00
Patrick Hilhorst
95ca22a418 vscode, vscodium: 1.42.0 -> 1.42.1
(cherry picked from commit 91a106d4b4)
2020-04-09 16:26:03 -04:00
Patrick Hilhorst
7514605998 vscodium: 1.41.1 -> 1.42.0
(cherry picked from commit 603109c171)
2020-04-09 16:26:03 -04:00
Izorkin
56eb406631 unit: 1.15.0 -> 1.16.0
(cherry picked from commit 5dbe01af5b)
2020-04-09 20:47:09 +02:00
R. RyanTM
4efd728157 unit: 1.14.0 -> 1.15.0
(cherry picked from commit 3815de80c0)
2020-04-09 20:46:23 +02:00
Mario Rodas
5f6ba36fd2 Merge #82267: sane-airscan: init at 0.9.17
(cherry picked from commit ab1a184de3)
2020-04-09 18:08:41 +02:00
Vladimír Čunát
842167291c Merge #84773: thunderbird*: 68.6.0 -> 68.7.0
https://www.thunderbird.net/en-US/thunderbird/68.7.0/releasenotes/
(ATM it's unclear if there are any security fixes or not.)

(cherry picked from commit f719350bac)
Re-tested both on 20.03.
2020-04-09 18:08:33 +02:00
Matthew Bauer
5ad2b732e9 kwallet-pam: unset QT_PLUGIN_PATH
kwallet sets a limit of 1000 for a single characters for environment
variables read from the socket[1]. wrapQtApps gives us a huge value
for QT_PLUGIN_PATH (up to 13000 bytes on my system!) Since this was
overflowing, the Qt plugin loading mechanism was hitting a segfault
when it was trying to parse the truncated QT_PLUGIN_PATH.

So for now, we can just unset QT_PLUGIN_PATH in the pam_kwallet_init
script. kwalletd5 has its own QT_PLUGIN_PATH which it can use.

This problem occured on 20.03, but not 19.09. It’s unclear what
changes were made in that time, but likely that previously we weren’t
getting a QT_PLUGIN_PATH set in the plasma5 startup at all. This means
that in 19.09 our QT_PLUGIN_PATH value must have been small enough to
fit into the 1000 char limit.

Fixes #77290

[1]: bc9713e272/src/runtime/kwalletd/main.cpp (L44)

/cc @ttuegel

(cherry picked from commit f0db4de598)
2020-04-09 10:50:03 -04:00
Rouven Czerwinski
aa4ec3bb37 xorg.xorgserver: 1.20.7 -> 1.20.8
https://lists.x.org/archives/xorg-announce/2020-March/003041.html

This release contains a fix for XWayland which removes a buffer swap
race between XWayland and the compositor. This resulted in flickering in
previous versions.
2020-04-09 15:24:09 +02:00
Shea Levy
253f8a76fa emacsPackages: Add standalone agda-input package that doesn't require building Agda.
(cherry picked from commit 6fac063e09)
2020-04-09 09:14:55 -04:00
Aaron Andersen
0ef4da1ea1 Merge pull request #84293 from aanderse/httpd-20.03
apacheHttpd: 2.4.41 -> 2.4.43 [20.03]
2020-04-09 08:42:51 -04:00
Maximilian Bosch
c25e25f46f hydra: 2020-03-24 -> 2020-04-07
Also removed `pkgs.hydra-flakes` since flake-support has been merged
into master[1]. Because of that, `pkgs.hydra-unstable` is now compiled
against `pkgs.nixFlakes` and currently requires a patch since Hydra's
master doesn't compile[2] atm.

[1] https://github.com/NixOS/hydra/pull/730
[2] https://github.com/NixOS/hydra/pull/732

(cherry picked from commit 0f5c38feed)
2020-04-09 12:35:51 +02:00
Jörg Thalheim
377b0248c5 acme: create certificates in subdirectory
This allows to have multiple certificates with the same common name.
Lego uses in its internal directory the common name to name the certificate.

fixes #84409

(cherry picked from commit d7ff6ab94a)
2020-04-09 11:06:10 +01:00
Domen Kožar
8c6a5a26a7 Merge pull request #84789 from bennofs/backport-ghc-llvm-aarch64
[20.03] haskell.compiler.ghc822Binary: propagate llvm dependency
2020-04-09 11:40:47 +02:00
Andrew Childs
48a0195416 haskell.compiler.ghc822Binary: propagate llvm dependency
Fixes the following error when attempting to build packages using this
compiler:

  <no location info>: error:
      Warning: Couldn't figure out LLVM version!
               Make sure you have installed LLVM 3.9

  <no location info>: error: ghc: could not execute: opt

(cherry picked from commit 31f557c88f)
2020-04-09 11:01:15 +02:00
Bernardo Meurer
f56a3e1aac linuxPackages.nvidia_x11: 440.64 -> 440.82
(cherry picked from commit 73ff54e7b9)
cc #84680
2020-04-09 00:18:56 -04:00
Mike Sperber
5ac5f503b2 bazel_0_26: fix linker flags for darwin (#84614)
Same as done for bazel_0_29 in d1ee615f1c:

(cherry picked from commit 677b2d818e)
2020-04-08 18:56:57 -04:00
worldofpeace
84aa023cf4 Merge pull request #82295 from erictapen/dhcpcd-release-notes
nixos/release-notes: mention that dhcpcd stopped giving IPv4 addresses to bridges
2020-04-08 17:44:53 -04:00
Trolli Schmittlauch
6d4959314c cawbird: 1.0.4 -> 1.0.5
(cherry picked from commit 6be41c6df8)
2020-04-08 21:22:19 +02:00
Jörg Thalheim
4ca13721d9 vocal: add missing glib-networking
otherwise https is disabled

(cherry picked from commit b9b8388e4a)
2020-04-08 13:24:27 -04:00
Michael Fellinger
f16ed9f715 set GEM_HOME via Gem.paths
(cherry picked from commit b285fa07d5)
2020-04-08 12:57:28 -04:00
Michael Fellinger
97f1e86387 update versions in Gemfile.lock
(cherry picked from commit f92600b406)
2020-04-08 12:57:26 -04:00
Michael Fellinger
c6758ee13d bundler: 1.17.3 -> 2.1.4
(cherry picked from commit a2e73b062a)
2020-04-08 12:47:42 -04:00
Jörg Thalheim
78e69d9306 linuxPackages.acpi-call: switch to nix-community fork
This fixes also build against linux 5.6
We also took the opportunity to cleanup the build.

(cherry picked from commit 1ae03c9db1)
2020-04-08 15:35:21 +01:00
Graham Christensen
99cbf968fd Merge pull request #84717 from bennofs/backport-test-hibernate-x86_64
nixos/release-combined.nix: test hibernate only on x86_64
2020-04-08 09:40:59 -04:00
Tim Steinbach
c1af4f35b7 linux: 5.5.15 -> 5.5.16 2020-04-08 08:52:43 -04:00
Tim Steinbach
2d68afdaab linux: 5.4.30 -> 5.4.31 2020-04-08 08:52:43 -04:00
Benno Fünfstück
6193a9e242 nixos/release-combined.nix: test hibernate only on x86_64
(cherry picked from commit 918cb88d1f)
2020-04-08 14:52:19 +02:00
Michael Weiss
224a5e5b05 chromiumDev: Add the missing setuptools dependency
The build was failing with:
```
[1625/39505] ACTION //components/schema_org:generate_schema_org_code(//build/toolchain/linux:clang_x64)
FAILED: gen/components/schema_org/schema_org_entity_names.h gen/components/schema_org/schema_org_entity_names.cc gen/components/schema_org/schema_org_property_configurations.h gen/components/schema_org/schema_org_property_configurations.cc gen/components/schema_org/schema_org_property_names.h gen/components/schema_org/schema_org_property_names.cc
python ../../components/schema_org/generate_schema_org_code.py --schema-file ../../third_party/schema_org/schema.jsonld --output-dir gen/components/schema_org --templates templates/schema_org_entity_names.cc.tmpl templates/schema_org_entity_names.h.tmpl templates/schema_org_property_configurations.cc.tmpl templates/schema_org_property_configurations.h.tmpl templates/schema_org_property_names.cc.tmpl templates/schema_org_property_names.h.tmpl
Traceback (most recent call last):
  File "../../components/schema_org/generate_schema_org_code.py", line 22, in <module>
    env = Environment(loader=PackageLoader('generate_schema_org_code', ''))
  File "/build/chromium-83.0.4100.3/components/schema_org/../../third_party/jinja2/loaders.py", line 222, in __init__
    from pkg_resources import DefaultProvider, ResourceManager, \
ImportError: No module named pkg_resources
```

(cherry picked from commit d782c440ae)
2020-04-08 13:50:12 +02:00
Michael Weiss
3cfa78fe30 chromiumDev: Fix the build
Building Chromium 82 requires LLVM 10 for the new argument
"-fintegrated-cc1". LLVM 9 fails with:
clang++: error: unknown argument: '-fintegrated-cc1'

(cherry picked from commit 1d961a4c6d)
2020-04-08 13:47:31 +02:00
Michael Weiss
a62dac34e6 chromium: 80.0.3987.163 -> 81.0.4044.92
https://chromereleases.googleblog.com/2020/04/stable-channel-update-for-desktop_7.html

This update includes 32 security fixes.

CVEs:
CVE-2020-6454 CVE-2020-6423 CVE-2020-6455 CVE-2020-6430 CVE-2020-6456
CVE-2020-6431 CVE-2020-6432 CVE-2020-6433 CVE-2020-6434 CVE-2020-6435
CVE-2020-6436 CVE-2020-6437 CVE-2020-6438 CVE-2020-6439 CVE-2020-6440
CVE-2020-6441 CVE-2020-6442 CVE-2020-6443 CVE-2020-6444 CVE-2020-6445
CVE-2020-6446 CVE-2020-6447 CVE-2020-6448

(cherry picked from commit da832dd7d4)
Backport of #84671.
2020-04-08 13:36:38 +02:00
Michael Weiss
85e8548a1f chromiumBeta: Fix the build
This patch was also backported to M81 [0][1].

[0]: https://chromium-review.googlesource.com/c/chromium/src/+/2091896
[1]: bbf0fad592

(cherry picked from commit ff3bc51d2b)
2020-04-08 13:36:38 +02:00
Michael Weiss
df50124d63 chromium: Ignore unknown warning options
This can e.g. save around 150k lines of unnecessary log messages which
take up around 66% of the total lines (based on a log of 80.0.3987.100):
29527 warning: unknown warning option '-Wno-bitwise-conditional-parentheses'; did you mean '-Wno-bitwise-op-parentheses'? [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-builtin-assume-aligned-alignment' [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-deprecated-copy'; did you mean '-Wno-deprecated'? [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-final-dtor-non-final-class'; did you mean '-Wno-abstract-final-class'? [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-implicit-int-float-conversion'; did you mean '-Wno-implicit-float-conversion'? [-Wunknown-warning-option]

(cherry picked from commit 9f3914824d)
2020-04-08 13:36:37 +02:00
Michael Weiss
468fa8738f Merge pull request #84705 from primeos/signal-desktop-backport
[20.03] signal-desktop: 1.32.3 -> 1.33.0 (backport)
2020-04-08 13:08:19 +02:00
zowoq
fbd0974dff gitAndTools.gh: 0.6.3 -> 0.6.4
https://github.com/cli/cli/releases/tag/v0.6.4
(cherry picked from commit 26a6d89cab)
2020-04-08 19:46:36 +10:00
zowoq
cf7513bc27 gitAndTools.gh: 0.6.2 -> 0.6.3
https://github.com/cli/cli/releases/tag/v0.6.3
(cherry picked from commit 68a50aaaa5)
2020-04-08 19:46:27 +10:00
zowoq
f7b3dfc9d8 gitAndTools.gh: 0.6.1 -> 0.6.2
https://github.com/cli/cli/releases/tag/v0.6.2
(cherry picked from commit 20f197d0b9)
2020-04-08 19:46:18 +10:00
zowoq
ba71d71c13 gitAndTools.gh 0.6.0 -> 0.6.1
https://github.com/cli/cli/releases/tag/v0.6.1
(cherry picked from commit 4656fba5ab)
2020-04-08 19:46:09 +10:00
zowoq
86a179a74b gitAndTools.gh: 0.5.7 -> 0.6.0
https://github.com/cli/cli/releases/tag/v0.6.0
(cherry picked from commit 85a8d13017)
2020-04-08 19:46:01 +10:00
zowoq
085b7360d5 gitAndTools.gh: 0.5.6 -> 0.5.7
https://github.com/cli/cli/releases/tag/v0.5.7
(cherry picked from commit 3338225cd2)
2020-04-08 19:45:51 +10:00
zowoq
1d6ad14c73 gitAndTools.gh: 0.5.5 -> 0.5.6
https://github.com/cli/cli/releases/tag/v0.5.6
(cherry picked from commit 185aabefb0)
2020-04-08 19:45:42 +10:00
zowoq
ca75c088e9 gitAndTools.gh: 0.5.4 -> 0.5.5
https://github.com/cli/cli/releases/tag/v0.5.5
(cherry picked from commit 66f50128dc)
2020-04-08 19:45:33 +10:00
R. RyanTM
1e8fc3dd4d gitAndTools.gh: 0.5.3 -> 0.5.4
(cherry picked from commit 7b61246b95)
2020-04-08 19:45:14 +10:00
Michael Weiss
ef5b4301fc signal-desktop: 1.32.3 -> 1.33.0
(cherry picked from commit fdedc5d16c)
2020-04-08 11:38:10 +02:00
Vincent Laporte
d41fe83633 alt-ergo: 2.3.1 → 2.3.2
(cherry picked from commit f4ff33cce6)
2020-04-08 10:28:59 +02:00
Dennis Gosnell
0b1657a278 Merge pull request #84571 from woffs/unbreak-amqp-utils-20.03a
[nixos-20.03] haskellPackages.amqp-utils: fix amqp-0.19 dependency
2020-04-08 10:39:47 +09:00
Dennis Gosnell
540d6716cc Merge pull request #84645 from rnhmjoj/pandoc-crossref-20.03
[20.03] haskellPackages.pandoc-crossref: downgrade to latest working
2020-04-08 09:40:12 +09:00
Michael Bishop
6be1626da5 nixos: kafka test: fix building for other arches
(cherry picked from commit 8b7e843dab)
2020-04-07 15:44:32 -03:00
Benjamin Hipple
d63f95896c Merge pull request #84623 from bhipple/bp/tmux-plugins
[20.03] tmuxPlugins: upgrade all to latest
2020-04-07 14:21:30 -04:00
worldofpeace
a5a30e85c9 Merge branch 'release-20.03' into staging-20.03 2020-04-07 13:25:36 -04:00
worldofpeace
29b6ad6278 Merge branch 'staging-20.03' into release-20.03 2020-04-07 13:24:24 -04:00
Benjamin Hipple
5b34063594 tmuxPlugins: upgrade all to latest
Many of the tmux plugins had not been updated in some time. This PR:

- Updates all of them to the latest version. This is notable because `tmux 3.0`
  has come out recently, and some of them have compatibility fixes for the new
  version (e.g., `vim-tmux-navigator`), as well as general performance
  improvements and bugfixes for many of them.

- Uses `fetchFromGitHub`, which is both more performant and hashed mirror friendly.

- Adds the standard `version = "unstable-YYYY-MM-DD"`, which makes it easy to
  determine at a glance how old/unmaintained some of these are.

- Adds the standard `pname` for overlay friendliness

(cherry picked from commit d5ccc59056)
2020-04-07 12:06:17 -04:00
rnhmjoj
c5a806cfc0 haskellPackages.pandoc-crossref: downgrade to latest working 2020-04-07 17:39:13 +02:00
Andreas Rammhold
5e9ae03746 firefox-devedition-bin: 75.0b12 -> 76.0b1
(cherry picked from commit 79fb58973f)
2020-04-07 13:47:47 +02:00
Andreas Rammhold
f545f8ec14 firefox-beta-bin: 75.0b11 -> 76.0b1
(cherry picked from commit 9d6a7fdaad)
2020-04-07 13:47:47 +02:00
Andreas Rammhold
9b3e192bcb firefox-bin: 74.0.1 -> 75.0
(cherry picked from commit bab82e78b2)
2020-04-07 13:47:47 +02:00
Andreas Rammhold
fb97dfdcfa firefox-esr-68: 68.6.1esr -> 68.7.0esr
(cherry picked from commit f56ea6cdd7)
2020-04-07 13:47:47 +02:00
Andreas Rammhold
37e814ba75 firefox: 74.0.1 -> 75.0
(cherry picked from commit 4a41fd7a1e)
2020-04-07 13:47:47 +02:00
Andreas Rammhold
8aa6834525 firefox: prepare for version 75
(cherry picked from commit 9de3c9749c)
2020-04-07 13:47:46 +02:00
Andreas Rammhold
612a2978de libvpx_1_8: init at 1.8.2
Adding this as a new attribute as software is likely going to break when
we switch the default from the 1.7 branch to 1.8.

(cherry picked from commit 1859b5a5ae)
2020-04-07 13:47:45 +02:00
Maximilian Bosch
4291ef9bb6 prometheus-wireguard-exporter: 3.2.4 -> 3.3.0
https://github.com/MindFlavor/prometheus_wireguard_exporter/releases/tag/3.3.0
(cherry picked from commit e2b327cd4e)
2020-04-07 13:35:04 +02:00
Maximilian Bosch
3c700b8aa6 cargo-make: 0.30.2 -> 0.30.4
https://github.com/sagiegurari/cargo-make/releases/tag/0.30.3
https://github.com/sagiegurari/cargo-make/releases/tag/0.30.4
(cherry picked from commit 564af64783)
2020-04-07 13:35:04 +02:00
Frank Doepper
6570f2aec5 haskellPackages.amqp-utils: fix amqp-0.19 dependency 2020-04-07 10:14:11 +02:00
Jeff Labonte
f7522984c4 brave: 1.5.115 -> 1.5.123
Updated the checksum and the version of the brave package.

(cherry picked from commit 7a80ead781153ff40ab35ca02aef9d732e74f7e6)
Reason: The browser must be kept up-to-date
2020-04-06 22:30:31 -04:00
worldofpeace
29eddfc36d Merge pull request #80848 from worldofpeace/20.03-release-notes
rl-2003: mention python driver
2020-04-06 20:31:14 -04:00
worldofpeace
a435d41af5 rl-2003: mention python driver 2020-04-06 20:07:11 -04:00
Bernardo Meurer
8b8b278a8a linuxPackages.nvidia_x11: 440.59 -> 440.64
(cherry picked from commit 408de509cc)
cc #84163
2020-04-06 19:06:18 -04:00
Silvan Mosberger
2216211144 nixos/lib/test-driver: Fix require_unit_state hardcoded formatting
(cherry picked from commit 85e866db6f)
2020-04-07 00:58:50 +02:00
Florian Klink
0abc66e252 Merge pull request #84497 from toonn/release-20.03
[20.03] wire-desktop: mac 3.15.3621 -> 3.16.3630
2020-04-06 22:13:12 +02:00
toonn
4cedeb7475 wire-desktop: mac 3.15.3621 -> 3.16.3630
(cherry picked from commit 39c5e1c723)
2020-04-06 19:01:20 +02:00
Daiderd Jordan
10f80999df Merge pull request #84334 from LnL7/darwin-itstool
itstool: fix double-shebang backport
2020-04-06 18:42:53 +02:00
Daiderd Jordan
ef0537b9cd Merge pull request #84332 from LnL7/darwin-backports
darwin 20.03 backports
2020-04-06 18:41:53 +02:00
Elis Hirwing
84926c9480 php72: 7.2.28 -> 7.2.29
Changelog: https://www.php.net/ChangeLog-7.php#7.2.29
(cherry picked from commit 8272ebe961)
2020-04-06 17:58:23 +02:00
Elis Hirwing
185b684425 php73: 7.3.15 -> 7.3.16
Changelog: https://www.php.net/ChangeLog-7.php#7.3.16
(cherry picked from commit 1118080dc0)
2020-04-06 17:58:04 +02:00
Elis Hirwing
865abba6e9 php74: 7.4.3 -> 7.4.4
Changelog: https://www.php.net/ChangeLog-7.php#7.4.4
(cherry picked from commit faf79b6384)
2020-04-06 17:57:36 +02:00
Jörg Thalheim
5d1de8ca0f Merge pull request #84483 from bcdarwin/backport-fix-sedlex-inputs
ocamlPackages.sedlex: fix dependencies
2020-04-06 16:48:47 +01:00
Ben Darwin
81ae9cbefe ocamlPackages.sedlex: fix dependencies
(cherry picked from commit 77901a96da)
2020-04-06 11:09:33 -04:00
worldofpeace
649b8e1f0f Merge pull request #82886 from bennofs/fix-nixos-aarch64-eval
Fix evaluation of release-20.03-aarch64 jobset
2020-04-06 10:48:31 -04:00
Artem Khramov
10d60f7fae rockbox-utility: add wrapQtAppsHook
It seems like all QT apps which use dynamic plugins should be wrapped
with `wrapQtAppsHook`. However, rockbox-utility is still not wrapped,
therefore fails to launch.

This change adds `qt5.wrapQtAppsHook` to nativeBuildInputs of
rockbox-utility.

(cherry picked from commit 861df8abd5)
2020-04-06 12:21:04 +01:00
Eelco Dolstra
b4e14e9254 nix: 2.4pre7250_94c93437 -> 2.4pre7346_5e7ccdc9, 2.4pre20200220_4a4521f -> 2.4pre20200403_3473b19
(cherry picked from commit b23f697b00)
2020-04-06 12:51:08 +02:00
Eelco Dolstra
13cbfa88db Remove Nix 1.x
(cherry picked from commit 5d583db5a2)
2020-04-06 12:51:04 +02:00
Edward Amsden
0dda3d53a5 nix: Drive-by cleanup: replace ifthenelse with lib.optionalString
(cherry picked from commit 3b72c55fc5)
2020-04-06 12:50:59 +02:00
Edward Amsden
93c13ab1f0 nix: Patch config.nix.in to reference host platform binaries
(cherry picked from commit f1415f633c)
2020-04-06 12:50:33 +02:00
worldofpeace
a128dd3af8 riot-desktop: wrap with wrapGAppsHook
wrap as per https://nixos.org/nixpkgs/manual/#sec-language-gnome.

(cherry picked from commit fe6addbbf7)
2020-04-06 03:51:56 -04:00
worldofpeace
57ecbc5c61 Revert "riot-desktop: add gsettings schemas to the wrapper"
This reverts commit 1af6a1a134.

(cherry picked from commit 204d7bc28b)
2020-04-06 03:51:56 -04:00
Vincent Laporte
9fa7ee47b7 coq_8_11: 8.11.0 → 8.11.1
(cherry picked from commit d6a8d0ca5b)
2020-04-06 08:00:13 +02:00
Sarah Brofeldt
637325d63f nixos/tests/ceph: Fix pg number to power of 2
(cherry picked from commit 6ccd347e46)
2020-04-06 07:49:37 +02:00
Sarah Brofeldt
74ee45c435 ceph: 14.2.7 -> 14.2.8
(cherry picked from commit ec21f70c4b)
2020-04-06 07:49:35 +02:00
Sarah Brofeldt
ee47f5285f ceph: 14.2.6 -> 14.2.7
(cherry picked from commit 41547d11ec)
2020-04-06 07:49:28 +02:00
worldofpeace
4c2401ae4d pantheon.wingpanel-indicator-notifications: remove wnck
Don't need it 8ba4666015

(cherry picked from commit ce867da997)
2020-04-06 01:36:14 -04:00
worldofpeace
7ff1a0d9f1 Merge pull request #84418 from worldofpeace/pantheon-update-04-03-20.03
[20.03] Pantheon update 2020-04-03
2020-04-06 00:03:03 -04:00
worldofpeace
133f76fff0 pantheon.gala: 3.2.0 -> 3.3.0
https://github.com/elementary/gala/releases/tag/3.3.0
2020-04-05 22:28:15 -04:00
worldofpeace
11aea6c3c6 pantheon.elementary-greeter: 5.0.2 -> 5.0.3
https://github.com/elementary/greeter/releases/tag/5.0.3
2020-04-05 22:28:15 -04:00
worldofpeace
d723711d63 pantheon.wingpanel: 2.2.6 -> 2.3.0
https://github.com/elementary/wingpanel/releases/tag/2.3.0
2020-04-05 22:28:14 -04:00
worldofpeace
883e15f223 pantheon.xml: drop slow shutdown workaround
Them removing cerbere and registering with the SessionManager
should make shutdown very fast. This was even done in plank [0]
which was the last factor outside cerbere causing this.

[0]]: a8d2f255b2
2020-04-05 22:28:14 -04:00
worldofpeace
2c4c025107 pantheon.elementary-dock: init at 2020-02-28
It seems Pantheon has forked Plank.
2020-04-05 22:28:14 -04:00
worldofpeace
5e12c6403d pantheon.cerbere: remove 2020-04-05 22:27:52 -04:00
worldofpeace
90a3d62260 pantheon.wingpanel-indicator-sound: 2.1.4 -> 2.1.5 2020-04-05 22:27:34 -04:00
worldofpeace
cf1f59cf2f pantheon.wingpanel-indicator-session: 2.2.7 -> 2.2.8 2020-04-05 22:27:34 -04:00
worldofpeace
6319579a07 pantheon.wingpanel-indicator-power: 2.1.4 -> 2.1.5 2020-04-05 22:27:34 -04:00
worldofpeace
5ddd566191 pantheon.wingpanel-indicator-notifications: 2.1.3 -> 2.1.4 2020-04-05 22:27:34 -04:00
worldofpeace
32175d2a87 pantheon.wingpanel-indicator-network: 2.2.2 -> 2.2.3 2020-04-05 22:27:33 -04:00
worldofpeace
6123950811 pantheon.wingpanel-indicator-keyboard: 2.2.0 -> 2.2.1 2020-04-05 22:27:33 -04:00
worldofpeace
6350caf275 pantheon.wingpanel-indicator-datetime: 2.2.1 -> 2.2.2 2020-04-05 22:27:33 -04:00
worldofpeace
ce8bce8352 pantheon.elementary-shortcut-overlay: 1.1.0 -> 1.1.1 2020-04-05 22:27:33 -04:00
worldofpeace
a569a23a40 pantheon.elementary-onboarding: 1.1.0 -> 1.2.0 2020-04-05 22:27:33 -04:00
worldofpeace
1e219069be pantheon.switchboard-plug-sound: 2.2.2 -> 2.2.3 2020-04-05 22:27:32 -04:00
worldofpeace
eaa6002188 pantheon.switchboard-plug-sharing: 2.1.3 -> 2.1.4 2020-04-05 22:27:32 -04:00
worldofpeace
1dda5cab01 pantheon.switchboard-plug-printers: 2.1.7 -> 2.1.8 2020-04-05 22:27:32 -04:00
worldofpeace
4576a78233 pantheon.switchboard-plug-power: 2.4.0 -> 2.4.1 2020-04-05 22:27:32 -04:00
worldofpeace
9f4e21ff3e pantheon.switchboard-plug-notifications: 2.1.5 -> 2.1.6 2020-04-05 22:27:32 -04:00
worldofpeace
d63add4516 pantheon.switchboard-plug-network: 2.2.0 -> 2.3.0 2020-04-05 22:27:31 -04:00
worldofpeace
13be8d025f pantheon.switchboard-plug-keyboard: 2.3.5 -> 2.3.6 2020-04-05 22:27:31 -04:00
worldofpeace
89eeebc42a pantheon.switchboard-plug-datetime: 2.1.6 -> 2.1.7 2020-04-05 22:27:31 -04:00
worldofpeace
86719de340 pantheon.switchboard-plug-a11y: 2.1.3 -> 2.2.0 2020-04-05 22:27:31 -04:00
worldofpeace
568500a93f pantheon.granite: 5.3.0 -> 5.3.1 2020-04-05 22:27:31 -04:00
worldofpeace
f2f7833bdd pantheon.switchboard: 2.3.8 -> 2.3.9 2020-04-05 22:27:31 -04:00
worldofpeace
ef4ce3bdc1 pantheon.sideload: 1.0.1 -> 1.1.0 2020-04-05 22:27:30 -04:00
worldofpeace
b9087a830f pantheon.elementary-terminal: 5.5.1 -> 5.5.2 2020-04-05 22:27:30 -04:00
worldofpeace
d24c057ecb pantheon.elementary-files: 4.4.1 -> 4.4.2 2020-04-05 22:27:30 -04:00
worldofpeace
16712bb2e6 pantheon.elementary-code: 3.3.0 -> 3.4.0 2020-04-05 22:27:30 -04:00
worldofpeace
802a803ec0 pantheon.elementary-camera: 1.0.5 -> 1.0.6 2020-04-05 22:27:30 -04:00
worldofpeace
3434b85c75 pantheon.elementary-calendar: 5.0.3 -> 5.0.4 2020-04-05 22:27:29 -04:00
worldofpeace
fed6a0b63d pantheon.elementary-calculator: 1.5.4 -> 1.5.5 2020-04-05 22:27:29 -04:00
worldofpeace
b98eceeed1 pantheon.appcenter: 3.2.2 -> 3.2.3 2020-04-05 22:27:29 -04:00
Robert Helgesson
2444e3c418 documentation: minor spelling and stylistic fixes
(cherry picked from commit 40bbbb8f7d)
2020-04-06 02:38:44 +02:00
volth
0bb35152be firefox: mark as broken on 32-bit buildPlatform
(cherry picked from commit ed33a6c327)
2020-04-05 20:30:18 +02:00
Maximilian Bosch
8f720ba725 bandwhich: 0.12.0 -> 0.13.0
https://github.com/imsnif/bandwhich/releases/tag/0.13.0
(cherry picked from commit 35c0d9da9b)
2020-04-05 19:58:56 +02:00
Maximilian Bosch
0d4f92d789 mautrix-whatsapp: 2020-03-26 -> 2020-04-02
(cherry picked from commit ca0cb2c43f)
2020-04-05 17:47:19 +02:00
Vladimír Čunát
d815dc4b68 Merge #84273: gnutls: 3.6.12 -> 3.6.13 [security]
... into staging.  Fixes CVE-2020-11501.

(cherry picked from commit f91b34e53e)
2020-04-05 17:20:15 +02:00
Tristan Helmich (omniIT)
182f229ba7 graylog: 3.2.2 -> 3.2.4
(cherry picked from commit 5cb04b4377)
2020-04-05 12:54:51 +02:00
Jörg Thalheim
7601af232b itstool: use wrapPython to fix double shebang on macOS
(cherry picked from commit 02a5f3e88d1b85ff89b9307b4413aa878c753bc0)
2020-04-05 12:23:48 +02:00
Burke Libbey
6e14cf0e62 itstool: fix double-shebang issue on macOS
(cherry picked from commit 9761d5ac9fa3016c4a6ff734f0d2e652a447c11c)
2020-04-05 12:23:37 +02:00
Armin1402
92e20dc020 nexus: 3.20.1-01 -> 3.22.0-02
(cherry picked from commit e10b507ec0)
See
https://help.sonatype.com/repomanager3/release-notes/2020-release-notes
for security fixes details.
2020-04-05 02:23:54 +02:00
Pascal Bach
7c9e1ecdf5 nixos/nextcloud: prevent warning about missing X-Frame-Option
(cherry picked from commit 119a7aae50)
2020-04-05 01:39:07 +02:00
R. RyanTM
1e19a82577 apacheHttpd: 2.4.41 -> 2.4.43
(cherry picked from commit f26b2afb93)
2020-04-04 19:29:52 -04:00
Samuel Dionne-Riel
17af97f997 Merge pull request #84248 from andir/20.03/firefox
[20.03] update firefox to latests stable (secure) release
2020-04-04 18:08:00 -04:00
Tony Olagbaiye
01ac831e03 emacsPackages.lua-mode: Fix hash
for the third time...

(cherry picked from commit df594f1e45)
2020-04-04 23:12:38 +02:00
Maximilian Bosch
1d13409cb7 mautrix-telegram: 0.7.1 -> 0.7.2
https://github.com/tulir/mautrix-telegram/releases/tag/v0.7.2
(cherry picked from commit 1c54edcf8d)
2020-04-04 22:36:47 +02:00
Constantine Glen Evans
5de67dfd72 libunique: add darwin
libunique builds, and dependencies appear to build and run correctly,
in OS X.

(cherry picked from commit 45c9ad32fd)
2020-04-04 20:54:13 +02:00
Dmitry Kalinkin
feacec6a87 higan: fix darwin build
(cherry picked from commit 4c931a8217)
2020-04-04 20:53:23 +02:00
Dmitry Kalinkin
8876e5edb8 mame: add darwin support
(cherry picked from commit 39921bd43b)
2020-04-04 20:53:22 +02:00
Mario Rodas
06fe4b2528 lepton: enable on darwin
(cherry picked from commit 310b108efa)
2020-04-04 20:42:53 +02:00
Marek Mahut
b460ece5d6 cloudflare-wrangler: adding dependencies for darwin
(cherry picked from commit 6274ce11a1)
2020-04-04 20:42:48 +02:00
Nikolay Korotkiy
3c39e188d8 goldendict: enable on darwin
(cherry picked from commit 217b221eab)
2020-04-04 20:36:58 +02:00
Nikolay Korotkiy
ee4164e1da osm2pgsql: enable on darwin
(cherry picked from commit d6f5459da9)
2020-04-04 20:34:50 +02:00
rnhmjoj
ef955ecb1e riot-desktop: add gsettings schemas to the wrapper
(cherry picked from commit 1af6a1a134)
This fixes a crash when opening the file picker.
2020-04-04 20:24:54 +02:00
Eelco Dolstra
7d80362d6c kscreen: Fix #82141
https://bugs.kde.org/show_bug.cgi?id=417316
(cherry picked from commit 18539b1041)
2020-04-04 20:10:20 +02:00
Benjamin Hipple
3cd943704e Merge pull request #84224 from drewrisinger/dr-pr-backport-20.03-84223
[20.03]: python38Packages.uvloop: enable build
2020-04-04 13:45:28 -04:00
Drew Risinger
6118f04200 python3Packages.uvloop: enable on python3.8
Allow build pass by disabling test. Isolated issue to
test_sockets.py::TestAIOSockets::test_sock_close_add_reader_race.
This test is supposed to be skipped, but it isn't for some reason,
so we disable it instead.
See uvloop#284 (https://github.com/MagicStack/uvloop/pull/284)
for full details. Don't know why this test isn't properly skipped.

(cherry picked from commit 364909d535)
2020-04-04 13:18:29 -04:00
Maximilian Bosch
564d9c03b3 cargo-make: 0.30.1 -> 0.30.2
https://github.com/sagiegurari/cargo-make/releases/tag/0.30.2
(cherry picked from commit 268f71cfd7)
2020-04-04 15:57:08 +02:00
Andreas Rammhold
30e54a0680 firefox-devedition-bin: 73.0b3 -> 75.0b12 2020-04-04 13:19:06 +02:00
Andreas Rammhold
22f3fc175e firefox-beta-bin: 73.0.b3 -> 75.0b11 2020-04-04 13:19:06 +02:00
Andreas Rammhold
4fccf16c2b firefox-bin: 74.0 -> 74.0.1 2020-04-04 13:19:06 +02:00
Andreas Rammhold
d44c85f518 firefox-esr: 68.6.0esr -> 68.6.1esr 2020-04-04 13:19:06 +02:00
Andreas Rammhold
5e9c65ae18 firefox: 73.0.1 -> 74.0.1 2020-04-04 13:18:59 +02:00
Andreas Rammhold
5fd70607c7 sqlite_3_31_1: init at 3.31.1
This is a backport to support building stable firefox version on the
stable release channel. Firefox has some very strict requirements on
it's dependencies. Since we do not want to use bundled versions of
dependencies this backport is required fore Firefox >=74.
2020-04-04 13:18:58 +02:00
Andreas Rammhold
c3a43d94ff nss_3_51: init at 3.51
This is a backport to support building stable firefox version on the
stable release channel. Firefox has some very strict requirements on
it's dependencies. Since we do not want to use bundled versions of
dependencies this backport is required fore Firefox >=74.
2020-04-04 13:18:58 +02:00
Andreas Rammhold
f9c866e5a4 firefox: update for version 74 2020-04-04 13:18:58 +02:00
Michael Weiss
8532dd179c Merge pull request #84094 from DieGoldeneEnte/llvm10-backport-20.03
[20.03] llvmPackages_10: init at 10.0.0
2020-04-04 12:34:20 +02:00
Benjamin Hipple
4dc8447c55 Merge pull request #84202 from mmilata/sympa-outgoing-20.03
[20.03] nixos/sympa: fix outgoing emails, update package version
2020-04-03 21:43:14 -04:00
Justin Humm
eeeb2bf803 nixos/release-notes: mention that dhcpcd stopped giving IPv4 addresses to bridges by default
This is an backward incompatible change from upstream dhcpcd [0], as
this could have easily locked me out of my box.

As dhcpcd doesn't allow to use only a blacklist (denyinterfaces in
dhcpcd.conf) of devices and use all remaining devices, while explicitly
allowing some interfaces like bridges, I think the best option would be
to not change anything about it and just educate the users here about
that edge case and how to solve it.

[0] https://roy.marples.name/archives/dhcpcd-discuss/0002621.html
2020-04-04 01:44:46 +02:00
Florian Klink
e46f456d79 Merge pull request #83601 from andir/20.03-buildRustCrate-fixes
[20.03] buildRustCrate fixes backports
2020-04-04 01:43:32 +02:00
Benjamin Hipple
aa3c504e20 Merge pull request #84184 from romildo/upd.freeoffice
[20.03] freeoffice: 973 -> 976
2020-04-03 19:21:33 -04:00
Benjamin Hipple
e8610d7a41 Merge pull request #84216 from drewrisinger/dr-pr-backport-20.03-84197
[20.03] python3Packages.pint: 0.9 -> 0.11
2020-04-03 19:21:18 -04:00
Drew Risinger
a1d1b7a227 datasette: 0.35 -> 0.39
(cherry picked from commit fb252907f5)
2020-04-03 18:12:01 -04:00
Drew Risinger
029276f654 pythonPackages.pint: 0.9 -> 0.11
(cherry picked from commit 4b822bbd23)
2020-04-03 18:11:49 -04:00
Bastian Köcher
ef33b9fc08 nixos/wg-quick: Fix after wireguard got upstreamed
(cherry picked from commit 644d643d68)
2020-04-03 23:01:38 +02:00
Lengyel Balazs
8224137bba fix wireguard service as well after it got upstreamed.
(cherry picked from commit 50fb52d4e1)
2020-04-03 23:01:37 +02:00
Daiderd Jordan
1c32029731 Merge pull request #80890 from LnL7/darwin-ldflags
darwin: fix NIX_LDFLAGS usages
2020-04-03 22:53:19 +02:00
Mario Rodas
f94171437b bazel: fix linker flags for darwin
(cherry picked from commit d1ee615f1c)
2020-04-03 22:27:18 +02:00
Jason Felice
66932665d5 plan9port: fix linker flags for macosx
(cherry picked from commit 4d2a8257ed)
(cherry picked from commit 7724ef793a)
2020-04-03 22:27:14 +02:00
Rohan Hart
449c060d12 lutris: custom wine installations require libkrb5
fixes the error: symbol k5_os_mutex_destroy version krb5support_0_MIT not defined in file libkrb5support.so.0

(cherry picked from commit 41fe7dbedf)
2020-04-03 13:06:44 -07:00
Maximilian Bosch
995229d130 grocy: 2.6.1 -> 2.6.2
https://github.com/grocy/grocy/releases/tag/v2.6.2
(cherry picked from commit 1d7a795fcd)
2020-04-03 21:59:31 +02:00
Frederik Rietdijk
e79a142e58 Merge release-20.03 into staging-20.03 2020-04-03 21:55:55 +02:00
Maximilian Bosch
0abd4fd0c3 Merge pull request #83628 from Ma27/mongodb-20.03
[20.03] mongodb: update
2020-04-03 21:48:55 +02:00
Martin Milata
5edcadc735 nixos/sympa: fix outgoing messaging
Because ProtectKernelModules implies NoNewPrivileges, postfix's sendmail
executable, which is setgid, wasn't able to send mail.

(cherry picked from commit fdc36e2c89)
2020-04-03 20:14:23 +02:00
Martin Milata
b95cf62bd0 sympa: build with --enable-fhs
Update module accordingly.

(cherry picked from commit 8f632b404f)
2020-04-03 20:14:22 +02:00
Martin Milata
769a5ccbaf sympa: 6.2.52 -> 6.2.54
(cherry picked from commit adc7388930)
2020-04-03 20:14:22 +02:00
Florian Klink
e89b1063fb Merge pull request #84164 from Izorkin/mariadb-tokudb-20.03
[20.03] mariadb: backport updates
2020-04-03 15:52:26 +02:00
Izorkin
c0c04ea70d mariadb: fix deps build
(cherry picked from commit 5abc729dd6)
2020-04-03 14:47:17 +02:00
Izorkin
6254058ddc mariadb: add zstd compression
(cherry picked from commit 24357432cd)
2020-04-03 14:47:17 +02:00
Izorkin
bf942675cb mariadb: add option to build server without rocksdb storage
(cherry picked from commit eafdfc8f51)
2020-04-03 14:47:17 +02:00
Izorkin
a05099d277 mariadb: add option to build server without tokudb storage
(cherry picked from commit 0296e678cf)
2020-04-03 14:47:17 +02:00
Florian Klink
a9d0d059a0 mariadb: remove withoutClient
When used as a global override, it breaks most of the options in the
mysql module, such as ensureDatabases, ensureUsers, initialDatabases,
initialScript.

We could use `.client` there, but if the reasoning behind this was
closure size reduction, we now end up with the same (or a bigger)
runtime closure and more complexity.

Apart from the options exposed by the mysql module, the client is also
likely to be required for local backups or DBA tasks anyways.

Instead of dealing with all the increased complexity of this for no
arguable benefit, let's just remove the `withoutClient` argument.
Storage space on mysql servers shouldn't be that much of an issue.

Closes #82428.

(cherry picked from commit 4b8d66aa72)
2020-04-03 14:47:17 +02:00
Izorkin
95c2e022cf mariadb: add needed packages
(cherry picked from commit 982a23de94)
2020-04-03 14:47:12 +02:00
Izorkin
988bb1f365 mariadb: build server with NUMA
(cherry picked from commit c6d159d696)
2020-04-03 14:47:01 +02:00
Eelco Dolstra
b255cd7f7f Don't pin 'nixpkgs' in the system registry by default
Nixpkgs takes up a lot of disk space so we shouldn't do this by
default.

(cherry picked from commit 469f14ef0f)
2020-04-03 14:42:29 +02:00
Dennis Gosnell
c778e137bd Merge pull request #84181 from schmittlauch/fixHoogleStable
[backport] haskell shellFor: Fix hoogle
2020-04-03 21:20:15 +09:00
José Romildo Malaquias
26df648c5f freeoffice: 974 -> 976
Cherry picked from PR #83495

(cherry picked from commit 55b6146535)
2020-04-03 08:59:23 -03:00
Daniël de Kok
a1d49d6c69 freeoffice: 973 -> 974
Cherry picked from PR #82038

Changelog:

https://www.freeoffice.com/en/download/servicepacks
(cherry picked from commit 44085e3501)
2020-04-03 08:56:53 -03:00
Eelco Dolstra
cf0855c899 nix-daemon.nix: Add option nix.registry
This allows you to specify the system-wide flake registry. One use is
to pin 'nixpkgs' to the Nixpkgs version used to build the system:

  nix.registry.nixpkgs.flake = nixpkgs;

where 'nixpkgs' is a flake input. This ensures that commands like

  $ nix run nixpkgs#hello

pull in a minimum of additional store paths.

You can also use this to redirect flakes, e.g.

  nix.registry.nixpkgs.to = {
    type = "github";
    owner = "my-org";
    repo = "my-nixpkgs";
  };

(cherry picked from commit 74e7ef35fe)
2020-04-03 13:48:03 +02:00
John Ericson
c565d7cc16 haskell shellFor: Fix hoogle
(cherry picked from commit 1c07ee7925)
2020-04-03 13:38:27 +02:00
Michael Weiss
2e3190538b chromium: 80.0.3987.162 -> 80.0.3987.163
https://chromereleases.googleblog.com/2020/04/stable-channel-update-for-desktop.html

Note: This update contains only two fixes [0]. The fix that reverts a
feature which caused a crash spike on 80.0.3987.162 [1] seems important
for us (though the commit doesn't provide any data on the crash spike).

[0]: https://chromium.googlesource.com/chromium/src/+log/80.0.3987.162..80.0.3987.163?pretty=fuller
[1]: fc11c43603

(cherry picked from commit cbd13f3c55)
Backport of #84174.
2020-04-03 11:22:10 +02:00
Eelco Dolstra
5bf91db519 packagekit: Don't depend on nix unless enableNixBackend = true
(cherry picked from commit 9737f24919)
2020-04-02 22:16:52 +02:00
Florian Klink
3b3831957f go_1_14: 1.14 -> 1.14.1
This contains at least https://github.com/golang/go/issues/37807, which
currently causes some of our go binaries to just fail when booted with
older kernels.

See https://github.com/golang/go/issues/37436 for context.

(cherry picked from commit da2146ddeb)
2020-04-02 20:39:07 +01:00
Maximilian Bosch
50bfd35a05 matrix-synapse: 1.12.0 -> 1.12.1
https://github.com/matrix-org/synapse/releases/tag/v1.12.1
(cherry picked from commit 83c59cb9b6)
2020-04-02 21:13:57 +02:00
Tim Steinbach
8bbceb7c00 linux: 4.9.217 -> 4.9.218 2020-04-02 14:06:15 -04:00
Tim Steinbach
306226b378 linux: 4.4.217 -> 4.4.218 2020-04-02 14:06:15 -04:00
Tim Steinbach
1c38dc5df0 linux: 4.14.174 -> 4.14.175 2020-04-02 14:06:15 -04:00
volth
c8baff29a4 scallion: use openssl 1.0
it does not work with openssl 1.1 (upstream issue https://github.com/lachesis/scallion/issues/113)

(cherry picked from commit 8195e7eb93)
2020-04-02 16:37:07 +01:00
Dmitry Kalinkin
c8d2553996 texlive.combine: set TEXMFCNF in binary wrapper
This helps kpathsea to find texmf.cnf in some cases. For example,
dvipng was trying to look for it in
/nix/store/<hash>-texlive-dvipng.bin-2019/ instead of
/nix/store/<hash>-texlive-combined-full-2019/.

(cherry picked from commit 91c9f2ab5c)
cc #83816
2020-04-02 11:28:55 -04:00
Silvan Mosberger
e071ed1dc2 Merge pull request #84114 from mmilata/moinmoin-b42-20.03
nixos/moinmoin: fix maintainer reference
2020-04-02 17:11:01 +02:00
Martin Milata
866017f7eb nixos/moinmoin: fix maintainer reference
(cherry picked from commit f35d65850e)
2020-04-02 17:07:40 +02:00
Tim Steinbach
c9f15e246e linux: 5.5.14 -> 5.5.15 2020-04-02 10:26:16 -04:00
Tim Steinbach
d4cd5a8b45 linux: 5.4.29 -> 5.4.30 2020-04-02 10:26:16 -04:00
Tim Steinbach
fea9f4e002 linux: 4.19.113 -> 4.19.114 2020-04-02 10:26:16 -04:00
Michael Weiss
69975012f6 chromiumDev: Remove a patch that is already applied
This fixes the patch phase.
I missed this problem in #83956.

(cherry picked from commit 36c7123709)
2020-04-02 15:35:17 +02:00
Michael Weiss
bb34ef369e chromium: 80.0.3987.149 -> 80.0.3987.162
https://chromereleases.googleblog.com/2020/03/stable-channel-update-for-desktop_31.html

This update includes 8 security fixes.

CVEs:
CVE-2020-6450 CVE-2020-6451 CVE-2020-6452

(cherry picked from commit 6b7528c940)
2020-04-02 15:35:17 +02:00
Artemis Tosini
b36c9faf0f chromium: Add option to enable ozone (for Wayland)
(cherry picked from commit b3e1a1bbbb)
2020-04-02 15:34:59 +02:00
Peter Simons
e7c0dc6c8b chromium: I accidentally added the webrtc patch into the wrong section
(cherry picked from commit b3c2908825)
2020-04-02 15:34:28 +02:00
Peter Simons
5c8fdaacaf chromium: fix webrtc interaction with pulseaudio
The webrtc code suffered from a race condition when used
with Pulseaudio. This lead to audio input breaking every
couple of minutes during a webrtc session.

(cherry picked from commit 81b18c3711)
2020-04-02 15:34:08 +02:00
Jörg Thalheim
e3cf1bd817 Merge pull request #82350 from Mic92/haproxy
[backport-20.03] nixos/haproxy: Revive the haproxy user and group
2020-04-02 13:40:08 +01:00
Vladimír Čunát
0e5ef8c470 openssl: 1.1.1d -> 1.1.1f
https://github.com/pyca/pyopenssl/issues/899#issuecomment-607709065
The tests in python3.pkgs.pyopenssl succeed! (re-checked on 20.03)
Fixing this problem we experienced is listed as the only major change:
https://www.openssl.org/news/openssl-1.1.1-notes.html

(cherry picked from commit 6c8692feb4)
2020-04-02 11:54:49 +02:00
Gabor Greif
28239c7ca5 llvmPackages_10: init at 10.0.0
Backport of llvmPackages_10 since Chromium 83 will depend on it.
See https://github.com/NixOS/nixpkgs/pull/83350#issuecomment-605994185

llvmPackages_10: copy llvmPackages_9

* starting with rc2
* make `lldb` compilable again on Darwin
* separate out manpage creation for `lldb` into a new derivation
* minor tweaks to the patching of sources,
  some of which are backportable to earlier versions

(cherry picked from commit f111c6f9ce)

llvmPackages_10: rc2 -> rc3

http://lists.llvm.org/pipermail/llvm-dev/2020-March/139729.html

Additionally cherry-picked 3 commits from `llvm-project/master`:
- llvm/llvm-project@d21664c
- llvm/llvm-project@3a0f6e6
- llvm/llvm-project@87dac7d

such that clang can automatically pick up the polly plugin from the
`llvm-polly` build.

(cherry picked from commit 3a84353edb)

llvmPackages_10: rc3 -> rc4

Only needed to update hashes and the version.
Updated comment for extension handling patch

(cherry picked from commit 0ec3f4e26b)

llvmPackages_10: removed extra polly-build

There is no good reason to have separate builds for polly and no-polly
versions. wwwwwThe reason for the two versions was (as far as I can
tell) to defer rebuilds (see ed60483257).
Polly is now enabled by default.

(cherry picked from commit e9aa8770ea)

llvmPackges_10: rc4 -> rc5

updated versino and hashes for new rc

(cherry picked from commit cdee144dfc)

llvmPackages_10: rc5 -> release

updated hashes and url
updated comment regarding version/release_version to make it clearer

(cherry picked from commit 4665b2a9a2)
2020-04-02 11:42:16 +02:00
Danylo Hlynskyi
1bdc619f4b postgresql-wal-receiver: fix test for Pg12 (#80268)
Fixes https://github.com/NixOS/nixpkgs/issues/80060

(cherry picked from commit 56c4800e7f)
2020-04-02 12:25:56 +03:00
Vladimír Čunát
0d5664aa8f Merge branch 'release-20.03' into staging-20.03 2020-04-02 10:09:44 +02:00
Vladimír Čunát
5e24f4b3b3 openssl(_1_1): patch CVE-2019-1551
fetchpatch can't be used here and fetchurl from GitHub
like in PR #82928 has the risk of breaking the hash later;
fortunately the patches aren't too large.

(cherry picked from commit 2071e3be28)
2020-04-02 09:58:38 +02:00
Benjamin Hipple
c922cdefa8 Merge pull request #84002 from bhipple/bp/hobbes
[20.03] hobbes: init at 2020-03-10
2020-04-01 23:47:00 -04:00
John Ericson
7c56c5fe6b Merge pull request #84031 from obsidiansystems/consistent-bazel-ref
bazel-*: Consistently self reference
2020-04-01 19:34:52 -04:00
Jan Tojnar
9412ae37b0 Revert "make-options-doc: fix string context issues"
This reverts commit 3c15d578d4.

See https://github.com/NixOS/nixpkgs/issues/83863

(cherry picked from commit cab6b019b1)
2020-04-02 01:33:19 +02:00
Jonathan Ringer
98c6f66507 Revert "nixos/geoclue2: set location.provider to geoclue2"
This reverts commit f8a78afd5c.

(cherry picked from commit 3459038852)
2020-04-02 00:57:25 +02:00
Maximilian Bosch
137d76902b gitea: 1.11.3 -> 1.11.4
https://github.com/go-gitea/gitea/releases/tag/v1.11.4
(cherry picked from commit 38f4e7c6ea)
2020-04-01 23:24:20 +02:00
Maximilian Bosch
e39c7b99c8 linuxPackages.wireguard: 0.0.20200318 -> 1.0.20200401
https://lists.zx2c4.com/pipermail/wireguard/2020-April/005237.html

Resolves #84009

(cherry picked from commit b503b2c75f)
2020-04-01 22:45:19 +02:00
zowoq
734b84c441 bubblewrap: 0.4.0 -> 0.4.1
https://github.com/containers/bubblewrap/releases/tag/v0.4.1
(cherry picked from commit d67539de8a)
2020-04-01 19:45:03 +02:00
Eelco Dolstra
21dbb69ee6 kdeApplications: 19.12.1 -> 19.12.3
(cherry picked from commit 24519c87e8)
2020-04-01 19:00:42 +02:00
Thomaz Leite
609bf4b674 hobbes: mark as broken on Darwin
(cherry picked from commit 2ac8f8faeb)
2020-04-01 12:35:03 -04:00
Thomaz Leite
538929bde7 hobbes: init at unstable-2020-03-10
(cherry picked from commit 704e60443a)
2020-04-01 12:34:55 -04:00
Thomaz Leite
b18e7d7dc5 maintainers: add thmzlt
(cherry picked from commit 063795f3f5)
2020-04-01 12:34:42 -04:00
Jörg Thalheim
32992a68cf Merge pull request #83991 from charles-dyfis-net/curaengine-fix-openmp-compat-backport20.03
[20.03] curaLulzbot: Fix build breakage around OpenMP compatibility
2020-04-01 16:51:42 +01:00
Charles Duffy
a7f8187f09 curaLulzbot: Fix build breakage around OpenMP compatibility
(cherry picked from commit 68d14b3756)
2020-04-01 10:34:05 -05:00
Maximilian Bosch
dffbac03fd riot-desktop: 1.5.14 -> 1.5.15
https://github.com/vector-im/riot-web/releases/tag/v1.5.15
(cherry picked from commit d7c0018c79)
2020-04-01 17:03:00 +02:00
Maximilian Bosch
a449185598 riot-web: 1.5.14 -> 1.5.15
https://github.com/vector-im/riot-web/releases/tag/v1.5.15
(cherry picked from commit 04a6f80ff4)
2020-04-01 17:03:00 +02:00
Tim Steinbach
19693ddc2e linux_latest-libre: 17387 -> 17402
(cherry picked from commit ef3f3f2728)
2020-04-01 10:59:49 -04:00
Daniel Șerbănescu
c978b1bc1b linux-libre: added --force flag for deblobbing.
(cherry picked from commit 8431497dd2)
2020-04-01 10:59:35 -04:00
Tim Steinbach
f12b9d4e35 linux_latest-libre: 17322 -> 17387
(cherry picked from commit f0d17c2a17)
2020-04-01 10:59:22 -04:00
Tim Steinbach
c4998a4198 linux: 5.5.13 -> 5.5.14 2020-04-01 10:58:12 -04:00
Tim Steinbach
d96290cdf8 linux: 5.4.28 -> 5.4.29 2020-04-01 10:58:12 -04:00
Tim Steinbach
465eb7e75b jenkins: 2.204.5 -> 2.222.1
(cherry picked from commit be792c92ec)
2020-04-01 10:58:00 -04:00
Tim Steinbach
9100c67b27 jenkins: 2.204.4 -> 2.204.5
(cherry picked from commit 16eb11b5d3)
2020-04-01 10:58:00 -04:00
Tim Steinbach
a085e5c5f5 jenkins: 2.204.3 -> 2.204.4
(cherry picked from commit 03003d433c)
2020-04-01 10:58:00 -04:00
Tim Steinbach
b832f28e26 jenkins: 2.204.2 -> 2.204.3
(cherry picked from commit 2cc00e2e8a)
2020-04-01 10:58:00 -04:00
Mario Rodas
7f82e22f70 ruby_2_7: 2.7.0 -> 2.7.1
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-7-1-released/
(cherry picked from commit a7f1e9f1ef)
2020-04-01 12:39:09 +00:00
Mario Rodas
8ea9745e8f ruby_2_6: 2.6.5 -> 2.6.6
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-6-6-released/
(cherry picked from commit b312ecf34e)
2020-04-01 12:39:07 +00:00
Mario Rodas
4556842a4e ruby_2_5: 2.5.7 -> 2.5.8
Changelog: https://www.ruby-lang.org/en/news/2020/03/31/ruby-2-5-8-released/
(cherry picked from commit 99b09d6b8f)
2020-04-01 12:39:06 +00:00
Mario Rodas
959a1a3e16 ruby: update RVM patchsets
(cherry picked from commit dd24a2f2a0)
2020-04-01 12:39:03 +00:00
worldofpeace
33c19df80d qgnomeplatform: hardcode gsettings schemas
Fixes #81866

(cherry picked from commit 0ea686647f)
2020-04-01 02:16:45 -04:00
worldofpeace
bbb647549e nixos/geoclue2: set location.provider to geoclue2
(cherry picked from commit 4859c19a162218bad41cd320d101a296e1460855)
2020-04-01 01:31:52 -04:00
worldofpeace
347e9b3d65 elementary-planner: 2.1.1 -> 2.2.14
(cherry picked from commit 35fcdb5191)
2020-04-01 01:09:09 -04:00
worldofpeace
35b289344b lollypop: 1.2.23 -> 1.2.32
(cherry picked from commit 9c43840d2de44691bb4e8a94d7b9b41901e09b31)
2020-04-01 00:24:58 -04:00
Benjamin Koch
2bdd1f3a8d nixos/nextcloud: avoid loading imagick extension more than once
This avoids the following error message:
  Module 'imagick' already loaded at Unknown#0

(cherry picked from commit db32158bbd)
2020-04-01 02:57:01 +02:00
Symphorien Gibol
f1fcd3040f nixos/tests/os-prober.nix: fix out of memory
(cherry picked from commit 6a2f64a542)
2020-04-01 01:04:18 +02:00
Symphorien Gibol
fe6052f24b vmTools.diskImageFuns.debian9i386: update source url
referenced packets were removed from the mirrors

Fixes #77396 #80041

(cherry picked from commit 671dc2a5ca)
2020-04-01 01:04:11 +02:00
danbst
5d671c7c3c doc/postgresql: apply xmlformat
(cherry picked from commit a723672c20)
2020-03-31 23:54:39 +02:00
danbst
0f5b21ef72 nixos/postgresql: add upgrade documentation
(cherry picked from commit 759fd9b0b0)
2020-03-31 23:54:29 +02:00
Maximilian Bosch
55b0101dff nixos/acme: don't depend on multi-user.target inside a container
On boot, a container doesn't have an uplink and would run into a timeout
while waiting for cert renewal[1].

[1] https://github.com/NixOS/nixpkgs/pull/81371#issuecomment-605526099

(cherry picked from commit 1a5289f803)
2020-03-31 19:15:47 +02:00
John Ericson
48e07b529f Merge pull request #83882 from jmillerpdt/bugfix/tensorflow-mkl
pythonPackages.tensorflow: fix for bazel settings for intel mkl, dnnl for 20.03
2020-03-31 12:51:35 -04:00
Benjamin Hipple
81c29c1be0 python27Packages.python-otr: mark as broken
See inline comment for details.

https://hydra.nixos.org/build/115510612

CC @NixOS/nixos-release-managers

ZHF: #80379
(cherry picked from commit c77bd38764)
2020-03-31 11:38:26 +01:00
Benjamin Hipple
e15c9281a5 python27Packages.application: 2.7.0 -> 2.8.0 and fix build
The build is currently broken due to failure to build `darcs` to fetch the src
package. The homepage is already their GitHub repo, and it appears to be the
active src of development anyways. See #83718

I came across this while debugging this failure:
https://hydra.nixos.org/build/115510612

Note that the `application` dependency *does* succeed on Hydra, because it's
already on local disk in Hydra's store, but I cannot rebuild locally because it
has prefer local builds.
https://hydra.nixos.org/build/115512559

This package is not reproducible on 20.03 or buildable outside of Hydra, so I
intend to backport the fix.

CC @NixOS/nixos-release-managers

ZHF: #80379
(cherry picked from commit 2c5fe63fbe)
2020-03-31 11:38:24 +01:00
rnhmjoj
75d9ade69e nix-script: 2015-09-22 -> 2020-03-23
(cherry picked from commit 8ef9611645)
2020-03-31 11:40:11 +02:00
R. RyanTM
509bdef90c pirate-get: 0.3.4 -> 0.3.5
(cherry picked from commit 365eb878a9)
This update contains an important fix.
2020-03-31 11:37:51 +02:00
Nick Hu
f2417ef677 zotero: make wrapGAppsHook work
(cherry picked from commit 4665e31ffd)
cc #83806
2020-03-30 22:37:17 -04:00
zowoq
b57eabee9f flatpak: 1.6.2 -> 1.6.3
https://github.com/flatpak/flatpak/releases/tag/1.6.3
(cherry picked from commit 72aceab6ef)
2020-03-31 02:15:34 +02:00
Maximilian Bosch
5a6e4ee2dd Merge pull request #83715 from tokudan/20.03/nextcloud1803
[20.03] nextcloud: 18.0.2 -> 18.0.3
2020-03-31 01:48:12 +02:00
Maximilian Bosch
76312413cb riot-desktop: 1.5.13 -> 1.5.14
https://github.com/vector-im/riot-web/releases/tag/v1.5.14
(cherry picked from commit 574ebdfa848efaf29bf28734eea4519ddb3a4c0e)
2020-03-31 00:09:37 +02:00
Maximilian Bosch
bb7abdfb88 riot-web: 1.5.13 -> 1.5.14
https://github.com/vector-im/riot-web/releases/tag/v1.5.14
(cherry picked from commit 740dcea640c49778dd7c6246731c6632ab5bb270)
2020-03-31 00:09:37 +02:00
John Ericson
2ca3f24f21 Merge branch 'add-tensorflow-2' into release-20.03 2020-03-30 20:35:31 +00:00
John Ericson
f2c8b07e36 tensorflow_2: Mark as broken for now
The other bits are good and worth keeping, however.
2020-03-30 20:34:05 +00:00
John Ericson
6ca72b60f2 Merge remote-tracking branch 'upstream/release-20.03' into add-tensorflow-2 2020-03-30 17:47:59 +00:00
Benjamin Hipple
08bd717049 Merge pull request #83774 from drewrisinger/release-20.03
[20.03] pythonPackages.scikit-build: fix python3.8 bug
2020-03-30 13:32:06 -04:00
adisbladis
90529eee7f pulseaudio: Enable bluetooth support by default
It only increases the closure size by 0.5M and users who do not set
the NixOS option `hardware.pulseaudio.package = pkgs.pulseaudioFull;`
will be stumped by their bluetooth audio not working.

(cherry picked from commit e41f3d9ef3)
2020-03-30 15:35:52 +01:00
Robin Gloster
bec49f93cc libvirt: fix escapeShellArg usage
Co-Authored-By: conferno <conferno@camfex.cz>
(cherry picked from commit b80edca6be)
2020-03-30 15:19:56 +02:00
Izorkin
91dd0647b6 libvirt: 5.4.0 -> 5.9.0
(cherry picked from commit 9336b15a88)
2020-03-30 15:19:36 +02:00
volth
8ad32ccee2 perlPackages.SysVirt: use upstream tag
(cherry picked from commit ddbac2e185)
2020-03-30 15:19:36 +02:00
volth
1affb42569 nixos/scripted-networking: fix bridge setup when libvirtd uses socket activation
(cherry picked from commit 687aa06c70)
2020-03-30 15:19:35 +02:00
volth
d0ab24e4fa libvirt: 6.0.0 -> 6.1.0, fix module
(cherry picked from commit d8664c78b1)
2020-03-30 15:19:35 +02:00
wedens
3388701ad8 libvirt: 5.4.0 -> 6.0.0
(cherry picked from commit 24c8d75874)
2020-03-30 15:19:35 +02:00
Drew Risinger
53264c9e35 pythonPackages.scikit-build: fix python3.8 bug
Python3.8 removes ``platform.linux_distribution()`` call,
must use ``pythonPackages.distro`` to get same information.
Closes #83305
Upstream PR: https://www.github.com/scikit-build/scikit-build/pull/458
Also formatting.

(cherry picked from commit c8dd834189)
2020-03-30 08:56:59 -04:00
Michele Guerini Rocco
8137763956 Merge pull request #83726 from davidak/backport
[20.03] Backport small doc improvements
2020-03-30 11:16:55 +02:00
Daniël de Kok
42001e5613 skypeforlinux: support app indicator
In contrast to e.g. Telegram or Slack, Skype does not show an app
indicator in the GNOME tray. This is quite annoying, since Skype will
continue to run in the background when its main window is closed, but
there is no way to access it.

This change adds libappindicator-gtk3 to the rpath to enable app
indicator support.
2020-03-30 09:52:01 +01:00
Vincent Laporte
0c666693d5 ocamlPackages.batteries: 2.11.0 → 3.0.0
(cherry picked from commit 86d1378d3e)
2020-03-30 10:06:24 +02:00
Joachim Breitner
ef0d4659da ghc-8.4.4.nix: Do not use git.haskell.org
which was deprecated in 2018 and is now gone for good. I guess many
won’t notice because the nix-cache kept the files around?

(cherry picked from commit
b872b8a200 and 29ca177c68)
2020-03-30 10:02:24 +02:00
Michael Lingelbach
5187b4105e opencv4: Enable nvidia-optical-flow-sdk when building with cuda
(cherry picked from commit dc1a15e7bd)
2020-03-30 02:37:13 -04:00
Michael Lingelbach
5c4ed65ad7 nvidia-optical-flow-sdk: init at 79c6cee80a2df9a196f20afd6b598a9810964c32
(cherry picked from commit 41b012907d)
2020-03-30 02:37:13 -04:00
Benjamin Hipple
bdaa840230 Merge pull request #81647 from acairncross/monosat-py38-backport
[20.03] python3Packages.monosat: Fix Python 3.8 build
2020-03-29 23:36:46 -04:00
davidak
9f99a89ee1 nixos/phpfpm: add example to socket
(cherry picked from commit c7e4c3b5a3)
2020-03-30 01:28:13 +02:00
davidak
680d4ceaa2 Doc: Fix typo
(cherry picked from commit dc434b0704)
2020-03-30 01:27:33 +02:00
Daniel Frank
a7ee0ab412 nextcloud: 18.0.2 -> 18.0.3
(cherry picked from commit 2496942c7a)
2020-03-29 23:59:48 +02:00
Antoine Eiche
4b5e5fce5a nixos/nextcloud: add bcmap, mp4 and webm in nginx configuration
This is used by the `firstrunwizard` and has been added in the nginx
configuration documentation of the latest
manual (cda627b7c8/admin_manual/installation/nginx.rst).

(cherry picked from commit 24ee2e8dc0)
2020-03-29 22:08:39 +02:00
Eelco Dolstra
2f0590907c make-tarball.nix: Strip source directory from packages.json
https://github.com/NixOS/nixos-homepage/issues/372
(cherry picked from commit 4e554ad1bc)
2020-03-29 20:04:33 +02:00
José Romildo Malaquias
098a0182a0 xfce.xfce4-whiskermenu-plugin: 2.3.3 -> 2.4.3
(cherry picked from commit 459a94ffa7)
2020-03-29 13:08:33 -04:00
José Romildo Malaquias
e8c651defd xfce.xfce4-hardware-monitor-plugin: fix url (unmaintained)
(cherry picked from commit 0dc23eaf61)
2020-03-29 13:08:33 -04:00
José Romildo Malaquias
83b7dde861 nixos.xfce: set desktopNames
(cherry picked from commit e9d707cf8e)
2020-03-29 12:58:45 -04:00
José Romildo Malaquias
9108778523 nixos.display-managers: use new attribute for desktop names
(cherry picked from commit fb47c6fbac)
2020-03-29 12:58:45 -04:00
Benjamin Hipple
87d71b46d2 Merge pull request #83682 from xfix/ftputil-zhf
[20.03] pythonPackages.ftputil: fix build
2020-03-29 12:01:42 -04:00
Konrad Borowski
ce667d569b pythonPackages.ftputil: fix build
Some tests assume execution before 2020.

(cherry picked from commit cfb435732a)
2020-03-29 15:07:58 +02:00
Jeff Labonte
2d0d227b23 brave: 1.5.112 -> 1.5.115
Update the checkum and the version

(cherry picked from commit fa5fc4993e)
Reason: Browser must be kept up-to-date
2020-03-29 14:08:13 +02:00
Peter Kolloch
040f611609 buildRustCrate: Add tests for checking files in outputs.
...and remove superfluous dependency files (*.d).
...and copy dSYM directories on Mac OS when in release=false mode.

(cherry picked from commit 782b304dba)
2020-03-29 13:03:28 +02:00
Andreas Rammhold
32cbd89e22 buildRustCrateTests: Fix link order test on darwin
As it turns out Darwin does most of the things differently then "normal"
systems. They are using a different shared library extension and require
an obscure commandline parameter that has to be added to every build
system out there. That issue seems to be with clang on Darwin as on
Linux that flag isn't required to build the very same tests (when using
clang).

After adjusting these two details the tests are running fine on the
darwin box that I was able to obtain.

(cherry picked from commit c8de31baa6)
2020-03-29 13:03:10 +02:00
Vincent Laporte
f7ffc4476d coqPackages.coqhammer: 1.1 → 1.1.1
(cherry picked from commit db5bde2342)
2020-03-29 11:03:07 +02:00
Vladimír Čunát
2ffa0a33f3 Merge #83013: exiv2: patch CVE-2019-20421
(cherry picked from commit 6d28c1893d)
2020-03-29 09:42:51 +02:00
Vincent Laporte
e41711cda2 coqPackages.paramcoq: 1.1.1 → 1.1.2
(cherry picked from commit 2773498fc0)
2020-03-29 07:49:09 +02:00
worldofpeace
4ebb91a1c8 Merge pull request #83564 from bhipple/bp/ntlm-auth
[20.03] pythonPackages.ntlm-auth: 1.0.3 -> 1.4.0 to fix build
2020-03-28 22:03:21 -04:00
Jan Tojnar
10e40a07ad hydra-unstable: Fix eval with allowAliases = false
* Catalyst::Plugin::Unicode::Encoding has been merged into Catalyst::Runtime
* Test::More is apparently part of Perl core modules since 5.6.2

(cherry picked from commit dc88e94ff1)
2020-03-29 03:03:52 +02:00
Maximilian Bosch
cd388a5c0e Merge pull request #82521 from Xe/libdap-hash-fix
development/libraries/libdap: fix hash
2020-03-29 01:30:21 +01:00
Maximilian Bosch
834fb02c9d nixos/tests/mongodb: also test mongodb-3_4
(cherry picked from commit 2c133fbb4b)
2020-03-29 01:12:16 +01:00
Maximilian Bosch
7e1b6e4a7b Merge pull request #83606 from scaredmushroom/tor-browser-bundle-bin_release-20.03
[20.03] tor-browser-bundle-bin: 9.0.6 -> 9.0.7
2020-03-29 01:11:20 +01:00
Benjamin Hipple
99a2ed5a55 pythonPackages.ntlm-auth: 1.0.3 -> 1.4.0 to fix build
On master and 20.03, this is failing to build on `python 3.8`.

https://hydra.nixos.org/build/115517329
https://hydra.nixos.org/build/114714922

CC @NixOS/nixos-release-managers
ZHF: #80379

Co-Authored-By: Niklas Hambüchen <mail@nh2.me>
(cherry picked from commit 97f09ff09f)
2020-03-28 20:10:18 -04:00
Benjamin Hipple
c8e2f6d337 Merge pull request #83631 from bhipple/bp/pywinrm
[20.03] pythonPackages.pywinrm: missing dependency
2020-03-28 20:09:50 -04:00
Kevin Amado
f21665a5dc pythonPackages.pywinrm: missing dependency
- Keberos is a dependency that you really want included in the pkg,
  this is also needed to run the test suite by default

(cherry picked from commit 36a1d1023a)
2020-03-28 19:35:22 -04:00
Maximilian Bosch
dabdd3a06d hydra: 2020-02-06 -> 2020-03-{24,27}
Upgrades Hydra to the latest master/flake branch. To perform this
upgrade, it's needed to do a non-trivial db-migration which provides a
massive performance-improvement[1].

The basic ideas behind multi-step upgrades of services between NixOS versions
have been gathered already[2]. For further context it's recommended to
read this first.

Basically, the following steps are needed:

* Upgrade to a non-breaking version of Hydra with the db-changes
  (columns are still nullable here). If `system.stateVersion` is set to
  something older than 20.03, the package will be selected
  automatically, otherwise `pkgs.hydra-migration` needs to be used.

* Run `hydra-backfill-ids` on the server.

* Deploy either `pkgs.hydra-unstable` (for Hydra master) or
  `pkgs.hydra-flakes` (for flakes-support) to activate the optimization.

The steps are also documented in the release-notes and in the module
using `warnings`.

`pkgs.hydra` has been removed as latest Hydra doesn't compile with
`pkgs.nixStable` and to ensure a graceful migration using the newly
introduced packages.

To verify the approach, a simple vm-test has been added which verifies
the migration steps.

[1] https://github.com/NixOS/hydra/pull/711
[2] https://github.com/NixOS/nixpkgs/pull/82353#issuecomment-598269471

(cherry picked from commit bd5324c4fc)
2020-03-29 00:26:15 +01:00
Fabian Möller
50de0ac554 mariadb-connector-c: add mysqlclient.pc pkgconfig symlink
(cherry picked from commit 349a991bfb)
2020-03-29 00:12:21 +01:00
worldofpeace
e1d8a61431 riot-desktop: fix StartupWMClass
It seems the quoting breaks it just like in da587daae5

(cherry picked from commit e50bb280cbf5339ed671b0a7208e6aba4002c713)
(cherry picked from commit f8ccef5edb)
2020-03-28 18:38:46 -04:00
Konrad Borowski
8f623faf2d nixos/tests/hibernate: disable for platforms other than x86_64
Due to 9pnet_virtio bugs, /nix is no longer available after
hibernation. It happens to work on x86_64, but not on other
platforms.

(cherry picked from commit d85fb28414)
2020-03-28 18:22:44 -04:00
worldofpeace
bde5b846f7 Merge pull request #83593 from bhipple/bp/zetup
[20.03] python38Packages.zetup: fix build
2020-03-28 18:15:41 -04:00
Maximilian Bosch
cd36c1d76e nixos/release-notes: mention that mongodb is unfree now
(cherry picked from commit 27121521b8)
2020-03-28 21:29:01 +01:00
Maximilian Bosch
7cf4906ab9 nixos/release-notes: mention mongodb update
(cherry picked from commit b65ff5d455)
2020-03-28 21:29:00 +01:00
Maximilian Bosch
07fb01965e nixos/tests/mongodb: rewrite with python
perl-based VM tests are deprecated.

(cherry picked from commit 2934f04641)
2020-03-28 21:29:00 +01:00
Maximilian Bosch
56bfb0d8ff mongodb: builds on aarch64 as well
(cherry picked from commit 80e6da7bd3)
2020-03-28 21:29:00 +01:00
Thibault Gagnaux
00d69b87a4 mongodb: 3.4.22 -> 3.4.24 & fix ssl
Reverts previous ssl fix commit and updates the mongodb version which fixes the ssl compile problem on darwin.

(cherry picked from commit c2eee6ecdb)
2020-03-28 21:29:00 +01:00
Nathan Smyth
ef9bd8e244 mongodb-4_0: 4.0.11 -> 4.0.12
(cherry picked from commit de69821b54)
2020-03-28 21:28:59 +01:00
Nathan Smyth
2cba56ec37 nixos/tests/mongodb: test against mongodb versions 3.4, 3.6, 4.0
Now has tests for 3.4, 3.6, 4.0. Has some duplication, but it appears to
work on my machine.

(cherry picked from commit 44641ed00b)
2020-03-28 21:28:59 +01:00
Nathan Smyth
83d71242f3 mongodb: 3.4.20 -> 3.4.22, 3.6.12 -> 3.6.13, 4.0.9 -> 4.0.11
(cherry picked from commit 165d8bda82)
2020-03-28 21:28:59 +01:00
Nathan Smyth
54d2944172 mongodb: split packages to expose 3.4, 3.6 and 4.0
(cherry picked from commit 97c4dff158)
2020-03-28 21:28:58 +01:00
Nathan Smyth
ac23e5039c mongodb: 3.4.10 -> 4.0.4
fix: Adding libtool to allow darwin compiles

Libtool seems to be required for mongodb to compile on darwin.

fix: Marking MongoDB as broken on aarch64

fix: Adding libtools to the pkg imports

Update mongodb to 4.0.4

(cherry picked from commit e9bec1adf6)
2020-03-28 21:28:58 +01:00
Maximilian Bosch
7a7952bce6 cargo-make: 0.30.0 -> 0.30.1
https://github.com/sagiegurari/cargo-make/releases/tag/0.30.1
(cherry picked from commit 5a7d2e18fe)
2020-03-28 19:08:50 +01:00
Michael Weiss
25d25cd0d2 Merge pull request #83562 from nh2/release-20.03-issue-41918-chromium-swiftshader-by-default
[20.03] chromium: Enable swiftshader by default
2020-03-28 17:15:11 +01:00
cap
b9e710cf98 tor-browser-bundle-bin: 9.0.6 -> 9.0.7 2020-03-28 17:02:16 +01:00
Symphorien Gibol
9408b0cf38 buildRustCrateTests: add regression test for link order
(cherry picked from commit 2f7fb1c497)
2020-03-28 16:08:45 +01:00
Symphorien Gibol
259787549a buildRustCrate: don't sort link flags
Linkage order is significant and sorting can result in link errors.

(cherry picked from commit d8b853799d)
2020-03-28 16:08:38 +01:00
Niklas Hambüchen
af8edbf7c7 Merge pull request #83596 from bhipple/bp/torch
[20.03] treewide: remove torch and related packages; add throw aliases
2020-03-28 16:08:05 +01:00
Alyssa Ross
eb7d4502e1 buildRustCrate: fewer backslashes
This is a slight readability boost, I think.

(cherry picked from commit 7533876312)
2020-03-28 16:07:19 +01:00
Daniël de Kok
fcb8dc70f3 buildRustCrate: sort linker options in-place
(cherry picked from commit 412c72d20f)
2020-03-28 16:07:12 +01:00
Daniël de Kok
ed3dc87160 buildRustCrate: only link build deps into build script
According to the Cargo documentation:

> The build script does not have access to the dependencies listed in
> the dependencies or dev-dependencies section (they’re not built
> yet!). Also, build dependencies are not available to the package
> itself unless also explicitly added in the [dependencies] table.

https://doc.rust-lang.org/cargo/reference/build-scripts.html

This change separates linkage of regular dependencies and build
dependencies.

(cherry picked from commit ea6e048c37)
2020-03-28 16:07:06 +01:00
Peter Kolloch
0965206200 build-support/rust/buildRustCrate: Search for matching Cargo.toml in sub directories
This is what cargo does for git repositories.

See related issues:

* https://github.com/kolloch/crate2nix/issues/53
* https://github.com/kolloch/crate2nix/issues/33

(cherry picked from commit 8a6638daa9)
2020-03-28 16:07:01 +01:00
Peter Kolloch
7d8d24efe7 buildRustCrate: refactor colored logging
* Make errors include the crate name and make them much more prominent.
* Move more code into lib.sh
* Already source generated logging code and lib.sh in configure

(cherry picked from commit 04e7462ee6)
2020-03-28 16:06:56 +01:00
Andreas Rammhold
be561c771c buildRustCrate: remove superfluous dependency overrides
By overriding each dependency on every level of the dependency tree we
are creating a lot of unnecessary instances of the same derivation

Looking at the output size of `nix-instantiate --trace-function-calls
-vvvv …` and the execution time I got about a 10x improvement after
applying this change.

It was probably good intentions that lead to these overrides but in
practice no tooling (that I know of) really needs this. `carnix` and
`crate2nix` are fine without those overrides. Furthermore I believe that
it is the job of the tooling around `buildRustCrate` to provide a
coherent set of overrides. By not enforcing all of the overrides, debug
flags, verbosity, … to be the same throughout the closure we also allow
consumers to override specific aspects of the crates. Some (older?)
crates might need different `crateOverrides` then newer crates with the
same name. Currently such situations can not (easily) be implemented
with the override in-place.

(cherry picked from commit be5597fc9d)
2020-03-28 16:06:49 +01:00
Andreas Rammhold
1febd68e84 buildRustCrate: remap the current build dir to / for (more) reproducible builds
(cherry picked from commit 56e11bc8df)
2020-03-28 16:06:29 +01:00
Benjamin Hipple
b88ff468e9 Merge pull request #83566 from mmilata/rt-build-fix-20.03
[20.03] rt: fix build error
2020-03-28 10:24:35 -04:00
Benjamin Hipple
4ea297d46d Merge pull request #83565 from mmilata/perl-crypt-ssleay-0.73_06-20.03
[20.03] perlPackages.CryptSSLeay: 0.72 -> 0.73_06
2020-03-28 10:21:50 -04:00
Benjamin Hipple
4a3f221d05 aliases.nix: add aliases for removed torch packages
We've removed the abandoned and broken torch project as part of https://github.com/NixOS/nixpkgs/issues/71888

This commit adds aliases for:

- https://github.com/NixOS/nixpkgs/pull/81173
- https://github.com/NixOS/nixpkgs/pull/83568

(cherry picked from commit a80ed9f72a)
2020-03-28 10:04:21 -04:00
Benjamin Hipple
8f246dbc1b treewide: remove torch and related packages
See #71888 for details.

(cherry picked from commit 698ec44e74)
2020-03-28 10:03:18 -04:00
Benjamin Hipple
e1381d0956 python38Packages.zetup: fix build
Currently fails to build on python 3.8 due to an overly restrictive version bound.

ZHF: #80379

CC @NixOS/nixos-release-managers

(cherry picked from commit a65e052e4c)
2020-03-28 09:41:58 -04:00
rnhmjoj
b0c285807d antimony: 2019-10-30 -> 2020-03-28
(cherry picked from commit 9c7c0e148c)

ZHF: #80379
Fix build.
2020-03-28 10:36:45 +01:00
Robin Gloster
8ad6e4edf1 Merge pull request #81045 from B4dM4n/backport-mariadb-pkgconfig-link
[20.03] mariadb-connector-c: add mysqlclient.pc pkgconfig symlink
2020-03-28 09:30:44 +00:00
ajs124
24b17c2a97 atlassian-confluence: 7.2.1 -> 7.3.4
(cherry picked from commit 5dbeb69154)
2020-03-28 10:29:32 +01:00
vasy
f1c1247b87 atlassian-jira: 8.7.1 -> 8.8.0 (#83218)
fix not starting service when jdk is jdk11

(cherry picked from commit 758f81df44)
2020-03-28 10:26:27 +01:00
R. RyanTM
d7d7a34508 atlassian-jira: 8.7.0 -> 8.7.1
(cherry picked from commit 26a31f8c62)
2020-03-28 10:26:27 +01:00
Antoine Eiche
d87fea74bd nixos/alertmanager: start after the network-online target
If the host network stack is slow to start, the alertmanager fails to
start with this error message:

    caller=main.go:256 msg="unable to initialize gossip mesh" err="create memberlist: Failed to get final advertise address: No private IP address found, and explicit IP not provided"

This bug can be reproduced by shutting down the network stack and
restarting the alertmanager.

Note I don't know why I didn't hit this issue with previous
alertmanager releases.

(cherry picked from commit 39621bb8de)
2020-03-28 09:30:49 +01:00
worldofpeace
cdf5eca5b5 Merge pull request #83567 from nh2/release-20.03-remove_lua_torch
[20.03] torchPackages, torch-repl: remove
2020-03-28 01:38:18 -04:00
worldofpeace
b8b0d0adb0 Merge pull request #83563 from bhipple/bp/rpcs3
[20.03] rpcs3: 0.0.6-8187-790962425 -> 0.0.8-9300-341fdf7eb
2020-03-28 01:28:23 -04:00
worldofpeace
22dba9fe07 Merge pull request #83557 from bhipple/bp/airflow
[20.03] python3Packages.apache-airflow: fix dependencies
2020-03-28 01:24:19 -04:00
worldofpeace
e2340b8075 Merge pull request #83574 from bhipple/bp/effect
[20.03] pythonPackages.effect: fix build by marking py3 only
2020-03-28 01:22:19 -04:00
Dennis Gosnell
adc01b589b Merge pull request #83572 from nh2/release-20.03-hspec-core-disable-tests
[20.03] haskellPackages.hspec-core: Disable tests on i686
2020-03-28 14:11:49 +09:00
John Ericson
592a34de3f Merge pull request #83533 from bhipple/bp/mkl
[20.03] mkl: 2019.5.281 -> 2020.0.166 (Linux only)
2020-03-27 23:47:20 -04:00
Benjamin Hipple
235ee73ee6 pythonPackages.effect: fix build by marking py3 only
Upstream only supports python >= 3.6:
https://github.com/python-effect/effect/#effect

CC @NixOS/nixos-release-managers

ZHF: #80379
(cherry picked from commit 3b7b98ce1e)
2020-03-27 23:15:44 -04:00
Niklas Hambüchen
1f6b1cbae4 haskellPackages.hspec-core: Disable tests on i686.
The tests have x86_64 results hardcoded, see
https://github.com/hspec/hspec/issues/431.

(cherry picked from commit 59e77d45b234162e2a6b804fe9c1462e6089afe8)
2020-03-28 04:06:20 +01:00
Matthieu Coudron
18c0784b89 torchPackages, torch-repl: remove
See https://github.com/NixOS/nixpkgs/issues/71888
and https://github.com/NixOS/nixpkgs/issues/56398

To sump up, development has moved on to other technologies than lua:
https://github.com/torch/torch7#development-status
and the current packages are broken anyway.

(cherry picked from commit 05b6836816)
2020-03-28 03:17:14 +01:00
Stig Palmquist
f33613906f perlPackages.CryptSSLeay: 0.72 -> 0.73_06
dependencies:
perlPackages.BytesRandomSecure: init at 0.29
perlPackages.CryptRandomSeed: init at 0.03
perlPackages.CryptRandomTESHA2: init at 0.01

(cherry picked from commit 3aade16ff3)
2020-03-28 03:02:29 +01:00
Stig Palmquist
fd6c92eb86 rt: fix build error
ZHF: #80379
https://hydra.nixos.org/build/113061284

Added requiredPerlModules as suggested for similar problem as described for
similar problem here:
https://github.com/NixOS/nixpkgs/issues/72783#issuecomment-549817011

(cherry picked from commit 3e50e26e7d)
2020-03-28 02:59:48 +01:00
aszlig
35fe837b62 nginx: Fix ETag patch to ignore realpath(3) error
While our ETag patch works pretty fine if it comes to serving data off
store paths, it unfortunately broke something that might be a bit more
common, namely when using regexes to extract path components of
location directives for example.

Recently, @devhell has reported a bug with a nginx location directive
like this:

  location ~^/\~([a-z0-9_]+)(/.*)?$" {
    alias /home/$1/public_html$2;
  }

While this might look harmless at first glance, it does however cause
issues with our ETag patch. The alias directive gets broken up by nginx
like this:

  *2 http script copy: "/home/"
  *2 http script capture: "foo"
  *2 http script copy: "/public_html/"
  *2 http script capture: "bar.txt"

In our patch however, we use realpath(3) to get the canonicalised path
from ngx_http_core_loc_conf_s.root, which returns the *configured* value
from the root or alias directive. So in the example above, realpath(3)
boils down to the following syscalls:

  lstat("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
  lstat("/home/$1", 0x7ffd08da6f60) = -1 ENOENT (No such file or directory)

During my review[1] of the initial patch, I didn't actually notice that
what we're doing here is returning NGX_ERROR if the realpath(3) call
fails, which in turn causes an HTTP 500 error.

Since our patch actually made the canonicalisation (and thus additional
syscalls) necessary, we really shouldn't introduce an additional error
so let's - at least for now - silently skip return value if realpath(3)
has failed.

However since we're using the unaltered root from the config we have
another issue, consider this root:

  /nix/store/...-abcde/$1

Calling realpath(3) on this path will fail (except if there's a file
called "$1" of course), so even this fix is not enough because it
results in the ETag not being set to the store path hash.

While this is very ugly and we should fix this very soon, it's not as
serious as getting HTTP 500 errors for serving static files.

I added a small NixOS VM test, which uses the example above as a
regression test.

It seems that my memory is failing these days, since apparently I *knew*
about this issue since digging for existing issues in nixpkgs, I found
this similar pull request which I even reviewed:

https://github.com/NixOS/nixpkgs/pull/66532

However, since the comments weren't addressed and the author hasn't
responded to the pull request, I decided to keep this very commit and do
a follow-up pull request.

[1]: https://github.com/NixOS/nixpkgs/pull/48337

Signed-off-by: aszlig <aszlig@nix.build>
Reported-by: @devhell
Acked-by: @7c6f434c
Acked-by: @yorickvP
Merges: https://github.com/NixOS/nixpkgs/pull/80671
Fixes: https://github.com/NixOS/nixpkgs/pull/66532
(cherry picked from commit e1d63ada02)
2020-03-28 02:59:35 +01:00
Christoph Neidahl
8e4c0dd26e rpcs3: 0.0.6-8187-790962425 -> 0.0.8-9300-341fdf7eb
(cherry picked from commit f028498f63)
2020-03-27 21:57:41 -04:00
Niklas Hambüchen
d59be297de chromium: Enable swiftshader by default.
This makes it possible to use chromium headless with WebGL
(e.g. for webdriver tests) without having to rebuild from source.

The upstram default is to enable, thus simply removing our disabling switch.

Also fixes #41918.

(cherry picked from commit 015bb28ae1)
2020-03-28 02:52:31 +01:00
worldofpeace
16d4f17a6f Merge pull request #83553 from bhipple/bp/gym
[20.03] python27Packages.gym: 0.15.4 -> 0.16.0 to fix build
2020-03-27 21:42:41 -04:00
worldofpeace
7780ba4eb9 Merge pull request #83558 from bhipple/bp/pounce
[20.03] pounce: 1.0p1 -> 1.1 to fix build
2020-03-27 21:41:32 -04:00
Alyssa Ross
34b75d1172 pounce: 1.0p1 -> 1.1
(cherry picked from commit 88e4258df4)
2020-03-27 21:24:03 -04:00
Jonathan Ringer
862c3c2d24 python3Packages.apache-airflow: fix dependencies
(cherry picked from commit b4b0bc9d38)
2020-03-27 21:16:09 -04:00
R. RyanTM
9bd852f026 python27Packages.gym: 0.15.4 -> 0.16.0
Fixes broken build by backporting https://github.com/NixOS/nixpkgs/pull/81577
and previous update.

CC @NixOS/nixos-release-managers

ZHF: #80379

(cherry picked from commit 908c6e8214a3933d43f55f5c4ae6df0572c34568)
2020-03-27 20:58:52 -04:00
worldofpeace
348880312e Merge pull request #83550 from bhipple/bp/ion
[20.03] ion: 1.0.5 -> unstable-2020-03-22
2020-03-27 20:30:28 -04:00
Benjamin Hipple
409e70d6c5 ion: 1.0.5 -> unstable-2020-03-22
The app is still maintained upstream, but they aren't cutting releases on
crates.io anymore:
https://crates.io/crates/ion-shell

This fixes the build with the latest Rust toolchain by upgrading to the current
commit off the project's `master`.

ZHF: #80379

(cherry picked from commit 16cdff0711)
2020-03-27 20:18:01 -04:00
adisbladis
d940214174 poetry2nix: 1.7.0 -> 1.7.1 2020-03-27 23:46:07 +00:00
adisbladis
176cb5cc87 poetry2nix: 1.6.1 -> 1.7.0 2020-03-27 22:53:38 +00:00
Roberto Di Remigio
d22cd2bccf mkl: 2019.5.281 -> 2020.0.166 (Linux only)
(cherry picked from commit 335e097352)
2020-03-27 17:39:02 -04:00
Benjamin Hipple
a6f3555ccb pythonPackages.distributed: remove bad check dependency on pytest-faulthandler
(cherry picked from commit acfe7e0dbc)
2020-03-27 14:10:00 -07:00
Benjamin Hipple
353494841b python2Packages.pytest-faulthandler: remove package
This has been upstreamed into pytest itself as of pytest 5.0, which we have:
https://github.com/pytest-dev/pytest-faulthandler

Since it should no longer be used, let's remove from nix.

(cherry picked from commit f5ffd143d6)
2020-03-27 14:10:00 -07:00
Benjamin Hipple
e158eccf9b python2Packages.faulthandler: 3.1 -> 3.2 and fix build
It is currently failing on master and 20.03. I spent some time reading the src
code but was not able to figure out why the env var activation is not working.
Since this is currently failing, and since it's dying alongside python 2 anyways
I propose we just disable the 1 failing test.

There's some more information inline in the comment if someone wants to fix this
or dig further.

(cherry picked from commit 643d10295d)
2020-03-27 14:10:00 -07:00
toonn
97d3d1ec7f wire-desktop: linux 3.15.2922 -> 3.16.2923
(cherry picked from commit 55ce589f18)
2020-03-27 19:23:10 +01:00
toonn
cf77a5fdc1 wire-desktop: linux 3.12.2916 -> 3.15.2922
(cherry picked from commit 39b39690fa)
2020-03-27 19:23:10 +01:00
toonn
7730ed9da4 wire-desktop: mac 3.12.3490 -> 3.15.3621
(cherry picked from commit 43f245d6d9)
2020-03-27 19:23:09 +01:00
Lancelot SIX
d0f67fb5ed qgis: 3.10.1 -> 3.10.4
(cherry picked from commit 8e8efc7ace)
2020-03-27 10:44:08 -07:00
Lancelot SIX
f735cce584 pythonPackages.pyproj: 2.2.2 -> 2.6.0
(cherry picked from commit 6cd915b21f)
2020-03-27 10:44:08 -07:00
Lancelot SIX
1b0b8ef9b1 proj: 6.1.1 -> 6.3.1
(cherry picked from commit 4f6fc6dc62)
2020-03-27 10:44:08 -07:00
adisbladis
e8d490f4c1 poetry: 1.0.3 -> 1.0.5 2020-03-27 14:56:09 +00:00
adisbladis
2037514ecb poetry2nix: Add hooks 2020-03-27 14:54:22 +00:00
adisbladis
713aa6d70d poetry2nix: 1.1.0 -> 1.6.1 2020-03-27 14:52:12 +00:00
Florian Klink
71f2773f8a gitlab: 12.8.7 -> 12.8.8
(cherry picked from commit 8ab04fd87b)
2020-03-27 13:41:16 +01:00
Lancelot SIX
85055b3ab7 ptyhon3Packages.django-compat: fix 2020-03-27 10:36:54 +01:00
Dmitry Kalinkin
5ffc821846 perlPackages.CPAN: fix patch download
Fixes: 153b0db9 ('perlPackages.CPAN: apply patch to fix changed YAML module default')
Closes: #81480
(cherry picked from commit fa73723305)
2020-03-27 04:06:47 -04:00
gnidorah
294445af03 vk-messenger: 4.5.2 -> 5.0.1
(cherry picked from commit c694fcfb3e)
cc #81127
2020-03-27 03:32:12 -04:00
Vincent Laporte
fdbefdc474 ocaml: 4.09.0 → 4.09.1
(cherry picked from commit 4a3edb4bd7)
2020-03-27 08:07:03 +01:00
Benjamin Hipple
834ad820cc Merge pull request #82515 from Xe/fix-b3sum
tools/security/b3sum: fix cargo hash
2020-03-26 21:04:07 -04:00
Maximilian Bosch
ea57fc5d63 iwd: 1.4 -> 1.6
(cherry picked from commit 0e69720f34)
2020-03-27 01:32:25 +01:00
Maximilian Bosch
68c3a4f23c ell: 0.27 -> 0.30
(cherry picked from commit 79cc0c7e9f)
2020-03-27 01:32:20 +01:00
Maximilian Bosch
c2db74f11a mautrix-whatsapp: 2020-02-09 -> 2020-03-26
(cherry picked from commit 5bfc1d5110)
2020-03-26 23:47:18 +01:00
Michael Weiss
c10c44a633 signal-desktop: 1.32.2 -> 1.32.3
(cherry picked from commit 38aa1cad7f)
2020-03-26 22:17:20 +01:00
worldofpeace
8d0010b08b networkmanager: 1.22.8 -> 1.22.10
(cherry picked from commit 4feb4cf707)
2020-03-26 13:39:55 -04:00
Domen Kožar
41875cf33e ghc: 8.10.0.20200123 -> 8.10.1
(cherry picked from commit 59c58f3360)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-26 17:54:27 +01:00
Jan Tojnar
f6ab55b31c mysql-workbench: 8.0.15 → 8.0.19
* https://dev.mysql.com/doc/relnotes/workbench/en/news-8-0-16.html
* https://dev.mysql.com/doc/relnotes/workbench/en/news-8-0-17.html
* https://dev.mysql.com/doc/relnotes/workbench/en/news-8-0-18.html
* https://dev.mysql.com/doc/relnotes/workbench/en/news-8-0-19.html

The release notes contain the following:

Important Note: MySQL Workbench 8.0.19 is unable to open a new connection to MySQL Server from the home screen if the server is not started and you cannot start a server by using the Workbench Administration feature. Administrative and SQL editing tasks require an online server for the duration of this issue. Feature tasks that you performed with an offline server in previous releases now return an error message indicating that the server is unreachable.

but it is clearly better than having it broken.

(cherry picked from commit 070b49ed00)
2020-03-26 17:18:47 +01:00
Jan Tojnar
f5e8ef656f libmysqlconnectorcpp: 1.1.9 → 8.0.19
This has been seriously outdated:

* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-1-1-10.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-1-1-11.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-1-1-12.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-1-1-13.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-2-0-1.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-2-0-2.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-2-0-3.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-2-0-4.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-5.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-6.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-7.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-8-through-10.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-11.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-12.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-13.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-14.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-15.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-16.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-17.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-18.html
* https://dev.mysql.com/doc/relnotes/connector-cpp/en/news-8-0-19.html

Expression changes:

* Format with nixpkgs-fmt.
* Move cmake to nativeBuildInputs.
* Use OpenSSL from the system as using the bundled version is now optional.
* Use MysQL 8.0 since this is supposed to be used with that version.
* Explicitly enable the now legacy JDBC library used by mysql-workbench.
* Remove unnecessary MYSQL_LIB_DIR flag. MySQL will be found automatically.
    * We just need the build script know it is not a static library.

(cherry picked from commit 23d69911f3)
2020-03-26 17:18:47 +01:00
Jan Tojnar
4c122542ce mysql-workbench: format with nixpkgs-fmt
(cherry picked from commit eacf018ea7)
2020-03-26 17:18:47 +01:00
worldofpeace
a3a02d6cd4 Merge pull request #83392 from Ma27/nixos-container-nsenter-20.03
Revert "nixos-container: use systemd-run instead of nsenter"
2020-03-26 11:01:53 -04:00
Arian van Putten
01c61f3923 wire-desktop: Fix StartupWMClass
With quotes it doesn't match the Wire's screen, causing the window to not be grouped under its icon in Gnome.

(cherry picked from commit da587daae5)
2020-03-26 10:57:37 -04:00
Maximilian Bosch
d148bb00cf nixos/nextcloud: implement a safe upgrade-path between 19.09 and 20.03
It's impossible to move two major-versions forward when upgrading
Nextcloud. This is an issue when comming from 19.09 (using Nextcloud 16)
and trying to upgrade to 20.03 (using Nextcloud 18 by default).

This patch implements the measurements discussed in #82056 and #82353 to
improve the update process and to circumvent similar issues in the
future:

* `pkgs.nextcloud` has been removed in favor of versioned attributes
  (currently `pkgs.nextcloud17` and `pkgs.nextcloud18`). With that
  approach we can safely backport major-releases in the future to
  simplify those upgrade-paths and we can select one of the
  major-releases as default depending on the configuration (helpful to
  decide whether e.g. `pkgs.nextcloud17` or `pkgs.nextcloud18` should be
  used on 20.03 and `master` atm).

* If `system.stateVersion` is older than `20.03`, `nextcloud17` will be
  used (which is one major-release behind v16 from 19.09). When using a
  package older than the latest major-release available (currently v18),
  the evaluation will cause a warning which describes the issue and
  suggests next steps.

  To make those package-selections easier, a new option to define the
  package to be used for the service (namely
  `services.nextcloud.package`) was introduced.

* If `pkgs.nextcloud` exists (e.g. due to an overlay which was used to
  provide more recent Nextcloud versions on older NixOS-releases), an
  evaluation error will be thrown by default: this is to make sure that
  `services.nextcloud.package` doesn't use an older version by accident
  after checking the state-version. If `pkgs.nextcloud` is added
  manually, it needs to be declared explicitly in
  `services.nextcloud.package`.

* The `nixos/nextcloud`-documentation contains a
  "Maintainer information"-chapter  which describes how to roll out new
  Nextcloud releases and how to deal with old (and probably unsafe)
  versions.

Closes #82056

(cherry picked from commit 702f645aa8)
2020-03-26 13:23:20 +01:00
Maximilian Bosch
b249ffa449 wasm-bindgen-cli: 0.2.59 -> 0.2.60
https://github.com/rustwasm/wasm-bindgen/releases/tag/0.2.60
(cherry picked from commit c3392946b1)
2020-03-26 13:23:19 +01:00
Michael Weiss
4a82119cce signal-desktop: 1.32.1 -> 1.32.2
(cherry picked from commit 5c4735947d)
2020-03-26 12:18:45 +01:00
Vincent Laporte
d947d2863c coqPackages.mathcomp_1_10: init at 1.10.0
(cherry picked from commit 229dc013b3)
2020-03-26 08:23:13 +01:00
Vladimír Čunát
84f1b23670 Merge branch 'staging-20.03' into release-20.03 2020-03-26 07:22:05 +01:00
Benjamin Hipple
34e93f4eff Merge pull request #83330 from JeffLabonte/20.03_update_protonvpn_ng_2.2.0-with_fix
[20.03] protonvpn-cli-ng: 2.2.0 -> 2.2.2
2020-03-26 00:58:41 -04:00
Maximilian Bosch
7f1ba606ac Revert "nixos-container: use systemd-run instead of nsenter"
This reverts commit 7cb100b683.

This appears to break at least the `container`-backend of `nixops`: when
running `switch-to-configuration` within `nixos-container run`, the
running `systemd`-instance gets reloaded which appears to kill the
`systemd-run` command and causes `nixos-container run` to hang.

The full issue is reported in the original PR[1].

[1] https://github.com/NixOS/nixpkgs/pull/67332#issuecomment-604145869
2020-03-26 01:30:31 +01:00
John Ericson
3a009bd5da Merge branch 'tensorflow-versions' into release-20.03
There were a number of fixes that were not backported. I made a branch
with those cherry-picked fixes to be merged into both 20.03 and master
(not changing master), to ensure the two release branches didn't diverge
when they shouldn't.

I like this "apply the fixes to the comment ancester and then merge
both" approach because it makes it much easier to avoid backporting
issues. I suspect I'll be making more fixes to both in the future.
2020-03-25 20:30:46 +00:00
Tim Steinbach
6c29c8b67b linux: 5.5.11 -> 5.5.13 2020-03-25 13:09:57 -04:00
Tim Steinbach
09bb10dcde linux: 5.4.27 -> 5.4.28 2020-03-25 13:09:57 -04:00
Tim Steinbach
7a543ea318 linux: 4.19.112 -> 4.19.113 2020-03-25 13:09:57 -04:00
John Ericson
49a0313e92 Merge branch 'tenserflow-versions' into release-20.03 2020-03-25 11:49:16 -04:00
Domen Kožar
c1dd41699f add openapi-generator-cli-unstable
(cherry picked from commit cefe9b2dac)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-25 16:40:58 +01:00
Marek Fajkus
3cfa4cc98b elmPackages.elm-coverage: init at 0.0.3
(cherry picked from commit baf37aabad)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-25 16:13:20 +01:00
Marek Fajkus
0e8a3aae44 elmPackages.elmi-to-json: 1.2.0 -> 1.3.0
(cherry picked from commit d52fdecab1)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-25 16:05:52 +01:00
Marek Fajkus
b8ac3310b7 elmPackages.elm-instrument: Init at 0.0.7
(cherry picked from commit f387b85540)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-25 16:03:37 +01:00
Aaron VonderHaar
107a1c661d elm-format: 0.8.2 -> 0.8.3
(cherry picked from commit 0fa9ef1ee2)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-25 16:03:13 +01:00
Kim Lindberger
d4ea7ae076 gitlab: 12.8.6 -> 12.8.7 (#82838) (#83353)
https://about.gitlab.com/releases/2020/03/16/gitlab-12-8-7-released/
(cherry picked from commit 3a173c1d75)
2020-03-25 13:23:28 +01:00
Leif Metcalf
c6839e5ae8 Update git clone command example
(cherry picked from commit c3f8e598ed)
2020-03-25 09:34:45 +00:00
Vincent Laporte
a1b8dae54a alt-ergo: 2.3.0 → 2.3.1
(cherry picked from commit 618bca7054)
2020-03-25 07:31:05 +01:00
Jeff Labonte
b02da56acc protonvpn-cli-ng: 2.2.0 -> 2.2.2
Some changes were made after final review of the package. There was a
missing runtime dependency that was discovered after merge of the
backport

(cherry picked from commit 9fe4a634c1)
Reason: The dependency can make the package work or not
2020-03-24 21:02:49 -04:00
Eelco Dolstra
b898371cfa nixos/release-small.nix: Export options job
(cherry picked from commit e51c7f60cb)
2020-03-24 23:40:58 +01:00
Eelco Dolstra
921f7ac484 Compress optionsJSON using brotli
(cherry picked from commit 4052f9b849)
2020-03-24 23:40:58 +01:00
Eelco Dolstra
ce72d90a2f Add packages.json to the tarball job
Moved from nixos-homepage.

(cherry picked from commit d6ec410a47)
2020-03-24 23:40:58 +01:00
Florian Klink
234bc36b34 Merge pull request #83254 from aanderse/mysql80-backport
nixos/mysql: fix service so it works with mysql80 package [20.03 backport]
2020-03-24 23:39:17 +01:00
Reno Reckling
8831dbcbfc i3lock-fancy: Fix wrong path to mktemp
mktemp was not correctly replaced in this package. Leading to
"command not found: mktemp" error.

(cherry picked from commit 55fb13e5e1)
2020-03-24 22:07:21 +01:00
zowoq
a0cd08530b youtube-dl: 2020.03.08 -> 2020.03.24
https://github.com/ytdl-org/youtube-dl/releases/tag/2020.03.24
(cherry picked from commit d6273a5934)
2020-03-24 21:30:59 +01:00
Benjamin Hipple
331f7b376a pythonPackages.flake8-future-import: 0.4.5 -> 0.4.6 and fix build
The build is currently broken on master and 20.03. This upgrades to the latest
version and also disables the bad py2 test. I spent a long time trying to figure
out what the issue is, but since it's disabled upstream on python3 anyways let's
just skip it on python2 as well.

ZHF: #80379
(cherry picked from commit e9979380cf325912ccbd2c945a7963d667f1b76d)
2020-03-24 10:23:48 -07:00
Mario Rodas
976fd6a592 Merge #82081: swiProlog: openssl 1.0.2 -> openssl 1.1
(cherry picked from commit ffad9c724f)
This is unbreaking the package.
2020-03-24 16:55:58 +01:00
Vladimír Čunát
6f87869e08 Merge #82728: racket: enable building on aarch64
(cherry picked from commit a533068c3e)
Build re-tested on 20.03.
2020-03-24 16:25:34 +01:00
Maximilian Bosch
cac363c661 prometheus-wireguard-exporter: 3.2.2 -> 3.2.4
https://github.com/MindFlavor/prometheus_wireguard_exporter/releases/tag/3.2.3
https://github.com/MindFlavor/prometheus_wireguard_exporter/releases/tag/3.2.4
(cherry picked from commit b79a474044)
2020-03-24 13:44:58 +01:00
worldofpeace
b85f4d0da7 pantheon.switchboard-with-plugs: fix wrapping
Since #81475 this caused the wrapper to be empty of entries from
wrapGAppsHook because the wrapGAppsHook function doesn't add
them anymore, and was moved to gappsWrapperArgsHook. Instead
of just running that in postBuild it's more future proof to make this
use stdenv.mkDerivation because we want to mess around with the
generic builder.

(cherry picked from commit a9e7e93311)
2020-03-24 03:14:02 -04:00
worldofpeace
1217a6c391 pantheon.wingpanel-with-indicators: fix wrapping
Since #81475 this caused the wrapper to be empty of entries from
wrapGAppsHook because the wrapGAppsHook function doesn't add
them anymore, and was moved to gappsWrapperArgsHook. Instead
of just running that in postBuild it's more future proof to make this
use stdenv.mkDerivation because we want to mess around with the
generic builder.

(cherry picked from commit db41c787f4)
2020-03-24 03:14:01 -04:00
Benjamin Hipple
4c77bcbd03 pythonPackages.mkl-service: 2.1.0 -> 2.3.0
Release notes: https://github.com/IntelPython/mkl-service/releases

(cherry picked from commit bd42541989bdf62428c7551c07a2cf04e1c05baa)
2020-03-23 19:27:33 -07:00
Aaron Andersen
c5ce98f83f nixos/mysql: test with mysql80 package
(cherry picked from commit 6c47902e01)
2020-03-23 20:13:55 -04:00
Aaron Andersen
e4067514ff nixos/mysql: fix service so it works with mysql80 package
(cherry picked from commit 3474b55614)
2020-03-23 20:13:48 -04:00
worldofpeace
017f050351 Merge pull request #83012 from bcdarwin/release-20.03
python38Packages.rope: disable for Python>=3.8
2020-03-23 17:29:46 -04:00
Graham Christensen
d76b379771 Merge pull request #82827 from danderson/release-20.03
tailscale: init at 0.97-0 [20.03 backport]
2020-03-23 17:11:31 -04:00
ajs124
905316df4a matrix-synapse: 1.11.1 -> 1.12.0
(cherry picked from commit 425efa54ef)
2020-03-23 21:44:28 +01:00
ajs124
fa02997264 python: Twisted: 19.10.0 -> 20.3.0
(cherry picked from commit dff1df7c21)
2020-03-23 21:44:27 +01:00
David Anderson
752d9766a1 tailscale: switch version and git ref to use a tag.
The tag points to the same commit hash, so the binary
is unchanged.

Signed-off-by: David Anderson <dave@natulte.net>
(cherry picked from commit 3fa813e820)
2020-03-23 12:47:51 -07:00
David Anderson
1fceda471b tailscale: 0.96-33 -> 0.97-0.
Fixes a severe bug with subnet routing.

Signed-off-by: David Anderson <dave@natulte.net>
(cherry picked from commit f61f686dfea53a0e5bb3faf0a5307dcc8f8d03aa)
2020-03-23 12:47:51 -07:00
Martin Baillie
6ce36ff037 tailscale: init at 0.96-33
Signed-off-by: Martin Baillie <martin@baillie.email>
(cherry picked from commit 6e055c9f4a)
2020-03-23 12:47:51 -07:00
Ben Darwin
bb81a6f037 python38Packages.rope: disable for Python>=3.8
- browsing the github page suggests the upcoming 0.17 release should support 3.8

(cherry picked from commit 3d0410e769)
2020-03-23 14:09:14 -04:00
Maximilian Bosch
f62e075744 cargo-make: 0.29.0 -> 0.30.0
https://github.com/sagiegurari/cargo-make/releases/tag/0.30.0
(cherry picked from commit 2c7299fc1c)
2020-03-23 18:55:26 +01:00
worldofpeace
fd11f3af1e Merge pull request #83184 from marcus7070/release-20.03
[20.03] python3Packages.spyder: add v3.x
2020-03-23 13:35:09 -04:00
Gabor Greif
add3780631 ghc-8.8.3: really use ld.gold (port #80466)
(cherry picked from commit ff6aeefb91)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-23 18:00:30 +01:00
Gabor Greif
4120ab34ce ghc: add 8.8.3
https://mail.haskell.org/pipermail/ghc-devs/2020-February/018643.html
(cherry picked from commit c8554c0574)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-23 18:00:30 +01:00
Vincent Laporte
155574f7e3 OCaml: do not depend on X11 for OCaml ≥ 4.09
(cherry picked from commit 80a7615300)
2020-03-23 17:23:00 +01:00
R. RyanTM
b2c79253b1 pantheon.elementary-music: 5.0.4 -> 5.0.5
(cherry picked from commit c7e617f683)
2020-03-23 11:31:19 -04:00
Matthew Bauer
1ee4f0e7cd Merge pull request #83204 from hamishmack/release-20.03
openssl: Fix openssl for musl [20.03 backport]
2020-03-23 10:52:35 -04:00
Hamish Mackenzie
6345a8c326 openssl: Fix openssl for musl [20.03 backport]
This is a backport of #82708
2020-03-23 23:24:50 +13:00
Christian Kögler
1a8cc0727d vdr-xineliboutput: 2.1.0 -> 2.2.0
(cherry picked from commit b7dad4977c)
2020-03-23 11:17:49 +01:00
Christian Kögler
2762ade637 vdr-xinelinboutput: fix pkg-config for opengl
Up to including nixos-19.09 configure fall back and included right
libraries. Since nixos-20.03 pkg-config returns a valid value for opengl, but
opengl misses glx symbols.

(cherry picked from commit d315b3d267)
2020-03-23 11:17:41 +01:00
Marcus Boyd
ee106b926e cq-editor: use spyder_3
(cherry picked from commit d8a7d1f665c0cba02cccd95fdc88f318c87c7979)
2020-03-23 16:17:02 +10:30
Marcus Boyd
c5f397f3db python3Packages.spyder_3: Added spyder_3
cq-editor currently requires spyder v3.x

(cherry picked from commit c5ceb64a5d5c90f3b411c824a762f34cf75c9fb3)
2020-03-23 16:16:56 +10:30
Marcus Boyd
088ae2c920 python3Packages.spyder-kernels: Add spyder-kernels_0_5
Previously top-level/python-packages.nix called spyder-kernels v0.5 for
Py2k. Now both v0.5 and v1.8 (default.nix) are in pythonPackages, as
required by cq-editor and spyder v4 respectively.
v0.5 also now comes from GitHub instead of PyPi, with checks enabled.

(cherry picked from commit a1f45198148197dbf2a460be17a7fb50686b1b4e)
2020-03-23 16:03:54 +10:30
Maximilian Bosch
67e523c519 xterm: 351 -> 353
https://invisible-island.net/xterm/xterm.log.html#xterm_353
(cherry picked from commit 72dca3638d)
2020-03-23 01:27:12 +01:00
Maximilian Bosch
f5455342d1 EmptyEpsilon: 2020.02.18 -> 2020.03.22
https://github.com/daid/EmptyEpsilon/releases/tag/EE-2020.03.22
(cherry picked from commit 049aede558)
2020-03-22 23:24:10 +01:00
Christian Kögler
db4300a4d7 kodi: fix lirc support
* adapted to the way kodi finds the lircd socket
* added lirc package to build support for lirc

(cherry picked from commit 8f12a72488)
2020-03-22 21:31:28 +01:00
Christian Kögler
bdd53db942 redo-apenwarr: 0.42 -> 0.42a; use python3 and fixed building manpage
Removed dependency to mkdoc, which is only needed to build the webpage.

(cherry picked from commit 4c9bd5d52a)
2020-03-22 21:23:59 +01:00
Maximilian Bosch
1d12859c0c fd: 7.4.0 -> 7.5.0
https://github.com/sharkdp/fd/releases/tag/v7.5.0
(cherry picked from commit 6c48c7b81f)
2020-03-22 19:56:41 +01:00
Dmitry Kalinkin
1332522e00 Merge pull request #82065 from veprbl/pr/glibc_prlimit64_20.03
[20.03] glibc: provide fallback for kernels with missing prlimit64
2020-03-22 14:23:58 -04:00
Greg Price
5b02b91f76 python39Full: fix to use Python 3.9 rather than 3.8
Looks like this was a typo when python39 was added in 648152fdb.

(cherry picked from commit c93acee712)
2020-03-22 18:16:40 +01:00
Graham Christensen
75b00dd838 Merge pull request #83147 from bhipple/bp/ami
[20.03] nixos-ami: update nvme_core.io_timeout for linux kernel >= 4.15
2020-03-22 12:56:56 -04:00
Benjamin Hipple
835366947c nixos-ami: update nvme_core.io_timeout for linux kernel >= 4.15
NixOS 20.03 is built on kernel 5.4 and 19.09 is on 4.19, so we should update
this option to the highest value possible, per linked upstream instructions from
Amazon.

(cherry picked from commit 129176452c)
2020-03-22 12:40:41 -04:00
Tim Steinbach
d847a4fe4c linux: 5.5.9 -> 5.5.11 2020-03-22 12:16:43 -04:00
Tim Steinbach
3c6a5be58c linux: 5.4.25 -> 5.4.27 2020-03-22 12:16:43 -04:00
Tim Steinbach
7ad61255e5 linux: 4.9.216 -> 4.9.217 2020-03-22 12:16:43 -04:00
Tim Steinbach
e00104da05 linux: 4.4.216 -> 4.4.217 2020-03-22 12:16:43 -04:00
Tim Steinbach
d91fc12cca linux: 4.19.109 -> 4.19.112 2020-03-22 12:16:43 -04:00
Tim Steinbach
dcdb46cfc5 linux: 4.14.173 -> 4.14.174 2020-03-22 12:16:43 -04:00
Maximilian Bosch
ec145bfbdd nixos/ssmtp: declare all option renames manually
While renaming `networking.defaultMailServer` directly to
`services.ssmtp` is shorter and probably clearer, it causes eval errors
due to the second rename (directDelivery -> enable) when using e.g. `lib.mkForce`.

For instance,

``` nix
{ lib, ... }: {
  networking.defaultMailServer = {
    hostName = "localhost";
    directDelivery = lib.mkForce true;
    domain = "example.org";
  };
}
```

would break with the following (rather confusing) error:

```
error: The option value `services.ssmtp.enable' in `/home/ma27/Projects/nixpkgs/nixos/modules/programs/ssmtp.nix' is not of type `boolean'.
(use '--show-trace' to show detailed location information)
```

(cherry picked from commit fc316f7b31)
2020-03-22 15:57:56 +01:00
rnhmjoj
d566176553 monero-gui: 0.15.0.1 -> 0.15.0.4
(cherry picked from commit 3c93f1ba96)
2020-03-22 10:23:04 +01:00
rnhmjoj
0e41c2c51d monero: use a compatible protobuf version
(cherry picked from commit ddabb09c35)
2020-03-22 10:23:04 +01:00
Vincent Laporte
fe67af81d2 ocamlPackages.parmap: 1.1 → 1.1.1
(cherry picked from commit a8dafd2731)
2020-03-22 07:04:52 +01:00
Sergey Lukjanov
df820c7da5 grafana: add Frostman to maintainers
(cherry picked from commit 9e98d47fb2)
2020-03-21 21:42:00 +01:00
Sergey Lukjanov
d5fff78b5b grafana: 6.7.0 -> 6.7.1
(cherry picked from commit bf453da8e8)
2020-03-21 21:42:00 +01:00
Sergey Lukjanov
8b42fbc4c0 grafana: 6.6.2 -> 6.7.0
(cherry picked from commit 913e6b5c7b)
2020-03-21 21:42:00 +01:00
R. RyanTM
b323c010d7 darktable: 3.0.0 -> 3.0.1
(cherry picked from commit eb3690c462)
2020-03-21 13:08:35 +01:00
Timo Kaufmann
359934fe0b Merge pull request #82415 from timokau/symmetrica-3.0.1-20.03
[20.03] symmetrica: 2.0 -> 3.0.1
2020-03-21 11:45:59 +00:00
Michele Guerini Rocco
167492500b Merge pull request #82758 from wd15/fastapi-0.49.0
[20.03] python37Packages.fastapi: 0.45.0 -> 0.49.0
2020-03-21 10:41:01 +01:00
Maximilian Bosch
1ec2cf2168 gitea: 1.10.3 -> 1.11.3
Updates `gitea` to the latest version available[1]. Also ensured that
upgrading from `gitea-1.9` (used on NixOS 19.09) to `1.11.3` works
seamlessly.

The derivation required a few more changes this time since `gitea` uses
`npm` now to build the frontend[2]. When using the default tarball from
GitHub, we'd have to build the frontend manually. By fetching a custom
tarball published on every release, we get a prebuilt frontend
(as it was the case on previous versions) and build the backend only from
source.

Co-authored-by: kolaente <k@knt.li>
Closes #80175

[1] https://github.com/go-gitea/gitea/releases/tag/v1.11.3
[2] https://github.com/go-gitea/gitea/issues/10253

(cherry picked from commit cbceee8e97)
2020-03-20 23:08:49 +01:00
Maximilian Bosch
af477bc4ce neomutt: 20200313 -> 20200320
https://github.com/neomutt/neomutt/releases/tag/20200320
(cherry picked from commit 78104ad2da)
2020-03-20 15:08:48 +01:00
Eelco Dolstra
81fa5f4501 nixos-option: Disable on Nix >= 2.4 because it doesn't compile
This is needed when using the overlay from the Nix flake.

(cherry picked from commit a0a61c3e34)
2020-03-20 14:55:26 +01:00
Vincent Laporte
4362edf3c3 ocamlPackages.camlp5: 7.10 → 7.11
(cherry picked from commit 8dddd8a07f)
2020-03-20 09:10:55 +01:00
Maximilian Bosch
1494f8753a wireguard-tools: 1.0.20200206 -> 1.0.20200319
https://lists.zx2c4.com/pipermail/wireguard/2020-March/005191.html
(cherry picked from commit 19ceeb6de0)
2020-03-20 00:54:28 +01:00
Jan Tojnar
e8701fe486 flatpak: remove malcontent
It is not ready yet.

See: https://github.com/NixOS/nixpkgs/issues/81284
2020-03-20 00:21:10 +01:00
Aaron Andersen
97f65b2de9 Merge pull request #82848 from aanderse/zhf/rsyslog
rsyslog: remove libksi from default build because it is broken [20.03 backport]
2020-03-19 19:07:48 -04:00
Maximilian Bosch
25d8140287 thefuck: 3.29 -> 3.30
https://github.com/nvbn/thefuck/releases/tag/3.30
(cherry picked from commit b51d4e588d)
2020-03-19 21:29:47 +01:00
Michael Weiss
b3ee6e46df chromium: 80.0.3987.132 -> 80.0.3987.149
https://chromereleases.googleblog.com/2020/03/stable-channel-update-for-desktop_18.html

This update includes 13 security fixes.

CVEs:
CVE-2020-6422 CVE-2020-6424 CVE-2020-6425 CVE-2020-6426 CVE-2020-6427
CVE-2020-6428 CVE-2020-6429 CVE-2019-20503 CVE-2020-6449

Note: The release of version 81 is currently on pause:
https://chromereleases.googleblog.com/2020/03/upcoming-chrome-and-chrome-os-releases.html
(cherry picked from commit fe60ff7a99)
Backport of #82874.
2020-03-19 20:24:35 +01:00
Jonathan Ringer
d1121dfa8c texworks: fix qt build
(cherry picked from commit aaefb947ea)
2020-03-19 12:07:27 -07:00
Maximilian Bosch
6c90920c93 cargo-make: 0.27.0 -> 0.29.0
https://github.com/sagiegurari/cargo-make/releases/tag/0.28.0
https://github.com/sagiegurari/cargo-make/releases/tag/0.29.0
(cherry picked from commit 29b495d4d7)
2020-03-19 18:28:35 +01:00
John Ericson
b41d1d9167 Merge pull request #82943 from obsidiansystems/armv6-embedded
Armv6 embedded
2020-03-19 13:13:51 -04:00
Florian Klink
e26bc8445a nixos/zerotierone: switch from manually generating the .link file to use the module
Previously, systemd.network.links was only respected with networkd
enabled, but it's really udev taking care of links, no matter if
networkd is enabled or not.

With our module fixed, there's no need to manually manage the text file
anymore.

This was originally applied in 3d1079a20d,
but was reverted due to 1115959a8d causing
evaluation errors on hydra.

(cherry picked from commit 4e53f84c79)
2020-03-19 15:33:32 +01:00
Florian Klink
c4611d8f20 nixos/networkd: respect systemd.network.links also with disabled systemd-networkd
This mirrors the behaviour of systemd - It's udev that parses `.link`
files, not `systemd-networkd`.

This was originally applied in 36ef112a47,
but was reverted due to 1115959a8d causing
evaluation errors on hydra.

(cherry picked from commit 355c58e485)

nixos/manual: fix build

(cherry picked from commit d96bd3394b)
2020-03-19 15:33:24 +01:00
Jörg Thalheim
82ab717ea0 Merge pull request #82896 from JeffLabonte/20_03_backport-protonvpn-cli-ng
[20.03] backport protonvpn cli ng 2.2.0 -> 2.2.2
2020-03-19 12:12:04 +00:00
Robert Hensing
d6e406ddae Merge pull request #82933 from hercules-ci/backport-20.03-82897
lib/options: Only recurse into visible sub options (backport to 20.03)
2020-03-19 11:48:18 +01:00
Silvan Mosberger
970ea9616f lib/options: Only recurse into visible sub options
(cherry picked from commit f195625227)
2020-03-19 11:27:17 +01:00
Maximilian Bosch
b2935fbece linuxPackages.wireguard: 0.0.20200215 -> 0.0.20200318
https://lists.zx2c4.com/pipermail/wireguard/2020-March/005188.html
(cherry picked from commit e758e95c1d)
2020-03-19 09:32:34 +01:00
LeshaInc
d0357c141c blender: build with OpenImageDenoise support
(cherry picked from commit 3c54b996ca)
2020-03-19 00:30:37 -04:00
LeshaInc
0984610c0c openimagedenoise: init at 1.1.0
(cherry picked from commit 2cc3a34d4a)
2020-03-19 00:30:12 -04:00
R. RyanTM
a02a11f739 blender: 2.82 -> 2.82a (#82450)
(cherry picked from commit 4d8cac34f7)
2020-03-19 00:29:26 -04:00
Jeff Labonte
294fd3c0f5 brave: 1.4.96 -> 1.5.112
Keep brave updated to the latest release

(cherry picked from commit 418e3e41cf22753911c5f474d8bd89252ec76ce0)
Reasons: Keep the browser up-to-date as much as possible.
2020-03-18 20:10:25 -07:00
Jeff Labonte
71d2a85a70 protonvpn-cli-ng: 2.2.0 -> 2.2.2
Simply keep up to date the cli since it is used to connect to a VPN.

(cherry picked from commit eb96574e9df3aba387c4abe902b154398271becf)
Reason: A tool to communicate with a VPN provider should be kept
up-to-date
2020-03-18 20:16:30 -04:00
Benno Fünfstück
c5a9ee84cb nixos/release-combined.nix: fix tested for aarch64
This removes tests from the tested aggregate on aarch64 which are not
available for that platform.
2020-03-18 22:36:49 +01:00
Christoph Bauer
6bbdce2b15 pwsafe -> 1.9.0
fixes the broken build
there is a problem with wxGTK 3.1.2
maybe related to
https://github.com/pwsafe/pwsafe/blob/master/src/ui/wxWidgets/TreeCtrl.cpp
line 107
So I use wxGTK30

file is a new depedency

(cherry picked from commit 0b2047d712)
2020-03-18 21:25:55 +00:00
John Ericson
7562a06e85 Merge pull request #82248 from Ericson2314/fetchsvn-cross
fetchsvn: Fix for cross
2020-03-18 17:15:41 -04:00
Benno Fünfstück
6d73360a89 nixos/release-combined.nix: fix eval for aarch64
The release-20.03-aarch64 jobset on hydra only evals for aarch64, so the
x86_64 jobs do not exists. We need to make sure that the tested job only
aggregates jobs that actually exist.

This commit solves the issue by generating the tested job constituents
names based on the supported systems.
2020-03-18 21:44:32 +01:00
Aaron Andersen
96e221d6db rsyslog: remove libksi from default build because it is broken
(cherry picked from commit bdd33bc3aa)
2020-03-18 08:26:18 -04:00
Eelco Dolstra
16dd1df081 Merge pull request #82333 from edolstra/fix-lcov
Backport lcov fixes to 20.03
2020-03-18 11:57:13 +01:00
Dennis Gosnell
e2dfbcd4fd Merge pull request #82780 from erictapen/nixos-20.03-binary-strict
[20.03] haskellPackages.binary-strict: 0.4.8.4 -> 0.4.8.5
2020-03-18 11:18:37 +09:00
Vladislav Zavialov
af1b8e409d toggldesktop: use mkDerivation from Qt (#81720)
(cherry picked from commit bfcb19197b)
2020-03-17 22:08:19 -04:00
Dmitry Kalinkin
20fb1ce97c kicad: don't build versions with 3d on Hydra
The hydraPlatforms have to be set on the kicad package itself, that can be
checked using:

  echo ":p { inherit kicad kicad-small kicad-unstable; }" | nix repl ./pkgs/top-level/release.nix

This commit disables build of all kicad variants that require downloading
packages3d, which currently fail on hydra with the "Output limit exceeded"
status. This leaves Hydra with only building the kicad-small, which will allow
us to cache the build of kicad-base as well as all libraries except of
packages3d.

(cherry picked from commit ebe5f10794)
2020-03-17 18:52:51 -04:00
Dmitry Kalinkin
d9bb3a3711 Merge remote-tracking branch 'origin/release-20.03' into staging-20.03 2020-03-17 17:15:28 -04:00
Dmitry Kalinkin
ec0923f983 Merge pull request #82676 from veprbl/pr/texlive_2019_final_20.03
[20.03] texlive: 2019 -> 2019-final
2020-03-17 17:10:57 -04:00
mehlon
1a7a473831 tor-browser-bundle-bin: 9.0.5 -> 9.0.6
(cherry picked from commit 4b80e8a59f)
2020-03-17 18:00:23 +01:00
Maximilian Bosch
c55a47832d riot-web: 1.5.12 -> 1.5.13
(cherry picked from commit 09f55f8f17)
2020-03-17 16:13:41 +01:00
Maximilian Bosch
4e245c8fe7 riot-desktop: 1.5.12 -> 1.5.13
(cherry picked from commit bb9822be79)
2020-03-17 16:13:41 +01:00
Robert Hensing
a9c8e5bb18 Merge pull request #82782 from hercules-ci/backport-20.03-81292-fix-service-runner-quotes
Backport to 20.03 pr 81292: fix service runner quotes
2020-03-17 15:53:33 +01:00
Robert Hensing
284a8e95f7 nixos/service-runner.nix: Allow quotes in commands + test
(cherry picked from commit 43521ac965)
2020-03-17 15:16:32 +01:00
Justin Humm
8583ad1425 haskellPackages.binary-strict: 0.4.8.4 -> 0.4.8.5
This fixes the build, also of

- eths-rlp
- vorbiscomment
- webify

which depend on binary-strict. Everything else that depends on
binary-strict remains broken, so this commit shouldn't break anything
that wasn't broken yet.
2020-03-17 14:43:28 +01:00
Vladimír Čunát
9cc7ab153c Revert "tests/networking: remove pkgs.lib usages."
This reverts commit cde800dbd7.  See:
https://github.com/NixOS/nixpkgs/pull/82310#issuecomment-598920297
2020-03-17 09:02:03 +01:00
Vladimír Čunát
2a9c405b7e Revert "nixos/zerotierone: switch from manually generating..."
This reverts commit f549fbfd97.  See:
https://github.com/NixOS/nixpkgs/pull/82310#issuecomment-598920297
2020-03-17 08:49:22 +01:00
Vladimír Čunát
de1c9c0453 Revert "nixos/networkd: respect systemd.network.links [...]"
This reverts commit 4b2151b9fa.  See:
https://github.com/NixOS/nixpkgs/pull/82310#issuecomment-598920297
2020-03-17 08:35:47 +01:00
Dennis Gosnell
a8ec4936ae Merge pull request #82703 from erictapen/nixos-20.03-hakyll-contrib-hyphenation-jailbreak
[nixos-20.03] haskellPackages.hakyll-contrib-hyphenation: jailbreak
2020-03-17 09:54:09 +09:00
Aaron Andersen
b3f89ad996 Merge pull request #82761 from aanderse/tomcat
tomcat: 7.0.92 -> 7.0.100, 8.5.42 -> 8.5.51, 9.0.21 -> 9.0.31 [20.03 backport]
2020-03-16 20:16:53 -04:00
Aaron Andersen
a27e86399c tomcat9: 9.0.21 -> 9.0.31
(cherry picked from commit 46e7580f24)
2020-03-16 20:05:28 -04:00
Aaron Andersen
26a5a71da5 tomcat8: 8.5.42 -> 8.5.51
(cherry picked from commit 22f24f7859)
2020-03-16 20:04:59 -04:00
Aaron Andersen
0dde8f4c5f tomcat7: 7.0.92 -> 7.0.100
(cherry picked from commit 78b0222cb2)
2020-03-16 20:04:45 -04:00
Dmitry Kalinkin
ff2febd334 nuweb: fix after texlive update
(cherry picked from commit 2217b1d77c)
2020-03-16 18:11:28 -04:00
Daniel Wheeler
55fee4d66f python37Packages.fastapi: 0.45.0 -> 0.49.0
- Add peewee to test environment as now required.

 - Remove pyproject.toml patching as no longer required.
2020-03-16 17:53:32 -04:00
Daniel Wheeler
9d99c49138 python37Packages.starlette: 0.13.0 -> 0.12.9
- Reverting the version of Starlette as FastAPI can not use anything
   greater than 0.12.12. FastAPI is Starlette's only dependent.

 - Use fetchurl instead of fetchPypi as this is now the preferred
   method. This also makes the tests pass and, thus, the build, which
   was failing.
2020-03-16 17:53:32 -04:00
Justin Humm
4a36d2d862 haskellPackages.hakyll-contrib-hyphenation: jailbreak
Latest upstream commit is from 2015 [0], so I guess it's the easiest to
jailbreak it (as it builds that way).

[0] https://bitbucket.org/rvlm/hakyll-contrib-hyphenation/src/master/
2020-03-16 21:57:45 +01:00
Sander van der Burg
db52e1a7f2 base16-builder: regenerate with node2nix 1.8.0 and add supplement.json to fix build 2020-03-16 21:22:47 +01:00
Sander van der Burg
ba3ef05e92 nodePackages: regenerate with node2nix 1.8.0 2020-03-16 21:15:53 +01:00
Martin Milata
feb386f6eb libxml2: add patch for CVE-2019-20388
(cherry picked from commit 291c73568a)
/cc roundup #79725
2020-03-16 19:44:29 +01:00
Vladimír Čunát
10debb86b7 Merge branch 'staging-20.03' into release-20.03 2020-03-16 19:38:24 +01:00
Robert Hensing
db75eb4257 Merge pull request #82741 from hercules-ci/backport-20.03-80102
dockerTools.buildLayeredImage: store all paths passed in final layer (backport)
2020-03-16 19:07:13 +01:00
Richard Wallace
3781ac873f dockerTools.buildLayeredImage: store all paths passed in final layer
Fixes #78744

My previous change broke when there are more packages than the maximum
number of layers. I had assumed that the `store-path-to-layer.sh` was
only ever passed a single store path, but that is not the case if
there are multiple packages going into the final layer. To fix this, we
loop through the paths going into the final layer, appending them to the
tar file and making sure they end up at the right path.
2020-03-16 18:43:26 +01:00
Matteo Scarlata
27eca64552 unison: fix build with ocamlPackages_4_09 (#82619)
Fixes #61867 and #61505, bumps the ocaml version unison is built
against to 4.08. The patches included here appear in the trunk version
of unison, but were not backported to 2.51.2.

(cherry picked from commit 3355e8d1ca)
2020-03-16 13:17:29 +01:00
Maximilian Bosch
23139ff62f nixos/doc/matrix-synapse: refactor
* Linkify all service options used in the code-examples.
* Demonstrated the use of `riot-web.override {}`.
* Moved the example how to configure a postgresql-database for
  `matrix-synapse` to this document from the 20.03 release-notes.

(cherry picked from commit 849e16888f)
2020-03-16 11:01:55 +01:00
Maximilian Bosch
ba6271a49c matrix-synapse: 1.9.1 -> 1.11.1
https://github.com/matrix-org/synapse/releases/tag/v1.10.0
https://github.com/matrix-org/synapse/releases/tag/v1.10.1
https://github.com/matrix-org/synapse/releases/tag/v1.11.0
https://github.com/matrix-org/synapse/releases/tag/v1.11.1
(cherry picked from commit 8be61f7a36)
2020-03-16 11:01:53 +01:00
Maximilian Bosch
7f8e302fb6 python3Packages.signedjson: 1.0.0 -> 1.1.0
(cherry picked from commit 500375e338)
2020-03-16 11:01:04 +01:00
Vladimír Čunát
c09c926ee8 bind: 9.14.10 -> 9.14.11 (small bugfix)
I see just a single small bugfix in the news:
https://downloads.isc.org/isc/bind9/9.14.11/RELEASE-NOTES-bind-9.14.11.html

(cherry picked from commit 47f61c9d7f)
2020-03-16 09:18:23 +01:00
Florian Klink
2acb89d120 Merge pull request #82061 from tokudan/20.03/nextcloud1801
[20.03] nextcloud: 18.0.0 -> 18.0.2 [security]
2020-03-16 00:22:41 +01:00
Maximilian Bosch
aa481358c6 aircrack-ng: 1.5.2 -> 1.6
(cherry picked from commit 9729f30667)
2020-03-15 22:35:34 +01:00
Dmitry Kalinkin
3d1fdac251 texlive: use versioned tarballs
Announced in [1], versioned tarballs allow to make sure that a
specific version is fetched. This does not guarantee that all previous
versions are retained on the main mirrors.

Logically, we would want to first try to download versioned tarballs
from any mirror and only then try the unversioned ones. But right now
we only have two mirrors and only some of the tarballs are versioned
in texlive-2019, so the order is changed to not hammer the weak
tug.org mirror.

[1] https://tug.org/pipermail/tex-live/2019-September/044086.html

(cherry picked from commit 9f44a61f39)
2020-03-15 15:14:35 -04:00
Dmitry Kalinkin
53e3bc5d92 texlive/pkgs.nix: add revision
(cherry picked from commit 9c4212cb9f)
2020-03-15 15:14:35 -04:00
Dmitry Kalinkin
08aec1877e texlive: 2019 -> 2019-final
The biber package is now at 2.14, but TextBibTeX is still required.

Few changes were needed for newly introduced scripts-extra path. This
broke some of our old tricks which were relying on having writable
script directories. The changes to the script locations made buildEnv
create symlinks to the script directories instead of directories of
symlinks to scripts. The changes to texlinks.sh and texlive/TeXLive
perl path were made because of this.

(cherry picked from commit 9752593eb0)
2020-03-15 15:14:34 -04:00
Dmitry Kalinkin
65613ec2bf texlive: reimplement fixHashes.sh in GNU Awk
The shell script doesn't work very well in non-GNU environments like
darwin. This provides an implementation that uses just a single GNU tool
- gawk, thus reduces number of points of failure.

(cherry picked from commit d9fb53ddd6)
2020-03-15 15:14:34 -04:00
Timo Kaufmann
960f849545 Merge pull request #82648 from timokau/retdec-fix-20.03
[20.03] retdec: fix build
2020-03-15 13:58:57 +00:00
Léo Gaspard
a4bf572a9f xfce4-12: remove alias
(cherry picked from commit 175f9ef4f8)
2020-03-15 12:01:21 +01:00
Timo Kaufmann
13f4c4a0bf retdec: fix build
The build was broken by the gcc9 update. Pinning to gcc8 for now.

(cherry picked from commit e5642d405e)
2020-03-15 12:00:57 +01:00
Martin Milata
2dab4c10c4 lz4: 1.9.1 -> 1.9.2 (PR #82437)
Fixes: https://nvd.nist.gov/vuln/detail/CVE-2019-17543
Release notes: https://github.com/lz4/lz4/releases/tag/v1.9.2

(cherry picked from commit 18ac6ba903)
2020-03-15 09:53:29 +01:00
Martin Milata
d32805ec33 libssh: 0.8.7 -> 0.8.8
Fixes CVE-2019-14889, issue #77264.
Release notes: https://www.libssh.org/2019/12/10/libssh-0-9-3-and-libssh-0-8-8-security-release/

(cherry picked from commit 7ef8a42ab2)
2020-03-15 09:37:00 +01:00
David Guibert
a2a2fae53b users.groups.disnix instead of a list
related to #63103.

(cherry picked from commit bbc2cd89ef)
2020-03-14 23:18:01 +01:00
Josef Kemetmüller
c2e347cfc4 python37Packages.vtk: Fix build (#82336)
(cherry picked from commit de36c3b073)
2020-03-14 14:13:49 -04:00
Martin Milata
137bac6f24 openjpeg: add patch for CVE-2020-8112
(cherry picked from commit 41d8bb133efeade8d25a634ca68c32f0f62f6a41)
2020-03-14 16:57:04 +00:00
Martin Milata
021d5b650e openjpeg: add patch for CVE-2020-6851
(cherry picked from commit 773462c3aacdd2eb50457c7949dae6dd91e3684d)
2020-03-14 16:57:04 +00:00
Tim Steinbach
caabb48cf5 linux: 5.4.24 -> 5.4.25 2020-03-14 05:05:13 -04:00
taku0
cdbeba4c51 thunderbird-bin: 68.5.0 -> 68.6.0
(cherry picked from commit 833031704d)
2020-03-14 03:43:01 +00:00
taku0
ad6461d0bc thunderbird: 68.5.0 -> 68.6.0
(cherry picked from commit 243cd9f754)
2020-03-14 03:43:01 +00:00
Maximilian Bosch
8ff2a03284 binaryen: 89 -> 91, emscripten: 1.38.28 -> 1.39.1
(cherry picked from commit 386a50f729)
2020-03-14 02:42:01 +01:00
Christine Dodrill
aa61e722b0 development/libraries/libdap: fix hash 2020-03-13 20:49:48 -04:00
Christine Dodrill
f5c2ed464f tools/security/b3sum: fix cargo hash 2020-03-13 20:02:40 -04:00
Mario Rodas
d793073f41 Merge pull request #82448 from bhipple/bp/bluez
[20.03][Security] bluez: 5.52 -> 5.53 for CVE-2020-0556
2020-03-13 18:54:22 -05:00
Ben Darwin
bc3a69760d ocamlPackages_latest.phylogenetics: dune2/fix meta
(cherry picked from commit fd9b40d076)

cc #81160
2020-03-13 18:53:08 -04:00
Vincent Laporte
6626072bc5 OCaml: default to version 4.08
(cherry picked from commit 7b33cbdbf5)
2020-03-13 22:51:39 +01:00
Vincent Laporte
423e25aa9c ocamlPackages.earley: disable for OCaml ≥ 4.08
(cherry picked from commit bdcba83153)
2020-03-13 22:51:39 +01:00
Vincent Laporte
b23eec8994 ocamlPackages.earlybird: disable for OCaml ≥ 4.08
(cherry picked from commit 4ada24a02c)
2020-03-13 22:51:39 +01:00
Vincent Laporte
cc9c739ab0 ocamlPackages.ocf: disable for OCaml ≥ 4.08
(cherry picked from commit 4ce4db473c)
2020-03-13 22:51:39 +01:00
Vincent Laporte
dc38fbc680 ocamlPackages.wasm: disable for OCaml ≥ 4.08
(cherry picked from commit bab3588e4e)
2020-03-13 22:51:39 +01:00
Vincent Laporte
748e8893e3 unison: move out of ocamlPackages
(cherry picked from commit 4adfbe6c7b)
2020-03-13 22:42:05 +01:00
Vincent Laporte
70d505b900 ocamlPackages.sedlex_2: fix build with OCaml ≥ 4.08
(cherry picked from commit e73a9e6b95)
2020-03-13 22:32:12 +01:00
Maximilian Bosch
e60df57174 Merge pull request #82470 from Mindavi/backport/afl-glibc-bugfix
afl: Fix afl-qemu build by applying patches for glibc-2.30
2020-03-13 21:39:09 +01:00
Maximilian Bosch
24bf8b393f wikicurses: install man pages
(cherry picked from commit 04ea9dc275)
2020-03-13 21:15:59 +01:00
Maximilian Bosch
bebc254a95 wikicurses: fix build
The package doesn't have a testsuite, but fails as the checkPhase is
missing appropriate locale configuration (usually taken from
`pkgs.glibcLocales`). Entirely disabling the `checkPhase` for now as
it's basically a no-op.

ZHF: #80379
See also https://hydra.nixos.org/build/114125176

(cherry picked from commit 1505633e2f)
2020-03-13 21:15:59 +01:00
Maximilian Bosch
ca1b7ea9c1 ipfs: 0.4.22 -> 0.4.23
(cherry picked from commit c882314075)
2020-03-13 21:15:59 +01:00
Maximilian Bosch
60a1fdebfd inotify-tools: 3.20.1 -> 3.20.2.2
(cherry picked from commit 69d7cc5508)
2020-03-13 21:15:58 +01:00
Daniel Frank
3d0dcfebdf Nextcloud: 18.0.1 -> 18.0.2
(cherry picked from commit c4aadbca1417fc3d1d82b2a2db2beba258fd77c6)
2020-03-13 20:43:52 +01:00
Maximilian Bosch
295a1a03ca neomutt: 20191207 -> 20200313
https://github.com/neomutt/neomutt/releases/tag/20200313
(cherry picked from commit dda6dfed26)
2020-03-13 16:57:29 +01:00
Benjamin Hipple
0fc28d7b31 bluez: 5.52 -> 5.53 for CVE-2020-0556
See here for details:
https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00352.html

(cherry picked from commit 8f8b6459e9f38bc21df4976265f96b4541b917ec)
2020-03-13 10:54:35 -04:00
Mario Rodas
deb92e7672 Merge pull request #82485 from helsinki-systems/bp-bump-libksi
[20.03] libksi: Bump openssl dependency for rsyslogd
2020-03-13 09:21:57 -05:00
Janne Heß
1ac1caf6c7 libksi: Bump openssl dependency for rsyslogd
(cherry picked from commit fdccb96eeae1d5c0bab3ebfb5c99c794670628df)
2020-03-13 13:11:59 +01:00
Rick van Schijndel
e6c68edbde afl: Fix afl-qemu build by applying new patches
These patches are gathered from different sources,
such as https://patchwork.kernel.org/patch/10862231/ for the
`gettid` patch.
Another patch comes from the issue in the AFL repository.
The ultimate goal is to get these patches upstream as well,
so we don't keep these general patches only within nixos.

A PR is created against Google/AFL
https://github.com/google/AFL/pull/79,
but it might take a while before it's landed, considering the history
of the project (there are more PRs open).

ZHF: #80379

Fixes issue #82232
2020-03-13 09:45:33 +01:00
R. RyanTM
a0adbb1bdb libarchive: 3.4.1 -> 3.4.2
Fixes CVE-2020-9308.

(cherry picked from commit 13a03f402c)
2020-03-12 20:44:26 +00:00
Timo Kaufmann
04f75b1739 symmetrica: 2.0 -> 3.0.1
This switches to the sagemath fork, since the original upstream is no
longer maintained and sagemath has effectively maintained symmetrica
through patches for a while now. The update fixes one bug in particular
that has caused failures in the sagemath test suite:

https://github.com/NixOS/nixpkgs/issues/81449
https://trac.sagemath.org/ticket/15312
https://trac.sagemath.org/ticket/29061

Regarding the licensing change:

7cf91b3800
(cherry picked from commit 0c875c28c6)
2020-03-12 16:35:29 +01:00
adisbladis
3bf5bf6dd0 Merge pull request #82403 from eyJhb/flexget-transmission-release2003
[backport 20.03] flexget: readd transmissionrpc
2020-03-12 13:08:33 +00:00
Florian Klink
9827729ebd Merge pull request #82375 from flokli/20.03-gitlab-12.8.6
[20.03] gitlab 12.8.5 -> 12.8.6
2020-03-12 06:02:04 -07:00
eyjhbb@gmail.com
71a0ae43f0 flexget: readd transmissionrpc
(cherry picked from commit f88cd71e96)
2020-03-12 13:58:02 +01:00
Florian Klink
94767b4432 gitaly: 12.8.5 -> 12.8.6
(cherry picked from commit 281bd03242)
2020-03-12 12:54:56 +01:00
Frederik Rietdijk
1659274588 bepasty: use correct version of xstatic-bootstrap
(cherry picked from commit 73fa45693c)
2020-03-12 11:21:00 +01:00
Daniel Frank
fa88f6a526 firefox-bin: 73.0 -> 74.0 (from PR #82257)
(cherry picked from commit 8899c72990)
Brief testing showed no issues.
2020-03-12 11:20:14 +01:00
Tim Steinbach
d4544ed681 linux: 5.5.8 -> 5.5.9 2020-03-12 05:59:29 -04:00
Tim Steinbach
56dcf4f368 linux: 4.9.215 -> 4.9.216 2020-03-12 05:59:29 -04:00
Tim Steinbach
c44be3bbb3 linux: 4.4.215 -> 4.4.216 2020-03-12 05:59:28 -04:00
Tim Steinbach
580138d913 linux: 4.19.108 -> 4.19.109 2020-03-12 05:59:28 -04:00
Tim Steinbach
098e5a78d9 linux: 4.14.172 -> 4.14.173 2020-03-12 05:59:27 -04:00
Andreas Rammhold
730453919b Merge #82275: firefox-esr-68: 68.5.0esr -> 68.6.0esr
(cherry picked from commit fd04c3afbb)
It contains some "high impact" security fixes; announcement:
https://www.mozilla.org/en-US/firefox/68.6.0/releasenotes/

Brief testing on 20.03 shows no issues for me.
2020-03-12 10:39:44 +01:00
Vincent Laporte
5fe81d4a27 ocaml-ng.ocamlPackages_4_10.ocaml: 4.10.0+rc2 → 4.10.0
(cherry picked from commit 3fe7a65e23)
2020-03-12 06:47:38 +01:00
Vincent Laporte
14aacd5e72 ocaml-ng.ocamlPackages_4_10.ocaml: 4.10.0+rc1 → 4.10.0+rc2
(cherry picked from commit ca6391a7c4)
2020-03-12 06:47:38 +01:00
Vincent Laporte
a0deb2010e ocaml-ng.ocamlPackages_4_10.ocaml: 4.10.0+β2 → 4.10.0+rc1
(cherry picked from commit eef4b5175f)
2020-03-12 06:47:38 +01:00
Florian Klink
1df0c691b9 gitlab: 12.8.5 -> 12.8.6
https://about.gitlab.com/releases/2020/03/11/critical-security-release-gitlab-12-dot-8-dot-6-released/
(cherry picked from commit ab3b836350)
2020-03-12 03:06:35 +01:00
Florian Klink
988169988e gitlab: update script: unset GOROOT
or vgo2nix might not be able to resolve some dependencies.

(cherry picked from commit d2061f024c)
2020-03-12 03:06:34 +01:00
devhell
2ba4461001 tests: Fix signal-desktop
This test fails due to OOM on the VM. Setting the memory of the VM to
1024 lets the test succeed.

Cc: @flokli
(cherry picked from commit 534f1337c1)
2020-03-12 01:53:34 +01:00
Benjamin Hipple
fb783f0501 rainicorn: remove broken package that has been abandoned upstream
(cherry picked from commit 9326cd34062c9f58b95ac7306df2c42382dbee78)
2020-03-12 00:36:54 +00:00
Benjamin Hipple
a3c82719c3 leftwm: 0.1.10 -> 0.2.2 (#82365)
(cherry picked from commit feb9b1b406833f9dafee3aa8072b533f90e22973)
2020-03-12 00:29:18 +00:00
Benjamin Hipple
a14b7859a1 [20.03] Mark git-dit as broken
(cherry picked from commit f908cf4de86f5db899e73f0062d6351934245731)
2020-03-12 00:22:17 +00:00
nyanloutre
f6b7dc6fef nixos/vsftpd: fix missing default pam_service_name
9458ec4 removed the ftp pam service which was used by default by vsftpd

(cherry picked from commit 7ab00c48d8)
2020-03-11 22:30:13 +00:00
talyz
8d243e1ff5 nixos/haproxy: Revive the haproxy user and group
Running haproxy with "DynamicUser = true" doesn't really work, since
it prohibits specifying a TLS certificate bundle with limited
permissions. This revives the haproxy user and group, but makes them
dynamically allocated by NixOS, rather than statically allocated. It
also adds options to specify which user and group haproxy runs as.

(cherry picked from commit bb7ad853fb)
2020-03-11 22:25:26 +00:00
Maximilian Bosch
4a3c691beb treewide: remove myself from a few packages I don't use anymore
(cherry picked from commit b7cdb64ac2)
2020-03-11 23:07:05 +01:00
Maximilian Bosch
16d052df1f python3Packages.tesseract: 0.3.2 -> 0.3.3
(cherry picked from commit 24b6b8fd46)
2020-03-11 23:06:34 +01:00
Elis Hirwing
b15139179f php72: 7.2.27 -> 7.2.28
Changelog: https://www.php.net/ChangeLog-7.php#7.2.28
(cherry picked from commit 5bf47ab9bb)
2020-03-11 21:18:21 +01:00
Elis Hirwing
b53b0a01d6 php73: 7.3.14 -> 7.3.15
Changelog: https://www.php.net/ChangeLog-7.php#7.3.15
(cherry picked from commit 8f4cb37116)
2020-03-11 21:18:04 +01:00
Maximilian Bosch
1937173092 Merge pull request #81744 from Ma27/backport-remaining-initrd-fix
[20.03] nixos/initrd-network: always run postCommands
2020-03-11 21:05:44 +01:00
Martin Milata
0759da4ee6 nixos: fix module paths in rename.nix
(cherry picked from commit d08ede042b)
2020-03-11 19:36:16 +01:00
Josef Kemetmüller
bc0586b7be lcov: Fix patch checksums
The previously committed checksums seem to have been mistakenly taken
directly from fetchurl without fetchpatch normalization.

(cherry picked from commit adfb8a039b)
2020-03-11 18:41:14 +01:00
Eelco Dolstra
4f721661b2 lcov: Support gcc 9
https://github.com/linux-test-project/lcov/issues/58
https://github.com/Homebrew/homebrew-core/pull/50070
(cherry picked from commit 74c82056c9)
2020-03-11 18:37:36 +01:00
Cyril Cohen
c07561faec coqPackages.hierarchy-builder: init at 0.9.0
(cherry picked from commit cf210c082d)
2020-03-11 17:19:43 +01:00
Cyril Cohen
7c4a7a78ff elpi: 1.7.0 -> 1.10.2; coq-elpi: 1.1 -> 1.3
(cherry picked from commit 66a7f5d4e2)
2020-03-11 17:19:34 +01:00
Maximilian Bosch
2d149fcaf3 Merge pull request #82152 from fadenb/20.03_graylog
[20.03] graylog: 3.2.0 -> 3.2.2
2020-03-11 15:58:02 +01:00
Cole Mickens
42df26245c cfdyndns: v0.0.1 -> v0.0.3
(cherry picked from commit 669fdccf8b)
2020-03-10 14:43:05 -07:00
Sarah Brofeldt
fede49f5e3 Merge pull request #80441 from johanot/kubernetes-1-17
[20.03] kubernetes: 1.16.5 -> 1.17.3
2020-03-11 12:50:34 +01:00
Johan Thomsen
5ee843ec01 kubernetes: 1.16.5 -> 1.17.3
(cherry picked from commit 66556afb5a)
2020-03-11 09:51:11 +01:00
Andreas Rammhold
ed5fef0117 ppp: apply patch for CVE-2020-8597
This fixes a potential buffer overflow in the eap_{request,response}
functions.

(cherry picked from commit 142c3153f7)
2020-03-10 21:12:32 +01:00
Andreas Rammhold
f3fc8ac925 ppp: 2.4.7 -> 2.4.8
(cherry picked from commit caffd51048)
2020-03-10 21:12:31 +01:00
Daniel Gorin
1cf2c15f18 Fix missing default-policy.json in skopeo
We started having issues with `pkgs.dockerTools.pullImage`, were it
would fail with:

```
FATA[0000] Error loading trust policy: open /etc/containers/policy.json: no such file or directory
```

It turns out that since `skopeo` was bumped to `0.1.40`, it was
accidentally no longer being built with a default policy.

This may happen again, see https://github.com/containers/skopeo/issues/787

(cherry picked from commit a646f4b454)
2020-03-10 16:56:14 +00:00
Vincent Laporte
bdf8162b94 coqPackages.dpdgraph: enable for Coq ≥ 8.9
(cherry picked from commit 659e89e21b)
2020-03-10 17:47:04 +01:00
Mario Rodas
afeaca75cf Merge pull request #82223 from pacien/alot-0.9-patch-composition-20.03
[20.03] alot: add patch for email composition
2020-03-10 06:34:20 -05:00
Michael Weiss
3f9b623c91 chromium: Update the VA-API patch (fix #81909)
(cherry picked from commit 735707ef0c)
2020-03-10 11:28:22 +01:00
Adam Sandberg Ericsson
20fa9f307f ghc: really use ld.gold
(cherry picked from commit 9a5ecf1212)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-10 10:20:20 +01:00
Vladimír Čunát
187a4bebe2 Merge #82191: doc: improve grammar in nixpkgs GNOME manual
(cherry picked from commit 5ea0258458)
2020-03-10 10:12:14 +01:00
Vladimír Čunát
80d27173b8 knot-dns: 2.9.2 -> 2.9.3
https://gitlab.labs.nic.cz/knot/knot-dns/-/tags/v2.9.3
(cherry picked from commit 29a7464115)
These minor updates should have no breaking changes.
2020-03-10 10:12:02 +01:00
pacien
34c9db1f13 alot: add patch for email composition
This version is not usable without this patch.
See https://github.com/pazz/alot/issues/1468.

(cherry picked from commit b6d45301de)
2020-03-10 09:23:32 +01:00
Christian Lütke-Stetzkamp
dbacfa172f licensor: Fix test in 2020
(cherry picked from commit c8299d69b0)
2020-03-10 05:27:25 +00:00
Mario Rodas
c5db275f81 Merge pull request #81463 from B4dM4n/amp-update-backport
[20.03] amp: 0.6.1 -> 0.6.2
2020-03-09 19:45:46 -05:00
Vincent Laporte
b357f9e624 Merge pull request #81882 from nomeata/js_of_ocaml-20.03
backport js_of_ocaml: 3.4.0 -> 3.5.2 (and other required changes)
2020-03-09 22:01:37 +01:00
Samuel Dionne-Riel
da92e0566d Merge pull request #82173 from samueldr/20.03/aarch64/firefox
[20.03] firefox: Fix AArch64 build
2020-03-09 16:06:03 -04:00
Samuel Dionne-Riel
6291285748 firefox: Fix AArch64 build
* The 'arm.patch' patch doesn't apply anymore.
 * The 'build-arm-libopus.patch' patch isn't required anymore.
 * See the mozilla phabricator link for the added patch.

Additionally, we are now *always* undconditionally applying all patches
to all architectures. That is, unless they have undesirable
side-effects, but those might not be fit for inclusion.

By applying all patches all the time, they'll be removed or replaced
when they stop applying.

(cherry picked from commit d4446c563d)
2020-03-09 15:12:15 -04:00
Andreas Rammhold
6a662cbf43 Merge pull request #81772 from dylex/tensorflow
tensorflow: 1.15.1 -> 1.15.2
2020-03-09 19:03:37 +01:00
Milan
7f2658be83 gitlab: 12.8.2 -> 12.8.5 (#82142)
https://about.gitlab.com/releases/2020/03/09/gitlab-12-8-5-released/
(cherry-picked from f391999026)
2020-03-09 17:25:40 +01:00
R. RyanTM
ff55699976 graylog: 3.2.0 -> 3.2.2
(cherry picked from commit 2954d5544d and 9c6b5041c5)
2020-03-09 14:41:03 +00:00
Frederik Rietdijk
d95513b710 python3Packages.acoustics: 0.2.3 -> 0.2.4
(cherry picked from commit 634ab6fc5d)
2020-03-09 14:10:03 +01:00
Mario Rodas
0b5f073245 Merge pull request #82126 from bhipple/bp/procs
[20.03] procs: 0.9.6 -> 0.9.18
2020-03-09 08:04:07 -05:00
Lancelot SIX
7010635ac2 Merge pull request #82048 from tokudan/20.03/fetchmail642
fetchmail: 6.3.26 -> 6.4.2 [security] [20.03]
2020-03-09 12:00:42 +01:00
Lancelot SIX
cd5d243899 notable: update license to unfree
Notable used to be released under AGPL-v3 until v1.5.x but is is now
nonfree.

See https://github.com/notable/notable/blob/master/SOURCE_CODE.md

(cherry picked from commit 08edf7f27c)
2020-03-09 11:48:09 +01:00
zowoq
58fa229c1e rkt: add CVEs
https://www.twistlock.com/labs-blog/breaking-out-of-coresos-rkt-3-new-cves/
(cherry picked from commit c4c936f2f7)
2020-03-09 10:12:36 +00:00
zowoq
3bc2b975fd youtube-dl: 2020.03.06 -> 2020.03.08
https://github.com/ytdl-org/youtube-dl/releases/tag/2020.03.08
(cherry picked from commit 134f8cc84d)
2020-03-09 08:22:20 +01:00
Benjamin Hipple
e76d4a031a [20.03] procs: 0.9.6 -> 0.9.18
(cherry picked from commit c882a90bc6)
2020-03-09 01:15:52 -04:00
Benjamin Hipple
e4844bd69d btrfs-dedupe: remove broken and abandoned package
This package was last released in 2017, and no longer compiles with the latest
Rust compiler. It has just 1 commit from someone other than the original author
and appears to be a dead project.

(cherry picked from commit 27a0a1376b)
2020-03-09 00:34:39 -04:00
rnhmjoj
525ab7718b minecraft: install missing gsettings schemas
(cherry picked from commit 018a46ffe8)
2020-03-13 11:28:04 +01:00
Andrew Childs
d262f76123 nixos/activation: use eval-config's system argument for nesting
This avoids a possible surprise if the user is using `nixpkgs.system`
and `nesting.children`. `nesting.children` is expected to ignore all
parent configuration so we shouldn't propagate the user-facing option
`nixpkgs.system`. To avoid doing so, we introduce a new internal
option for holding the value passed to eval-config.nix, and use that
when recursing for nesting.

(cherry picked from commit ce416779bb)
2020-03-13 11:28:03 +01:00
Andrew Childs
4a8801a7d3 nixos/activation: propagate system to nested configurations
The current behavior lets `system` default to
`builtins.currentSystem`. The system value specified to
`eval-config.nix` has very low precedence, so this should compose
properly.

Fixes #80806

(cherry picked from commit b83164a049)
2020-03-13 11:28:03 +01:00
Andrew Childs
6e6d8a2bdb nixosTests.nesting: fix subtest scoping
(cherry picked from commit 98791845cb)
2020-03-13 11:28:02 +01:00
Vincent Laporte
c0e34873d9 ocsigen-i18n: 3.4.0 → 3.5.0
(cherry picked from commit 5e468ef981)
2020-03-13 10:56:30 +01:00
Vincent Laporte
8e7396eef8 ocamlPackages.ocp-build: fix for OCaml ≥ 4.08
(cherry picked from commit d02dc3c5fd)
2020-03-13 09:07:03 +01:00
Vincent Laporte
ee46c5500d ocamlPackages.ppx_import: 1.5-3 → 1.7.1
Support for OCaml ≥ 4.08

(cherry picked from commit db4ccde60d)
2020-03-13 08:18:56 +01:00
Vincent Laporte
f452e4e1ad acgtk: 1.5.0 → 1.5.1 (#81539)
Co-authored-by: Jon <jonringer@users.noreply.github.com>
(cherry picked from commit dcfccdfc33)
2020-03-13 06:52:45 +01:00
Maximilian Bosch
37a3c3fafb nixos/manual: fix build
(cherry picked from commit 7e978ca324)
2020-03-13 02:09:17 +01:00
Maximilian Bosch
45e699cbed nixos/python-test-driver: allow single char as hostName and fix misleading error-message
In case of invalid chars, the error-message references "perl variables"
which is not the case here as the python-based framework is used.

(cherry picked from commit 6d14bac048)
2020-03-13 01:10:17 +01:00
Sergey Lukjanov
872beff40b docker: 19.03.5 -> 19.03.8
(cherry picked from commit e1611f85c2)
(cherry picked from commit 1d0c3f148b)
2020-03-12 23:57:05 +01:00
Florian Klink
4b2151b9fa nixos/networkd: respect systemd.network.links also with disabled systemd-networkd
This mirrors the behaviour of systemd - It's udev that parses `.link`
files, not `systemd-networkd`.

(cherry picked from commit 36ef112a47)
2020-03-12 23:49:38 +01:00
Florian Klink
f549fbfd97 nixos/zerotierone: switch from manually generating the .link file to use the module
Previously, systemd.network.links was only respected with networkd
enabled, but it's really udev taking care of links, no matter if
networkd is enabled or not.

With our module fixed, there's no need to manually manage the text file
anymore.

(cherry picked from commit 3d1079a20d)
2020-03-12 23:49:38 +01:00
Félix Baylac-Jacqué
cde800dbd7 tests/networking: remove pkgs.lib usages.
(cherry picked from commit 1115959a8d)
2020-03-12 23:49:37 +01:00
Symphorien Gibol
99a3d7a86f nixos/btrfs: make autoScrub not prevent shutdown or suspend
Fixes: #79086 #79017
(cherry picked from commit 5359d90b15)
2020-03-12 22:40:26 +01:00
Maximilian Bosch
8038d4a429 r10k: 3.2.0 -> 3.4.1
(cherry picked from commit 7c078497ce)
2020-03-12 21:24:32 +01:00
Maximilian Bosch
99ca097e15 blueman: 2.1.1 -> 2.1.2
(cherry picked from commit 3fa6cd14ce)
2020-03-12 21:24:32 +01:00
Maximilian Bosch
8cad2b90a9 packer: 1.5.1 -> 1.5.4
(cherry picked from commit 9f877b97b8)
2020-03-12 21:24:32 +01:00
Maximilian Bosch
d1dc14bd9e EmptyEpsilon: 2020.01.15 -> 2020.02.18
(cherry picked from commit f7d1c8384c)
2020-03-12 21:24:31 +01:00
Murray Campbell
063c26cdea blender: use PYTHONPATH (#82341)
See [blender patch](https://developer.blender.org/D6598)

(cherry picked from commit fd614a72e9)
2020-03-12 14:45:19 -04:00
Timo Kaufmann
0b7fe7290a Merge pull request #82416 from timokau/sage-docutils-0.15-fix-20.03
[20.03] sage: fix test suite with docutils 0.15
2020-03-12 16:18:37 +00:00
Timo Kaufmann
b9cbb44067 sage: fix test suite with docutils 0.15
The better way to fix this would be to backport the upstream sphinx
patch:

faedcc48cc

Unfortunately it doesn't apply cleanly and isn't worth the effort
of backporting. Let's hope we can switch to python3 sage and the recent
sphinx version that comes with it before this becomes a problem.

(cherry picked from commit 7133577405)
2020-03-12 16:42:08 +01:00
Mario Rodas
9c26d7939c Merge pull request #82113 from bhipple/bp/ion
[20.03] ion: mark as broken
2020-03-08 23:08:00 -05:00
Mario Rodas
d02d2b0764 Merge pull request #82108 from bhipple/bp/heatseeker
[20.03] heatseeker: 1.5.1 -> 1.7.1
2020-03-08 22:30:00 -05:00
Benjamin Hipple
dde4748143 [20.03] ion: mark as broken
Backport of https://github.com/NixOS/nixpkgs/pull/82016

ZHF: #80379

(cherry picked from commit d5d648b0f6)
2020-03-08 23:10:01 -04:00
Mario Rodas
45138d3c1d Merge pull request #82106 from bhipple/bp/sit
[20.03] sit: mark as broken
2020-03-08 22:06:30 -05:00
Benjamin Hipple
da79582aaf [ZHF][20.03] heatseeker: 1.5.1 -> 1.7.1
Backport of https://github.com/NixOS/nixpkgs/pull/82017

ZHF: #80379

(cherry picked from commit 9044bdef6a)
2020-03-08 22:36:34 -04:00
Benjamin Hipple
a81880d840 [20.03] sit: mark as broken
Dependencies in the Cargo.lock fail to build due to mutable self borrows.

Backport of https://github.com/NixOS/nixpkgs/pull/82018

ZHF: https://github.com/NixOS/nixpkgs/issues/80379

(cherry picked from commit a2514c22a8)
2020-03-08 22:30:31 -04:00
Florian Klink
30cd233df1 Merge pull request #82054 from mweinelt/pr/20.03/borgbackup/1.1.11
[20.03] borgbackup: 1.1.10 → 1.1.11
2020-03-08 16:28:12 -07:00
Robert Hensing
6b21029d39 buildLayeredImage: Allow empty store, no paths to add
This is useful when buildLayeredImage is called in a generic way
that should allow simple (base) images to be built, which may not
reference any store paths.

(cherry picked from commit 6dab1b50a6)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-08 23:12:16 +01:00
Jacek Galowicz
f85b4f1df4 nixosTests.docker-tools: Port to Python 2020-03-08 23:12:07 +01:00
Antoine Eiche
c34efec88e nixosTests.docker-tools: add bulk-layer test
A regression test for https://github.com/NixOS/nixpkgs/issues/78744.

(cherry picked from commit baa78de594)
Signed-off-by: Domen Kožar <domen@dev.si>
2020-03-08 23:11:48 +01:00
Ben Wolsieffer
645522a971 buildbot: 2.6.0 -> 2.7.0 (#81406)
(cherry picked from commit 07727dbd16)

cc #81406
2020-03-08 17:42:56 -04:00
R. RyanTM
55cbe7dbaf buildbot: 2.6.0 -> 2.7.0
(cherry picked from commit 0a545f61fc)

cc #81283
2020-03-08 17:42:56 -04:00
Domen Kožar
62b2bf3f8e elm2nix: bump to 0.2 as it supports Elm 0.19.1 2020-03-08 18:43:46 +01:00
Dmitry Kalinkin
9cc2f1885f glibc: provide fallback for kernels with missing prlimit64
The current version of glibc implements support for kernels down to
3.2.0 (and we make sure to enable such support with apporopriate
--enable-kernel setting). The current RHEL6 operating system is based on
a maintained kernel based on 2.6.32 with lots of backports. We provide
basic support for this specific kernel by patching glibc to provide an
exception for this specific version of kernel. This allows for nixpkgs
software distribution to work on RHEL6 and it does so quite well with
almost no problems. There are, however, a few syscalls that are missing
in the 2.6.32 kernel, one of which is prlimit64. This commit provides a
fallback that uses an older {get,set}rlimit syscalls in cases when
prlimit64 is not available. This should streamline the experience for
nixpkgs users wanting to run it on RHEL6, namely, this fixes one of the
tests in findutils.

See also discussion in guix:
https://lists.gnu.org/archive/html/guix-devel/2018-03/msg00356.html

(cherry picked from commit 6740593bdd)
2020-03-08 13:16:50 -04:00
R. RyanTM
3a237ae22b nextcloud: 18.0.0 -> 18.0.1
(cherry picked from commit 91250fe625)
2020-03-08 17:34:33 +01:00
Daniel Schaefer
aae661cefe satallax: Fix build with GCC9
(cherry picked from commit bc56175034)
2020-03-08 16:17:35 +01:00
Maximilian Bosch
ae1b10ad0a Merge pull request #81958 from ryneeverett/backport-howard-hinnant-date-zone-info
howard-hinnant-date: allow access to zoneinfo
2020-03-08 15:56:14 +01:00
Martin Weinelt
9e8594685d borgbackup: 1.1.10 → 1.1.11
Version 1.1.11 (2020-03-08)

Compatibility notes:

    When upgrading from borg 1.0.x to 1.1.x, please note:
        read all the compatibility notes for 1.1.0*, starting from 1.1.0b1.
        borg upgrade: you do not need to and you also should not run it.
        borg might ask some security-related questions once after upgrading. You can answer them either manually or via environment variable. One known case is if you use unencrypted repositories, then it will ask about a unknown unencrypted repository one time.
        your first backup with 1.1.x might be significantly slower (it might completely read, chunk, hash a lot files) - this is due to the --files-cache mode change (and happens every time you change mode). You can avoid the one-time slowdown by using the pre-1.1.0rc4-compatible mode (but that is less safe for detecting changed files than the default). See the --files-cache docs for details.
    1.1.11 removes WSL autodetection (Windows 10 Subsystem for Linux). If WSL still has a problem with sync_file_range, you need to set BORG_WORKAROUNDS=basesyncfile in the borg process environment to work around the WSL issue.

Fixes:

    fixed potential index corruption / data loss issue due to bug in hashindex_set, #4829 Please read and follow the more detailled notes close to the top of this document.
    upgrade bundled xxhash to 0.7.3, #4891 0.7.2 is the minimum requirement for correct operations on ARMv6 in non-fixup mode, where unaligned memory accesses cause bus errors. 0.7.3 adds some speedups and libxxhash 0.7.3 even has a pkg-config file now.
    upgrade bundled lz4 to 1.9.2
    upgrade bundled zstd to 1.4.4
    fix crash when upgrading erroneous hints file, #4922
    extract:
        fix KeyError for "partial" extraction, #4607
        fix "partial" extract for hardlinked contentless file types, #4725
        fix preloading for old (0.xx) remote servers, #4652
        fix confusing output of borg extract --list --strip-components, #4934
    delete: after double-force delete, warn about necessary repair, #4704
    create: give invalid repo error msg if repo config not found, #4411
    mount: fix FUSE mount missing st_birthtime, #4763 #4767
    check: do not stumble over invalid item key, #4845
    info: if the archive doesn't exist, print a pretty message, #4793
    SecurityManager.known(): check all files, #4614
    Repository.open: use stat() to check for repo dir, #4695
    Repository.check_can_create_repository: use stat() to check, #4695
    fix invalid archive error message
    fix optional/non-optional location arg, #4541
    commit-time free space calc: ignore bad compact map entries, #4796
    ignore EACCES (errno 13) when hardlinking the old config, #4730
    --prefix / -P: fix processing, avoid argparse issue, #4769

New features:

    enable placeholder usage in all extra archive arguments
    new BORG_WORKAROUNDS mechanism, basesyncfile, #4710
    recreate: support --timestamp option, #4745
    support platforms without os.link (e.g. Android with Termux), #4901 if we don't have os.link, we just extract another copy instead of making a hardlink.
    support linux platforms without sync_file_range (e.g. Android 7 with Termux), #4905

Other:

    ignore --stats when given with --dry-run, but continue, #4373
    add some ProgressIndicator msgids to code / fix docs, #4935
    elaborate on "Calculating size" message
    argparser: always use REPOSITORY in metavar, also use more consistent help phrasing.
    check: improve error output for matching index size, see #4829
    docs:
        changelog: add advisory about hashindex_set bug #4829
        better describe BORG_SECURITY_DIR, BORG_CACHE_DIR, #4919
        infos about cache security assumptions, #4900
        add FAQ describing difference between a local repo vs. repo on a server.
        document how to test exclusion patterns without performing an actual backup
        timestamps in the files cache are now usually ctime, #4583
        fix bad reference to borg compact (does not exist in 1.1), #4660
        create: borg 1.1 is not future any more
        extract: document limitation "needs empty destination", #4598
        how to supply a passphrase, use crypto devices, #4549
        fix osxfuse github link in installation docs
        add example of exclude-norecurse rule in help patterns
        update macOS Brew link
        add note about software for automating backups, #4581
        AUTHORS: mention copyright+license for bundled msgpack
        fix various code blocks in the docs, #4708
        updated docs to cover use of temp directory on remote, #4545
        add restore docs, #4670
        add a pull backup / push restore how-to, #1552
        add FAQ how to retain original paths, #4532
        explain difference between --exclude and --pattern, #4118
        add FAQs for SSH connection issues, #3866
        improve password FAQ, #4591
        reiterate that 'file cache names are absolute' in FAQ
    tests:
        cope with ANY error when importing pytest into borg.testsuite, #4652
        fix broken test that relied on improper zlib assumptions
        test_fuse: filter out selinux xattrs, #4574
    travis / vagrant:
        misc python versions removed / changed (due to openssl 1.1 compatibility) or added (3.7 and 3.8, for better borg compatibility testing)
        binary building is on python 3.5.9 now
    vagrant:
        add new boxes: ubuntu 18.04 and 20.04, debian 10
        update boxes: openindiana, darwin, netbsd
        remove old boxes: centos 6
        darwin: updated osxfuse to 3.10.4
        use debian/ubuntu pip/virtualenv packages
        rather use python 3.6.2 than 3.6.0, fixes coverage/sqlite3 issue
        use requirements.d/development.lock.txt to avoid compat issues
    travis:
        darwin: backport some install code / order from master
        remove deprecated keyword "sudo" from travis config
        allow osx builds to fail, #4955 this is due to travis-ci frequently being so slow that the OS X builds just fail because they exceed 50 minutes and get killed by travis.

(cherry picked from commit dbff9b5479)
2020-03-08 14:32:50 +01:00
Peter Simons
9226f826b5 fetchmail: update from version 6.3.26 to 6.4.2
The new version supports OpenSSL 1.x. Should be back-ported to
release-20.03.

See https://sourceforge.net/projects/fetchmail/files/branch_6.4/
for the changelog.

(cherry picked from commit 85befe90b0)
2020-03-08 12:48:31 +01:00
Maximilian Bosch
fb34ac13e4 wasm-bindgen-cli: 0.2.58 -> 0.2.59
(cherry picked from commit 88b16119c1)
2020-03-07 23:11:47 +01:00
Michael Weiss
4e623d16e3 signal-desktop: 1.32.0 -> 1.32.1
(cherry picked from commit 01db31c4d7)
2020-03-07 21:07:01 +01:00
Daniel Fullmer
cbe553c988 zoneminder: add patch to fix improper caching
(cherry picked from commit ce34b927e0)

cc #79488
2020-03-07 13:27:07 -05:00
Daniel Fullmer
cf7dfbf87b zoneminder: fix timezone detection
(cherry picked from commit 630de551ef)

cc #79488
2020-03-07 13:27:03 -05:00
Daniel Fullmer
7f2973c12f nixos/zoneminder: update on startup if needed
(cherry picked from commit cb5da4eacb)

cc #79488
2020-03-07 13:26:58 -05:00
Daniel Fullmer
e7913b7d84 zoneminder: 1.32.3 -> 1.34.3
(cherry picked from commit 2685e457d3)

cc #79488
2020-03-07 13:26:47 -05:00
Silvan Mosberger
4b003af753 du-dust: Change derivation name from dust to du-dust
This prevents confusion by nix-env when installing packages by
derivation name, since there is another package named dust already

(cherry picked from commit ad126ee28e)
2020-03-07 15:43:20 +01:00
Silvan Mosberger
8b85be406c Merge pull request #81970 from Infinisil/dhall-nix-fix
[20.03] dhall-nix: Fix build
2020-03-07 14:46:24 +01:00
Silvan Mosberger
680f15a544 dhall-nix: Fix build 2020-03-07 14:14:02 +01:00
R. RyanTM
d61616bfe5 gnomeExtensions.appindicator: 30 -> 32 (#81309)
(cherry picked from commit e88113846c)
2020-03-07 13:09:27 +01:00
Silvan Mosberger
883217dc3f Merge pull request #81435 from mweinelt/pr/20.03/acme
[20.03] nixos/acme: backport #81369 and #81371
2020-03-07 12:12:03 +01:00
Benjamin Hipple
57fafc08f9 tree-sitter: 0.15.7 -> 0.16.4
Includes some bugfixes/cleanups to the scripts and packaging, a run of the
updater and a bump of the version.

Fixes #75863

(cherry picked from commit 9131efe52d)
2020-03-07 10:20:11 +01:00
Maximilian Bosch
f7e077a54a grocy: 2.6.0 -> 2.6.1
(cherry picked from commit d0e0acadbb)
2020-03-07 09:44:57 +01:00
Jörg Thalheim
23edc4489b Merge pull request #81902 from Mic92/nginx-ssl
[backport] nixos/nginx: use Mozilla Intermediate TLS configuration
2020-03-07 08:43:32 +00:00
Cole Helbling
e5c3c21eac howard-hinnant-date: allow access to zoneinfo
This fixes the situtation where, if `/usr/share/zoneinfo` was
inaccessible/didn't otherwise exist, `howard-hinnant-date` would
download and drop a `~/Downloads/tzdata` directory containing some
timezone information from IANA [1]. To avoid this, we make use of the
`tzdata`'s `zoneinfo`, preventing the dropping of random directories and
files.

[1] https://data.iana.org/time-zones/releases/tzdata2019c.tar.gz

(cherry picked from commit 25057960ce)

This fixes a bug which breaks the clock module. See
<https://github.com/Alexays/Waybar/issues/566>.
2020-03-07 05:16:24 +00:00
pacien
b780aefc62 riot-desktop: 1.5.10 -> 1.5.12
(cherry picked from commit abc58dc1d0)
2020-03-06 23:15:22 +01:00
pacien
44d322f488 riot-web: 1.5.10 -> 1.5.12
(cherry picked from commit 18848216ea)
2020-03-06 23:15:22 +01:00
R. RyanTM
df5c76b745 libreswan: 3.30 -> 3.31
(cherry picked from commit bce33c5d74)
2020-03-06 23:02:19 +01:00
R. RyanTM
9b9106b9b4 libreswan: 3.29 -> 3.30
(cherry picked from commit f4b1d118a4)
2020-03-06 23:00:48 +01:00
Luis Ressel
18181553e0 nixos/wireguard: Fix typo in error message
generatePrivateKey -> generatePrivateKeyFile

(cherry picked from commit b19c485b22)
Signed-off-by: Lancelot SIX <lsix@lancelotsix.com>
2020-03-06 22:45:09 +01:00
Lancelot SIX
06652b25cf python3Pakcages.django_compat: fix
(cherry picked from commit df155637fe)
Signed-off-by: Lancelot SIX <lsix@lancelotsix.com>
2020-03-06 22:28:02 +01:00
Lancelot SIX
6ec1e63207 python3akcages.django_compat: improve test fix
(cherry picked from commit e8d5bdb7b3)
Signed-off-by: Lancelot SIX <lsix@lancelotsix.com>
2020-03-06 22:27:51 +01:00
Lancelot SIX
8a526e4f3a python3Packages.django_compat: fix tests and re-enable
(cherry picked from commit 75087d8882)
Signed-off-by: Lancelot SIX <lsix@lancelotsix.com>
2020-03-06 22:27:32 +01:00
Vincent Laporte
57614a9ccd ocamlPackages.core_profiler: remove at 0.11.0
This package is broken with glibc ≥ 2.28

(cherry picked from commit 5c274c6c05)
2020-03-06 21:36:46 +01:00
Vincent Laporte
5ba4cc937c ocamlPackages.ocaml_plugin: remove at 0.11.0
This package is broken with glibc ≥ 2.28

(cherry picked from commit 9095ca22bc)
2020-03-06 21:36:46 +01:00
Vincent Laporte
f6122a2a5c ocamlPackages.conduit_p4: remove at 0.10.0
(cherry picked from commit fe0ebdf825)
2020-03-06 21:36:46 +01:00
Vincent Laporte
d8980f92d2 ocamlPackages.cohttp_p4: remove at 0.19.3
(cherry picked from commit 305dc2a199)
2020-03-06 21:36:46 +01:00
Vincent Laporte
27e412851d trv: remove at 0.1.3
(cherry picked from commit fca7f386db)
2020-03-06 21:36:46 +01:00
Sergey Lukjanov
b417adb48b snmp_exporter: 0.15.0 -> 0.17.0
(cherry picked from commit bd3319d28c)
2020-03-06 18:38:48 +01:00
Emily
65e31f98ce nixos/nginx: use Mozilla Intermediate TLS configuration
The configuration at https://ssl-config.mozilla.org/#server=nginx&config=intermediate
is reliably kept up-to-date in terms of security and compatible with a
wide range of clients. They've probably had more care and thought put
into them than our defaults, and will be easier to keep updated in
the future.

The only removed (rather than changed) configuration option here is
ssl_ecdh_curve, per https://github.com/mozilla/server-side-tls/issues/189.

Resolves #80952.

(cherry picked from commit 4ed98d69ed)
2020-03-06 14:31:53 +00:00
Alexander Bakker
2ec23b2e2f uwsgi: use pyhome instead of pythonpath for uwsgi vassals
(cherry picked from commit 7bbf7fa693)
2020-03-06 13:17:00 +00:00
Tim Steinbach
f707a0cef4 linux: 5.5.7 -> 5.5.8 2020-03-06 07:53:31 -05:00
Tim Steinbach
b5335c4e4a linux: 5.4.23 -> 5.4.24 2020-03-06 07:53:31 -05:00
Tim Steinbach
775be80b9d linux: 4.19.107 -> 4.19.108 2020-03-06 07:53:31 -05:00
Dillen Meijboom
b719c465f2 pulumi: 1.4.0 -> 1.12.0
(cherry picked from commit c4f5f95d8d)
2020-03-06 10:14:56 +00:00
Anderson Torres
253e2d9586 Merge pull request #81880 from OPNA2608/palemoon_28.8.4_cherrypick_20.03
[20.03] palemoon: 28.8.2.1 -> 28.8.4
2020-03-06 06:55:08 -03:00
WilliButz
9db4062c6c nixos/tests/prometheus-exporters: increase memory for rspamd
Before this, the test failed because rspamd did invoke the oom-killer.

(cherry picked from commit 0d832ee98e)
2020-03-06 10:37:54 +01:00
Martin Milata
ebb7ec3f04 nixos/prometheus-mail-exporter: misc fixes
- Fix misspelled option. mkRenamedOptionModule is not used because the
   option hasn't really worked before.
 - Add missing cfg.telemetryPath arg to ExecStart.
 - Fix mkdir invocation in test.

(cherry picked from commit e7ed7901a8)
2020-03-06 10:37:53 +01:00
Martin Milata
f382c70e34 nixos/prometheus-mail-exporter: fix assertion
The assertion was printed when user explicitly defined only the
configFile option.

(cherry picked from commit 3b5cf35e8b)
2020-03-06 10:37:53 +01:00
Martin Milata
bddb1723d8 nixos/prometheus-snmp-exporter: fix assertion
The assertion was printed when user explicitly defined only the
configurationPath option.

(cherry picked from commit 2a080ac434)
2020-03-06 10:37:53 +01:00
Martin Milata
6673c4f5ff nixos/prometheus-snmp-exporter: update log options
The allowed values have changed in bd3319d28c.

0.15:
      --log.level="info"        Only log messages with the given severity or above. Valid levels: [debug, info, warn, error, fatal]
      --log.format="logger:stderr"
                                Set the log target and format. Example: "logger:syslog?appname=bob&local=7" or "logger:stdout?json=true"

0.17:
      --log.level=info          Only log messages with the given severity or above. One of: [debug, info, warn, error]
      --log.format=logfmt       Output format of log messages. One of: [logfmt, json]

(cherry picked from commit 87f87fb3e9)
2020-03-06 10:37:53 +01:00
Martin Milata
c3bb46e179 nixos/prometheus-*-exporter: escape shell args
(cherry picked from commit 0ac24ccf2a)
2020-03-06 10:37:53 +01:00
zowoq
5c3564790a youtube-dl: 2020.03.01 -> 2020.03.06
https://github.com/ytdl-org/youtube-dl/releases/tag/2020.03.06
(cherry picked from commit 815f25daed)
2020-03-06 10:31:18 +01:00
Joachim Breitner
6a8cdf74fd js_of_ocaml: 3.4.0 -> 3.5.2 (#75766)
drive-by contributions, as I was playing around with this (it has better
support for the `num` library, it seems.)

js_of_ocaml: 3.4.0 -> 3.5.2
ocamlPackages.js_of_ocaml-ppx_deriving_json: use ppxlib-0.12.0
ocamlPackages.eliom: 6.8.0 → 6.10.1
ocamlPackages.ocsigen-toolkit: 2.2.0 → 2.5.0
ocamlPackages.ocsigen-start: 2.7.0 → 2.16.1

Co-authored-by: Vincent Laporte <Vincent.Laporte@gmail.com>
(cherry picked from commit 2d2a5a9b63)
2020-03-06 10:18:32 +01:00
Vincent Laporte
0456880576 ocamlPackages.resource-pooling: 0.6 → 1.1
ocamlPackages.ocsigen-start: 1.8.0 → 2.7.0

(cherry picked from commit c589de98e2)
2020-03-06 10:18:29 +01:00
Vincent Laporte
525b0d1a8e ocamlPackages.pgocaml_ppx: init at 4.0
(cherry picked from commit 4f7484f038)
2020-03-06 10:18:24 +01:00
WilliButz
3fbd8bda3e Merge pull request #81757 from Ma27/backport-codimd
[20.03] codimd: 1.5.0 -> 1.6.0
2020-03-06 09:45:58 +01:00
Pavol Rusnak
4707311e20 libfido2: change dependency from libressl to openssl
libressl does not enable EdDSA functionality in libfido2
see https://github.com/Yubico/libfido2/issues/144

(cherry picked from commit 4135584798e428a98d0ded9dab337673bd048f05)
2020-03-06 07:11:21 +01:00
worldofpeace
c4db4e5538 Merge pull request #81793 from JeffLabonte/20_03-brave_1.4.95_to_1.4.96
[20.03] brave 1.4.95 to 1.4.96
2020-03-05 19:41:09 +00:00
worldofpeace
1f99fd2fdb Merge pull request #81718 from worldofpeace/backport-80746
[20.03] openssl_1_0_2: mark as insecure; fixes #77503 (kinda)
2020-03-05 18:41:51 +00:00
Milan
c1746708b1 gitlab: 12.8.1 -> 12.8.2 (#81803)
Includes multiple security fixes mentioned in
https://about.gitlab.com/releases/2020/03/04/gitlab-12-dot-8-dot-2-released/
(unfortunately, no CVE numbers as of yet)

 - Directory Traversal to Arbitrary File Read
 - Account Takeover Through Expired Link
 - Server Side Request Forgery Through Deprecated Service
 - Group Two-Factor Authentication Requirement Bypass
 - Stored XSS in Merge Request Pages
 - Stored XSS in Merge Request Submission Form
 - Stored XSS in File View
 - Stored XSS in Grafana Integration
 - Contribution Analytics Exposed to Non-members
 - Incorrect Access Control in Docker Registry via Deploy Tokens
 - Denial of Service via Permission Checks
 - Denial of Service in Design For Public Issue
 - GitHub Tokens Displayed in Plaintext on Integrations Page
 - Incorrect Access Control via LFS Import
 - Unescaped HTML in Header
 - Private Merge Request Titles Leaked via Widget
 - Project Namespace Exposed via Vulnerability Feedback Endpoint
 - Denial of Service Through Recursive Requests
 - Project Authorization Not Being Updated
 - Incorrect Permission Level For Group Invites
 - Disclosure of Private Group Epic Information
 - User IP Address Exposed via Badge images
 - Update postgresql (GitLab Omnibus)

(cherry-picked from commit c25756f91c)
2020-03-05 17:08:55 +01:00
Tor Hedin Brønner
0b6df0b4bf nix-bash-completions: 0.6.7 -> 0.6.8 (#81019)
(cherry picked from commit 0e5d4573d4)
2020-03-05 15:09:52 +01:00
R. RyanTM
f5fa7bf2cf palemoon: 28.8.2.1 -> 28.8.4
(cherry picked from commit e633927c81)
2020-03-05 14:34:25 +01:00
Vladimír Čunát
3a820f04e1 nixos/release-notes: fix a tiny typo
(cherry picked from commit 1cf4fea33f)
2020-03-05 14:04:17 +01:00
Michael Weiss
1019f56391 signal-desktop: 1.31.0 -> 1.32.0
(cherry picked from commit 05e6cc4944)
2020-03-05 12:05:42 +01:00
Michael Weiss
a6ac7bfb1e signal-desktop: 1.30.1 -> 1.31.0
Changelog: https://github.com/signalapp/Signal-Desktop/releases/tag/v1.31.0
(cherry picked from commit 7d927677f4)
2020-03-05 12:05:36 +01:00
Jeff Labonte
093092a99a brave: 1.4.95 -> 1.4.96
Update brave from the version 1.4.95 to 1.4.96.

(cherry picked from commit 3f6d356654)
Reason: Keep the browser to the latest stable version
2020-03-04 21:35:31 -05:00
Dylan Simon
0a5ec494b5 tensorflow: 1.15.1 -> 1.15.2 2020-03-04 18:00:52 -05:00
Jan Tojnar
e544e03110 glib.setupHook: run glibPreFixupPhase before gappsWrapperArgsHook
Since we split wrapGAppsHook and move its variable initialization to preFixupPhases in #81475, it was getting run before glibPreFixupPhase which sets GSETTINGS_SCHEMAS_PATH variable gappsWrapperArgsHook depends on. Let's introduce this ugly hack to ensure glibPreFixupPhase will run before gappsWrapperArgsHook.

(cherry picked from commit 8e4f502fc6)
2020-03-04 17:41:04 -05:00
R. RyanTM
da48691741 at-spi2-atk: 2.34.1 -> 2.34.2
(cherry picked from commit deec2268c9)
2020-03-04 20:46:31 +01:00
R. RyanTM
08bcfe14ae gnome3.glade: 3.22.1 -> 3.22.2
(cherry picked from commit acc4854dac)
2020-03-04 20:36:57 +01:00
WilliButz
0419b78866 nixos/codimd: update useCDN default to false
(cherry picked from commit 68410b08be)
2020-03-04 20:24:40 +01:00
WilliButz
9cefdd7de2 codimd: 1.5.0 -> 1.6.0
(cherry picked from commit 6c2284090a)
2020-03-04 20:24:40 +01:00
Michael Weiss
487b2f74cd chromium: 80.0.3987.122 -> 80.0.3987.132
https://chromereleases.googleblog.com/2020/03/stable-channel-update-for-desktop.html

This update includes 4 security fixes.

CVEs:
CVE-2020-6420

(cherry picked from commit 51b6f9c6ae)
Backport of #81704.
2020-03-04 20:13:57 +01:00
Silvan Mosberger
19a4f3f79c Merge pull request #81709 from yegortimoshenko/acme-fullchain-force-symlink-20.03
[20.03] nixos/acme: force symlink from fullchain.pem to cert.pem
2020-03-04 19:33:54 +01:00
zimbatm
eaea08b2fe Revert "defaultGemConfig: remove asciidoctor-diagram JARs" (#81737)
This reverts commit 1ac11cc1c1.

asciidoctor-diagram starts Java processes, so the JARs are necessary
on all platforms.

See https://github.com/NixOS/nixpkgs/pull/77149#issuecomment-594576339.

(cherry picked from commit 89a09456c7)
2020-03-04 19:05:15 +01:00
Maximilian Bosch
fffd09d21c nixos/tests/initrd-network-ssh: fix test
It seems as it takes a moment until the initrd-network is loaded. Please
note that this is currently only reproducible on release-20.03.
2020-03-04 18:37:19 +01:00
Franz Pletz
3c86a21d6c nixos/initrd-network: always run postCommands
As outlined in #71447, postCommands should always be run if networking
in initrd is enabled. regardless if the configuration actually
succeeded.

(cherry picked from commit 589789997f)

The backport of this patch has been requested in #79532[1]. The diff is
slightly off the original commit since some changes from
ea7d02406b were needed, however this
commit shouldn't be backported as it potentially breaks existing setups.

[1] https://github.com/NixOS/nixpkgs/pull/79532#issuecomment-593511638
2020-03-04 18:31:03 +01:00
Maximilian Bosch
7c6d9f55e0 nextcloud-client: 2.6.3 -> 2.6.4
https://github.com/nextcloud/desktop/releases/tag/v2.6.4
(cherry picked from commit 13e3fc3e06)
2020-03-04 16:19:54 +01:00
talyz
53e5e70eda gitaly: Copy gem files into bundler env instead of symlinking
This fixes issue #79374, where gitaly prints warning messages on the
client side when running push or fetch.
2020-03-04 14:37:21 +01:00
talyz
4d50664b10 bundlerEnv: Add option to copy gem files instead of symlinking
The way ruby loads gems and keeps track of their paths seems to not
always work very well when the gems are accessed through
symlinks. Ruby will then complain that the same files are loaded
multiple times; it relies on the file's full path to determine whether
the file is loaded or not.

This adds an option to simply copy all gem files into the environment
instead, which gets rid of this issue, but may instead result in major
file duplication.
2020-03-04 14:37:21 +01:00
talyz
06bd94cfb6 gitlab-shell: Change name from gitlab-shell-go to gitlab-shell
This is left over from when gitlab-shell had a ruby part and a go
part. The ruby part is now gone, so let's call the go part
gitlab-shell.
2020-03-04 14:37:21 +01:00
talyz
08582ebb7c gitlab-workhorse: 8.20.0 -> 8.21.0 2020-03-04 14:37:21 +01:00
talyz
750cf9e911 gitaly: 1.83.0 -> 12.8.1 2020-03-04 14:37:21 +01:00
talyz
894ff16021 gitlab: 12.7.6 -> 12.8.1
https://about.gitlab.com/releases/2020/02/22/gitlab-12-8-released/
https://about.gitlab.com/releases/2020/02/24/gitlab-12-8-1-released/
2020-03-04 14:37:21 +01:00
Vladimír Čunát
feaa6347ca knot-resolver: apply upstream patch
Encrypted ZFS users were affected, in particular some NixOS users
who reported the issue upstream.  /cc #81188.

(cherry picked from commit b7f5450e4d)
2020-03-04 14:01:22 +01:00
Jörg Thalheim
876085e8f7 nixos/zfs: continue trimming also if one pool fails
fixes https://github.com/NixOS/nixpkgs/issues/81602

(cherry picked from commit 557989c460e386d0abca068245806a2fbc89edf0)
2020-03-04 12:48:28 +00:00
Vladimír Čunát
7dfb4447d6 openssl_1_0_2: mark as insecure; fixes #77503 (kinda)
No vulnerabilities are know so far (to me), but still I'd go this way.
Especially for 20.03 it seems better to deprecate it before official
release happens.

Current casualties:
$ ./maintainers/scripts/rebuild-amount.sh --print HEAD HEAD^
Estimating rebuild amount by counting changed Hydra jobs.
     87 x86_64-darwin
    161 x86_64-linux

(cherry picked from commit 7cda2823be)
2020-03-04 07:40:36 -05:00
Yegor Timoshenko
08795a97f4 nixos/acme: force symlink from fullchain.pem to cert.pem
(cherry picked from commit c32da2ed9c)

Co-authored-by: emily <vcs@emily.moe>
2020-03-04 13:19:29 +03:00
adisbladis
0c3057c59d Merge pull request #81266 from Frostman/20.03-go-1.14
[20.03] go_1_14: init at 1.14 and switch to it (backport)
2020-03-04 08:25:02 +00:00
worldofpeace
87cc49a3fe Merge pull request #81082 from JeffLabonte/release/20.03-brave_1.3.118_to_1.4.95
[20.03] brave: 1.3.118 -> 1.4.95
2020-03-04 01:27:28 +00:00
Jeff Labonte
bf8a421551 brave: 1.3.118 -> 1.4.95
Update brave from 1.3.118 to 1.4.95

(cherry picked from commit fa166b77d1)
Reason: Browser should be kept up-to-date for security reasons.
2020-03-03 20:14:55 -05:00
worldofpeace
20c553be69 pantheon.wingpanel-indicator-nightlight: 2.0.2 -> 2.0.3
https://github.com/elementary/wingpanel-indicator-nightlight/releases/tag/2.0.3
(cherry picked from commit 9dc1cc507d)
2020-03-03 20:13:21 -05:00
worldofpeace
b37fcf90c4 pantheon.elementary-files: 4.4.0 -> 4.4.1
https://github.com/elementary/files/releases/tag/4.4.1
(cherry picked from commit 7f7977e296)
2020-03-03 20:13:21 -05:00
worldofpeace
bd49b6f7bf ephemeral: 6.2.1 -> 6.3.0
https://github.com/cassidyjames/ephemeral/releases/tag/6.3.0
(cherry picked from commit 0e82b0e0ed)
2020-03-03 20:13:21 -05:00
worldofpeace
5a1a248e7d lollypop: 1.2.16 -> 1.2.23
(cherry picked from commit 5d31a94b11)
2020-03-03 20:13:21 -05:00
worldofpeace
0ebcfef5fe lollypop: add missing deps
We need the GIO_EXTRA_MODULE from glib-networking

(cherry picked from commit c10c96b991)
2020-03-03 20:13:21 -05:00
obadz
201a5d8e4f Merge pull request #81669 from obadz/backport-2003-zerotier-mac-fix
[20.03] nixos/zerotierone: prevent systemd from changing MAC address
2020-03-04 01:07:58 +00:00
Daniel Fullmer
01a02ccd73 nixos/zerotierone: prevent systemd from changing MAC address
(cherry picked from commit 27b8253655)
2020-03-04 01:04:03 +00:00
worldofpeace
e8e569ce79 wrapGAppsHook: Fix #78803
Add to gappsWrapperArgs in preFixupPhases.

(cherry picked from commit 29fc27b4ac)
2020-03-03 19:35:37 -05:00
worldofpeace
e78f26b977 Merge branch 'release-20.03' into staging-20.03 2020-03-03 19:35:13 -05:00
Aiken Cairncross
6c3ab02ad0 python3Packages.monosat: Fix hash
(cherry picked from commit 3db82f6fc3)
2020-03-03 19:34:08 +00:00
Aiken Cairncross
04379d0a6a python3Packages.monosat: Fix Python 3.8 build
(cherry picked from commit 2148a154c6)
2020-03-03 19:23:57 +00:00
Dmitry Kalinkin
899cf4ba29 python3Packages.ipykernel: fix build on darwin
Also python34 is not supported:

979e6fd2db

nixpkgs doesn't provide python34 anymore, so pythonOlder "3.5" is always
true and can be removed.

(cherry picked from commit d35009ee63)

cc #80940
2020-03-03 12:51:50 -05:00
Dmitry Kalinkin
17e15615e4 tdlib: enable on darwin
(cherry picked from commit fa2546f1b9)
2020-03-03 12:45:10 -05:00
Dmitry Kalinkin
ee01f461a3 blender: fix enableNumpy option, enable it unconditionally
Workarounds https://developer.blender.org/T74304

Audaspace requires numpy, we already have to provide numpy
unconditionally via PYTHON_NUMPY_PATH.

(cherry picked from commit 27578856bf)

cc #81313
2020-03-03 09:20:54 -05:00
Jeffry Molanus
943aff5679 terraform-providers.libvirt: 0.5.1 -> 0.6.1
(cherry picked from commit c1b5cfe267)
2020-03-03 11:32:14 +00:00
Yegor Timoshenko
0f2565d518 Merge pull request #80857 from emilazy/adjust-acme-20.03
[20.03] nixos/acme: adjust renewal timer options
2020-03-03 03:49:56 +03:00
conferno
2e4a4b928b xfce.xfdashbooard: fix typo
(cherry picked from commit e0a2f0fc24)
2020-03-02 18:39:02 -05:00
Vladimír Čunát
181974248e Merge branch 'staging-20.03' into release-20.03
It's finished on Hydra: https://hydra.nixos.org/eval/1573320
2020-03-02 18:30:49 +01:00
Martin Milata
56b1c3938c qt5.qtbase: backport cmake macro fix
Backport fix of QT5_MAKE_OUTPUT_FILE CMake macro which causes FreeCAD
build failure when building with qt-5.12.7.

https://bugreports.qt.io/browse/QTBUG-81715

(cherry picked from commit 80650ae4f0)
2020-03-02 18:29:43 +01:00
Maximilian Bosch
0bdf352a05 nixos/release-notes: mention fix for predictable network-interfaces in initrd
(cherry picked from commit f4d71e2e73)
2020-03-02 17:58:44 +01:00
Franz Pletz
173c7715de nixos/initrd-network: use ipconfig from klibc
This apparently has features that the version from Arch's
mkinitcpio-nfs-utils does not have. Fixes #75314.

(cherry picked from commit d25c1a8fdc)
2020-03-02 17:18:00 +01:00
Franz Pletz
3206aa985a klibc: 2.0.4 -> 2.0.7
(cherry picked from commit 4ba8086aa1)
2020-03-02 17:17:59 +01:00
Franz Pletz
332d731a7a nixos/stage-1: fix predictable interfaces names
This makes predictable interfaces names available as soon as possible
with udev by adding the default network link units to initrd which are read
by udev. Also adds some udev rules that are needed but which would normally
loaded from the udev store path which is not included in the initrd.

(cherry picked from commit 44e289f93b)
2020-03-02 17:17:59 +01:00
Janne Heß
4e924d3a4e pkgs/bazel*: Fix path to update-srcDeps.py
Otherwise, the -small channel fails on the tarball output.

(cherry picked from commit 0723bf3b72)
2020-03-02 17:06:03 +01:00
Michael Lingelbach
7202d2cdaa tensorflow: 1.15.0 -> 1.15.1
* Apply glibc 2.3 patch
* build tensorflow with bazel_1
* Bump openssl version to 1.1

(cherry picked from commit 1dc0db8481a349dbecc572250008f4ed7f1366f3)
2020-03-02 17:07:13 +01:00
ngerstle
3c45fc8781 traefik: 1.7.14 -> 1.7.21 2020-03-02 16:48:50 +01:00
Vladimír Čunát
1f33b3d018 Merge #80714: icon-lang: fix build
(cherry picked from commit 4d954e528d)
2020-03-02 16:20:33 +01:00
Vladimír Čunát
89528af331 Merge #79026: blackmagic: v1.6.1-317-gc9c8b08 -> v1.6.1-409-g7a595ea
(cherry picked from commit 855f020404)
It didn't build before this bump.
2020-03-02 16:00:54 +01:00
Vladimír Čunát
41a6bafd41 Merge #80124: llvmPackages_5.compiler-rt: fix for glibc bump
(cherry picked from commit fb6ceb45ba)
I re-tested the build for 20.03, before and after this commit.
2020-03-02 15:49:00 +01:00
Michael Lingelbach
87fc21d6c8 Add bazel 1.2.1
(cherry picked from commit 1c4f22a5da)
2020-03-02 09:18:38 +01:00
scalavision
06e9970c44 truvari:1.3.2->1.3.4
(cherry picked from commit dbb4826457)
2020-03-02 09:16:18 +01:00
Kovacsics Robert
0edebabe92 polyml: updated maintainers
I am not sure if we still need the old packages, nothing explicitly
depends on polyml56 or polyml57 according to a grep, not sure if
external packages might (hol and isabelle depend on polyml, the latest
version).

(cherry picked from commit f4c29ebfc2)
2020-03-02 09:14:14 +01:00
Kovacsics Robert
2f0b6c2af2 polyml: fix with new libffi
New libffi doesn't have FFI_SYSV for x86/64 unix, this pulls in the
commit for the upstream version which fixes it, and ports that patch to
the 5.7 version. The 5.6 version is unchanged.

For ZHF: #80379

(cherry picked from commit f8c402ecad)
2020-03-02 09:14:14 +01:00
pacien
61cc1f0dc0 riot-web: mention incompatible config change in release notes
Mention the changes introduced in commit c9e5cca.

GitHub: closes #81416
(cherry picked from commit 6d4fd13612)
2020-03-02 03:15:10 +01:00
zowoq
e1dd2c620b youtube-dl: 2020.02.16 -> 2020.03.01
https://github.com/ytdl-org/youtube-dl/releases/tag/2020.03.01
(cherry picked from commit 5ce2974294)
2020-03-02 01:18:56 +01:00
worldofpeace
f0ad76b504 Merge pull request #81423 from Frostman/20.03-smartmontools-7.1
[20.03] smartmontools: 7.0 -> 7.1 and devicedb updated to latest
2020-03-01 23:25:05 +00:00
Fabian Möller
f0608b08b5 amp: 0.6.1 -> 0.6.2
(cherry picked from commit 1820ce4922972cce690fbcc7e1dc3b6c239af603)
2020-03-01 21:42:34 +01:00
Sander van der Burg
698f5dbabc titaniumenv: add Titanium SDK 8.3
(cherry picked from commit c5a6a2ae5ead4249486c78d758c123ed8acfd8a9)
2020-03-01 20:24:17 +01:00
Sander van der Burg
760dc689aa androidenv: add platform SDK 29
(cherry picked from commit f5d8e5d92bd4edd2873d0c116ce8db372287a3cf)
2020-03-01 20:24:17 +01:00
worldofpeace
ae0edff42b doc/xfce: remove trailing code
(cherry picked from commit b7b46d0184)
2020-03-01 13:45:10 -05:00
Klaas van Schelven
a8c2c1d92d pythonPackages.swagger-spec-validator 2.4.3 -> 2.5.0
Includes various upstream fixes of the tests, see

* https://github.com/Yelp/swagger_spec_validator/pull/117
* https://github.com/Yelp/swagger_spec_validator/pull/121

(cherry picked from commit efa25157e9)
2020-03-01 09:02:40 -08:00
worldofpeace
ea4f8e8f31 nixos/pantheon: add docs
(cherry picked from commit 3be04570e0)
2020-03-01 11:57:28 -05:00
Florian Klink
932f2e3157 systemd: 243.4 -> 243.7
This bumps to the latest state of the systemd 242 stable, published at
https://github.com/systemd/systemd-stable/tree/v243-stable.

Should cover CVE-2020-1712.

Git Log:

f8dd0f2f15 (tag: v243.7, systemd-stable/v243-stable) Revert "Support Plugable UD-PRO8 dock"
1a5428c2ab hibernate-resume-generator: wait "infinitely" for the resume device
eb3148c468 (tag: v243.6) hwdb: update to v245-rc1
f14fa558ae Fix typo in function name
fb21e13e8e polkit: when authorizing via PK let's re-resolve callback/userdata instead of caching it
2e504c92d1 sd-bus: introduce API for re-enqueuing incoming messages
4d80c8f158 polkit: use structured initialization
54791aff01 polkit: on async pk requests, re-validate action/details
81532beddc polkit: reuse some common bus message appending code
4441844d58 bus-polkit: rename return error parameter to ret_error
31a1d569db shared: split out polkit stuff from bus-util.c → bus-polkit.c
560eb5babf test: adapt to the new capsh format
275b266bde meson: update efi path detection to gnu-efi-3.0.11
9239154545 presets: "disable" all passive targets by default
a827c41851 shared/sysctl-util: normalize repeated slashes or dots to a single value
fb1bfd6804 dhcp6: do not use T1 and T2 longer than one provided by the lease
ca43a515c6 network: fix implicit type conversion warning by GCC-10
421eca7edf bootspec: parse random-seed-mode line in loader.conf
34e21fc6de sd-boot: fix typo
df7b3a05c9 test: Synchronize journal before reading from it
9326efee71 sd-bus: fix introspection bug in signal parameter names
7bbdc56aaf efi: fix build.
486f8ca365 generator: order growfs for the root fs after systemd-remount-fs
56d442e29d loginctl: use /org/freedesktop/login1/session/auto when "lock-session" is called without argument
6ed1152282 Documentation update for x-systemd.{before,after}
dba3efa34a man: fix typo in systemd.netdev Xfrm example
6f9a8621d8 timesyncd: log louder when we refuse a server due to root distance
0637255d3b resolved: drop DNSSEC root key that is not valid anymore
9a135baa40 journal: don't use startswith() on something that is not a NUL-terminated string
1ff3972a0f test: add test for https://github.com/systemd/systemd/issues/14560
cac79b606b core: make sure StandardInput=file: doesn't get dup'ed to stdout/stderr by default
906ba9a67d pkgconf: add full generator paths
01b93e2c68 tree-wide: we forgot to destroy some bus errors
5c9455657e mount: make checks on perpetual mount units more lax
28c58beca1 core: never allow perpetual units to be masked
d3b044b3e7 typo: "May modify to" -> "May modify"
fd378d3d3c sysctl: downgrade message when we have no permission
db4fbf5c61 Clarify journald.conf MaxLevelStore documentation
c8365f71c0 logind: refuse overriding idle hint on tty sessions
cd91f567b6 cgroup: update only siblings that got realized once
c672dcd212 mount: mark an existing "mounting" unit from /proc/self/mountinfo as "just_mounted"
a592a40564 journalctl: Correctly handle combination of --reverse and --lines (fixes #1596)
0aa144ab1d journalctl: Correctly handle --show-cursor in combination with --until or --since and --reverse
3b803a5e66 core: fix re-realization of cgroup siblings
7549dd40fc core: propagate service state to socket in more load states
af6df343b2 man: describe "symlink" and "systemctl link" explicitly in UNIT FILE LOAD PATH
a3c1ce25a7 core: be more restrictive on the dependency types we allow to be created transiently
2b9ec8384c udev: don't import parent ID_FS_ data on partitions
ecd95c507c man: fix option name
0d4f06156b Support Plugable UD-PRO8 dock
7fba869abd gpt-auto: don't assume XBOOTLDR is vfat
494c281b67 man: fix documentation of IBM VIO device naming
7271fb056a man: slightly extend documentation on difference between ID_NET_NAME_ONBOARD and ID_NET_LABEL_ONBOARD
852ae28e68 boot: fix osrel parser
2613200370 udev: do not use exact match of file permission
46477397c1 network: lower the log-level of harmless message
7163b1fe86 hwdb: ignore keys added in kernel 5.5
92f90837dc systemctl: skip non-existent units in the 'cat' verb
a67227cc99 systemd.exec: document the file system for EnvironmentFile paths
cfb4c0aca5 systemd-analyze: fixed typo in documentation
017fddd998 test-condition: fix group check condition
9d5e3cb774 umount: show correct error message
252f1a5277 Revert "Drop dbus activation stub service"
20bbfac95e man: add section about user manager units
c93ef60212 man: add remote-*.targets to the bootup sequence
55e0f99689 time-util: also use 32bit hack on EOVERFLOW
7afe2ecb02 [man] note which UID ranges will get user journals
a43b67a4c9 [man] fix URL
dedb26a8d6 analyze: badness if neither of RootImage and RootDirectory exists
714c93862a initrd: make udev cleanup service confict trigger and settle too
8932407ae1 man: we support growing xfs too these days
19af11dc07 time-util: deal with systems where userspace has 64bit time_t but kernel does not
c90229d81d [import] fix stdin/stdout pipe behavior in import/export tar/raw
39910328da cryptsetup-generator: unconfuse writing of the device timeout
fc5e6c87a4 shared/install: log syntax error for invalid DefaultInstance=
409c94a407 shared/install: provide a nicer error message for invalid WantedBy=/Required= values
70e8c1978a seccomp: real syscall numbers are >= 0
a0a1977d9a seccomp: more comprehensive protection against libseccomp's __NR_xyz namespace invasion
7f936c60d5 network: set ipv6 mtu after link-up or device mtu change
b59d88cc62 man: fix typo in net-naming-scheme man page
c5e5ac0958 man: fix typos (#14304)
9a2f26564d ipv4ll: do not reset conflict counter on restart
bc9e1ebfdd Fix typo (duplicate "or")
c6cb71b7e7 network: if /sys is rw, then udev should be around
67dcdfd956 nspawn: do not fail if udev is not running
a7938a1bc6 Create parent directories when creating systemd-private subdirs
53aa44f873 network: do not return error but return UINT64_MAX if speed meter is disabled
65abf12674 core: swap priority can be negative
b1cf452ff5 systemctl: enhance message about kexec missing kernel
07a0e5b425 man: use mkswap@ instead of makeswap@
57dc017c6b journald: don't ask for the machine ID if we don't need it
ac392a57c0 journalctl: pager_close() calls fflush(stdout) anyway as first thing
ee7dfadc82 journald: remove unused field
471073f1b5 journalctl: return EOPNOTSUPP if pcre is not enabled
002ededb61 man: drop reference to machined, add one for journald instead
fd3bd4be3b pid1: make TimeoutAbortSec settable for transient units
eb2ef4d664 pid1: fix setting of DefaultTimeoutAbortSec
1d75e29b23 shared/ask-password-api: modify keyctl break value
a16b1ee7e5 cryptsetup: reduce the chance that we will be OOM killed
4836fb010a core: write out correct field name when creating transient service units
3e2c547f6d udevd: don't use monitor after manager_exit()
d42f7d45a8 Revert "udevd: fix crash when workers time out after exit is signal caught"
c9a287eee8 man/systemd.link: Add missing verb *be*
a67a3ae04b man: document all pager variables for systemctl and systemd
3a8fce3f38 core.timer: fix "systemd-analyze dump" and docs syntax inconsistencies wrt OnTimezoneChange=
fdffd284b6 core/service: downgrade "scheduling restart" message to debug
733e7f19d3 travis: add missing closing quote sign
0d7b7817fc systemd-tmpfiles: don't install timer when service isn't installed either
0e7f83cd2b pam_systemd: prolong method call timeout when allocating session

(cherry picked from commit 53488b27be)
2020-03-01 10:16:37 -05:00
worldofpeace
a57de92c5e Merge pull request #81368 from prusnak/openssh-20.03
[20.03] openssh: 8.1p1 -> 8.2p1
2020-03-01 15:14:52 +00:00
Maximilian Bosch
ebc9620c3f bandwhich: 0.11.0 -> 0.12.0
https://github.com/imsnif/bandwhich/releases/tag/0.12.0
(cherry picked from commit c3b331a777)
2020-03-01 16:01:20 +01:00
worldofpeace
699a8d4e9b libgpod: also remove mutagen
I think this was my mistake. This is also a python2 dependency
that should have been removed with pygobject.

(cherry picked from commit e50306dfe3)
2020-03-01 09:56:52 -05:00
worldofpeace
550d6afe6b ideogram: 1.3.2 -> 1.3.3
better icon https://github.com/cassidyjames/ideogram/releases/tag/1.3.3

(cherry picked from commit 4b771aa2e6)
2020-03-01 09:37:46 -05:00
worldofpeace
a345d00fb1 pantheon.elementary-gtk-theme: 5.4.1 -> 5.4.2
https://github.com/elementary/stylesheet/compare/5.4.1...5.4.2
(cherry picked from commit dab121ac69)
2020-03-01 09:37:45 -05:00
worldofpeace
a39dfc11a5 pantheon.elementary-code: 3.2.0 -> 3.3.0
https://github.com/elementary/code/releases/tag/3.3.0
(cherry picked from commit 8acbc62f4e)
2020-03-01 09:37:45 -05:00
worldofpeace
a5e230448b ipmitool: fix compile on darwin
(cherry picked from commit 82217553b0)
2020-03-01 09:10:48 -05:00
Florian Klink
5c025bcc55 ipmitool: cleanup expression
* remove no-op substitution of s6_addr16 -> s6_addr

This string doesn't exist anymore in that file.

* clean up configureFlags

(cherry picked from commit 43ec75d470)
2020-03-01 09:10:48 -05:00
Andreas Rammhold
26f4dec550 ipmitool: migrate to openssl 1.1
This adds a patch from debian to switch ipmitool to openssl 1.1.
Upstream seems to already carry a version of this but that is yet to be
part of a release.

(cherry picked from commit ad19bb5ff8)
2020-03-01 09:10:47 -05:00
R. RyanTM
93137b171c aesop: 1.2.3 -> 1.2.4
(cherry picked from commit 5668479498)
2020-03-01 09:07:29 -05:00
worldofpeace
43115ebd79 Merge pull request #81119 from tilpner/gitdaemon-usercreation-backport
[20.03] nixos/git-daemon: only create git user if it will be used
2020-03-01 14:05:24 +00:00
Martin Weinelt
a79920d539 nixos/acme: apply chmod and ownership unconditionally
Also separate directory and file permissions so the certificate files
don't end up with the executable bit.

Fixes #81335

(cherry picked from commit 3575555fa8)
2020-03-01 14:41:51 +01:00
Martin Weinelt
bbd9e39758 nixos/acme: renew after rebuild and on boot
Fixes #81069

(cherry picked from commit 5ff9441471)
2020-03-01 14:41:29 +01:00
worldofpeace
78414b688c Merge pull request #81409 from smaret/release-20.03
[ZHF] pythonPackages.astroquery 0.3.10 -> 0.4
2020-03-01 13:37:49 +00:00
worldofpeace
f8601ccd24 nixos/rngd: fix clean shutdown
It seems disabling DefaultDependencies
removes these implicit dependencies [0] that
we needed for shutdown to happen cleanly.

Fixes #80871

[0]: https://www.freedesktop.org/software/systemd/man/systemd.service.html#Default%20Dependencies

(cherry picked from commit fa76150235)
2020-03-01 06:45:29 -05:00
Sergey Lukjanov
c961031be5 smartmontools: add Frostman to maintainers
(cherry picked from commit e85f0a8970)
2020-03-01 00:22:02 -08:00
Sergey Lukjanov
5d19f2497f smartmontools: 7.0 -> 7.1 and devicedb updated to latest
(cherry picked from commit 38b0c55601)
2020-03-01 00:21:53 -08:00
xbreak
aa119502bc pythonPackages.astroquery 0.3.10 -> 0.4
Tests are disabled until pytest-astropy is updated with
pytest-astropy-header.

(cherry picked from commit a5e82af9d8)
2020-02-29 22:38:33 +01:00
Ben Wolsieffer
4f5c57745c libyamlcpp: actually build shared libraries (#81051)
(cherry picked from commit be41f703ad)
2020-02-29 15:32:17 -05:00
Ben Wolsieffer
7f4770a7c9 libyamlcpp: don't use multiple outputs
This package uses CMake's install(EXPORT ...) command which assumes that
libraries are installed in the same location as the CMake files.

(cherry picked from commit bdbbe6f34f)
2020-02-29 15:32:14 -05:00
Emily
f2c522a1af nixos/acme: adjust renewal timer options
The current weekly setting causes every NixOS server to try to renew
its certificate at midnight on the dot on Monday. This contributes to
the general problem of periodic load spikes for Let's Encrypt; NixOS
is probably not a major contributor to that problem, but we can lead by
example by picking good defaults here.

The values here were chosen after consulting with @yuriks, an SRE at
Let's Encrypt:

* Randomize the time certificates are renewed within a 24 hour period.

* Check for renewal every 24 hours, to ensure the certificate is always
  renewed before an expiry notice is sent out.

* Increase the AccuracySec (thus lowering the accuracy(!)), so that
  systemd can coalesce the renewal with other timers being run.

  (You might be worried that this would defeat the purpose of the time
  skewing, but systemd is documented as avoiding this by picking a
  random time.)

(cherry picked from commit 7b14bbd734)
2020-02-29 14:03:50 +00:00
Pavol Rusnak
811013c1a2 openssh_hpn: 7.8p1 -> 8.1p1
fix build failure

(cherry picked from commit 205f42b142)
2020-02-29 14:05:12 +01:00
Pavol Rusnak
f93be3ed16 openssh: 8.1p1 -> 8.2p1
https://www.openssh.com/txt/release-8.2

add libfido2 to enable hardware tokens support added in this release

(cherry picked from commit 44864b292f)
2020-02-29 14:05:08 +01:00
Artemis Tosini
9ea34a5bb8 libfido2: add macOS support
* pass IOKit to libfido2
* Add a patch so that cmake uses lld flags when linking
* Upgrade from 1.3.0 to 1.3.1 (based off #80781)
* Specify CMAKE_INSTALL_LIBDIR so that the demo binaries link
  correctly on macOS and libfido2.pc specifies correct arguments

(cherry picked from commit 099359afc7)
2020-02-29 14:03:04 +01:00
Marek Mahut
f06ab62d84 libfido2: evaluate systemd only on Linux
(cherry picked from commit 1ea0a243d2)
2020-02-29 14:02:58 +01:00
Marek Mahut
7f3cf25977 libfido2: linux build only
(cherry picked from commit 852d2bcfd4)
2020-02-29 14:02:54 +01:00
worldofpeace
f3fa308f33 Merge branch 'release-20.03' into staging-20.03 2020-02-29 01:02:57 -05:00
worldofpeace
d8e6050fcb Merge branch 'staging-20.03' into release-20.03 2020-02-29 00:59:37 -05:00
Michael Alan Dorman
4f8bc8e10b pam_ssh_agent_auth: fix dependency on insecure openssl
There have been a couple of patches floating around for about the last
18 months.  While they originated with FreeBSD, but they've been
adopted by Gentoo and Debian as well---and the most straightforward
way to get access to them was from the Debian repository.

(cherry picked from commit b6b3e04759)
2020-02-28 21:05:32 -05:00
worldofpeace
271707af04 Merge pull request #81337 from worldofpeace/crystal-openssl-backport
[20.03] crystal: use latest openssl
2020-02-29 02:01:12 +00:00
Yegor Timoshenko
bb2678c1e6 Merge pull request #81340 from emilazy/fix-gdouros-font-licenses-20.03
[20.03] fonts/gdouros: correct license to unfree
2020-02-29 04:03:40 +03:00
Emily
1c7e269e81 fonts/gdouros: correct license to unfree
(cherry picked from commit 05a9b7fe2a)
2020-02-29 01:00:17 +00:00
R. RyanTM
01ad75043b gnome3.gnome-characters: 3.32.1 -> 3.34.0
(cherry picked from commit c6feb8a98a)
2020-02-28 19:36:13 -05:00
worldofpeace
8ee5939798 pantheon.elementary-greeter: 5.0.1 -> 5.0.2
https://github.com/elementary/greeter/releases/tag/5.0.2
(cherry picked from commit b4943b0180)
2020-02-28 19:36:07 -05:00
worldofpeace
92233e1714 pantheon.switchboard-plug-bluetooth: 2.3.0 -> 2.3.1
https://github.com/elementary/switchboard-plug-bluetooth/releases/tag/2.3.1
(cherry picked from commit ecca257d73)
2020-02-28 19:36:07 -05:00
worldofpeace
a112634861 pantheon.sideload: 1.0.0 -> 1.0.1
https://github.com/elementary/sideload/releases/tag/1.0.1
(cherry picked from commit e85290ba54)
2020-02-28 19:36:07 -05:00
worldofpeace
1124b7cde5 pantheon.appcenter: 3..2.1 -> 3.2.2
https://github.com/elementary/appcenter/releases/tag/3.2.2
(cherry picked from commit a54dcfe076)
2020-02-28 19:36:07 -05:00
worldofpeace
53b9ac8408 Merge pull request #81310 from emilazy/fix-pypy-openssl-20.03
[20.03] pypy{,3}: use openssl_1_1
2020-02-29 00:32:13 +00:00
worldofpeace
01826800d6 crystal: use latest openssl
(cherry picked from commit e10900b068)
2020-02-28 19:13:16 -05:00
worldofpeace
276e1ee942 exiv2: fix exiv2.pc file
This fix comes from #71669.

(cherry picked from commit ff41002b80)
2020-02-28 19:11:35 -05:00
arcnmx
0efe95b6b3 elinks: build with openssl 1.1
(cherry picked from commit f9a682c0cc)
2020-02-28 19:07:16 -05:00
Tim Steinbach
8764fb751d linux: 5.5.6 -> 5.5.7 2020-02-28 15:46:17 -05:00
Tim Steinbach
16c150cf52 linux: 5.4.22 -> 5.4.23 2020-02-28 15:46:17 -05:00
Michael Weiss
60855a7c19 html-proofer: Update the dependencies (security, CVE-2020-7595)
This updates nokogiri to 1.10.8 for CVE-2020-7595 [0].

[0]: https://github.com/sparklemotion/nokogiri/issues/1992

(cherry picked from commit ad0c620a08)
2020-02-28 21:22:52 +01:00
Michael Weiss
31b4a68afe jekyll: Update the dependencies (security, CVE-2020-7595)
This updates nokogiri to 1.10.8 for CVE-2020-7595 [0].

[0]: https://github.com/sparklemotion/nokogiri/issues/1992

(cherry picked from commit 9b0defc765)
2020-02-28 21:22:52 +01:00
Michael Weiss
81a208a88c gollum: Update the dependencies (security, CVE-2020-7595)
This updates nokogiri to 1.10.8 for CVE-2020-7595 [0].

[0]: https://github.com/sparklemotion/nokogiri/issues/1992

(cherry picked from commit a0d61c0135)
2020-02-28 21:22:52 +01:00
Emily
9a1966e79e pypy{,3}: use openssl_1_1
"We now support building PyPy with OpenSSL 1.1 in our built-in _ssl
module, as well as maintaining support for previous versions."
-- https://pypy.readthedocs.io/en/latest/release-pypy2.7-v5.6.0.html

(cherry picked from commit 6d3fc35620)
2020-02-28 18:14:02 +00:00
Tim Steinbach
8dc1ffb22f linux: 4.9.214 -> 4.9.215 2020-02-28 11:11:05 -05:00
Tim Steinbach
c97e547f46 linux: 4.4.214 -> 4.4.215 2020-02-28 11:11:05 -05:00
Tim Steinbach
9239f78bbf linux: 4.19.106 -> 4.19.107 2020-02-28 11:11:05 -05:00
Tim Steinbach
0477af2036 linux: 4.14.171 -> 4.14.172 2020-02-28 11:11:05 -05:00
Mario Rodas
89536cd763 postgresqlPackages.postgis: 3.0.0 -> 3.0.1
Release notes: https://postgis.net/2020/02/20/postgis-3.0.1/

(cherry picked from commit 53a5d6918a)
2020-02-28 04:20:00 -05:00
Eelco Dolstra
87e543dad4 enable-coverage-instrumentation.sh: Fix unbound variable error
https://hydra.nixos.org/build/113299582
(cherry picked from commit 4c0821461e)
2020-02-28 12:34:59 +01:00
worldofpeace
a8dd7b2370 Merge pull request #81216 from jonringer/backport-plasma5-fix
[20.03] nixos/plasma5: Fix activation script when XDG_CONFIG_HOME is unset
2020-02-28 06:33:58 +00:00
Sergey Lukjanov
e378b239f6 grafana: switch to latest go
(cherry picked from commit c29045c0908e4512d08a0510deb52a1df7ee0bbc)
2020-02-27 21:47:39 -08:00
Sergey Lukjanov
3041889bc6 go_1_14: init at 1.14 and switch to it
(cherry picked from commit 8c4a92887fc4c827d6f2fec9c146f5a947cfec7e)
2020-02-27 21:47:29 -08:00
Thomas Tuegel
45d1f19d12 nixos/plasma5: Fix activation script when XDG_CONFIG_HOME is unset
Fixes #80713

(cherry picked from commit d3e3cc1225)
2020-02-27 14:32:51 -08:00
Michele Guerini Rocco
a2bb258c60 Merge pull request #81043 from wd15/sfepy-2019.4
[20.03] pythonPackages.sfepy: 2019.2 -> 2019.4
2020-02-27 22:26:44 +01:00
Maximilian Bosch
abbaed1165 Merge #81155: wireshark: 3.2.1 -> 3.2.2 (security)
(cherry picked from commit 250daba4be)
https://www.wireshark.org/docs/relnotes/wireshark-3.2.2.html
I re-tested it still builds.
2020-02-27 20:05:23 +01:00
Timo Kaufmann
98960342e0 Merge pull request #80735 from timokau/maven-jdk-overridable-20.09
[20.03] maven: make jdk overridable
2020-02-27 16:09:08 +00:00
Jörg Thalheim
287e7f9d60 Merge pull request #81022 from mmilata/parsoid-20.03
[20.03] nixos/parsoid: fix service by reinstating nodePackages.parsoid
2020-02-27 15:59:06 +00:00
Martin Milata
a65ea62ef6 nixos/parsoid: enable systemd sandboxing
(cherry picked from commit 9b0a9577f7)
2020-02-27 15:09:40 +01:00
Martin Milata
c83c446489 nixos/parsoid: fix package name
Original package was removed in 2b8cde0ce2.

(cherry picked from commit 3b27f4d945)
2020-02-27 15:09:40 +01:00
Martin Milata
e83eddef8a nodePackages.parsoid: init at 0.11.0
(not-really-cherry-picked from commit 9264a0fabf)
2020-02-27 15:09:40 +01:00
Maximilian Bosch
f823335caa clipman: 1.3.0 -> 1.4.0
https://github.com/yory8/clipman/releases/tag/v1.4.0
(cherry picked from commit 57f2ea5ca1)
2020-02-27 11:44:54 +01:00
Michael Weiss
be346a1f4b chromium: 80.0.3987.116 -> 80.0.3987.122
https://chromereleases.googleblog.com/2020/02/stable-channel-update-for-desktop_24.html

This update includes 3 security fixes.

CVEs:
CVE-2020-6407 CVE-2020-6418

(cherry picked from commit 8be566d288)
Backport of #81016.
2020-02-26 19:29:29 +01:00
Jörg Thalheim
d4cb3da747 Merge #81122 nixos/kresd: never force extraFeatures = false
(cherry picked from commit 8e1350e392)
2020-02-26 17:22:18 +01:00
Michele Guerini Rocco
ef54b6081e Merge pull request #81041 from wd15/fipy-3.4.1
[20.03] pythonPackages.fipy: 3.3 -> 3.4.1
2020-02-26 15:38:52 +01:00
tilpner
ee4421d18e nixos/git-daemon: only create git user if it will be used
(cherry picked from commit 6df119a6ec)
2020-02-26 15:09:03 +01:00
Michele Guerini Rocco
9222921433 Merge pull request #81115 from smaret/release-20.03
[ZHF] pythonPackages.reproject: fix tests
2020-02-26 14:34:26 +01:00
Sébastien Maret
c65b4ef85a pythonPackages.reproject: fix tests
Co-Authored-By: Jon <jonringer@users.noreply.github.com>
(cherry picked from commit a0f50fe24b)
2020-02-26 13:22:13 +01:00
worldofpeace
8bcc32a684 Merge pull request #81080 from worldofpeace/backport-80698
[20.03] p11-kit: 0.23.19 -> 0.23.20
2020-02-26 02:06:00 -05:00
worldofpeace
8d49ebf488 Merge pull request #81064 from Thra11/release-20.03
[20.03] R: fix build on aarch64 by removing a failing test
2020-02-25 21:10:07 -05:00
Tor Hedin Brønner
ac5c544fe5 p11-kit: 0.23.19 -> 0.23.20
Small bug fix release. Fixes a bunch of flatpak issues (eg. no playback
on spotify).

news: https://github.com/p11-glue/p11-kit/releases/tag/0.23.20
(cherry picked from commit bbbb49c450)
2020-02-25 20:51:16 -05:00
worldofpeace
2424e5ff16 tikzit: use qt5's mkDerivation
(cherry picked from commit ffe40094ab)
2020-02-25 20:12:56 -05:00
worldofpeace
309dee986c qgo: use qt5's mkDerivation
(cherry picked from commit f8da067a2a)
2020-02-25 20:12:56 -05:00
worldofpeace
d343ab805d qview: use qt5's mkDerivation
(cherry picked from commit a8eba26d2c)
2020-02-25 20:12:56 -05:00
worldofpeace
7e9bdd9743 seafile-client: use qt5's mkDerivation
Fixes #80976

(cherry picked from commit 43bb5bffda)
2020-02-25 20:12:56 -05:00
Jonathan Ringer
fb211847c9 discord-canary: 0.0.98 -> 0.0.102
(cherry picked from commit da5e340f74)
2020-02-25 16:40:22 -08:00
Jonathan Ringer
bdfea8ed3d discord-ptb: 0.0.16 -> 0.0.18
(cherry picked from commit e1d05e30f8)
2020-02-25 16:40:22 -08:00
kraem
5af6c35c2e discord: 0.0.9 -> 0.0.10
(cherry picked from commit 3ec9925f21)
2020-02-25 16:40:22 -08:00
Silvan Mosberger
1de1221476 Merge pull request #80862 from emilazy/acme-fullchain-20.03
[20.03] nixos/acme: move the crt to fullchain.pem
2020-02-26 01:00:38 +01:00
Florian Klink
158cd27ae7 Merge pull request #80995 from worldofpeace/backport-80985
[20.03] perl-packages: don't use openssl_1_0_2
2020-02-25 15:12:15 -08:00
worldofpeace
c5e6fbd203 vde2: fix build with latest openssl
(cherry picked from commit 06238ced3c)
2020-02-25 14:43:27 -08:00
worldofpeace
1a450f03c9 vde2: update homepage
(cherry picked from commit e5c3bb4103)
2020-02-25 14:43:27 -08:00
Tom Hall
5675bfa44f R: fix build on aarch64 by removing a failing test
(cherry picked from commit ae9e09a2e1)

Required to fix R on aarch64, pending upstream fix
2020-02-25 22:25:42 +00:00
Tom Hall
fcf48b8583 R: Enable java support on all platforms
(cherry picked from commit 4e5aeca90b)

This is required to fix R on aarch64
2020-02-25 22:24:58 +00:00
Lancelot SIX
ae0222c27e Merge pull request #81036 from veprbl/pr/blender_2_82_backport
[20.03] blender: 2.81a -> 2.82
2020-02-25 21:50:28 +01:00
Aaron Andersen
7161eb21ca mariadb: do not delete runtime plugins from package
(cherry picked from commit 951ceca9df)
2020-02-25 20:10:21 +00:00
Fabian Möller
42cca0d8ea mariadb-connector-c: add mysqlclient.pc pkgconfig symlink
(cherry picked from commit 349a991bfb)
2020-02-25 20:18:42 +01:00
Maximilian Bosch
08b1316313 nixos/networkd: disable vrf sub-test which tests the behavior of tcp-packets
The subtest was mainly written to demonstrate the VRF-issues with a
5.x-kernel. However this breaks the entire test now as we have 5.4 as
default kernel. Disabling the test for now, I still need to find some
time to investigate.

ZHF: #80379
(cherry picked from commit 58c7a952a1)
2020-02-25 20:00:19 +01:00
Daniel Wheeler
f6fa019c4d pythonPackages.sfepy: 2019.2 -> 2019.4
- Bump the version number to fix incompatibility with Numpy 1.18.1
 - Remove broken test to fix incompatibility with Numpy 1.18.1
2020-02-25 13:39:13 -05:00
Daniel Wheeler
25a78baa88 pythonPackages.fipy: 3.3 -> 3.4.1 2020-02-25 13:23:04 -05:00
Gabriel Ebner
d0a51428a6 blender: enable alembic
(cherry picked from commit 128c99978d)

cc #80155
2020-02-25 11:44:59 -05:00
Dmitry Kalinkin
ae9aa3c0a6 blender: fix build on darwin
We don't compile blender with alembic. The linux build is able to detect
that, but this is not done for darwin. This explicitly disables alembic
to fix blender build on darwin.

(cherry picked from commit ac560382c5)

cc #80155
2020-02-25 11:44:56 -05:00
R. RyanTM
879ce0f912 blender: 2.81a -> 2.82
(cherry picked from commit 8a2c2e48b4)

cc #80155
2020-02-25 11:44:35 -05:00
Andrew Childs
69b2c24e90 liblinear: use absolute install name on Darwin (#81015)
nixpkgs prefers absolute install names. Replace the manually specified
relative install name with the standard hook.

(cherry picked from commit 1a73b69e20)

cc #81015
2020-02-25 10:32:54 -05:00
Michele Guerini Rocco
d68b004227 Merge pull request #81020 from vanschelven/backport-80699
python.pkgs.httpretty: disable flaky test
2020-02-25 15:58:04 +01:00
Klaas van Schelven
78d92b5e8c python.pkgs.httpretty: disable flaky test
As noted upstream: https://github.com/gabrielfalcao/HTTPretty/issues/376

(cherry picked from commit c597007cce)
2020-02-25 14:32:33 +01:00
Vladimír Čunát
9fbbbf7ccc Merge branch 'staging-20.03' into release-20.03 2020-02-25 14:09:16 +01:00
rnhmjoj
88c1b21c59 python2Packages.jinja2: disable tests on 32bit systems
(cherry picked from commit 655b9c3400)
2020-02-25 01:33:20 +01:00
Shea Levy
62d454c104 nix-plugins: Build against default nix.
(cherry picked from commit 403280a516)
2020-02-24 19:06:49 -05:00
worldofpeace
6c14cc10fa Merge pull request #80993 from andir/20.03/opensmtpd
[20.03] opensmtpd: bump to 6.6.4p1
2020-02-24 18:58:47 -05:00
worldofpeace
19e927a110 perl-packages: don't use openssl_1_0_2
(cherry picked from commit 1b00f471dd)
2020-02-24 18:54:17 -05:00
Andreas Rammhold
c87bd29299 opensmtpd: 6.6.3p1 -> 6.6.4p1
Release notes aren't available at this time [1] it is likely to be
related to a recent mail to oss-security (either [2] or [3]).

[1] https://www.mail-archive.com/misc@opensmtpd.org/msg04888.html
[2] https://www.openwall.com/lists/oss-security/2020/02/24/5
[3] https://www.openwall.com/lists/oss-security/2020/02/24/4

(cherry picked from commit 09725e5f9e)
2020-02-24 23:58:39 +01:00
R. RyanTM
79104fc7f7 opensmtpd: 6.6.2p1 -> 6.6.3p1
(cherry picked from commit 77da4954da)
2020-02-24 23:58:26 +01:00
worldofpeace
69a8b0af72 Merge pull request #80935 from maxxk/whitebox-tools_1.2.0-stable
[20.03] whitebox-tools: 0.16.0 -> 1.2.0
2020-02-24 17:56:26 -05:00
Graham Christensen
bf4a8583ec Merge pull request #80988 from grahamc/expect-backports
Backport  `expect` stty fix
2020-02-24 17:45:49 -05:00
Jonathan Ringer
dd327fc0c2 expect: use postPatch for stty patch
(cherry picked from commit 46a93a7fdb)
2020-02-24 17:27:01 -05:00
Bas van Dijk
f02510278c expect: patch configure after the autoreconf phase, not before it
Fixes: #79863
(cherry picked from commit b30dc0ff89)
2020-02-24 17:26:56 -05:00
worldofpeace
39f8258199 Merge pull request #80938 from maxxk/pyfribidi-fix-stable
[20.03] pythonPackages.pyfribidi: fix build
2020-02-24 17:24:19 -05:00
Michael Weiss
e464f78330 ettercap: Switch to OpenSSL 1.1.1
I noticed that Ettercap was listed in #80746.

(cherry picked from commit ee8935d635)
2020-02-24 16:34:17 -05:00
Fabian Möller
eb33682edb seasocks: remove unneeded patch
(cherry picked from commit 2bd5d8c04a)
2020-02-24 16:31:43 -05:00
Maciej Krüger
834841cd1e ettercap: fix pango not finding hb.h from harfbuzz (#75789)
(cherry picked from commit b9f7819bd3)
2020-02-24 15:50:21 -05:00
Michael Weiss
b14e4e9f26 Merge pull request #80974 from B4dM4n/backport-mysql-connector-fix-build
[20.03] pythonPackages.mysql-connector: fix build for python != python3
2020-02-24 21:13:40 +01:00
R. RyanTM
a03a590ef6 python27Packages.mockito: 1.2.0 -> 1.2.1
(cherry picked from commit 745750d685)
Signed-off-by: Lancelot SIX <lsix@lancelotsix.com>
2020-02-24 20:34:54 +01:00
Fabian Möller
9d346c45c3 pythonPackages.mysql-connector: fix build for python != python3
(cherry picked from commit 09796a644c)
2020-02-24 19:18:11 +01:00
Michael Lingelbach
2eee73e4bb python.pkgs.pybullet: 2.6.1 -> 2.6.6
Update static-libs.patch

Add numpy to pybullet propagatedBuildInputs

Added numpy to build inputs

(cherry picked from commit c296c062232b503602c9779737c2e0e200cd732a)
2020-02-24 07:50:00 -08:00
R. RyanTM
a1b08eda7e python27Packages.django-gravatar2: 1.4.2 -> 1.4.4
(cherry picked from commit e648441eef)
Signed-off-by: Lancelot SIX <lsix@lancelotsix.com>
2020-02-24 16:00:33 +01:00
Tim Steinbach
5f71796a07 linux: 5.5.5 -> 5.5.6 2020-02-24 08:21:16 -05:00
Tim Steinbach
805c05d326 linux: 5.4.21 -> 5.4.22 2020-02-24 08:21:16 -05:00
Tim Steinbach
4b7c05ece9 linux: 4.19.105 -> 4.19.106 2020-02-24 08:21:16 -05:00
rnhmjoj
b4db2d9239 pythonPackages.pysaml2: fix tests on 32bit systems
(cherry picked from commit 60575b2fb7)
2020-02-24 12:41:04 +01:00
Eelco Dolstra
9dc6361b4d nixFlakes: 2.4pre20200207_d2032ed -> 2.4pre20200220_4a4521f
(cherry picked from commit 39892985b0)
2020-02-24 11:01:10 +01:00
Maxim Krivchikov
382f6539f5 Add patch for python2 build with clang
(cherry picked from commit a517238f9f)
2020-02-24 08:08:52 +00:00
Maxim Krivchikov
ca8053c482 pythonPackages.pyfribidi: fix build
(cherry picked from commit 4644a4c482)
2020-02-24 08:08:42 +00:00
Maxim Krivchikov
9fd35b564c whitebox-tools: 0.16.0 -> 1.2.0
(cherry picked from commit bba9b7fe6e)
Build for v0.16.0 fails in newer Rust compilers.
2020-02-24 07:38:14 +00:00
worldofpeace
68df00b0ba Merge pull request #80835 from worldofpeace/keymap-20.03
[20.03] release-combined: readd keymap tests (again)
2020-02-23 19:11:40 -05:00
worldofpeace
83d73a107d Merge pull request #80898 from xfix/kodi-fix-build-20.03
[20.03] kodi: fix build
2020-02-23 17:59:33 -05:00
Maximilian Bosch
73d246fd80 nixos/nixos-container: use custom path if specified by --nixos-path
(cherry picked from commit 31bbcc21d3)
2020-02-23 22:22:17 +01:00
Maximilian Bosch
3d9983b700 nixos/nixos-container: ensure that the state-dir is cleaned up if a build fails
(cherry picked from commit 93943acbc5)
2020-02-23 22:22:17 +01:00
Samuel Dionne-Riel
b60560ee5c runInLinuxVM: Ensure tools requiring /etc/passwd work
This includes, but is not limited to:

 * whoami
 * nix >= 2.3.1

See

 * https://github.com/NixOS/nixpkgs/issues/71157
 * https://github.com/NixOS/nixops/issues/1216
 * https://github.com/nix-community/nixops-libvirtd/issues/5

(cherry picked from commit 687e2195d8)
2020-02-23 16:10:58 -05:00
Maxim Krivchikov
25d1554fd8 pythonPackages.ldaptor: fix build
(cherry picked from commit 50f3704c2f)
2020-02-23 12:25:22 -08:00
Maxim Krivchikov
8a8a45f5db python27Packages.seaborn: remove FRidh from maintainers
(cherry picked from commit d6115b9235c49054638d7460dfe6eb7c2900f553)
2020-02-23 12:25:08 -08:00
Maxim Krivchikov
250a45e6dd pythonPackages.seaborn: use v0.9.1 for python 2
required for poretools

(cherry picked from commit 7045c74cb2abb6285867a51438f5ef13851f7cf3)
2020-02-23 12:25:08 -08:00
Konrad Borowski
aba83042f3 kodi: fix build
(cherry picked from commit 69668e93d8)
2020-02-23 17:13:39 +01:00
worldofpeace
04aca9ac24 maintainers: correct my name stylization
Out of many variations, it's almost never like that.

(cherry picked from commit c0c1f11889)
2020-02-23 09:28:00 -05:00
worldofpeace
ddbb15cc38 Merge pull request #80891 from andir/20.03/firefox
[20.03] firefox cleanup
2020-02-23 07:56:58 -05:00
tobim
7a15ea936d nixos/gdm: Fix pulseaudio tmpfiles structure (#80274)
* nixos/gdm: Fix pulseaudio tmpfiles structure

Fix the following startup failure of the sound service in the gdm
session that was introduced by #75893:
```
Feb 16 11:44:15 qp pulseaudio[1432]: W: [pulseaudio] core-util.c: Failed to open configuration file '/run/gdm/.config/pulse//daemon.conf': Not a directory
Feb 16 11:44:15 qp pulseaudio[1432]: W: [pulseaudio] daemon-conf.c: Failed to open configuration file: Not a directory
Feb 16 11:44:15 qp systemd[1380]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Feb 16 11:44:15 qp systemd[1380]: pulseaudio.service: Failed with result 'exit-code'.
Feb 16 11:44:15 qp systemd[1380]: Failed to start Sound Service.
```

Co-authored-by: worldofpeace <worldofpeace@protonmail.ch>
(cherry picked from commit 44a4a3839c)
2020-02-23 07:51:41 -05:00
Andreas Rammhold
8924bb957f firefox: remove unused function arguments
(cherry picked from commit 9fd425e56f)
2020-02-23 13:14:50 +01:00
Andreas Rammhold
63b384c177 firefox: remove unused patches
(cherry picked from commit a5ae1b2ffd)
2020-02-23 13:14:38 +01:00
R. RyanTM
bcdcf1402b ideogram: 1.3.0 -> 1.3.2
(cherry picked from commit 6986f40254)
2020-02-23 06:44:03 -05:00
Cassidy Dingenskirchen
81e45e839e poetry: 0.12.17 -> 1.0.3
(cherry picked from commit 011e2d3a2dee4318b5e1c994f617b40263ef5828)
2020-02-23 08:59:44 +01:00
worldofpeace
164e588cd1 Merge pull request #80589 from worldofpeace/20.03-gnome-3.34.4
[20.03] GNOME 3.34.4 (minor rebuild)
2020-02-22 23:51:19 -05:00
Emily
f5749a733f nixos/acme: move the crt to fullchain.pem
lego already bundles the chain with the certificate,[1] so the current
code, designed for simp_le, was resulting in duplicate certificate
chains, manifesting as "Chain issues: Incorrect order, Extra certs" on
the Qualys SSL Server Test.

cert.pem stays around as a symlink for backwards compatibility.

[1] 5cdc0002e9/acme/api/certificate.go (L40-L44)

(cherry picked from commit 8ecbd97f82)
2020-02-23 04:17:47 +00:00
worldofpeace
4aaee9cc33 Merge pull request #80841 from worldofpeace/nm-1.22.8-20.03
[20.03] networkmanager: 1.22.6 -> 1.22.8
2020-02-22 20:58:00 -05:00
R. RyanTM
aa14f1bb30 networkmanager: 1.22.6 -> 1.22.8
(cherry picked from commit d7ceb1738e)
2020-02-22 18:21:20 -05:00
worldofpeace
10a25647c8 Merge branch 'release-20.03' into staging-20.03 2020-02-22 18:20:13 -05:00
Izorkin
153baa2674 mariadb: 10.3.20 -> 10.3.22
(cherry picked from commit e4f17a2b17)
2020-02-22 22:19:28 +00:00
worldofpeace
59db815c55 release-combined: readd keymap tests (again)
(cherry picked from commit a539bbf1ee)
2020-02-22 17:11:37 -05:00
Jonathan Ringer
64829beee1 azure-cli: 2.0.81 -> 2.1.0
(cherry picked from commit 4dd173560d)
2020-02-22 10:23:55 -08:00
Vladimír Čunát
2a810eb282 Merge #80802: netpbm: fix typo on substituteInPlace parameters
(cherry picked from commit d7266d00b2)
2020-02-22 17:55:01 +01:00
Graham Christensen
d31e383c44 Correct revcount diff (again) using the rev-list - method hydra uses. 75f604eb2c 2020-02-22 09:30:07 -05:00
Michael Weiss
56d398840f chromium: 80.0.3987.106 -> 80.0.3987.116
(cherry picked from commit 3e9d2f80a4)
Backport of #80615.
2020-02-22 11:51:19 +01:00
rnhmjoj
142dd6cb5d pythonPackages.pytest-timeout: disable flaky test
This should fix failing NixOS tests on i686-linux.
(cherry picked from commit c4865b8933)
2020-02-22 10:21:38 +01:00
Vladimír Čunát
4655c9d915 Merge #80766: brave: 1.1.23 -> 1.3.118 (in release-20.03) 2020-02-22 08:53:48 +01:00
Jeff Labonte
90451860b9 brave: 1.1.23 -> 1.3.118
(cherry picked from commit fa560fb30c)
(cherry picked from commit 9018faac96)
2020-02-21 23:37:58 -05:00
Jeff Labonte
27ac376b6f brave: add jefflabonte to maintainer list
(cherry picked from commit 9a4a2eb1d2)
2020-02-21 23:37:58 -05:00
Jeff Labonte
c42cf79a1e maintainers: add jefflabonte
(cherry picked from commit 2f0614bdcb)
2020-02-21 23:37:58 -05:00
Dmitry Kalinkin
67c24f6f8a lhapdf.pdf_sets: fix download url
(cherry picked from commit b83257ca5f)
2020-02-21 19:37:54 -05:00
Konrad Borowski
ebbc5462f1 cmake_2_8: fix build
(cherry picked from commit 4bad7d67cd)
2020-02-21 19:39:57 +01:00
Silvan Mosberger
87d6296fdb Merge pull request #80661 from xfix/kdepim-runtime-cherrypick
[r20.03] kdepim-runtime: Remove obsolete patch to fix compilation
2020-02-21 19:37:26 +01:00
Silvan Mosberger
93626f5cd0 turses: Fix build
(cherry picked from commit cf4130c9ec)
2020-02-21 19:08:15 +01:00
Sergey Lukjanov
74c61cd83c grafana: 6.6.1 -> 6.6.2
(cherry picked from commit 5b80220d53)
2020-02-21 18:37:17 +01:00
Aaron Olson
d10a0143d0 google-cloud-sdk: fix Darwin build by only stripping local symbols (#80554)
Darwin won't strip relocatable symbols, so strip only local symbols
from cygrpc.so

See also 6ceebc441c (commitcomment-37355193)

(cherry picked from commit 9b8a14bb7e)
2020-02-21 18:29:20 +01:00
Renato Alves
07f20d0624 pysam: 0.15.3 -> 0.15.4
Also disable tests until upstream test data issues are resolved.
See link in comment in code for more information.

(cherry picked from commit bf88bf47d1)
2020-02-21 18:18:53 +01:00
Silvan Mosberger
9c7b4a0134 swift: Fix build for glibc 2.30
(cherry picked from commit 7d8a33125f)
2020-02-21 17:23:15 +01:00
Timo Kaufmann
b56f8c33ad maven: make jdk overridable
This makes it possible to use maven with different (newer) jdks.

Fixes #75630

(cherry picked from commit 0141cfefbc)
2020-02-21 15:50:59 +01:00
Gabriel Ebner
3b6ca19e20 Merge pull request #80652 from vbgl/backport-80167
[20.03] lean: 3.4.2 -> 3.5.1
2020-02-21 12:32:29 +01:00
Yorick van Pelt
37e1d40d04 nixos/buildkite-agents: fix hooksDir assertion
(cherry picked from commit 1b351f81f4)
2020-02-21 12:00:57 +01:00
Silvan Mosberger
3b9b66d265 haskellPackages.streamly-bytestring: Fix build
(cherry picked from commit cf69e612ba5e1e7b6f9987af945fcba6097d80cb)
2020-02-21 05:14:18 +01:00
Silvan Mosberger
d9decdef19 haskellPackages.store: 0.7.1 -> 0.7.2 to fix build
See https://hackage.haskell.org/package/store-0.7.2/changelog, 0.7.2 is just an
update to fix compilation with vector >= 0.12.1.1

As such this also isn't needed on master, as the new version gets there
automatically through hackage updates
2020-02-21 05:08:42 +01:00
Silvan Mosberger
b0d23cc817 haskellPackages.construct: Fix build
(cherry picked from commit 0374261b51b20361756b9340ed3b8ef693f4f359)
2020-02-21 04:54:16 +01:00
Silvan Mosberger
5d7f5250cb haskellPackages.bitwise-enum: Fix build
(cherry picked from commit 206680aa1f30817e1c49446bc1ee09b1391538f8)
2020-02-21 04:42:49 +01:00
Silvan Mosberger
e2787d7c3d haskellPackages.Chart-tests: Fix build
(cherry picked from commit 27925aae389c44bd943a19294be8b5198b793265)
2020-02-21 04:37:11 +01:00
Andreas Rammhold
b01e41ccdf Merge pull request #80673 from mweinelt/pr/20.03/weechat/2.7.1
[20.03] weechat: 2.7 -> 2.7.1
2020-02-21 00:34:16 +01:00
Martin Weinelt
9571b07ed3 weechat: 2.7 -> 2.7.1
Release notes:

irc: fix crash when receiving a malformed message 352 (who)
irc: fix crash when a new message 005 is received with longer nick prefixes
irc: fix crash when receiving a malformed message 324 (channel mode) (CVE-2020-8955)
(cherry picked from commit 2d77fc3053)
2020-02-20 23:17:05 +01:00
R. RyanTM
2ae55e765b ephemeral: 6.2.0 -> 6.2.1
(cherry picked from commit a2a6522287)
2020-02-20 16:50:02 -05:00
worldofpeace
d4c761329a gnome3.gnome-desktop: 3.34.2 -> 3.34.4
(cherry picked from commit b9180e255fbc8c9c510a7b7dd357474877e7c58c)
2020-02-20 16:41:34 -05:00
Bastian Köcher
205ab7e22a kdepim-runtime: Remove obsolete patch to fix compilation
The facebook plugin is currently disabled by upstream.

(cherry picked from commit f2c564b124)
2020-02-20 20:10:59 +01:00
Jörg Thalheim
3303392c08 Merge pull request #80551 from Frostman/20.03-tigervnc-fix
[20.03] tigervnc: fix compatibility with xorgserver 1.20.7 (backport)
2020-02-20 18:01:11 +00:00
Junyoung Clare Jang
5f7e3870e5 lean: 3.4.2 -> 3.5.1
3.4.2 is not compilable with GCC >= 9.1

(cherry picked from commit b71c03e483)
2020-02-20 18:27:28 +01:00
Cole Helbling
970694c2a7 rls: add llvm to buildInputs
The Hydra build [1] was failing because it was unable to link `LLVM-9`.
Additionally, quote the homepage URL for compliance with RFC 45.

[1] https://hydra.nixos.org/build/112823631/nixlog/2

(cherry picked from commit 2edec098de)
2020-02-20 09:07:39 -08:00
Oleksii Filonenko
645faf2851 cargo-update: 1.5.2 -> 2.5.0
(cherry picked from commit 204b722bed)
2020-02-20 08:56:50 -08:00
Silvan Mosberger
c960e800b9 Merge pull request #80620 from xfix/decorator-20.03
[r20.03] pythonPackages.decorator: fix Python 2 build
2020-02-20 17:07:55 +01:00
Graham Christensen
43ab8e86ca Merge pull request #80630 from grahamc/alacritty-xdg-open-again-19.09
alacritty: Correct xdg-open behavior
2020-02-20 08:54:33 -05:00
Tim Steinbach
f81b7f4934 linux: 5.5.4 -> 5.5.5
(cherry picked from commit 86bdbe2c9b)
2020-02-20 08:28:09 -05:00
Tim Steinbach
83ce2c331f linux: 5.4.20 -> 5.4.21
(cherry picked from commit 887d2886e3)
2020-02-20 08:28:09 -05:00
Tim Steinbach
38a5abcb9e linux: 4.19.104 -> 4.19.105
(cherry picked from commit 49b4266ad2)
2020-02-20 08:28:09 -05:00
Tim Steinbach
fadf17eec0 linux: 5.5.3 -> 5.5.4
(cherry picked from commit fe61323050)
2020-02-20 08:28:09 -05:00
Tim Steinbach
abc6edfca9 linux: 5.4.19 -> 5.4.20
(cherry picked from commit f5357bbe1f)
2020-02-20 08:28:09 -05:00
Tim Steinbach
1dbfae3343 linux: 4.9.213 -> 4.9.214
(cherry picked from commit 4c407a299f)
2020-02-20 08:28:09 -05:00
Tim Steinbach
70f097196e linux: 4.4.213 -> 4.4.214
(cherry picked from commit e2315d6a7e)
2020-02-20 08:28:09 -05:00
Tim Steinbach
fc760fa17a linux: 4.19.103 -> 4.19.104
(cherry picked from commit f350e37773)
2020-02-20 08:28:09 -05:00
Tim Steinbach
120be343e4 linux: 4.14.170 -> 4.14.171
(cherry picked from commit daee1daf5d)
2020-02-20 08:28:09 -05:00
Tim Steinbach
697da34663 linux_latest-libre: 17318 -> 17322
(cherry picked from commit 0b3dd6026e)
2020-02-20 08:28:09 -05:00
Tim Steinbach
34e78cf421 linux: 5.5.2 -> 5.5.3
(cherry picked from commit da8c2896e8)
2020-02-20 08:28:09 -05:00
Tim Steinbach
814b7d1e9f linux: 5.4.18 -> 5.4.19
(cherry picked from commit 05b407ac81)
2020-02-20 08:28:09 -05:00
Tim Steinbach
9abacf70b4 linux: 4.19.102 -> 4.19.103
(cherry picked from commit ae4b390551)
2020-02-20 08:28:09 -05:00
Graham Christensen
236a83ad1d alacritty: Correct xdg-open behavior
(cherry picked from commit a905deb826)
2020-02-20 08:13:39 -05:00
Aaron Andersen
8d8dd897a4 Merge pull request #80568 from aanderse/phpPackages.pdo_oci
phpPackages.pdo_oci: init
2020-02-20 07:22:11 -05:00
Konrad Borowski
11b63d5346 pythonPackages.decorator: fix Python 2 build
(cherry picked from commit 686274ea62)
2020-02-20 11:14:27 +01:00
worldofpeace
1d39425b13 gnome3.gnome-boxes: 3.34.3 -> 3.34.4
(cherry picked from commit f3fddcb9cc)
2020-02-19 21:01:12 -05:00
worldofpeace
06d8f5d000 gnome3.gnome-control-center: 3.34.2 -> 3.34.4
* hardcode usermod which was added absolute this release

(cherry picked from commit 1de94d59af)
2020-02-19 20:58:58 -05:00
worldofpeace
3bd65c18fb gnome3.evolution-data-server: 3.34.3 -> 3.34.4
(cherry picked from commit a5000f07a6)
2020-02-19 20:58:58 -05:00
worldofpeace
eb576d191b gnome3.iagno: 3.34.4 -> 3.34.5
(cherry picked from commit 769786b4a6)
2020-02-19 20:58:58 -05:00
worldofpeace
9d555d7d1f gnome3.gnome-tetravex: 3.34.1 -> 3.34.4
(cherry picked from commit d02a96dd6c)
2020-02-19 20:58:57 -05:00
worldofpeace
b3b38b76a9 gnome3.gnome-taquin: 3.34.3 -> 3.34.4
(cherry picked from commit 0bd27fd551)
2020-02-19 20:58:57 -05:00
worldofpeace
361b3109fe gnome3.gnome-klotski: 3.34.3 -> 3.34.4
(cherry picked from commit 34aba8056f)
2020-02-19 20:58:57 -05:00
worldofpeace
a93ca78066 gnome3.four-in-a-row: 3.34.3 -> 3.34.4
(cherry picked from commit 66472c3c24)
2020-02-19 20:58:57 -05:00
worldofpeace
59d1ee24fd gnome3.file-roller: 3.32.3 -> 3.32.4
(cherry picked from commit dfdfa745c5)
2020-02-19 20:58:57 -05:00
worldofpeace
61ab527d08 gnome3.geary: 3.34.1 -> 3.34.2
(cherry picked from commit f330f46c15)
2020-02-19 20:58:57 -05:00
worldofpeace
d242c7f387 gnome3.simple-scan: 3.34.2 -> 3.34.4
(cherry picked from commit 509e1b4763)
2020-02-19 20:58:57 -05:00
worldofpeace
2ec07a1979 gnome3.gnome-disk-utility: 3.34.0 -> 3.34.4
(cherry picked from commit 391ab233f9)
2020-02-19 20:58:56 -05:00
worldofpeace
8ceac65198 gnome3.dconf-editor: 3.34.3 -> 3.34.4
(cherry picked from commit c5590c6efa)
2020-02-19 20:58:56 -05:00
worldofpeace
f1dffeebd6 gnome3.gnome-music: 3.34.3 -> 3.34.4
(cherry picked from commit 539493f2cd)
2020-02-19 20:58:56 -05:00
worldofpeace
886758a9a2 gnome3.evolution: 3.34.3 -> 3.34.4
(cherry picked from commit 2fd97821a6)
2020-02-19 20:58:56 -05:00
worldofpeace
9e4516e7f2 meld: 3.20.1 -> 3.20.2
(cherry picked from commit 9f00427bdd)
2020-02-19 20:58:56 -05:00
worldofpeace
1bac08e698 gnome3.gnome-photos: 3.34.0 -> 3.34.1
(cherry picked from commit 7f5a2ba1ae)
2020-02-19 20:58:56 -05:00
Tor Hedin Brønner
51419ea159 epiphany: 3.34.3.1 -> 3.34.4
(cherry picked from commit 86cd4d110f)
2020-02-19 20:58:55 -05:00
Tor Hedin Brønner
dbe2a7825c gnome3.mutter: 3.34.3 -> 3.34.4
(cherry picked from commit 25f5825b0a)
2020-02-19 20:58:55 -05:00
Tor Hedin Brønner
68e82f97b7 gnome3.gnome-shell: 3.34.3 -> 3.34.4
(cherry picked from commit 7d717675bf)
2020-02-19 20:58:55 -05:00
Maximilian Bosch
af8fe52461 riot-web: 1.5.9 -> 1.5.10
https://github.com/vector-im/riot-web/releases/tag/v1.5.10
(cherry picked from commit da45483b35)
2020-02-20 02:38:34 +01:00
Franz Pletz
2b58a9f87c Merge pull request #80394 from worldofpeace/backport-riot-updates
[20.03] Backport riot updates
2020-02-20 01:26:26 +00:00
Maximilian Bosch
2fadc21e70 date: init at 2020-01-24
Needed for waybar-0.9.1.
Closes #78458

Co-authored-by: Cole Mickens <cole.mickens@gmail.com>
(cherry picked from commit 9704297c5d)
2020-02-20 01:55:03 +01:00
Maximilian Bosch
590c89b9fd waybar: 0.9.0 -> 0.9.1, fix build
ZHF: #80379
https://hydra.nixos.org/build/113067187
(cherry picked from commit 89e2a43300)
2020-02-20 01:55:03 +01:00
Michele Guerini Rocco
d9261c5352 Merge pull request #80567 from Frostman/20.03-tinydns-fix-test
[20.03] nixos/tinydns: use local dns server to fix test (backport)
2020-02-20 01:10:09 +01:00
Maximilian Bosch
30da1f8e2d roundcube: 1.4.2 -> 1.4.3
https://github.com/roundcube/roundcubemail/releases/tag/1.4.3
(cherry picked from commit 6c6d7cb2e3)
2020-02-20 00:06:13 +01:00
worldofpeace
82d2b297ae Merge pull request #80382 from hax404/20.03_tor-browser-bundle-bin
[20.03] tor-browser-bundle-bin: 9.0.4 -> 9.0.5 (backport)
2020-02-19 16:20:32 -05:00
Aaron Andersen
c8e593b800 phpPackages.pdo_oci: init
(cherry picked from commit d0e817f63f)
2020-02-19 15:43:47 -05:00
Sergey Lukjanov
6cc20cb557 nixos/tinydns: use local dns server to fix test
(cherry picked from commit c8a873560f)
2020-02-19 12:37:16 -08:00
Michele Guerini Rocco
c2bdd9e4cc Merge pull request #80418 from fgaz/zhf2003/milkytracker-backport
milkytracker: set cmake sdl variable to fix build (20.03)
2020-02-19 18:53:55 +01:00
ahiaao
c1996df90b tigervnc: fix compatibility with xorgserver 1.20.7
(cherry picked from commit f216b03d5b)
2020-02-19 09:48:14 -08:00
Daniël de Kok
bb9ffe189e python3Packages.vowpalwabbit: fix build
- Drop the Boost patch. The patch does not apply anymore and the new
  CMake infrastructure picks up boost.
- Distable setuptools reStructuredText check. This check fails, but
  is (as far as I understand) an upstream bug.
- Clean up derivation a bit.

(cherry picked from commit 0688cba0cd)
2020-02-19 12:46:30 -05:00
Evan Hanson
757c6a31c9 ugarit: fix build by using CHICKEN 4.x
Ugarit only works with CHICKEN 4, not CHICKEN 5 (which is the default
version in nixpkgs since 69ef0702), so use the compiler and egg tools
from `chickenPackages_4` for ugarit and ugarit-manifest-maker.

(cherry picked from commit a6d39ee9db)
2020-02-19 12:39:19 -05:00
Michael Fellinger
c39669bbb1 rubyWithPackages.libv8: fix compilation
(cherry picked from commit 84fa1d2fb3)
2020-02-19 12:26:59 -05:00
Konrad Borowski
c0618578bd nixos/acme: Fix a.example.com test
(cherry picked from commit a803234213)
2020-02-19 12:24:07 -05:00
Michael Fellinger
698b6a87eb crystal: remove 0.25 and 0.26
(cherry picked from commit 765f72d037)
2020-02-19 12:21:23 -05:00
Franz Pletz
5d058471a9 php74: 7.4.1 -> 7.4.2
https://www.php.net/ChangeLog-7.php#7.4.2
(cherry picked from commit ade3e99a1d)
2020-02-19 17:00:11 +01:00
Franz Pletz
f71af5c6f7 php73: 7.3.13 -> 7.3.14
https://www.php.net/ChangeLog-7.php#7.3.14
(cherry picked from commit b55ded5d8b)
2020-02-19 17:00:11 +01:00
Franz Pletz
16ed6f3119 php72: 7.2.26 -> 7.2.27
https://www.php.net/ChangeLog-7.php#7.2.27
(cherry picked from commit ed8df1d98e)
2020-02-19 17:00:11 +01:00
Sergey Lukjanov
71be729a58 go_1_13: 1.13.7 -> 1.13.8
(cherry picked from commit f703142a732ac9f637cc19100a6bf43473f8cb5f)
2020-02-19 15:24:37 +01:00
Sergey Lukjanov
0911677beb go_1_12: 1.12.16 -> 1.12.17
(cherry picked from commit bca1fa2bf227d2e306e9c8045f219b5882733f84)
2020-02-19 15:24:37 +01:00
R. RyanTM
edc746205c nixpkgs-review: 2.1.1 -> 2.2.0
(cherry picked from commit 301c706f77)
2020-02-19 14:19:05 +00:00
Maximilian Bosch
478c489418 clipman: 1.2.0 -> 1.3.0
https://github.com/yory8/clipman/releases/tag/v1.3.0
(cherry picked from commit 563baa1ea9)
2020-02-19 14:42:32 +01:00
Konrad Borowski
6121d36f47 tor: fix build
Monotonic timer test expects sleep(200ms) to take at most 1s. On
loaded systems like hydra, it's possible for such a test to take
longer than 1 second.

Tests expecting sleep(200ms) to take at least 175ms weren't removed,
because load shouldn't cause sleep to be shorter.

(cherry picked from commit 58af3177c0)
2020-02-19 13:49:48 +01:00
Jörg Thalheim
57aa6d443c Merge pull request #80477 from cole-h/clippy-backport
[20.03] Backport `clippy: add rustc.llvm to buildInputs`
2020-02-19 10:46:58 +00:00
Jörg Thalheim
676101456e Revert "zsh: don't clobber the environment of non-login shells"
This reverts commit 6a756af3e7.

Currently zshenv by default only set fpath and HELPDIR without exporting them.
A parent shell would also not set those variables usually as they are shell local.

It also sources a file called set-environment but this is protected by an
environment variable called __NIXOS_SET_ENVIRONMENT_DONE. Hence any modification
done by the parent shell should persist as long as __NIXOS_SET_ENVIRONMENT_DONE
is not unset.

This behavior deviates from what we do in bashrc and breaks common setups such
as tmux/mosh or screen.

Fixes #80437

(cherry picked from commit 55819e6c86)
2020-02-19 09:00:50 +00:00
Orivej Desh
c2846eeac5 aseprite-unfree: 1.2.11 -> 1.2.16.3
Restore the comment explaining the split between free and unfree versions
deleted in caa4e6dcb2.

(cherry picked from commit 43ee8097d9)
2020-02-19 06:21:00 +00:00
Orivej Desh
dccfb8c988 aseprite-unfree: fix build
It fails with:

src/gpu/gl/glx/GrGLMakeNativeInterface_glx.cpp:15:10: fatal error: GL/glx.h: No such file or directory
   15 | #include <GL/glx.h>

(cherry picked from commit 3ad2c20fe6)
2020-02-19 06:21:00 +00:00
Orivej Desh
929e0f0c14 aseprite: fix build with glibc 2.30
Otherwise it fails with:

In file included from /build/source/src/allegro/include/allegro/base.h:41,
                 from /build/source/src/allegro/include/allegro.h:25,
                 from /build/source/src/./she/alleg4/alleg_surface.h:11,
                 from /build/source/src/she/alleg4/alleg_surface.cpp:11:
/build/source/src/allegro/include/allegro/alcompat.h:44:22: error: conflicting declaration of C function 'fixed fadd(fixed, fixed)'
   44 |       AL_ALIAS(fixed fadd(fixed x, fixed y), fixadd(x, y))
      |                      ^~~~
/build/source/src/allegro/include/allegro/internal/alconfig.h:164:49: note: in definition of macro 'AL_ALIAS'
  164 |       static __attribute__((unused)) __inline__ DECL    \
      |                                                 ^~~~
In file included from /nix/store/y57skwl8a5vbkrjrc30ygdw9vr1p6n19-gcc-9.2.0/include/c++/9.2.0/cmath:45,
                 from /nix/store/y57skwl8a5vbkrjrc30ygdw9vr1p6n19-gcc-9.2.0/include/c++/9.2.0/math.h:36,
                 from /build/source/src/./base/base.h:13,
                 from /build/source/src/./config.h:40,
                 from /build/source/src/she/alleg4/alleg_surface.cpp:8:
/nix/store/2v6pi2wj3lcsc3j48n7flx9mgqyii1lv-glibc-2.30-dev/include/bits/mathcalls-narrow.h:24:20: note: previous declaration 'float fadd(double, double)'
   24 | __MATHCALL_NARROW (__MATHCALL_NAME (add), __MATHCALL_REDIR_NAME (add), 2);
      |                    ^~~~~~~~~~~~~~~

(cherry picked from commit 0ded378b10)
2020-02-19 06:19:43 +00:00
Stig Palmquist
4df09b00cd perlPackages.{CryptCurve25519,MathGMP}: fixed build failures
ZHF: #80379
https://hydra.nixos.org/build/112817446
https://hydra.nixos.org/build/112813918
https://hydra.nixos.org/build/112814931
https://hydra.nixos.org/build/112833536
https://hydra.nixos.org/build/112804942
https://hydra.nixos.org/build/112809869

perlPackages.CryptCurve25519: apply patch from gentoo to fix fmul conflicting
types build breakage.
https://gitweb.gentoo.org/repo/gentoo.git/commit/dev-perl/Crypt-Curve25519?id=e07299f804a8376bb5bf85d28916e0a360199f3e

perlPackages.MathGMP: 2.19 -> 2.20
Updated to latest upstream, which passes tests. This is a dependency of
perlPackages.NetSSH

(cherry picked from commit a43d20b8b4)

cc #80476
2020-02-18 22:23:56 -05:00
Stig Palmquist
8154fd4878 perlPackages.CPAN: apply patch to fix changed YAML module default
ZHF: #80379
https://hydra.nixos.org/build/112819370
https://hydra.nixos.org/build/112832567

A default has changed in YAML, breaking the latest release of CPAN. This commit
applies a A patch from the PR fixing the problem.

https://github.com/andk/cpanpm/pull/133

(cherry picked from commit 153b0db967)
cc #80471
2020-02-18 22:23:12 -05:00
worldofpeace
ebf4836e04 flatpak: use correct p11-kit output
Fixes #80452

(cherry picked from commit 02213fdff2)
2020-02-18 18:15:09 -05:00
Cole Helbling
028effdd17 clippy: add rustc.llvm to buildInputs
The Hydra build [1] failed because it was unable to link to `LLVM9`; add
`llvmShared` to `passthru` in order to stay up to date with required
LLVM versions. Also quote the homepage URLs, since that's preferred.

[1] https://hydra.nixos.org/build/112989779/nixlog/1

(cherry picked from commit 502c0ee899)
2020-02-18 14:10:44 -08:00
Konrad Borowski
7dde515909 cargo-geiger: fix build with rust 1.41
(cherry picked from commit 6637f1cac6)
2020-02-18 22:42:14 +01:00
Daniël de Kok
4dc0c1761c python3Packages.ftfy: 5.6 -> 5.7
Changelog:

https://github.com/LuminosoInsight/python-ftfy/blob/master/CHANGELOG.md#version-57-february-18-2020

The most important change in this version is the update of Unicode
character categories data to Unicode 12.1. This fixes the Python 3.8
build.

(cherry picked from commit 77aa1a7f5b)
2020-02-18 15:03:45 -05:00
Maximilian Bosch
fb06d445af Merge pull request #80438 from KoviRobi/zhf-20.03-fix-xonsh-tests
ZHF: #80379 xonsh: fix broken tests
2020-02-18 19:13:41 +01:00
Jonathan Ringer
f2076d2efb python3Packages.fastparquet: 0.3.2 -> 0.3.3
ZHF: #80379

(cherry picked from commit e24c04f278)
2020-02-18 09:38:34 -08:00
Frederik Rietdijk
07f97d3ed4 Merge pull request #79852 from Ralith/vulkan-1.2
vulkan: 1.1 -> 1.2 (backport to 20.03)
2020-02-18 18:25:59 +01:00
Benjamin Saunders
b85b1e23cd vulkan-tools: 1.1.114.0 -> 1.2.131.1
(cherry picked from commit ad1934b465)
2020-02-18 09:17:35 -08:00
Benjamin Saunders
990fdb4464 shaderc: 2019.0 -> 2019.1
(cherry picked from commit 3b9d71af2c)
2020-02-18 09:17:30 -08:00
Benjamin Saunders
d775ca1040 vulkan-validation-layers: 1.1.114.0 -> 1.2.131.2
(cherry picked from commit d73c83fca5)
2020-02-18 09:17:24 -08:00
Benjamin Saunders
b927b88eea glslang: 7.11.3214 -> 8.13.3559
(cherry picked from commit 533e7c2296)
2020-02-18 09:17:19 -08:00
Benjamin Saunders
3a746e2d4a vulkan-loader: 1.1.144.0 -> 1.2.131.2
(cherry picked from commit eb250b9a00)
2020-02-18 09:17:16 -08:00
Benjamin Saunders
ffa369a57d vulkan-headers: 1.1.144.0 -> 1.2.131.1
(cherry picked from commit 8985abb3c6)
2020-02-18 09:17:11 -08:00
worldofpeace
a1ab61634f Merge pull request #80135 from worldofpeace/backport-79844
[20.03] xfce.xfce4-pulseaudio-plugin: 0.4.1 -> 0.4.2, fix volume
2020-02-18 12:05:27 -05:00
Florian Klink
bd896275f1 Merge pull request #80128 from worldofpeace/backport-79659
[20.03] testing: fix runInMachineWithX/runInMachine
2020-02-18 17:59:33 +01:00
Florian Klink
8c964854b2 Merge pull request #80215 from primeos/brightnessctl-systemd-support-backport
[20.03] brightnessctl: Add systemd support (backport)
2020-02-18 17:49:23 +01:00
edef
370505a6e6 google-cloud-sdk: disable checking for gsutil updates
The update checking mechanism references the tests, and thus
dbaafbbf73 turned it into a crash at
startup.

It isn't much use in nixpkgs, so we're better off without it.

(cherry picked from commit 0c403efde9)
2020-02-18 15:43:23 +01:00
edef
45217d0bd4 google-cloud-sdk: remove gsutil test
The command module references the tests, and since all command modules
get imported at startup, dbaafbbf73
turned it into a startup crash.

Unless you're actively hacking on gsutil, this command isn't much use,
so we're better off without it.

(cherry picked from commit 5bda7e7fb2)
2020-02-18 15:43:22 +01:00
Andreas Rammhold
0399f675e5 Merge pull request #80434 from andir/20.03/firefox73.0.1
[20.03] firefox: 73.0 -> 73.0.1
2020-02-18 15:17:50 +01:00
Kovacsics Robert
bf822c4caa xonsh: Fix broken tests
Pulls in a patch committed a couple of days after the 0.9.13 release
(the one here), to fix the tests.
2020-02-18 13:26:04 +00:00
Andreas Rammhold
1f5135da0b firefox: 73.0 -> 73.0.1
(cherry picked from commit 52920a6b2c)
2020-02-18 13:28:43 +01:00
Georg Haas
302f23cb4f tor-browser-bundle-bin: 9.0.4 -> 9.0.5
(cherry picked from commit ec3daae1fc)
2020-02-18 10:57:35 +01:00
Vladimír Čunát
01d84d1ecf efibootmgr: fixup build on i686
Same as efivar; I believe it doesn't really needs LTO.  I checked:
nix build -f nixos/release-combined.nix nixos.iso_minimal.i686-linux

(cherry picked from commit f595677418)
/cc ZHF: #80379
2020-02-18 10:34:55 +01:00
Francesco Gazzetta
6656178800 milkytracker: set cmake sdl variable to fix build
ZHF: #80379
(cherry picked from commit eb2ab18614)
2020-02-18 09:50:16 +01:00
Mario Rodas
ed7f18b5d2 postgresql_9_5: 9.5.20 -> 9.5.21
Release notes: https://www.postgresql.org/docs/9.5/release-9-5-21.html
2020-02-18 09:22:48 +02:00
Mario Rodas
9e9d5d9f0d postgresql_12: 12.1 -> 12.2
Release notes: https://www.postgresql.org/docs/current/release-12-2.html
2020-02-18 09:20:05 +02:00
Mario Rodas
c60cc121c1 postgresql_11: 11.6 -> 11.7
Release notes: https://www.postgresql.org/docs/11/release-11-7.html
2020-02-18 09:20:05 +02:00
Mario Rodas
d89d10786d postgresql_10: 10.11 -> 10.12
Release notes: https://www.postgresql.org/docs/10/release-10-12.html
2020-02-18 09:20:05 +02:00
Mario Rodas
2197162526 postgresql_9_6: 9.6.16 -> 9.6.17
Release notes: https://www.postgresql.org/docs/9.6/release-9-6-17.html
2020-02-18 09:20:05 +02:00
worldofpeace
d242942b1f pantheon.elementary-files: 4.3.0 -> 4.4.0
https://github.com/elementary/files/releases/tag/4.4.0
(cherry picked from commit 59bf79ec4b)
2020-02-17 21:06:01 -05:00
Silvan Mosberger
fb131bd0c9 Merge pull request #80392 from Infinisil/fix/mint
mint: Pin to crystal 0.30 to fix build
2020-02-18 03:00:34 +01:00
pacien
97935971be riot-web: add config overrides for privacy
Preventing the app from phoning home by default.

GitHub: closes https://github.com/NixOS/nixpkgs/issues/80358
(cherry picked from commit c9e5cca071)
2020-02-17 20:02:27 -05:00
pacien
72fcbcfc40 riot-desktop: 1.5.6 -> 1.5.9
(cherry picked from commit 5bd923057c)
2020-02-17 20:02:27 -05:00
pacien
70e97c8052 riot-web: 1.5.8 -> 1.5.9
(cherry picked from commit 85e09daf43)
2020-02-17 20:02:27 -05:00
rnhmjoj
5c4224e754 python/aiohttp: disable test on 32bit platforms
The test `test_cookiejar` is failing because a time_t
constant can't be represented on 32bit platforms.

(cherry picked from commit 6be8389b04)
2020-02-17 19:48:29 -05:00
zowoq
e6febf8f7e flatpak: 1.6.1 -> 1.6.2
https://github.com/flatpak/flatpak/releases/tag/1.6.2
(cherry picked from commit d744b4f928)
2020-02-17 19:42:27 -05:00
worldofpeace
33ce841a55 flatpak: add dev output
(cherry picked from commit 26f1d1e81b)
2020-02-17 19:42:27 -05:00
worldofpeace
4603e7085a flatpak: propagate glib and ostree
Pantheon's sideload broke:
```
meson.build:17:0: ERROR: Could not generate cargs for flatpak:
Package ostree-1 was not found in the pkg-config search path.
Perhaps you should add the directory containing `ostree-1.pc'
to the PKG_CONFIG_PATH environment variable
Package 'ostree-1', required by 'flatpak', not found
```

https://hydra.nixos.org/build/113077888

ZHF: #80379
(cherry picked from commit 461ea02544)
2020-02-17 19:42:27 -05:00
Silvan Mosberger
798524fba4 mint: Pin to crystal 0.30 to fix build 2020-02-18 01:41:22 +01:00
Silvan Mosberger
51991d7752 Merge pull request #80389 from Infinisil/fix/crystal
crystal_0_32: Fix hydra build on 20.03
2020-02-18 01:34:14 +01:00
Dylan Simon
81e6859218 scalapack: 2.1 -> 2.1.0
2.1 seems to have disappeared

(cherry picked from commit e25f0b3e3d)
2020-02-18 01:30:46 +01:00
Silvan Mosberger
fc1bbc0f04 crystal_0_32: Fix hydra build
It seems that there might be hydra machines that run an older version of Nix
where https://github.com/NixOS/nix/pull/2878 is not yet included
(unconfirmed)

In addition crystal 0.32.1 has a bug that only occurs when there is no
tty: https://github.com/crystal-lang/crystal/issues/8609

Combining this lead to a crystal build failing: https://hydra.nixos.org/build/113074265

This fixes that probably rather uncommon occurence by applying the
upstream fix for the bug: https://github.com/crystal-lang/crystal/issues/8609
2020-02-18 01:29:48 +01:00
R. RyanTM
6c6ac9a5c8 gnome3.accerciser: 3.34.3 -> 3.34.4
(cherry picked from commit 124ff1a3fa)
2020-02-17 18:15:04 -05:00
Robert Scott
194c1ea3de pythonPackages.pysaml2: fix tests with fixed & now-expired timestamps
these only expired (and upstream only seem to have noticed) today

ZHF: #80379
https://hydra.nixos.org/build/112818101

(cherry picked from commit f77e057cda)
2020-02-17 23:44:22 +01:00
Benjamin Slade
3ffada4169 mullvad-vpn: 2020.1 -> 2020.2
(cherry picked from commit f2e5bb967f)
2020-02-17 21:14:11 +00:00
Vladimír Čunát
1a6b6e9124 efivar: fixup build on i686
I don't think it really needs LTO.

(cherry picked from commit 9b4424cbb7)
2020-02-17 21:06:19 +01:00
Eelco Dolstra
181e0d854c nixos/release-small.nix: List constituents of the 'tested' job by name
https://github.com/NixOS/hydra/issues/715
(cherry picked from commit 895042956f)
2020-02-17 19:41:55 +01:00
Eelco Dolstra
f996744fd3 nixos/release-combined.nix: List constituents of the 'tested' job by name
https://github.com/NixOS/hydra/issues/715
(cherry picked from commit 2de3caf011)
2020-02-17 19:41:08 +01:00
Vladimír Čunát
e168b5a2e1 release-combined: readd keymap tests
This reverts commit ceb90b08ef.
2020-02-17 19:39:14 +01:00
Jörg Thalheim
47dfd37e5a Merge pull request #80172 from Mic92/knot-backport
[20.03-backport] knot: keyFiles, no dynamicUser
2020-02-17 17:23:58 +00:00
jakobrs
07244aa21b electron: correct casing of MacOS (#80362)
(cherry picked from commit 35bae4f749)
cc #80362
2020-02-17 12:03:13 -05:00
OmnipotentEntity
0b4c592114 geant4: 10.6.0 -> 10.6.1 (#80365)
(cherry picked from commit eb40131310)
cc #80365
2020-02-17 12:00:40 -05:00
Thomas Tuegel
04ffd910b2 kinit: Increase environment size limit
start_kdeinit reads its environment over a pipe from start_kdeinit_wrapper. For
security, each environment entry must be smaller than 4kb by default. Qt-based
applications in Nixpkgs may have larger environments, and the recent upgrade to
Plasma 5.17 pushed start_kdeinit_wrapper over the limit. The limit is now
extended to 16kb.

This problem was not detected during testing because the failure is silent:
start_kdeinit will continue with an empty environment. In other circumstances,
this strategy might work, but it does not work on NixOS. This failure is now
treated as a fatal error.

Fixes: #79707
(cherry picked from commit c75860918f)
2020-02-17 09:13:03 -06:00
Franz Pletz
337d0b3509 dovecot: 2.3.9.2 -> 2.3.9.3
Fixes CVE-2020-7046 & CVE-2020-7957:

  https://dovecot.org/pipermail/dovecot-news/2020-February/000429.html

(cherry picked from commit f9a34082e6)
2020-02-17 15:27:55 +01:00
Frederik Rietdijk
5abddd16e4 Merge release-20.03 into staging-20.03 2020-02-17 15:14:17 +01:00
Benjamin Hipple
bee35e73e2 doomseeker: add qt wrapper, cleanup (#79794)
This avoids using NIX_CFLAGS_COMPILE by switching to hardeningDisable.
The hack is also only needed for darwin sources and is not specific to
clang.

Co-authored-by: Dmitry Kalinkin <dmitry.kalinkin@gmail.com>

(cherry picked from commit 5ef4af7afc)
cc #79794
2020-02-17 04:58:31 -05:00
Maximilian Bosch
45e870cf6c nextcloud-client: 2.6.2 -> 2.6.3
https://github.com/nextcloud/desktop/releases/tag/v2.6.3
(cherry picked from commit ed944d4cee)
2020-02-17 08:02:52 +01:00
Maximilian Bosch
47446c7140 mautrix-whatsapp: 2020-01-12 -> 2020-02-09
(cherry picked from commit 52981cedfd)
2020-02-17 08:02:51 +01:00
Dmitry Kalinkin
13b151cfe7 soundfont-fluid: fix src url
(cherry picked from commit e019371ab4)
cc #80174
2020-02-16 23:45:10 -05:00
Maximilian Bosch
a3d6e9ed9a youtube-dl: 2020.01.24 -> 2020.02.16
https://github.com/ytdl-org/youtube-dl/releases/tag/2020.02.16
(cherry picked from commit 7957f43b6a)
2020-02-17 00:18:41 +01:00
Tor Hedin Brønner
075ce56cb3 gnomeExtensions.gsconnect: fix build
dbus is now propagated from at-spi2-core, which made gsconnect try to
install dbus service files in the wrong location.

closes https://github.com/NixOS/nixpkgs/issues/79806

(cherry picked from commit 71a54f1130)
2020-02-16 15:17:55 +01:00
Eelco Dolstra
e421d740cb nixUnstable, nixFlakes: Update to latest
Note that we need to build from a tarball now to get the vendored
crates. A bit ugly to fetch tarballs from Hydra...

(cherry picked from commit dd7f6b0c6b)
2020-02-16 11:18:39 +01:00
taku0
08c4b48d3a flashplayer: 32.0.0.314 -> 32.0.0.330
(cherry picked from commit 87d9d9a374)
2020-02-16 09:20:41 +01:00
Frederik Rietdijk
64f497550e Merge release-20.03 into staging-20.03 2020-02-16 09:13:01 +01:00
Frederik Rietdijk
642541f5d0 Merge staging-20.03 insto release-20.03 2020-02-16 09:12:24 +01:00
Michael Weiss
e8042ed139 nixos/brightnessctl: Remove the module
Due to the support of the systemd-logind API the udev rules aren't
required anymore which renders this module useless [0].
Note: brightnessctl should now require a working D-Bus setup and a valid
local logind session for this to work.

[0]: https://github.com/NixOS/nixpkgs/pull/79663

(cherry picked from commit 5282bc9a74)
2020-02-16 00:01:37 +01:00
Michael Weiss
9229faee7d brightnessctl: Add systemd support
This makes it possible to use brightnessctl without udev rules / suid.

(cherry picked from commit cf5dd2623b)
2020-02-16 00:01:37 +01:00
worldofpeace
15992aae7b Merge #80120: webkitgtk: 2.26.3 -> 2.26.4 (security!)
(cherry picked from commit 03d5f9cf1f)
I re-checked it builds.  20.03 shouldn't have diverged much,
so I trust it will work the same.
2020-02-15 23:13:15 +01:00
Vladimír Čunát
306d76f357 openssl: revert a workaround that's no longer needed
Thanks to python3Minimal.  This reverts part of c2038483f #79738.

(cherry picked from commit 5a8000dc05)
2020-02-15 15:21:27 -05:00
Vladimír Čunát
ced2b5a7dd glibc: use python3Minimal instead of python3
This should improve the speed of bootstrapping process.
Cost of evaluation also decreases a bit,
but I don't expect that will be significant.

(cherry picked from commit f6519103bf)
2020-02-15 15:21:27 -05:00
worldofpeace
f43895474f Merge pull request #80200 from ilya-fedin/backport-fix-xdg-current-desktop
Backport DesktopNames parameter to 20.03
2020-02-15 15:17:58 -05:00
Eelco Dolstra
6948bfce69 nixos/modules/misc/version.nix: Don't parse .git
This leads to inconsistent results between local builds and
Hydra. Also Nix is not a general purpose language, we shouldn't be
parsing .git from inside Nix code.

(cherry picked from commit f0f040c3f7)
2020-02-15 15:04:40 -05:00
Eelco Dolstra
accf1c7e44 nixos/modules/installer/cd-dvd/channel.nix: Handle null config.system.nixos.revision
(cherry picked from commit a5f883e535)
2020-02-15 15:04:36 -05:00
Michael Weiss
25955ae7c1 fscrypt-experimental: 0.2.5 -> 0.2.6 (#79853)
Changelog: https://github.com/google/fscrypt/releases/tag/v0.2.6
(cherry picked from commit ac758caff1)
Reason: Since NixOS 20.03 will ship with Linux kernel 5.4 by default,
the new support for v2 kernel encryption policies is useful.
2020-02-15 20:21:52 +01:00
Michael Weiss
51e1cb0d93 google-chrome*: Add the newly required dependencies
See 3fadc45499. Since the beta channel is now also on 81 and the stable
channel will be on 81 soon, it makes sense to already add this
unconditionally for all channels.

(cherry picked from commit 67f349d224)
Backport of #80074.
2020-02-15 20:02:52 +01:00
Ilya Fedin
75f90af321 nixos/display-managers: Add DesktopNames parameter to generated desktop session files
Some display managers (e.g. SDDM) set the XDG_CURRENT_DESKTOP variable accroding to this parameter.
If this variable is not defined, there will be some problems (e.g. MATE doesn't have icons on the desktop).

Fixes https://github.com/NixOS/nixpkgs/issues/71427

(cherry picked from commit f7768c939a)
2020-02-15 23:02:12 +04:00
Maximilian Bosch
b6551f4ca5 nixos/nixos-build-vms: switch to python test-driver
In 0945178b3c we decided that Perl-based
VM tests should be deprecated and will be removed between 20.03 and
20.09. So let's switch `nixos-build-vms(8)` to python as well (which is
entirely interactive, so other scripts won't break).

In my experience, the test-driver isn't used most of the time, so this
patch is mainly supposed to get rid of the (probably misleading)
deprecation warning when running `nixos-build-vms`. Apart from that, the
interface for python's test-driver is way nicer.

(cherry picked from commit c391343fcd)
2020-02-15 19:37:48 +01:00
Graham Christensen
419bebfe42 nixos/release.nix: correct revCount offset
Not sure how 1350291 was reached, but it is causing evaluation errors.

Recalculating on the 20.03-beta tag gets me 212938, so updating.
2020-02-15 11:55:59 -05:00
Maximilian Bosch
1e92961486 python3Packages.mautrix: 0.4.1 -> 0.4.2
https://pypi.org/project/mautrix/0.4.2/
(cherry picked from commit ade5a50b0f)
2020-02-15 17:07:53 +01:00
David Terry
50edd0f565 linuxPackages.wireguard: 0.0.20200214 -> 0.0.20200215
(cherry picked from commit b76dab8fc8)
2020-02-15 12:49:04 +01:00
Jörg Thalheim
8325e2b36d knot: add keyFiles option
This useful to include tsig keys using nixops without adding those
world-readable to the nix store.

(cherry picked from commit e2ef8b439f)
2020-02-15 11:16:44 +00:00
Jörg Thalheim
0af3b7580a knot: drop dynamic user
This makes it hard to include secret files.
Also using tools like keymgr becomes harder.

(cherry picked from commit 88029bce39)
2020-02-15 11:16:42 +00:00
Jörg Thalheim
e989a193e6 knot: put runtime paths outside the nix store
Otherwise knot tries to write to non-writable directories.
This for example breaks dnssec signing.
While it's possible to overwrite these path in the configuration,
having a sane defaults is nicer.

(cherry picked from commit 6adc09ed30)
2020-02-15 11:16:40 +00:00
Maximilian Bosch
10c6239bf3 mono: fix build w/glibc-2.30
(cherry picked from commit c30b4a746f)
2020-02-14 14:33:24 -05:00
worldofpeace
bbf602546c xfce.xfce4-pulseaudio-plugin: 0.4.1 -> 0.4.2, fix volume
We needed to add keybinder3.

(cherry picked from commit 8e5ed7cfbb)
2020-02-14 14:23:19 -05:00
Samuel Leathers
63772f7f99 python3Packages.openapi-spec-validator: add setuptools
(cherry picked from commit a721edfabb)
2020-02-14 12:56:04 -05:00
worldofpeace
d074d34343 testing: fix runInMachineWithX
(cherry picked from commit 5507e09618)
2020-02-14 12:45:55 -05:00
worldofpeace
aea80290ef testing-python: readd auto displayManager
we import it for the runInMachineWithX

(cherry picked from commit 88f76812f2)
2020-02-14 12:45:55 -05:00
worldofpeace
fbfa6ac077 testing-python: fix runInMachine
The test script's were unported.
It's unclear whether the preBuild or
postBuild will work as expect, due to
the linting of the test scripts.

(cherry picked from commit fa9af83e96)
2020-02-14 12:45:55 -05:00
Vladimír Čunát
ad29694571 Merge #62890: libclc: 2017-11-29 -> 2019-06-09 (unbreak)
(cherry picked from commit ed77cf1c56)
2020-02-14 17:59:30 +01:00
Maximilian Bosch
2e83e4ee34 linuxPackages.wireguard: 0.0.20200205 -> 0.0.20200214
https://lists.zx2c4.com/pipermail/wireguard/2020-February/005013.html
(cherry picked from commit 7666bf47c7)
2020-02-14 17:32:47 +01:00
Michael Weiss
7f99e2c100 chromium: 80.0.3987.100 -> 80.0.3987.106
https://chromereleases.googleblog.com/2020/02/stable-channel-update-for-desktop_13.html
(cherry picked from commit 574a57a67f)
Backport of #80074.
2020-02-14 13:20:41 +01:00
Jyun-Yan You
e9d271f1f4 nixos/pppd: fix build error
(cherry picked from commit 0f8d1ac47d)
2020-02-14 11:03:08 +01:00
rnhmjoj
3c103bd93d nixos/unclutter: fix remaining typo
Fix an evaluation warning.

(cherry picked from commit f01bcccd25)
2020-02-14 10:40:13 +01:00
rnhmjoj
6a179f0555 nixos/alsa: replace list by attrset in environment.etc
Fix an evaluation warning.

(cherry picked from commit 2ad680ac73)
2020-02-14 10:38:18 +01:00
Mario Rodas
0b3697e700 docker-slim: move expression to outside of build-support (#80078)
(cherry picked from commit 7696369bec)
2020-02-14 09:43:00 +01:00
Michael Weiss
f9bcb42529 google-chrome-dev: Add the newly required dependencies
google-chrome-unstable won't launch without the following shared object
files: libdrm.so.2 and libgbm.so.1.

(cherry picked from commit 3fadc45499)
2020-02-14 01:39:16 +01:00
Michael Weiss
266abf70df chromium: 80.0.3987.87 -> 80.0.3987.100
https://chromereleases.googleblog.com/2020/02/stable-channel-update-for-desktop_11.html
(cherry picked from commit e61b8d99c2)
2020-02-14 01:39:08 +01:00
Georg Haas
38152c4e78 bino3d: use mkDerivation from qt
adopted solution from commit 7e0dd3833d

(cherry picked from commit c9ca90af51)
2020-02-14 00:20:08 +01:00
Ben Darwin
95bf506b90 c3d: unbreak via stdenv -> gcc8Stdenv
(cherry picked from commit 1112bcc75e)
2020-02-13 17:50:11 -05:00
Ben Darwin
dee6990b90 c3d: 2018-10-04 -> unstable-2019-10-22; mark unbroken
(cherry picked from commit c79d6d0430)
2020-02-13 17:50:11 -05:00
Florian Klink
4171378761 gitlab: 12.7.5 -> 12.7.6
(cherry picked from commit 0a87568b03)
2020-02-13 23:43:11 +01:00
Vladimír Čunát
ceb90b08ef Revert-like "Merge #79656: release-combined: readd keymap tests"
It's a temporary measure until we have better ways.  See #79907.
(Not a real revert, as the comment wouldn't make sense, etc.)
2020-02-13 19:49:32 +01:00
Marek Mahut
7e4eea6d74 Merge pull request #79903 from mmahut/trezord-backport
(20.03) trezord-go: 2.0.27 -> 2.0.28
2020-02-13 17:31:16 +01:00
taku0
0ce2f49473 thunderbird: 68.4.2 -> 68.5.0
(cherry picked from commit 64fe2b7260)
2020-02-13 14:06:23 +01:00
taku0
7e10d60c80 thunderbird-bin: 68.4.2 -> 68.5.0
(cherry picked from commit eaf12cc4d1)
2020-02-13 14:06:20 +01:00
rnhmjoj
313414d650 rxvt-unicode/vtwheel: use new package name for rxvt-unicode
(cherry picked from commit 91f81e84de)
2020-02-13 11:19:43 +01:00
rnhmjoj
2defe9ded6 nixos/sway: use new package name for rxvt-unicode
(cherry picked from commit ceb35dac58)
2020-02-13 11:19:35 +01:00
rnhmjoj
2d4842ec22 nixos/urxvtd: use new package name for rxvt-unicode
(cherry picked from commit 9290e6e7ba)
2020-02-13 11:19:21 +01:00
rnhmjoj
1da1f3fbf2 rxvt-unicode: fix typo in aliases.nix
This fixes an evaluation error when services.urxvtd is enabled.

(cherry picked from commit 72bdf27771)
2020-02-13 11:16:51 +01:00
Jonathan Ringer
66e115ea89 python3Packages.numba: disable for python < 3.6
(cherry picked from commit 984eb94496)
2020-02-13 08:21:08 +01:00
Nikolay Korotkiy
125e5baf0d opencc: enable on darwin
(cherry picked from commit 5c8356105c)
2020-02-12 18:43:39 -05:00
worldofpeace
ae62101af8 Merge pull request #79950 from puckipedia/signal-desktop-notifications-20.03
[20.03] signal-desktop: fix notifications
2020-02-12 17:45:22 -05:00
Puck Meerburg
a4cddd0ae5 signal-desktop: fix notifications
(cherry picked from commit 0b3e5db5d3)
2020-02-12 22:43:16 +00:00
R. RyanTM
f54d7568be quilter: 2.1.0 -> 2.1.1
(cherry picked from commit 3a9a0f299a)
2020-02-12 16:57:10 -05:00
Florian Klink
9fafbd1f6f nixos/filesystems: don't chown /run/keys recursively
3c74e48d9c was a bit too much, it updated
permissions of all files recursively, causing files to be readable by
the group.

This isn't a problem immediately after bootup, but on a new activation,
as tmpfiles.d get restarted then, updating the permission bits of
now-existing files.

This updates the `Z` to be a `z` (the non-recursive variant), and adds a
`d` to ensure a directory is created (which should be covered by the
initrd shell script anyway)

(cherry picked from commit 4c8bdd1c4f)
2020-02-12 17:52:53 +01:00
Andreas Rammhold
2053cb0593 Merge pull request #79914 from andir/20.03/firefox73
[20.03] firefox 73
2020-02-12 17:17:25 +01:00
Vladimír Čunát
78a273da0a Merge #79740: libssh2: patch CVE-2019-17498
(cherry picked from commit 4ff2a1641c)
2020-02-12 13:09:53 +01:00
Hlöðver Sigurðsson
2ebeaa9e43 clojure 1.10.1.492 -> 1.10.1.507 plus bugfix (#79868)
(cherry picked from commit 91801c0b45)
2020-02-12 11:51:40 +00:00
Andreas Rammhold
ae03096e50 nixos/tests/firefox: support running the test with the firefox ESR version
Also adds this to the release jobset.

(cherry picked from commit 7a625e7453)
2020-02-12 11:25:15 +01:00
Andreas Rammhold
7deaadc143 firefox-esr: 68.4.2esr -> 68.5.0esr
(cherry picked from commit f43fdd1151)
2020-02-12 11:25:15 +01:00
Andreas Rammhold
5cc5f7bf3f firefox-bin: 72.0.3 -> 73.0
(cherry picked from commit 11920736e8)
2020-02-12 11:25:15 +01:00
Andreas Rammhold
db66f71737 firefox: 72.0.2 -> 73.0
(cherry picked from commit 8019df98f8)
2020-02-12 11:25:15 +01:00
Andreas Rammhold
3187daaec0 firefox: prepare for 73.0
(cherry picked from commit 187d6912a8)
2020-02-12 11:25:15 +01:00
Andreas Rammhold
662591b085 rust-cbindgen: 0.10.0 -> 0.13.1
(cherry picked from commit 82d9ce45fe)
2020-02-12 11:25:15 +01:00
Andreas Rammhold
99c958f076 nss: 3.48 -> 3.49.2
(cherry picked from commit 48603cd9d7)
2020-02-12 11:25:15 +01:00
Marek Mahut
9690c7e2c6 trezord-go: 2.0.27 -> 2.0.28
(cherry picked from commit ab1a14d581)
2020-02-12 08:43:34 +01:00
Martin Milata
d903c899f9 gunicorn: add 19.x branch for python2.7 support
The nixos/moinmoin module uses gunicorn, however the 20.0 version
dropped python2 support which broke the module as there's no python3
port planned for moinmoin: http://moinmo.in/Python3

(cherry picked from commit d202e9eac2b3e17c8598b941a11025cef31c762f)
2020-02-11 22:25:21 +01:00
Izorkin
94c380cbb7 zsh: fix bracketed-paste-magic
(cherry picked from commit 8f5af404d2)
2020-02-11 18:50:38 +00:00
Samuel Dionne-Riel
b2e203bd6f Merge pull request #79826 from worldofpeace/remove-sd_image_raspberrypi4
[20.03] Remove sd image raspberrypi4
2020-02-11 13:39:01 -05:00
Milan Pässler
6e73318160 tipp10: init at 3.1.0
(cherry picked from commit 7fbc860d72)
2020-02-11 17:41:53 +00:00
Michele Guerini Rocco
d3d8d5ce6c Merge pull request #79833 from tokudan/20.03/encrypted-swap-entropy-fix
rngd: Start early during boot and encrypted swap entropy fix [20.03]
2020-02-11 16:37:37 +01:00
Maximilian Bosch
23dfaf07c6 pinentry_qt5: alias to pinentry-qt
Attribute was removed in a4916fdea5 which
will land in 20.03, but breaks evaluation for everyone using
pinentry_qt5 on NixOS 19.09 when updating.

(cherry picked from commit 3d1007716c)
2020-02-11 16:10:38 +01:00
Daniel Frank
4579f11c20 security.rngd: start rngd during early boot to reduce entropy starvation due to encrypted swap and remove PrivateTmp to avoid a circular dependency
(cherry picked from commit d14ba1e1ad)
2020-02-11 15:23:28 +01:00
Daniel Frank
93bd12da91 swap: depend on rngd if enabled and randomEncryption is configured to
avoid entropy starvation during boot

(cherry picked from commit 1ac86e14c7)
2020-02-11 15:23:28 +01:00
worldofpeace
40a420e38b release: remove sd_image_raspberrypi4 2020-02-11 08:28:35 -05:00
Justin Bedo
1781000f03 delly: 0.8.1 -> 0.8.2
Backported patch required for htslib 1.10.2

(cherry picked from commit a8fe9e7aff)
2020-02-11 03:54:51 -05:00
Dmitry Kalinkin
b0aa920b4d libtasn1: fix on darwin
Test binaries are linked to the libraries at their install path, but
those are not installed when checkPhase executes.

(cherry picked from commit 7cc5d84cd7)
2020-02-11 07:43:40 +01:00
zimbatm
f8f607b824 ruby_2_4: remove
According to https://endoflife.software/programming-languages/server-side-scripting/ruby
ruby 2.4 will go end-of-life in march, where the new release of nixpkgs
will be cut. We won't be able to support it for security updates.

Remove all references to ruby_2_4 and add ruby_2_7 instead where
missing.

Mark packages that depend on ruby 2.4 as broken:
* chefdk
* sonic-pi

(cherry picked from commit bcdc90a3a7)
2020-02-10 16:29:07 -05:00
worldofpeace
793fc88dbe 20.03 beta release 2020-02-10 15:10:02 -05:00
57438 changed files with 1360274 additions and 5099657 deletions

View File

@@ -1,27 +0,0 @@
{
"name": "nixpkgs",
"image": "mcr.microsoft.com/devcontainers/universal:2-linux",
"features": {
"ghcr.io/devcontainers/features/nix:1": {
// fails in the devcontainer sandbox, enable sandbox via config instead
"multiUser": false,
"packages": "nixd,nixfmt-unstable",
"extraNixConfig": "experimental-features = nix-command flakes,sandbox = true"
}
},
"customizations": {
"vscode": {
"extensions": [
"jnoortheen.nix-ide"
],
"settings": {
"nix.formatterPath": "nixfmt-rfc-style",
"nix.enableLanguageServer": true,
"nix.serverPath": "nixd"
}
}
},
"remoteEnv": {
"NIXPKGS": "/workspaces/nixpkgs"
}
}

View File

@@ -1,5 +1,5 @@
# EditorConfig configuration for nixpkgs
# https://EditorConfig.org
# http://EditorConfig.org
# Top-most EditorConfig file
root = true
@@ -11,112 +11,18 @@ insert_final_newline = true
trim_trailing_whitespace = true
charset = utf-8
# Ignore diffs/patches
[*.{diff,patch}]
end_of_line = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
# We want readFile .version to return the version without a newline.
[.version]
insert_final_newline = false
# see https://nixos.org/nixpkgs/manual/#chap-conventions
# Match json/lockfiles/markdown/nix/perl/python/ruby/shell/docbook files, set indent to spaces
[*.{bash,json,lock,md,nix,pl,pm,py,rb,sh,xml}]
# Match nix/ruby/docbook files, set indent to spaces with width of two
[*.{nix,rb,xml}]
indent_style = space
# Match docbook files, set indent width of one
[*.xml]
indent_size = 1
# Match json/lockfiles/markdown/nix/ruby files, set indent width of two
[*.{json,lock,md,nix,rb}]
indent_size = 2
# Match perl/python/shell scripts, set indent width of four
[*.{bash,pl,pm,py,sh}]
# Match shell/python/perl scripts, set indent to spaces with width of four
[*.{sh,py,pl}]
indent_style = space
indent_size = 4
# Match gemfiles, set indent to spaces with width of two
[Gemfile]
indent_size = 2
indent_style = space
# Match package.json, which are generally pulled from upstream and accept them as they are
[package.json]
indent_style = unset
# Disable file types or individual files
# some of these files may be auto-generated and/or require significant changes
[*.{c,h}]
insert_final_newline = unset
trim_trailing_whitespace = unset
[*.{asc,key,ovpn}]
insert_final_newline = unset
end_of_line = unset
trim_trailing_whitespace = unset
[*.lock]
indent_size = unset
# Although Markdown/CommonMark allows using two trailing spaces to denote
# a hard line break, we do not use that feature in nixpkgs since
# it forces the surrounding paragraph to become a <literallayout> which
# does not wrap reasonably.
# Instead of a hard line break, start a new paragraph by inserting a blank line.
[*.md]
trim_trailing_whitespace = true
# binaries
[*.nib]
end_of_line = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
charset = unset
[eggs.nix]
trim_trailing_whitespace = unset
[nixos/modules/services/networking/ircd-hybrid/*.{conf,in}]
trim_trailing_whitespace = unset
[pkgs/build-support/dotnetenv/Wrapper/**]
end_of_line = unset
indent_style = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
[pkgs/development/compilers/elm/registry.dat]
end_of_line = unset
insert_final_newline = unset
[pkgs/development/haskell-modules/hackage-packages.nix]
indent_style = unset
trim_trailing_whitespace = unset
[pkgs/misc/documentation-highlighter/**]
insert_final_newline = unset
[pkgs/servers/dict/wordnet_structures.py]
trim_trailing_whitespace = unset
[pkgs/tools/misc/timidity/timidity.cfg]
trim_trailing_whitespace = unset
[pkgs/tools/virtualization/ovftool/*.ova]
end_of_line = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
charset = unset
[lib/tests/*.plist]
indent_style = tab
insert_final_newline = unset
[pkgs/kde/generated/**]
insert_final_newline = unset
end_of_line = unset
# Match diffs, avoid to trim trailing whitespace
[*.{diff,patch}]
trim_trailing_whitespace = false

View File

@@ -1,231 +0,0 @@
# This file contains a list of commits that are not likely what you
# are looking for in a blame, such as mass reformatting or renaming.
#
# If a commit's line ends with `# !autorebase <command>`,
# where <command> is an idempotent bash command that reapplies the changes from the commit,
# the `maintainers/scripts/auto-rebase/run.sh` script can be used to rebase
# across that commit while automatically resolving merge conflicts caused by the commit.
#
# You can set this file as a default ignore file for blame by running
# the following command.
#
# $ git config blame.ignoreRevsFile .git-blame-ignore-revs
#
# To temporarily not use this file add
# --ignore-revs-file=""
# to your blame command.
#
# The ignoreRevsFile can't be set globally due to blame failing if the file isn't present.
# To not have to set the option in every repository it is needed in,
# save the following script in your path with the name "git-bblame"
# now you can run
# $ git bblame $FILE
# to use the .git-blame-ignore-revs file if it is present.
#
# #!/usr/bin/env bash
# repo_root=$(git rev-parse --show-toplevel)
# if [[ -e $repo_root/.git-blame-ignore-revs ]]; then
# git blame --ignore-revs-file="$repo_root/.git-blame-ignore-revs" $@
# else
# git blame $@
# fi
# nixos/modules/rename: Sort alphabetically
1f71224fe86605ef4cd23ed327b3da7882dad382
# manual: fix typos
feddd5e7f8c6f8167b48a077fa2a5394dc008999
# nixos: fix module paths in rename.nix
d08ede042b74b8199dc748323768227b88efcf7c
# fix indentation in mk-python-derivation.nix
d1c1a0c656ccd8bd3b25d3c4287f2d075faf3cf3
# fix indentation in meteor default.nix
a37a6de881ec4c6708e6b88fd16256bbc7f26bbd
# pkgs/stdenv/make-derivation: Reindent
b4cc2a2479a7ab0f6440b2e1319221920ef72699
# treewide: automatically md-convert option descriptions
2e751c0772b9d48ff6923569adfa661b030ab6a2
# nixos/*: automatically convert option docs
087472b1e5230ffc8ba642b1e4f9218adf4634a2
# nixos/*: automatically convert option descriptions
ef176dcf7e76c3639571d7c6051246c8fbadf12a
# nixos/*: automatically convert option docs to MD
61e93df1891972bae3e0c97a477bd44e8a477aa0
# nixos/*: convert options with admonitions to MD
722b99bc0eb57711c0498a86a3f55e6c69cdb05f
# nixos/*: automatically convert option docs
6039648c50c7c0858b5e506c6298773a98e0f066
# nixos/*: md-convert options with unordered lists
c915b915b5e466a0b0b2af2906cd4d2380b8a1de
# nixos/*: convert options with listings
f2ea09ecbe1fa1da32eaa6e036d64ac324a2986f
# nixos/*: convert straggler options to MD
1d41cff3dc4c8f37bb5841f51fcbff705e169178
# nixos/*: normalize manpage references to single-line form
423545fe4865d126e86721ba30da116e29c65004
# nixos/documentation: split options doc build
fc614c37c653637e5475a0b0a987489b4d1f351d
# nixos/*: convert options with admonitions to MD
722b99bc0eb57711c0498a86a3f55e6c69cdb05f
# nixos/*: convert internal option descriptions to MD
9547123258f69efd92b54763051d6dc7f3bfcaca
# nixos/*: replace </para><para> with double linebreaks
694d5b19d30bf66687b42fb77f43ea7cd1002a62
# treewide: add defaultText for options with simple interpolation defaults
fb0e5be84331188a69b3edd31679ca6576edb75a
# nixos/*: mark pre-existing markdown descriptions as mdDoc
7e7d68a250f75678451cd44f8c3d585bf750461e
# nixos/*: normalize link format
3aebb4a2be8821a6d8a695f0908d8567dc00de31
# nixos/*: replace <code> in option docs with <literal>
16102dce2fbad670bd47dd75c860a8daa5fe47ad
# nixos/*: add trivial defaultText for options with simple defaults
25124556397ba17bfd70297000270de1e6523b0a
# systemd: rewrite comments
92dfeb7b3dab820ae307c56c216d175c69ee93cd
# systemd: break too long lines of Nix code
67643f8ec84bef1482204709073e417c9f07eb87
# {pkgs/development/cuda-modules,pkgs/test/cuda,pkgs/top-level/cuda-packages.nix}: reformat all CUDA files with nixfmt-rfc-style 2023-03-01
802a1b4d3338f24cbc4efd704616654456d75a94
# postgresql: move packages.nix to ext/default.nix
719034f6f6749d624faa28dff259309fc0e3e730
# php ecosystem: reformat with nixfmt-rfc-style
75ae7621330ff8db944ce4dff4374e182d5d151f
c759efa5e7f825913f9a69ef20f025f50f56dc4d
# pkgs/os-specific/bsd: Reformat with nixfmt-rfc-style 2024-03-01
3fe3b055adfc020e6a923c466b6bcd978a13069a
# k3s: format with nixfmt-rfc-style
6cfcd3c75428ede517bc6b15a353d704837a2830
# python3Packages: format with nixfmt
59b1aef59071cae6e87859dc65de973d2cc595c0
# treewide description changes (#317959)
bf995e3641950f4183c1dd9010349263dfa0123b
755b915a158c9d588f08e9b08da9f7f3422070cc
f8c4a98e8e138e21353a2c33b90db3359f539b37
# vscode-extensions.*: format with nixfmt (RFC 166)
7bf9febfa6271012b1ef86647a3a06f06875fdcf
# remove uses of mdDoc (#303841)
1a24330f792c8625746d07d842290e6fd95ae6f9
acd0e3898feb321cb9a71a0fd376f1157d0f4553
1b28414d2886c57343864326dbb745a634d3e37d
6afb255d976f85f3359e4929abd6f5149c323a02
# azure-cli: move to by-name, nixfmt #325950
96cd538b68bd1d0a0a37979356d669abbba32ebc
# poptracker: format with nixfmt-rfc-style (#326697)
ff5c8f6cc3d1f2e017e86d50965c14b71f00567b
# mangal: format with nixfmt-rfc-style #328284
3bb5e993cac3a6e1c3056d2bc9bf43eb2c7a5951
# pico-sdk: switch to finalAttrs (#329438)
8946018b0391ae594d167f1e58497b18de068968
# ollama: format with nixfmt-rfc-style (#329353)
bdfde18037f8d9f9b641a4016c8ada4dc4cbf856
# nixos/ollama: format with nixfmt-rfc-style (#329561)
246d1ee533810ac1946d863bbd9de9b525818d56
# steam: cleanup (#216972)
ad815aebfbfe1415ff6436521d545029c803c3fb
# nixos/nvidia: apply nixfmt-rfc-style (#313440)
fbdcdde04a7caa007e825a8b822c75fab9adb2d6
# treewide: reformat files which need reformatting after (#341407)
e0464e47880a69896f0fb1810f00e0de469f770a
# step-cli: format package.nix with nixfmt (#331629)
fc7a83f8b62e90de5679e993d4d49ca014ea013d
# ndn-cxx: format with nixfmt-rfc-style
160b2b769c3b8a6d1ae9947afa77520fa2887db7
# ndn-tools: format with nixfmt-rfc-style
4882ef721ce3d7bb3b5e48ff80125255db515013
# nfd: format with nixfmt-rfc-style
548c2377fa81e2abfc192fbf4f521e601251c468
# darwin.stdenv: format with nixfmt-rfc-style (#333962)
93c10ac9e561c6594d3baaeaff2341907390d9b8
# nrr: format with nixfmt-rfc-style (#334578)
cffc27daf06c77c0d76bc35d24b929cb9d68c3c9
# nixos/kanidm: inherit lib, nixfmt
8f18393d380079904d072007fb19dc64baef0a3a
# fetchurl: nixfmt-rfc-style
ce21e97a1f20dee15da85c084f9d1148d84f853b
# percona: apply nixfmt
8d14fa2886fec877690c6d28cfcdba4503dbbcea
# nixos/virtualisation: format image-related files
# Original formatting commit that was reverted
04fadac429ca7d6b92025188652376c230205730
# Revert commit
4cec81a9959ce612b653860dcca53101a36f328a
# Final commit that does the formatting
88b285c01d84de82c0b2b052fd28eaf6709c2d26
# sqlc: format with nixfmt
2bdec131b2bb2c8563f4556d741d34ccb77409e2
# ant: format with nixfmt-rfc-style
2538d58436b8d0b56d29780aeebf4bf720ddb9ea
# treewide: migrate packages to pkgs/by-name, take 1
571c71e6f73af34a229414f51585738894211408
# format files with nixfmt (#347275)
adb9714bd909df283c66bbd641bd631ff50a4260
# treewide: incus packages
9ab59bb5fb943ad6740f64f5a79eae9642fb8211
# treewide nixfmt reformat pass 1, master, staging and staging-next
4f0dadbf38ee4cf4cc38cbc232b7708fddf965bc
667d42c00d566e091e6b9a19b365099315d0e611
84d4f874c2bac9f3118cb6907d7113b3318dcb5e
# tmuxPlugins sha-to-sri.py script
516b1e74c358a9c4b06e5591f8c1a2897aad0c33

4
.gitattributes vendored
View File

@@ -1,6 +1,4 @@
**/deps.nix linguist-generated
**/deps.json linguist-generated
**/deps.toml linguist-generated
**/node-packages.nix linguist-generated
pkgs/applications/editors/emacs-modes/*-generated.nix linguist-generated
@@ -16,5 +14,3 @@ nixos/doc/default.nix linguist-documentation=false
nixos/modules/module-list.nix merge=union
# pkgs/top-level/all-packages.nix merge=union
ci/OWNERS linguist-language=CODEOWNERS

180
.github/CODEOWNERS vendored Normal file
View File

@@ -0,0 +1,180 @@
# CODEOWNERS file
#
# This file is used to describe who owns what in this repository. This file does not
# replace `meta.maintainers` but is instead used for other things than derivations
# and modules, like documentation, package sets, and other assets.
#
# For documentation on this file, see https://help.github.com/articles/about-codeowners/
# Mentioned users will get code review requests.
# This file
/.github/CODEOWNERS @edolstra
# Libraries
/lib @edolstra @nbp @infinisil
/lib/systems @nbp @ericson2314 @matthewbauer
/lib/generators.nix @edolstra @nbp @Profpatsch
/lib/cli.nix @edolstra @nbp @Profpatsch
/lib/debug.nix @edolstra @nbp @Profpatsch
/lib/asserts.nix @edolstra @nbp @Profpatsch
# Nixpkgs Internals
/default.nix @nbp
/pkgs/top-level/default.nix @nbp @Ericson2314
/pkgs/top-level/impure.nix @nbp @Ericson2314
/pkgs/top-level/stage.nix @nbp @Ericson2314 @matthewbauer
/pkgs/top-level/splice.nix @Ericson2314 @matthewbauer
/pkgs/top-level/release-cross.nix @Ericson2314 @matthewbauer
/pkgs/stdenv/generic @Ericson2314 @matthewbauer
/pkgs/stdenv/cross @Ericson2314 @matthewbauer
/pkgs/build-support/cc-wrapper @Ericson2314 @orivej
/pkgs/build-support/bintools-wrapper @Ericson2314 @orivej
/pkgs/build-support/setup-hooks @Ericson2314
# NixOS Internals
/nixos/default.nix @nbp @infinisil
/nixos/lib/from-env.nix @nbp @infinisil
/nixos/lib/eval-config.nix @nbp @infinisil
/nixos/doc/manual/configuration/abstractions.xml @nbp
/nixos/doc/manual/configuration/config-file.xml @nbp
/nixos/doc/manual/configuration/config-syntax.xml @nbp
/nixos/doc/manual/configuration/modularity.xml @nbp
/nixos/doc/manual/development/assertions.xml @nbp
/nixos/doc/manual/development/meta-attributes.xml @nbp
/nixos/doc/manual/development/option-declarations.xml @nbp
/nixos/doc/manual/development/option-def.xml @nbp
/nixos/doc/manual/development/option-types.xml @nbp
/nixos/doc/manual/development/replace-modules.xml @nbp
/nixos/doc/manual/development/writing-modules.xml @nbp
/nixos/doc/manual/man-nixos-option.xml @nbp
/nixos/modules/installer/tools/nixos-option.sh @nbp
# NixOS integration test driver
/nixos/lib/test-driver @tfc
# New NixOS modules
/nixos/modules/module-list.nix @Infinisil
# Python-related code and docs
/maintainers/scripts/update-python-libraries @FRidh
/pkgs/top-level/python-packages.nix @FRidh @jonringer
/pkgs/development/interpreters/python @FRidh
/pkgs/development/python-modules @FRidh @jonringer
/doc/languages-frameworks/python.section.md @FRidh
# Haskell
/pkgs/development/compilers/ghc @basvandijk @cdepillabout
/pkgs/development/haskell-modules @basvandijk @cdepillabout @infinisil
/pkgs/development/haskell-modules/default.nix @basvandijk @cdepillabout
/pkgs/development/haskell-modules/generic-builder.nix @basvandijk @cdepillabout
/pkgs/development/haskell-modules/hoogle.nix @basvandijk @cdepillabout
# Perl
/pkgs/development/interpreters/perl @volth
/pkgs/top-level/perl-packages.nix @volth
/pkgs/development/perl-modules @volth
# R
/pkgs/applications/science/math/R @peti
/pkgs/development/r-modules @peti
# Ruby
/pkgs/development/interpreters/ruby @alyssais @zimbatm
/pkgs/development/ruby-modules @alyssais @zimbatm
# Rust
/pkgs/development/compilers/rust @Mic92 @LnL7
/pkgs/build-support/rust @andir
# Darwin-related
/pkgs/stdenv/darwin @NixOS/darwin-maintainers
/pkgs/os-specific/darwin @NixOS/darwin-maintainers
# C compilers
/pkgs/development/compilers/gcc @matthewbauer
/pkgs/development/compilers/llvm @matthewbauer
# Compatibility stuff
/pkgs/top-level/unix-tools.nix @matthewbauer
/pkgs/development/tools/xcbuild @matthewbauer
# Beam-related (Erlang, Elixir, LFE, etc)
/pkgs/development/beam-modules @gleber
/pkgs/development/interpreters/erlang @gleber
/pkgs/development/interpreters/lfe @gleber
/pkgs/development/interpreters/elixir @gleber
/pkgs/development/tools/build-managers/rebar @gleber
/pkgs/development/tools/build-managers/rebar3 @gleber
/pkgs/development/tools/erlang @gleber
# Jetbrains
/pkgs/applications/editors/jetbrains @edwtjo
# Eclipse
/pkgs/applications/editors/eclipse @rycee
# Licenses
/lib/licenses.nix @alyssais
# Qt / KDE
/pkgs/applications/kde @ttuegel
/pkgs/desktops/plasma-5 @ttuegel
/pkgs/development/libraries/kde-frameworks @ttuegel
/pkgs/development/libraries/qt-5 @ttuegel
# PostgreSQL and related stuff
/pkgs/servers/sql/postgresql @thoughtpolice
/nixos/modules/services/databases/postgresql.xml @thoughtpolice
/nixos/modules/services/databases/postgresql.nix @thoughtpolice
/nixos/tests/postgresql.nix @thoughtpolice
# Hardened profile & related modules
/nixos/modules/profiles/hardened.nix @joachifm
/nixos/modules/security/hidepid.nix @joachifm
/nixos/modules/security/lock-kernel-modules.nix @joachifm
/nixos/modules/security/misc.nix @joachifm
/nixos/tests/hardened.nix @joachifm
/pkgs/os-specific/linux/kernel/hardened-config.nix @joachifm
# Network Time Daemons
/pkgs/tools/networking/chrony @thoughtpolice
/pkgs/tools/networking/ntp @thoughtpolice
/pkgs/tools/networking/openntpd @thoughtpolice
/nixos/modules/services/networking/ntp @thoughtpolice
# Dhall
/pkgs/development/dhall-modules @Gabriel439 @Profpatsch
/pkgs/development/interpreters/dhall @Gabriel439 @Profpatsch
# Idris
/pkgs/development/idris-modules @Infinisil
# Bazel
/pkgs/development/tools/build-managers/bazel @mboes @Profpatsch
# NixOS modules for e-mail and dns services
/nixos/modules/services/mail/mailman.nix @peti
/nixos/modules/services/mail/postfix.nix @peti
/nixos/modules/services/networking/bind.nix @peti
/nixos/modules/services/mail/rspamd.nix @peti
# Emacs
/pkgs/applications/editors/emacs-modes @adisbladis
/pkgs/applications/editors/emacs @adisbladis
/pkgs/top-level/emacs-packages.nix @adisbladis
# VimPlugins
/pkgs/misc/vim-plugins @jonringer @softinio
# VsCode Extensions
/pkgs/misc/vscode-extensions @jonringer
# Prometheus exporter modules and tests
/nixos/modules/services/monitoring/prometheus/exporters.nix @WilliButz
/nixos/modules/services/monitoring/prometheus/exporters.xml @WilliButz
/nixos/tests/prometheus-exporters.nix @WilliButz
# PHP
/pkgs/development/interpreters/php @etu
/pkgs/top-level/php-packages.nix @etu
/pkgs/build-support/build-pecl.nix @etu

62
.github/CONTRIBUTING.md vendored Normal file
View File

@@ -0,0 +1,62 @@
# How to contribute
Note: contributing implies licensing those contributions
under the terms of [COPYING](../COPYING), which is an MIT-like license.
## Opening issues
* Make sure you have a [GitHub account](https://github.com/signup/free)
* Make sure there is no open issue on the topic
* [Submit a new issue](https://github.com/NixOS/nixpkgs/issues/new/choose) by choosing the kind of topic and fill out the template
## Submitting changes
* Format the commit messages in the following way:
```
(pkg-name | nixos/<module>): (from -> to | init at version | refactor | etc)
(Motivation for change. Additional information.)
```
For consistency, there should not be a period at the end of the commit message's summary line (the first line of the commit message).
Examples:
* nginx: init at 2.0.1
* firefox: 54.0.1 -> 55.0
* nixos/hydra: add bazBaz option
Dual baz behavior is needed to do foo.
* nixos/nginx: refactor config generation
The old config generation system used impure shell scripts and could break in specific circumstances (see #1234).
* `meta.description` should:
* Be capitalized.
* Not start with the package name.
* Not have a period at the end.
* `meta.license` must be set and fit the upstream license.
* If there is no upstream license, `meta.license` should default to `stdenv.lib.licenses.unfree`.
* `meta.maintainers` must be set.
See the nixpkgs manual for more details on [standard meta-attributes](https://nixos.org/nixpkgs/manual/#sec-standard-meta-attributes) and on how to [submit changes to nixpkgs](https://nixos.org/nixpkgs/manual/#chap-submitting-changes).
## Writing good commit messages
In addition to writing properly formatted commit messages, it's important to include relevant information so other developers can later understand *why* a change was made. While this information usually can be found by digging code, mailing list/Discourse archives, pull request discussions or upstream changes, it may require a lot of work.
For package version upgrades and such a one-line commit message is usually sufficient.
## Backporting changes
To [backport a change into a release branch](https://nixos.org/nixpkgs/manual/#submitting-changes-stable-release-branches):
1. Take note of the commit in which the change was introduced into `master`.
2. Check out the target _release branch_, e.g. `release-20.03`. Do not use a _channel branch_ like `nixos-20.03` or `nixpkgs-20.03`.
3. Use `git cherry-pick -x <original commit>`.
4. Open your backport PR. Make sure to select the release branch (e.g. `release-20.03`) as the target branch of the PR, and link to the PR in which the original change was made to `master`.
## Reviewing contributions
See the nixpkgs manual for more details on how to [Review contributions](https://nixos.org/nixpkgs/manual/#chap-reviewing-contributions).

View File

@@ -1,6 +1,11 @@
<!--
Please note: This blank issue template is meant for extraordinary issues
that do not fit the templates. Unless you know your issue is relevant to
Nixpkgs and requires the free-form blank issue, please use the issue
templates instead.
-->
## Issue description
### Steps to reproduce
## Technical details
Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.

View File

@@ -1,142 +0,0 @@
name: "Bug report (package)"
description: "Create a generic bug report against a package."
title: "PACKAGENAME: BUG TITLE"
labels: ["0.kind: bug"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`PACKAGENAME: BUG TITLE`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)) and a short title summarising what the bug entails.
> [!TIP]
> For instance, if you were filing a bug against the [`hello`](https://search.nixos.org/packages?channel=unstable&from=0&size=1&buckets=%7B%22package_attr_set%22%3A%5B%22No%20package%20set%22%5D%2C%22package_license_set%22%3A%5B%22GNU%20General%20Public%20License%20v3.0%20or%20later%22%5D%2C%22package_maintainers_set%22%3A%5B%5D%2C%22package_platforms%22%3A%5B%5D%7D&sort=relevance&type=packages&query=hello) package about it failing to launch on ARM Linux, your title would be as follows:
> `hello: fails to launch on aarch64-linux`
---
- type: "dropdown"
id: "version"
attributes:
label: "Nixpkgs version"
description: |
What version of Nixpkgs are you using?
> [!IMPORTANT]
> If you are using an older version, please update to the latest stable version and check if the issue persists before continuing this bug report.
options:
- "Please select a version."
- "- Unstable (25.05)"
- "- Stable (24.11)"
- "- Previous Stable (24.05)"
default: 0
validations:
required: true
- type: "textarea"
id: "description"
attributes:
label: "Describe the bug"
description: "Please include a clear and concise description of what the issue is."
validations:
required: true
- type: "textarea"
id: "how-to-reproduce"
attributes:
label: "Steps to reproduce"
description: "Please include a step-by-step guide for reproducing this issue. Consider writing in concise, numbered bullet points to ensure that Nixpkgs developers can retrace your steps."
validations:
required: true
- type: "input"
id: "expected-behaviour"
attributes:
label: "Expected behaviour"
description: "Please write a concise description of what was supposed to happen."
validations:
required: true
- type: "textarea"
id: "screenshots"
attributes:
label: "Screenshots"
description: |
If applicable, add screenshots to help explain your problem.
If you need help uploading images to GitHub, please review the [relevant documentation](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#uploading-assets).
validations:
required: false
- type: "textarea"
id: "logs"
attributes:
label: "Relevant log output"
description: |
If applicable, copy and paste any relevant log output.
This will be automatically formatted into code, so no need for backticks.
render: "console"
validations:
required: false
- type: "textarea"
id: "additional-context"
attributes:
label: "Additional context"
description: "Add any other context about the problem here."
validations:
required: false
- type: "textarea"
id: "metadata"
attributes:
label: "System metadata"
description: "Please run `nix-shell -p nix-info --run \"nix-info -m\"` on a terminal and paste the output of that command here."
validations:
required: true
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
description: |
This bug tracker is for actionable issues that are not the result of user error. If you need help using your system and are unsure if this is a bug with Nixpkgs, please consider asking for help on the [NixOS Discourse](https://discourse.nixos.org/) or the [NixOS Matrix Space](https://matrix.to/#/#community:nixos.org) before opening an issue.
options:
- label: "I assert that this is a bug and not a support request."
required: true
- label: "I assert that this is not a [duplicate of an existing issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%220.kind%3A+bug%22+-label%3A%226.topic%3A+darwin%22+-label%3A%226.topic%3A+nixos%22). "
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,156 +0,0 @@
name: "Bug report (macOS)"
description: "Create a bug report against a package where the issue only occurs on macOS."
title: "PACKAGENAME: BUG TITLE"
labels: ["0.kind: bug", "6.topic: darwin"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`PACKAGENAME: BUG TITLE`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)) and a short title summarising what the bug entails.
> [!TIP]
> For instance, if you were filing a bug against the [`hello`](https://search.nixos.org/packages?channel=unstable&from=0&size=1&buckets=%7B%22package_attr_set%22%3A%5B%22No%20package%20set%22%5D%2C%22package_license_set%22%3A%5B%22GNU%20General%20Public%20License%20v3.0%20or%20later%22%5D%2C%22package_maintainers_set%22%3A%5B%5D%2C%22package_platforms%22%3A%5B%5D%7D&sort=relevance&type=packages&query=hello) package about it failing to launch on Apple Silicon, your title would be as follows:
> `hello: fails to launch on aarch64-darwin`
---
- type: "dropdown"
id: "version"
attributes:
label: "Nixpkgs version"
description: |
What version of Nixpkgs are you using?
> [!IMPORTANT]
> If you are using an older version, please update to the latest stable version and check if the issue persists before continuing this bug report.
options:
- "Please select a version."
- "- Unstable (25.05)"
- "- Stable (24.11)"
- "- Previous Stable (24.05)"
default: 0
validations:
required: true
- type: "textarea"
id: "description"
attributes:
label: "Describe the bug"
description: "Please include a clear and concise description of what the issue is."
validations:
required: true
- type: "textarea"
id: "how-to-reproduce"
attributes:
label: "Steps to reproduce"
description: "Please include a step-by-step guide for reproducing this issue. Consider writing in concise, numbered bullet points to ensure that Nixpkgs developers can retrace your steps."
validations:
required: true
- type: "input"
id: "expected-behaviour"
attributes:
label: "Expected behaviour"
description: "Please write a concise description of what was supposed to happen."
validations:
required: true
- type: "textarea"
id: "screenshots"
attributes:
label: "Screenshots"
description: |
If applicable, add screenshots to help explain your problem.
If you need help uploading images to GitHub, please review the [relevant documentation](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#uploading-assets).
validations:
required: false
- type: "textarea"
id: "logs"
attributes:
label: "Relevant log output"
description: |
If applicable, copy and paste any relevant log output.
This will be automatically formatted into code, so no need for backticks.
render: "console"
validations:
required: false
- type: "textarea"
id: "additional-context"
attributes:
label: "Additional context"
description: "Add any other context about the problem here."
validations:
required: false
- type: "textarea"
id: "metadata"
attributes:
label: "System metadata"
description: "Please run `nix-shell -p nix-info --run \"nix-info -m\"` on a terminal and paste the output of that command here."
validations:
required: true
- type: "dropdown"
id: "nix-darwin"
attributes:
label: "Are you using nix-darwin?"
description: |
[`nix-darwin`](https://github.com/LnL7/nix-darwin) is a set of NixOS-like modules for macOS systems. Depending on your issue, this information may be relevant.
options:
- "Yes, I am using nix-darwin."
- "No, I am not using nix-darwin."
default: 1
validations:
required: true
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
If this issue is related to the Darwin packaging architecture as a whole, or is related to the core Darwin frameworks, consider mentioning the `@NixOS/darwin-core` team.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
description: |
This bug tracker is for actionable issues that are not the result of user error. If you need help using your system and are unsure if this is a bug with Nixpkgs/NixOS, please consider asking for help on the [NixOS Discourse](https://discourse.nixos.org/) or the [NixOS Matrix Space](https://matrix.to/#/#community:nixos.org) before opening an issue.
options:
- label: "I assert that this is a bug and not a support request."
required: true
- label: "I assert that this is not a [duplicate of an existing issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%220.kind%3A+bug%22+label%3A%226.topic%3A+darwin%22). "
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,146 +0,0 @@
name: "Bug report (NixOS module)"
description: "Create a bug report against a NixOS Module."
title: "nixos/MODULENAME: BUG TITLE"
labels: ["0.kind: bug", "6.topic: nixos"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`nixos/MODULENAME: BUG TITLE`** template above with the correct module name (As seen in the [NixOS Option Search](https://search.nixos.org/options)) and a short title summarising what the bug entails.
> [!TIP]
> For instance, if you were filing a bug against the [`systemd-boot`](https://search.nixos.org/options?channel=unstable&show=boot.loader.systemd-boot.enable&from=0&size=1) module about it failing to install [`memtest86`](https://search.nixos.org/options?channel=unstable&show=boot.loader.systemd-boot.memtest86.enable&from=0&size=1), your title would be as follows:
> `nixos/systemd-boot: fails to install memtest86`
---
- type: "dropdown"
id: "version"
attributes:
label: "Nixpkgs version"
description: |
What version of Nixpkgs are you using?
> [!IMPORTANT]
> If you are using an older version, please [update to the latest stable version](https://nixos.org/download) and check if the issue persists before continuing this bug report.
options:
- "Please select a version."
- "- Unstable (25.05)"
- "- Stable (24.11)"
- "- Previous Stable (24.05)"
default: 0
validations:
required: true
- type: "textarea"
id: "description"
attributes:
label: "Describe the bug"
description: "Please include a clear and concise description of what the issue is."
validations:
required: true
- type: "textarea"
id: "how-to-reproduce"
attributes:
label: "Steps to reproduce"
description: "Please include a step-by-step guide for reproducing this issue. Consider writing in concise, numbered bullet points to ensure that Nixpkgs developers can retrace your steps."
validations:
required: true
- type: "input"
id: "expected-behaviour"
attributes:
label: "Expected behaviour"
description: "Please write a concise description of what was supposed to happen."
validations:
required: true
- type: "textarea"
id: "screenshots"
attributes:
label: "Screenshots"
description: |
If applicable, add screenshots to help explain your problem.
If you need help uploading images to GitHub, please review the [relevant documentation](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#uploading-assets).
validations:
required: false
- type: "textarea"
id: "logs"
attributes:
label: "Relevant log output"
description: |
If applicable, copy and paste any relevant log output.
This will be automatically formatted into code, so no need for backticks.
render: "console"
validations:
required: false
- type: "textarea"
id: "additional-context"
attributes:
label: "Additional context"
description: "Add any other context about the problem here."
validations:
required: false
- type: "textarea"
id: "metadata"
attributes:
label: "System metadata"
description: "Please run `nix-shell -p nix-info --run \"nix-info -m\"` on a terminal and paste the output of that command here."
validations:
required: true
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the `meta.maintainers` list of the offending module. This is done by prefixing the person's username with an '@' character. You can quickly go to the source code of a module by searching for it on the [NixOS Option Search](https://search.nixos.org/options) and clicking the "Declared in..." button.
Please note that the maintainer attribute name does not always match the maintainer's GitHub username. If that occurs, try looking in [`maintainers/maintainer-list.nix`](https://github.com/NixOS/nixpkgs/blob/master/maintainers/maintainer-list.nix) for the maintainer attribute name, and checking if the maintainer has a listed GitHub username.
If in doubt, check `git blame` for whoever last touched the module, or check the associated package's maintainers. Please add the mentions above the `---` characters.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
description: |
This bug tracker is for actionable issues that are not the result of user error. If you need help using your system and are unsure if this is a bug with Nixpkgs, please consider asking for help on the [NixOS Discourse](https://discourse.nixos.org/) or the [NixOS Matrix Space](https://matrix.to/#/#community:nixos.org) before opening an issue.
options:
- label: "I assert that this is a bug and not a support request."
required: true
- label: "I assert that this is not a [duplicate of an existing issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%220.kind%3A+bug%22+label%3A%226.topic%3A+nixos%22). "
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,149 +0,0 @@
name: "Build failure"
description: "Report a package that is failing to build."
title: "Build failure: PACKAGENAME"
labels: ["0.kind: build failure"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`Build failure: PACKAGENAME`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)).
> [!TIP]
> For instance, if you were filing a build failure against the [`hello`](https://search.nixos.org/packages?channel=unstable&from=0&size=1&buckets=%7B%22package_attr_set%22%3A%5B%22No%20package%20set%22%5D%2C%22package_license_set%22%3A%5B%22GNU%20General%20Public%20License%20v3.0%20or%20later%22%5D%2C%22package_maintainers_set%22%3A%5B%5D%2C%22package_platforms%22%3A%5B%5D%7D&sort=relevance&type=packages&query=hello) package, your title would be as follows:
> `Build failure: hello`
---
- type: "dropdown"
id: "version"
attributes:
label: "Nixpkgs version"
description: |
In what version of Nixpkgs did the build failure occur?
> [!IMPORTANT]
> If you are using an older version, please update to the latest stable version and check if the build failure persists before continuing this report.
> If you are purposefully trying to build an ancient version of a package in an older Nixpkgs, please coordinate with the [NixOS Archivists](https://matrix.to/#/#archivists:nixos.org).
options:
- "Please select a version."
- "- Unstable (25.05)"
- "- Stable (24.11)"
- "- Previous Stable (24.05)"
default: 0
validations:
required: true
- type: "textarea"
id: "how-to-reproduce"
attributes:
label: "Steps to reproduce"
description: "Please include a step-by-step guide for reproducing this build failure. Consider writing in concise, numbered bullet points to ensure that Nixpkgs developers can retrace your steps."
validations:
required: true
- type: "dropdown"
id: "hydra"
attributes:
label: "Can Hydra reproduce this build failure?"
description: |
Can [Hydra](https://hydra.nixos.org), Nixpkgs' Continuous Integration system, reproduce this build failure?
Please use the search function in the header bar to locate the last build job for the package in question.
- If there's a <img src="https://raw.githubusercontent.com/NixOS/hydra/refs/heads/master/src/root/static/images/emojione-red-x-274c.svg" width="20px" align="top" alt="Red X"> icon near the package entry, say '**Yes, Hydra can reproduce this build failure.**'
- If there's a <img src="https://raw.githubusercontent.com/NixOS/hydra/refs/heads/master/src/root/static/images/emojione-gray-x-2716.svg" width="20px" align="top" alt="Dark Gray X"> icon near the package entry, then the build failure occurs with another package, and you need to track the original failing package by going down the chain of 'Cached failures' until you reach the final package in the failing dependency chain. Once you locate the failing package, re-write this report against that package and say '**Yes, Hydra can reproduce this build failure.**'
- If there's a <img src="https://raw.githubusercontent.com/NixOS/hydra/refs/heads/master/src/root/static/images/emojione-check-2714.svg" width="20px" align="top" alt="Green Check Mark"> icon near the package entry, then it most likely means it's a local issue with your system. (Maybe you ran out of space?)
You can still open a build failure report, but please say '**No, Hydra cannot reproduce this build failure.**' below.
- If there's a <img src="https://raw.githubusercontent.com/NixOS/hydra/refs/heads/master/src/root/static/images/emojione-question-2754.svg" width="20px" align="top" alt="Gray Question Mark"> icon near the package entry, say '**Hydra is currently rebuilding this package.**'
- If there's a <img src="https://raw.githubusercontent.com/NixOS/hydra/refs/heads/master/src/root/static/images/emojione-stopsign-1f6d1.svg" width="20px" align="top" alt="Red Stop Sign"> icon near the package entry, then the build job was stopped manually. If this occurs, please coordinate with the [Infrastructure Team](https://matrix.to/#/#infra:nixos.org), and say '**The last build job was manually cancelled.**'
options:
- "Please select the Hydra Status."
- "Yes, Hydra can reproduce this build failure."
- "No, Hydra cannot reproduce this build failure."
- "Hydra is currently rebuilding this package."
- "The last build job was manually cancelled."
default: 0
validations:
required: true
- type: "input"
id: "hydra-logs"
attributes:
label: "Link to Hydra build job"
description: "If you answered 'yes' in the question above, please copy-and-paste the link to the failing Hydra job here."
validations:
required: false
- type: "textarea"
id: "logs"
attributes:
label: "Relevant log output"
description: |
Please copy and paste the logs from the failed build.
This will be automatically formatted into code, so no need for backticks.
render: "console"
validations:
required: true
- type: "textarea"
id: "additional-context"
attributes:
label: "Additional context"
description: "Add any other context about the problem here."
validations:
required: false
- type: "textarea"
id: "metadata"
attributes:
label: "System metadata"
description: "Please run `nix-shell -p nix-info --run \"nix-info -m\"` on a terminal and paste the output of that command here."
validations:
required: true
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
description: |
This bug tracker is for actionable issues that are not the result of user error. If you need help using your system and are unsure if this is a bug with Nixpkgs, please consider asking for help on the [NixOS Discourse](https://discourse.nixos.org/) or the [NixOS Matrix Space](https://matrix.to/#/#community:nixos.org) before opening an issue.
options:
- label: "I assert that this is a bug and not a support request."
required: true
- label: "I assert that this is not a [duplicate of an existing issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%220.kind%3A+build+failure%22). "
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,127 +0,0 @@
name: "Request: new package"
description: "Create a package request for software that is not yet included in Nixpkgs."
title: "Package request: PACKAGENAME"
labels: ["0.kind: enhancement", "0.kind: packaging request", "9.needs: package (new)"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`Package request: PACKAGENAME`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)).
> [!TIP]
> For instance, if you were filing a request against the missing `hello` package, your title would be as follows:
> `Package request: hello`
---
- type: "dropdown"
id: "version"
attributes:
label: "Nixpkgs version"
description: |
What version of Nixpkgs are you using?
> [!IMPORTANT]
> If you are using an older or stable version, please update to the latest **unstable** version and check if the package still does not exist before continuing this request.
options:
- "Please select a version."
- "- Unstable (25.05)"
- "- Stable (24.11)"
- "- Previous Stable (24.05)"
default: 0
validations:
required: true
- type: "textarea"
id: "description"
attributes:
label: "Describe the package"
description: "Please include a clear and concise description of what the package is."
validations:
required: true
- type: "input"
id: "homepage"
attributes:
label: "Upstream homepage"
description: "Please copy and paste a link to the package's homepage. Leave this field blank if there is no upstream homepage."
validations:
required: false
- type: "input"
id: "source"
attributes:
label: "Source URL"
description: "Please copy and paste a link to the package's source code or binary download page."
validations:
required: true
- type: "input"
id: "license"
attributes:
label: "License"
description: "Please indicate the package's license. If the package has no license, or the source code is not public, please indicate the package is `unfree`."
validations:
required: true
- type: "dropdown"
id: "platforms"
attributes:
label: "Platforms"
description: "Please indicate the platforms this package compiles for. `darwin` refers to macOS. `Exotic` refers to uncommon platforms like RISC-V or 32-bit ARM; please mention in the 'Additional Context' section below if this package is supposed to compile for such exotic platforms."
multiple: true
options:
- "x86_64-linux"
- "aarch64-linux"
- "x86_64-darwin"
- "aarch64-darwin"
- "Exotic"
validations:
required: true
- type: "textarea"
id: "additional-context"
attributes:
label: "Additional context"
description: "Add any other context about the proposed module here."
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
options:
- label: "I assert that this package does not yet exist in an [open pull request](https://github.com/NixOS/nixpkgs/pulls?q=is%3Aopen+is%3Apr+label%3A%228.has%3A+package+%28new%29%22) or in [Nixpkgs Unstable](https://search.nixos.org/packages?channel=unstable)."
required: true
- label: "I assert that this is not a [duplicate of any known issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+label%3A%220.kind%3A+packaging+request%22)."
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "For this package's maintainers:"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction and also reminds them to tag this issue in their pull requests.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
---
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,120 +0,0 @@
name: "Request: package update"
description: "Create an update request for an existing, but outdated package."
title: "Update Request: PACKAGENAME OLDVERSION → NEWVERSION"
labels: ["0.kind: enhancement", "9.needs: package (update)"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`Update Request: PACKAGENAME OLDVERSION → NEWVERSION`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)), the current version of the package, and the latest version of the package.
> [!TIP]
> For instance, if you were filing a request against the out of date `hello` package, where the current version in Nixpkgs is 1.0.0, but the latest version upstream is 1.0.1, your title would be as follows:
> `Update Request: hello 1.0.0 → 1.0.1`
> [!NOTE]
> If you are filing an update request to change a package's source to a fork, please file a new package request instead. Even if the original upstream is outdated, the fork should be considered a new package.
---
- type: "dropdown"
id: "version"
attributes:
label: "Nixpkgs version"
description: |
What version of Nixpkgs are you using?
> [!IMPORTANT]
> If you are using an older or stable version, please update to the latest **unstable** version and check if the package is still out of date.
> If the package has been updated in unstable, but you believe the update should be backported to the stable release of Nixpkgs, please file the '**Request: backport to stable**' form instead.
options:
- "Please select a version."
- "- Unstable (25.05)"
- "- Stable (24.11)"
- "- Previous Stable (24.05)"
default: 0
validations:
required: true
- type: "input"
id: "name"
attributes:
label: "Package name"
description: "Please indicate the name of the package."
validations:
required: true
- type: "input"
id: "upstream-version"
attributes:
label: "Upstream version"
description: "Please indicate the latest version of the package."
validations:
required: true
- type: "input"
id: "nixpkgs-version"
attributes:
label: "Nixpkgs version"
description: |
Please indicate the current version number in Nixpkgs' **unstable** channel. You can check this by setting the [NixOS Package Search](https://search.nixos.org/packages?channel=unstable) channel to 'unstable' and searching for the package.
If you meant to request an upgrade in the stable channel, please file the '**Request: backport to stable**' form instead.
validations:
required: true
- type: "input"
id: "changelog"
attributes:
label: "Changelog"
description: "If applicable, please link the upstream changelog for the latest version."
validations:
required: false
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
options:
- label: "I assert that this package update does not yet exist in an [open pull request](https://github.com/NixOS/nixpkgs/pulls?q=is%3Aopen+is%3Apr+label%3A%228.has%3A+package+%28update%29%22) or in [Nixpkgs Unstable](https://search.nixos.org/packages?channel=unstable)."
required: true
- label: "I assert that this is not a [duplicate of any known issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%229.needs%3A+package+%28update%29%22)."
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,100 +0,0 @@
name: "Request: NixOS module"
description: "Create a new NixOS Module request for an existing package."
title: "Module Request: nixos/MODULENAME"
labels: ["0.kind: enhancement", "6.topic: nixos", "9.needs: module (new)"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`Module Request: nixos/MODULENAME`** template above with the correct module name (As seen in the [NixOS Option Search](https://search.nixos.org/options)).
> [!TIP]
> For instance, if you were filing a request against the missing `hello` module, your title would be as follows:
> `Module Request: nixos/hello`
---
- type: "dropdown"
id: "version"
attributes:
label: "Nixpkgs version"
description: |
What version of Nixpkgs are you using?
> [!IMPORTANT]
> If you are using an older or stable version, please update to the latest **unstable** version and check if the module still does not exist before continuing this request.
options:
- "Please select a version."
- "- Unstable (25.05)"
- "- Stable (24.11)"
- "- Previous Stable (24.05)"
default: 0
validations:
required: true
- type: "textarea"
id: "description"
attributes:
label: "Describe the proposed module"
description: "Please include a clear and concise description of what the module should accomplish."
validations:
required: true
- type: "textarea"
id: "additional-context"
attributes:
label: "Additional context"
description: "Add any other context about the proposed module here."
validations:
required: false
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
options:
- label: "I assert that this module does not yet exist in an [open pull request](https://github.com/NixOS/nixpkgs/pulls?q=is%3Aopen+is%3Apr+label%3A%228.has%3A+module+%28new%29%22) or in [NixOS Unstable](https://search.nixos.org/options?channel=unstable)."
required: true
- label: "I assert that this is not a [duplicate of an existing issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%229.needs%3A+module+%28new%29%22). "
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve NixOS!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,102 +0,0 @@
name: "Request: backport to stable"
description: "Create a backport request for a package that is up-to-date in the unstable channel, but outdated in the stable channel."
title: "Backport to Stable: PACKAGENAME OLDVERSION → NEWVERSION"
labels: ["0.kind: enhancement", "9.needs: port to stable"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
> [!CAUTION]
> **Before you begin:** Be advised that backports are subject to the [release suitability guidelines](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#changes-acceptable-for-releases).
> Stable releases of Nixpkgs do not receive breaking changes, which include major package updates that have incompatible API changes and break backwards compatibility. In the [Semantic Versioning standard](https://semver.org/), this is the first version number. (1.X.X)
> Generally, only minor package updates, such as security patches, bug fixes and feature additions (but not removals!) will be considered for backporting. Please read the rules above carefully before filing this backport request.
Welcome to Nixpkgs. Please replace the **`Backport to Stable: PACKAGENAME OLDVERSION → NEWVERSION`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)), the current version of the package in Nixpkgs Stable and the current version of the package in Nixpkgs Unstable.
> [!TIP]
> For instance, if you were filing a request against the out of date `hello` package, where the current version in Nixpkgs Unstable is 1.0.1, but the current version in Nixpkgs Stable is 1.0.0, your title would be as follows:
> `Backport to Stable: hello 1.0.0 → 1.0.1`
---
- type: "input"
id: "name"
attributes:
label: "Package name"
description: "Please indicate the name of the package."
validations:
required: true
- type: "input"
id: "unstable-version"
attributes:
label: "Version in unstable"
description: "Please indicate the current version of the package in the unstable channel."
validations:
required: true
- type: "input"
id: "stable-version"
attributes:
label: "Version in stable"
description: "Please indicate the current version of the package in the stable channel."
validations:
required: true
- type: "textarea"
id: "reasoning"
attributes:
label: "Reasoning for backport"
description: "Please briefly explain why this backport fits the [release suitability guidelines](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#changes-acceptable-for-releases) and why you think this update should be backported."
validations:
required: false
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
options:
- label: "I assert that this backport does not yet exist in an [open pull request](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+in%3Atitle+backport)."
required: true
- label: "I assert that this is not a [duplicate of any known issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+label%3A%229.needs%3A+port+to+stable%22+)."
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,86 +0,0 @@
name: "Request: documentation"
description: "Report missing or incorrect documentation in the NixOS or Nixpkgs manuals."
title: "Missing Documentation: PACKAGENAME"
labels: ["0.kind: enhancement", "9.needs: documentation"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`Missing Documentation: PACKAGENAME`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)) or module name (As seen in the [NixOS Option Search](https://search.nixos.org/options)).
> [!TIP]
> For instance, if you were filing an issue against the [`hello`](https://search.nixos.org/packages?channel=unstable&from=0&size=1&buckets=%7B%22package_attr_set%22%3A%5B%22No%20package%20set%22%5D%2C%22package_license_set%22%3A%5B%22GNU%20General%20Public%20License%20v3.0%20or%20later%22%5D%2C%22package_maintainers_set%22%3A%5B%5D%2C%22package_platforms%22%3A%5B%5D%7D&sort=relevance&type=packages&query=hello) package about it not having any NixOS-specific documentation, your title would be as follows:
> `Missing Documentation: hello`
---
- type: "textarea"
id: "description"
attributes:
label: "Describe the problem"
description: "Please include a clear and concise description of what the issue is."
validations:
required: true
- type: "textarea"
id: "proposal"
attributes:
label: "Proposed solution"
description: |
If possible, please draft a tentative documentation chapter to resolve this issue.
Your proposal should be written in CommonMark Markdown, optionally enhanced with [Nix-specific extensions](https://github.com/NixOS/nixpkgs/tree/master/doc#syntax).
render: "markdown"
validations:
required: false
- type: "textarea"
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
options:
- label: "I assert that this request is not already implemented in the latest [NixOS](https://nixos.org/manual/nixos/unstable/) or [Nixpkgs](https://nixos.org/manual/nixpkgs/unstable/) manuals."
required: true
- label: "I assert that this is not a [duplicate of an existing documentation issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+label%3A%229.needs%3A+documentation%22)."
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "priorisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

View File

@@ -1,157 +0,0 @@
name: "Unreproducible Package"
description: "Report a package that does not produce a bit-by-bit reproducible result each time it is built."
title: "Unreproducible Package: PACKAGENAME"
labels: ["0.kind: enhancement", "6.topic: reproducible builds"]
body:
- type: "markdown"
attributes:
value: |
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="400px" alt="NixOS logo">
</picture>
</a>
</p>
Welcome to Nixpkgs. Please replace the **`Unreproducible Package: PACKAGENAME`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)).
> [!NOTE]
> This form is for reporting unreproducible packages. For more information, see the [Reproducible Builds Status](https://reproducible.nixos.org/) page.
> To report a package that fails to build entirely, please use the "Build Failure" form instead.
---
- type: "input"
id: "version"
attributes:
label: "Nixpkgs Revision"
description: "In which commit of Nixpkgs is this package displaying unreproducibility?"
- type: "textarea"
id: "introduction"
attributes:
label: "Introduction"
description: |
This is a generic introduction to build reproducibility.
Please replace **PACKAGENAME** below with the canonical package name of the package, as you have done for the title above.
value: |
Building **PACKAGENAME** multiple times does not yield bit-by-bit identical
results, complicating the detection of Continuous Integration (CI) breaches. For
more information on this issue, visit [reproducible-builds.org](https://reproducible-builds.org/).
Fixing bit-by-bit reproducibility also has additional advantages, such as
avoiding hard-to-reproduce bugs, making content-addressed storage more effective
and reducing rebuilds in such systems.
validations:
required: true
- type: "textarea"
id: "how-to-reproduce"
attributes:
label: "Steps to reproduce"
description: |
This is a step-by-step instruction set meant for maintainers to debug the package that is failing to reproduce. You should also follow it to gather the `diffoscope` logs that will be needed below.
Please replace **PACKAGENAME** below with the canonical package name of the package, as you have done for the introduction and the title above.
value: |
### 1. Build the package
This step will build the package. Specific arguments are passed to the command
to keep the build artifacts so we can compare them in case of differences.
Execute the following command:
```
nix-build '<nixpkgs>' -A PACKAGENAME && nix-build '<nixpkgs>' -A PACKAGENAME --check --keep-failed
```
Or using the new command line style:
```
nix build nixpkgs#PACKAGENAME && nix build nixpkgs#PACKAGENAME --rebuild --keep-failed
```
### 2. Compare the build artifacts
If the previous command completes successfully, no differences were found and
there's nothing to do, builds are reproducible.
If it terminates with the error message `error: derivation '<X>' may not be
deterministic: output '<Y>' differs from '<Z>'`, use `diffoscope` to investigate
the discrepancies between the two build outputs. You may need to add the
`--exclude-directory-metadata recursive` option to ignore files and directories
metadata (*e.g. timestamp*) differences.
```
nix run nixpkgs#diffoscopeMinimal -- --exclude-directory-metadata recursive <Y> <Z>
```
### 3. Examine the build log
To examine the build log, use:
```
nix-store --read-log $(nix-instantiate '<nixpkgs>' -A PACKAGENAME)
```
Or with the new command line style:
```
nix log $(nix path-info --derivation nixpkgs#PACKAGENAME)
```
validations:
required: true
- type: "textarea"
id: "logs"
attributes:
label: "Diffoscope log"
description: |
Please copy and paste the relevant `diffoscope` log output, gathered from the steps above.
This will be automatically formatted into a monospaced text block, so no need for backticks.
render: "console"
- type: "textarea"
id: "additional-context"
attributes:
label: "Additional context"
description: "Add any other context about the problem here."
validations:
required: false
id: "maintainers"
attributes:
label: "Notify maintainers"
description: |
Please mention the people who are in the **Maintainers** list of the offending package. This is done by by searching for the package on the [NixOS Package Search](https://search.nixos.org/packages) and mentioning the people listed under **Maintainers** by prefixing their GitHub usernames with an '@' character. Please add the mentions above the `---` characters in the template below.
value: |
---
**Note for maintainers:** Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.)
validations:
required: false
- type: "checkboxes"
id: "sanity-check"
attributes:
label: "I assert that this issue is relevant for Nixpkgs"
options:
- label: "I assert that this is not a [duplicate of any known issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aissue+label%3A%226.topic%3A+reproducible+builds%22)."
required: true
- label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it."
required: true
- type: "markdown"
attributes:
value: |
# Thank you for helping improve Nixpkgs!
---
- type: "textarea"
id: "prioritisation"
attributes:
label: "Is this issue important to you?"
description: |
**Please do not modify this text area!**
This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction.
This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important.
value: |
Add a :+1: [reaction] to [issues you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

37
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,37 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: '0.kind: bug'
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. ...
2. ...
3. ...
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Additional context**
Add any other context about the problem here.
**Metadata**
Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.
Maintainer information:
```yaml
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:
```

View File

@@ -0,0 +1,18 @@
---
name: Packaging requests
about: For packages that are missing
title: ''
labels: '0.kind: packaging request'
assignees: ''
---
**Project description**
_describe the project a little_
**Metadata**
* homepage URL:
* source URL:
* license: mit, bsd, gpl2+ , ...
* platforms: unix, linux, darwin, ...

View File

@@ -1,50 +1,19 @@
<!-- Nixpkgs has a lot of new incoming Pull Requests, but not enough people to review this constant stream. Even if you aren't a committer, we would appreciate reviews of other PRs, especially simple ones like package updates. Just testing the relevant package/service and leaving a comment saying what you tested, how you tested it and whether it worked would be great. List of open PRs: <https://github.com/NixOS/nixpkgs/pulls>, for more about reviewing contributions: <https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#chap-reviewing-contributions>. Reviewing isn't mandatory, but it would help out a lot and reduce the average time-to-merge for all of us. Thanks a lot if you do! -->
###### Motivation for this change
<!--
^ Please summarise the changes you have done and explain why they are necessary here ^
For package updates please link to a changelog or describe changes, this helps your fellow maintainers discover breaking updates.
For new packages please briefly describe the package or provide a link to its homepage.
-->
## Things done
###### Things done
<!-- Please check what applies. Note that these are not hard requirements but merely serve as information for reviewers. -->
- [ ] Tested using sandboxing ([nix.useSandbox](http://nixos.org/nixos/manual/options.html#opt-nix.useSandbox) on NixOS, or option `sandbox` in [`nix.conf`](http://nixos.org/nix/manual/#sec-conf-file) on non-NixOS linux)
- Built on platform(s)
- [ ] x86_64-linux
- [ ] aarch64-linux
- [ ] x86_64-darwin
- [ ] aarch64-darwin
- For non-Linux: Is sandboxing enabled in `nix.conf`? (See [Nix manual](https://nixos.org/manual/nix/stable/command-ref/conf-file.html))
- [ ] `sandbox = relaxed`
- [ ] `sandbox = true`
- [ ] Tested, as applicable:
- [NixOS test(s)](https://nixos.org/manual/nixos/unstable/index.html#sec-nixos-tests) (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- and/or [package tests](https://github.com/NixOS/nixpkgs/blob/master/pkgs/README.md#package-tests)
- or, for functions and "core" functionality, tests in [lib/tests](https://github.com/NixOS/nixpkgs/blob/master/lib/tests) or [pkgs/test](https://github.com/NixOS/nixpkgs/blob/master/pkgs/test)
- made sure NixOS tests are [linked](https://github.com/NixOS/nixpkgs/blob/master/pkgs/README.md#linking-nixos-module-tests-to-a-package) to the relevant packages
- [ ] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"`. Note: all changes have to be committed, also see [nixpkgs-review usage](https://github.com/Mic92/nixpkgs-review#usage)
- [ ] Tested basic functionality of all binary files (usually in `./result/bin/`)
- [25.05 Release Notes](https://github.com/NixOS/nixpkgs/blob/master/nixos/doc/manual/release-notes/rl-2505.section.md) (or backporting [24.11](https://github.com/NixOS/nixpkgs/blob/master/nixos/doc/manual/release-notes/rl-2411.section.md) and [25.05](https://github.com/NixOS/nixpkgs/blob/master/nixos/doc/manual/release-notes/rl-2505.section.md) Release notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
<!--
To help with the large amounts of pull requests, we would appreciate your
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://github.com/NixOS/nixpkgs/blob/master/pkgs/README.md#reviewing-contributions
-->
---
Add a :+1: [reaction] to [pull requests you find important].
[reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/
[pull requests you find important]: https://github.com/NixOS/nixpkgs/pulls?q=is%3Aopen+sort%3Areactions-%2B1-desc
- [ ] NixOS
- [ ] macOS
- [ ] other Linux distributions
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [ ] Tested compilation of all pkgs that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review wip"`
- [ ] Tested execution of all binary files (usually in `./result/bin/`)
- [ ] Determined the impact on package closure size (by running `nix path-info -S` before and after)
- [ ] Ensured that relevant documentation is up to date
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).

36
.github/STALE-BOT.md vendored
View File

@@ -1,36 +0,0 @@
# Stale bot information
- Thanks for your contribution!
- Our stale bot will never close an issue or PR.
- To remove the stale label, just leave a new comment.
- _How to find the right people to ping?_ &rarr; [`git blame`](https://git-scm.com/docs/git-blame) to the rescue! (or GitHub's history and blame buttons.)
- You can always ask for help on [our Discourse Forum](https://discourse.nixos.org/), [our Matrix room](https://matrix.to/#/#nix:nixos.org), or on the [#nixos IRC channel](https://web.libera.chat/#nixos).
## Suggestions for PRs
1. GitHub sometimes doesn't notify people who commented / reviewed a PR previously, when you (force) push commits. If you have addressed the reviews you can [officially ask for a review](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review) from those who commented to you or anyone else.
2. If it is unfinished but you plan to finish it, please mark it as a draft.
3. If you don't expect to work on it any time soon, closing it with a short comment may encourage someone else to pick up your work.
4. To get things rolling again, rebase the PR against the target branch and address valid comments.
5. If you need a review to move forward, ask in [the Discourse thread for PRs that need help](https://discourse.nixos.org/t/prs-in-distress/3604).
6. If all you need is a merge, check the git history to find and [request reviews](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review) from people who usually merge related contributions.
## Suggestions for issues
1. If it is resolved (either for you personally, or in general), please consider closing it.
2. If this might still be an issue, but you are not interested in promoting its resolution, please consider closing it while encouraging others to take over and reopen an issue if they care enough.
3. If you still have interest in resolving it, try to ping somebody who you believe might have an interest in the topic. Consider discussing the problem in [our Discourse Forum](https://discourse.nixos.org/).
4. As with all open source projects, your best option is to submit a Pull Request that addresses this issue. We :heart: this attitude!
**Memorandum on closing issues**
Don't be afraid to close an issue that holds valuable information. Closed issues stay in the system for people to search, read, cross-reference, or even reopen--nothing is lost! Closing obsolete issues is an important way to help maintainers focus their time and effort.
## Useful GitHub search queries
- [Open PRs with any stale-bot interaction](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+)
- [Open PRs with any stale-bot interaction and `2.status: stale`](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+label%3A%222.status%3A+stale%22)
- [Open PRs with any stale-bot interaction and NOT `2.status: stale`](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+-label%3A%222.status%3A+stale%22+)
- [Open Issues with any stale-bot interaction](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+)
- [Open Issues with any stale-bot interaction and `2.status: stale`](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+label%3A%222.status%3A+stale%22+)
- [Open Issues with any stale-bot interaction and NOT `2.status: stale`](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+-label%3A%222.status%3A+stale%22+)

View File

@@ -1,6 +0,0 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

View File

@@ -1,28 +0,0 @@
# This file is used by .github/workflows/labels.yml
# This version uses `sync-labels: false`, meaning that a non-match will NOT remove the label
"backport release-24.11":
- any:
- changed-files:
- any-glob-to-any-file:
- .github/workflows/*
- ci/**/*.*
"6.topic: policy discussion":
- any:
- changed-files:
- any-glob-to-any-file:
- .github/**/*
- CONTRIBUTING.md
- pkgs/README.md
- nixos/README.md
- maintainers/README.md
- lib/README.md
- doc/README.md
"8.has: documentation":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/**/*
- nixos/doc/**/*

581
.github/labeler.yml vendored
View File

@@ -1,581 +0,0 @@
# This file is used by .github/workflows/labels.yml
# This version uses `sync-labels: true`, meaning that a non-match will remove the label
# NOTE: bsd, darwin and cross-compilation labels are handled by ofborg
"6.topic: agda":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/agda.section.md
- nixos/tests/agda.nix
- pkgs/build-support/agda/**/*
- pkgs/development/libraries/agda/**/*
- pkgs/top-level/agda-packages.nix
"6.topic: cinnamon":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/x11/desktop-managers/cinnamon.nix
- nixos/tests/cinnamon.nix
- nixos/tests/cinnamon-wayland.nix
- pkgs/by-name/ci/cinnamon-*/**/*
- pkgs/by-name/cj/cjs/**/*
- pkgs/by-name/mu/muffin/**/*
- pkgs/by-name/ne/nemo/**/*
- pkgs/by-name/ne/nemo-*/**/*
"6.topic: continuous integration":
- any:
- changed-files:
- any-glob-to-any-file:
- .github/**/*
- ci/**/*
"6.topic: coq":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/applications/science/logic/coq/**/*
- pkgs/development/coq-modules/**/*
- pkgs/top-level/coq-packages.nix
"6.topic: crystal":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/development/compilers/crystal/**/*
"6.topic: cuda":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/development/cuda-modules/**/*
- pkgs/top-level/cuda-packages.nix
"6.topic: deepin":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/desktops/deepin/**/*
- pkgs/desktops/deepin/**/*
"6.topic: docker tools":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/applications/virtualization/docker/**/*
"6.topic: dotnet":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/dotnet.section.md
- maintainers/scripts/update-dotnet-lockfiles.nix
- pkgs/build-support/dotnet/**/*
- pkgs/development/compilers/dotnet/**/*
- pkgs/test/dotnet/**/*
- pkgs/top-level/dotnet-packages.nix
"6.topic: emacs":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/editors/emacs.nix
- nixos/modules/services/editors/emacs.xml
- nixos/tests/emacs-daemon.nix
- pkgs/applications/editors/emacs/build-support/**/*
- pkgs/applications/editors/emacs/elisp-packages/**/*
- pkgs/applications/editors/emacs/**/*
- pkgs/top-level/emacs-packages.nix
"6.topic: Enlightenment DE":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/x11/desktop-managers/enlightenment.nix
- pkgs/desktops/enlightenment/**/*
- pkgs/development/python-modules/python-efl/*
"6.topic: erlang":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/beam.section.md
- pkgs/development/beam-modules/**/*
- pkgs/development/interpreters/elixir/**/*
- pkgs/development/interpreters/erlang/**/*
- pkgs/development/tools/build-managers/rebar/**/*
- pkgs/development/tools/build-managers/rebar3/**/*
- pkgs/development/tools/erlang/**/*
- pkgs/top-level/beam-packages.nix
"6.topic: fetch":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/build-support/fetch*/**/*
"6.topic: flakes":
- any:
- changed-files:
- any-glob-to-any-file:
- '**/flake.nix'
- lib/systems/flake-systems.nix
- nixos/modules/config/nix-flakes.nix
"6.topic: flutter":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/build-support/flutter/*.nix
- pkgs/development/compilers/flutter/**/*.nix
"6.topic: games":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/games/**/*
"6.topic: GNOME":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/gnome.section.md
- nixos/modules/services/desktops/gnome/**/*
- nixos/modules/services/x11/desktop-managers/gnome.nix
- nixos/tests/gnome-xorg.nix
- nixos/tests/gnome.nix
- pkgs/desktops/gnome/**/*
"6.topic: golang":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/go.section.md
- pkgs/build-support/go/**/*
- pkgs/development/compilers/go/**/*
"6.topic: hardware":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/hardware/**/*
"6.topic: haskell":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/haskell.section.md
- maintainers/scripts/haskell/**/*
- pkgs/development/compilers/ghc/**/*
- pkgs/development/haskell-modules/**/*
- pkgs/development/tools/haskell/**/*
- pkgs/test/haskell/**/*
- pkgs/top-level/haskell-packages.nix
- pkgs/top-level/release-haskell.nix
"6.topic: java":
- any:
- changed-files:
- any-glob-to-any-file:
# Distributions
- pkgs/development/compilers/adoptopenjdk-icedtea-web/**/*
- pkgs/development/compilers/corretto/**/*
- pkgs/development/compilers/graalvm/**/*
- pkgs/development/compilers/openjdk/**/*
- pkgs/by-name/op/openjfx/**/*
- pkgs/development/compilers/semeru-bin/**/*
- pkgs/development/compilers/temurin-bin/**/*
- pkgs/development/compilers/zulu/**/*
# Documentation
- doc/languages-frameworks/java.section.md
# Gradle
- doc/languages-frameworks/gradle.section.md
- pkgs/development/tools/build-managers/gradle/**/*
- pkgs/by-name/gr/gradle-completion/**/*
# Maven
- pkgs/by-name/ma/maven/**/*
- doc/languages-frameworks/maven.section.md
# Ant
- pkgs/by-name/an/ant/**/*
# javaPackages attrset
- pkgs/development/java-modules/**/*
- pkgs/top-level/java-packages.nix
# Maintainer tooling
- pkgs/by-name/ni/nixpkgs-openjdk-updater/**/*
# Misc
- nixos/modules/programs/java.nix
"6.topic: jitsi":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/networking/jitsi-videobridge.nix
- nixos/modules/services/web-apps/jitsi-meet.nix
- pkgs/servers/web-apps/jitsi-meet/**/*
- pkgs/servers/jitsi-videobridge/**/*
- pkgs/applications/networking/instant-messengers/jitsi/**/*
"6.topic: julia":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/julia.section.md
- pkgs/development/compilers/julia/**/*
- pkgs/development/julia-modules/**/*
"6.topic: jupyter":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/development/python-modules/jupyter*/**/*
- pkgs/development/python-modules/mkdocs-jupyter/*
- nixos/modules/services/development/jupyter/**/*
- pkgs/applications/editors/jupyter-kernels/**/*
- pkgs/applications/editors/jupyter/**/*
"6.topic: k3s":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/cluster/k3s/**/*
- nixos/tests/k3s/**/*
- pkgs/applications/networking/cluster/k3s/**/*
"6.topic: kernel":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/build-support/kernel/**/*
- pkgs/os-specific/linux/kernel/**/*
"6.topic: lib":
- any:
- changed-files:
- any-glob-to-any-file:
- lib/**
"6.topic: llvm/clang":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/development/compilers/llvm/**/*
"6.topic: lua":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/development/tools/misc/luarocks/*
- pkgs/development/interpreters/lua-5/**/*
- pkgs/development/interpreters/luajit/**/*
- pkgs/development/lua-modules/**/*
- pkgs/top-level/lua-packages.nix
"6.topic: Lumina DE":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/x11/desktop-managers/lumina.nix
- pkgs/desktops/lumina/**/*
"6.topic: LXQt":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/x11/desktop-managers/lxqt.nix
- pkgs/desktops/lxqt/**/*
"6.topic: mate":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/x11/desktop-managers/mate.nix
- nixos/tests/mate.nix
- pkgs/desktops/mate/**/*
"6.topic: module system":
- any:
- changed-files:
- any-glob-to-any-file:
- lib/modules.nix
- lib/types.nix
- lib/options.nix
- lib/tests/modules.sh
- lib/tests/modules/**
"6.topic: musl":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/os-specific/linux/musl/**/*
"6.topic: nixos":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/**/*
- pkgs/by-name/sw/switch-to-configuration-ng/**/*
- pkgs/by-name/ni/nixos-rebuild-ng/**/*
- pkgs/os-specific/linux/nixos-rebuild/**/*
"6.topic: nixos-container":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/virtualisation/nixos-containers.nix
- pkgs/tools/virtualization/nixos-container/**/*
"6.topic: nim":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/nim.section.md
- pkgs/build-support/build-nim-package.nix
- pkgs/build-support/build-nim-sbom.nix
- pkgs/by-name/ni/nim*
- pkgs/top-level/nim-overrides.nix
"6.topic: nodejs":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/javascript.section.md
- pkgs/build-support/node/**/*
- pkgs/development/node-packages/**/*
- pkgs/development/tools/yarn/*
- pkgs/development/tools/yarn2nix-moretea/**/*
- pkgs/development/tools/pnpm/**/*
- pkgs/development/web/nodejs/*
"6.topic: nvidia":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/hardware/video/nvidia.nix
- nixos/modules/services/hardware/nvidia-container-toolkit/**/*
- nixos/modules/services/hardware/nvidia-optimus.nix
- pkgs/os-specific/linux/nvidia-x11/**/*
"6.topic: ocaml":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/ocaml.section.md
- pkgs/development/compilers/ocaml/**/*
- pkgs/development/compilers/reason/**/*
- pkgs/development/ocaml-modules/**/*
- pkgs/development/tools/ocaml/**/*
- pkgs/top-level/ocaml-packages.nix
"6.topic: pantheon":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/desktops/pantheon/**/*
- nixos/modules/services/x11/desktop-managers/pantheon.nix
- nixos/modules/services/x11/display-managers/lightdm-greeters/pantheon.nix
- nixos/tests/pantheon.nix
- pkgs/desktops/pantheon/**/*
"6.topic: php":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/php.section.md
- nixos/tests/php/**/*
- pkgs/build-support/php/**/*
- pkgs/development/interpreters/php/**/*
- pkgs/development/php-packages/**/*
- pkgs/test/php/default.nix
- pkgs/top-level/php-packages.nix
"6.topic: printing":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/services/printing/cupsd.nix
- pkgs/misc/cups/**/*
"6.topic: python":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/python.section.md
- pkgs/development/interpreters/python/**/*
- pkgs/development/python-modules/**/*
- pkgs/top-level/python-packages.nix
"6.topic: qt/kde":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/qt.section.md
- nixos/modules/services/x11/desktop-managers/plasma5.nix
- nixos/tests/plasma5.nix
- pkgs/applications/kde/**/*
- pkgs/desktops/plasma-5/**/*
- pkgs/development/libraries/kde-frameworks/**/*
- pkgs/development/libraries/qt-5/**/*
"6.topic: R":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/applications/science/math/R/**/*
- pkgs/development/r-modules/**/*
"6.topic: rocm":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/development/rocm-modules/**/*
"6.topic: ruby":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/ruby.section.md
- pkgs/development/interpreters/ruby/**/*
- pkgs/development/ruby-modules/**/*
- pkgs/top-level/ruby-packages.nix
"6.topic: rust":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/rust.section.md
- pkgs/build-support/rust/**/*
- pkgs/development/compilers/rust/**/*
"6.topic: stdenv":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/stdenv/**/*
"6.topic: steam":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/games/steam/**/*
"6.topic: systemd":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/os-specific/linux/systemd/**/*
- nixos/modules/system/boot/systemd*/**/*
"6.topic: tcl":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/tcl.section.md
- pkgs/development/interpreters/tcl/*
- pkgs/development/tcl-modules/**/*
- pkgs/top-level/tcl-packages.nix
"6.topic: teams":
- any:
- changed-files:
- any-glob-to-any-file:
- maintainers/team-list.nix
"6.topic: TeX":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/texlive.section.md
- pkgs/test/texlive/**
- pkgs/tools/typesetting/tex/**/*
"6.topic: testing":
- any:
- changed-files:
- any-glob-to-any-file:
# NOTE: Let's keep the scope limited to test frameworks that are
# *developed in this repo*;
# - not individual tests
# - not packages for test frameworks
- pkgs/build-support/testers/**
- nixos/lib/testing/**
- nixos/lib/test-driver/**
- nixos/tests/nixos-test-driver/**
- nixos/lib/testing-python.nix # legacy
- nixos/tests/make-test-python.nix # legacy
# lib/debug.nix has a test framework (runTests) but it's not the main focus
"6.topic: updaters":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/common-updater/**/*
"6.topic: vim":
- any:
- changed-files:
- any-glob-to-any-file:
- doc/languages-frameworks/vim.section.md
- pkgs/applications/editors/vim/**/*
- pkgs/applications/editors/vim/plugins/**/*
- nixos/modules/programs/neovim.nix
- pkgs/applications/editors/neovim/**/*
"6.topic: vscode":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/applications/editors/vscode/**/*
"6.topic: windows":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/os-specific/windows/**/*
"6.topic: xen-project":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/virtualisation/xen*
- pkgs/by-name/xe/xen/*
- pkgs/by-name/qe/qemu_xen/*
- pkgs/by-name/xe/xen-guest-agent/*
- pkgs/by-name/xt/xtf/*
- pkgs/build-support/xen/*
- pkgs/development/ocaml-modules/xen*/*
- pkgs/development/ocaml-modules/vchan/*
"6.topic: xfce":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/doc/manual/configuration/xfce.xml
- nixos/modules/services/x11/desktop-managers/xfce.nix
- nixos/tests/xfce.nix
- pkgs/desktops/xfce/**/*
"6.topic: zig":
- any:
- changed-files:
- any-glob-to-any-file:
- pkgs/development/compilers/zig/**/*
- doc/hooks/zig.section.md
"8.has: changelog":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/doc/manual/release-notes/**/*
"8.has: module (update)":
- any:
- changed-files:
- any-glob-to-any-file:
- nixos/modules/**/*
"8.has: maintainer-list (update)":
- any:
- changed-files:
- any-glob-to-any-file:
- maintainers/maintainer-list.nix

33
.github/stale.yml vendored
View File

@@ -1,9 +1,32 @@
# Configuration for probot-stale - https://github.com/probot/stale
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 180
# Number of days of inactivity before a stale issue is closed
daysUntilClose: false
# Issues with these labels will never be considered stale
exemptLabels:
- "1.severity: security"
- "2.status: never-stale"
staleLabel: "2.status: stale"
markComment: false
- 1.severity: security
# Label to use when marking an issue as stale
staleLabel: 2.status: stale
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
Thank you for your contributions.
This has been automatically marked as stale because it has had no
activity for 180 days.
If this is still important to you, we ask that you leave a
comment below. Your comment can be as simple as "still important
to me". This lets people see that at least one person still cares
about this. Someone will have to do this at most twice a year if
there is no other activity.
Here are suggestions that might help resolve this more quickly:
1. Search for maintainers and people that previously touched the
related code and @ mention them in a comment.
2. Ask on the [NixOS Discourse](https://discourse.nixos.org/).
3. Ask on the [#nixos channel](irc://irc.freenode.net/#nixos) on
[irc.freenode.net](https://freenode.net).
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false

View File

@@ -1,20 +0,0 @@
# GitHub Actions Workflows
Some architectural notes about key decisions and concepts in our workflows:
- Instead of `pull_request` we use [`pull_request_target`](https://docs.github.com/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#pull_request_target) for all PR-related workflows. This has the advantage that those workflows will run without prior approval for external contributors.
- Running on `pull_request_target` also optionally provides us with a GH_TOKEN with elevated privileges (write access), which we need to do things like adding labels, requesting reviewers or pushing branches. **Note about security:** We need to be careful to limit the scope of elevated privileges as much as possible. Thus they should be lowered to the minimum with `permissions: {}` in every workflow by default.
- By definition `pull_request_target` runs in the context of the **base** of the pull request. This means, that the workflow files to run will be taken from the base branch, not the PR, and actions/checkout will not checkout the PR, but the base branch, by default. To protect our secrets, we need to make sure to **never execute code** from the pull request and always evaluate or build nix code from the pull request with the **sandbox enabled**.
- To test the pull request's contents, we checkout the "test merge commit". This is a temporary commit that GitHub creates automatically as "what would happen, if this PR was merged into the base branch now?". The checkout could be done via the virtual branch `refs/pull/<pr-number>/merge`, but doing so would cause failures when this virtual branch doesn't exist (anymore). This can happen when the PR has conflicts, in which case the virtual branch is not created, or when the PR is getting merged while workflows are still running, in which case the branch won't exist anymore at the time of checkout. Thus, we use the `get-merge-commit.yml` workflow to check whether the PR is mergeable and the test merge commit exists and only then run the relevant jobs.
- Various workflows need to make comparisons against the base branch. In this case, we checkout the parent of the "test merge commit" for best results. Note, that this is not necessarily the same as the default commit that actions/checkout would use, which is also a commit from the base branch (see above), but might be older.
## Terminology
- **base commit**: The pull_request_target event's context commit, i.e. the base commit given by GitHub Actions. Same as `github.event.pull_request.base.sha`.
- **head commit**: The HEAD commit in the pull request's branch. Same as `github.event.pull_request.head.sha`.
- **merge commit**: The temporary "test merge commit" that GitHub Actions creates and updates for the pull request. Same as `refs/pull/${{ github.event.pull_request.number }}/merge`.
- **target commit**: The base branch's parent of the "test merge commit" to compare against.

View File

@@ -1,43 +0,0 @@
# WARNING:
# When extending this action, be aware that $GITHUB_TOKEN allows write access to
# the GitHub repository. This means that it should not evaluate user input in a
# way that allows code injection.
name: Backport
on:
pull_request_target:
types: [closed, labeled]
permissions: {}
jobs:
backport:
name: Backport Pull Request
if: github.repository_owner == 'NixOS' && github.event.pull_request.merged == true && (github.event_name != 'labeled' || startsWith('backport', github.event.label.name))
runs-on: ubuntu-24.04
steps:
# Use a GitHub App to create the PR so that CI gets triggered
# The App is scoped to Repository > Contents and Pull Requests: write for Nixpkgs
- uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3
id: app-token
with:
app-id: ${{ vars.NIXPKGS_CI_APP_ID }}
private-key: ${{ secrets.NIXPKGS_CI_APP_PRIVATE_KEY }}
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ github.event.pull_request.head.sha }}
token: ${{ steps.app-token.outputs.token }}
- name: Create backport PRs
uses: korthout/backport-action@be567af183754f6a5d831ae90f648954763f17f5 # v3.1.0
with:
# Config README: https://github.com/korthout/backport-action#backport-action
copy_labels_pattern: 'severity:\ssecurity'
github_token: ${{ steps.app-token.outputs.token }}
pull_description: |-
Bot-based backport to `${target_branch}`, triggered by a label in #${pull_number}.
* [ ] Before merging, ensure that this backport is [acceptable for the release](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#changes-acceptable-for-releases).
* Even as a non-commiter, if you find that it is not acceptable, leave a comment.

View File

@@ -1,28 +0,0 @@
name: "Check cherry-picks"
on:
pull_request_target:
branches:
- 'release-**'
- 'staging-**'
- '!staging-next'
permissions: {}
jobs:
check:
name: cherry-pick-check
runs-on: ubuntu-24.04
if: github.repository_owner == 'NixOS'
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
filter: blob:none
- name: Check cherry-picks
env:
BASE_SHA: ${{ github.event.pull_request.base.sha }}
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
run: |
./maintainers/scripts/check-cherry-picks.sh "$BASE_SHA" "$HEAD_SHA"

View File

@@ -1,28 +0,0 @@
name: "Check that maintainer list is sorted"
on:
pull_request_target:
paths:
- 'maintainers/maintainer-list.nix'
permissions: {}
jobs:
nixos:
name: maintainer-list-check
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: refs/pull/${{ github.event.pull_request.number }}/merge
# Only these directories to perform the check
sparse-checkout: |
lib
maintainers
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- name: Check that maintainer-list.nix is sorted
run: nix-instantiate --eval maintainers/scripts/check-maintainers-sorted.nix

View File

@@ -1,100 +0,0 @@
# This file was copied mostly from check-maintainers-sorted.yaml.
# NOTE: Formatting with the RFC-style nixfmt command is not yet stable. See
# https://github.com/NixOS/rfcs/pull/166.
# Because of this, this action is not yet enabled for all files -- only for
# those who have opted in.
name: Check that Nix files are formatted
on:
pull_request_target:
types: [opened, synchronize, reopened, edited]
permissions: {}
jobs:
get-merge-commit:
uses: ./.github/workflows/get-merge-commit.yml
nixos:
name: nixfmt-check
runs-on: ubuntu-24.04
needs: get-merge-commit
if: "needs.get-merge-commit.outputs.mergedSha && !contains(github.event.pull_request.title, '[skip treewide]')"
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
# Fetches the merge commit and its parents
fetch-depth: 2
- name: Checking out target branch
run: |
target=$(mktemp -d)
targetRev=$(git rev-parse HEAD^1)
git worktree add "$target" "$targetRev"
echo "targetRev=$targetRev" >> "$GITHUB_ENV"
echo "target=$target" >> "$GITHUB_ENV"
- name: Get Nixpkgs revision for nixfmt
run: |
# pin to a commit from nixpkgs-unstable to avoid e.g. building nixfmt
# from staging
# This should not be a URL, because it would allow PRs to run arbitrary code in CI!
rev=$(jq -r .rev ci/pinned-nixpkgs.json)
echo "url=https://github.com/NixOS/nixpkgs/archive/$rev.tar.gz" >> "$GITHUB_ENV"
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
nix_path: nixpkgs=${{ env.url }}
- name: Install nixfmt
run: "nix-env -f '<nixpkgs>' -iAP nixfmt-rfc-style"
- name: Check that Nix files are formatted according to the RFC style
run: |
unformattedFiles=()
# TODO: Make this more parallel
# Loop through all Nix files touched by the PR
while readarray -d '' -n 2 entry && (( ${#entry[@]} != 0 )); do
type=${entry[0]}
file=${entry[1]}
case $type in
A*)
source=""
dest=$file
;;
M*)
source=$file
dest=$file
;;
C*|R*)
source=$file
read -r -d '' dest
;;
*)
echo "Ignoring file $file with type $type"
continue
esac
# Ignore files that weren't already formatted
if [[ -n "$source" ]] && ! nixfmt --check ${{ env.target }}/"$source" 2>/dev/null; then
echo "Ignoring file $file because it's not formatted in the target commit"
elif ! nixfmt --check "$dest"; then
unformattedFiles+=("$dest")
fi
done < <(git diff -z --name-status ${{ env.targetRev }} -- '*.nix')
if (( "${#unformattedFiles[@]}" > 0 )); then
echo "Some new/changed Nix files are not properly formatted"
echo "Please format them using the Nixpkgs-specific \`nixfmt\` by going to the Nixpkgs root directory, running \`nix-shell\`, then:"
echo
echo "nixfmt ${unformattedFiles[*]@Q}"
echo
echo "Make sure your branch is up to date with master; rebase if not."
echo "If you're having trouble, please ping @NixOS/nix-formatting"
exit 1
fi

View File

@@ -1,132 +0,0 @@
name: Check changed Nix files with nixf-tidy (experimental)
on:
pull_request_target:
types: [opened, synchronize, reopened, edited]
permissions: {}
jobs:
nixos:
name: exp-nixf-tidy-check
runs-on: ubuntu-24.04
if: "!contains(github.event.pull_request.title, '[skip treewide]')"
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: refs/pull/${{ github.event.pull_request.number }}/merge
# Fetches the merge commit and its parents
fetch-depth: 2
- name: Checking out target branch
run: |
target=$(mktemp -d)
targetRev=$(git rev-parse HEAD^1)
git worktree add "$target" "$targetRev"
echo "targetRev=$targetRev" >> "$GITHUB_ENV"
echo "target=$target" >> "$GITHUB_ENV"
- name: Get Nixpkgs revision for nixf
run: |
# pin to a commit from nixpkgs-unstable to avoid e.g. building nixf
# from staging
# This should not be a URL, because it would allow PRs to run arbitrary code in CI!
rev=$(jq -r .rev ci/pinned-nixpkgs.json)
echo "url=https://github.com/NixOS/nixpkgs/archive/$rev.tar.gz" >> "$GITHUB_ENV"
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
nix_path: nixpkgs=${{ env.url }}
- name: Install nixf and jq
# provided jq is incompatible with our expression
run: "nix-env -f '<nixpkgs>' -iAP nixf jq"
- name: Check that Nix files pass nixf-tidy
run: |
# Filtering error messages we don't like
nixf_wrapper(){
nixf-tidy --variable-lookup < "$1" | jq -r '
[
"sema-escaping-with"
]
as $ignored_errors|[.[]|select(.sname as $s|$ignored_errors|index($s)|not)]
'
}
failedFiles=()
# Don't report errors to file overview
# to avoid duplicates when editing title and description
if [[ "${{ github.event.action }}" == 'edited' ]] && [[ -z "${{ github.event.edited.changes.base }}" ]]; then
DONT_REPORT_ERROR=1
else
DONT_REPORT_ERROR=
fi
# TODO: Make this more parallel
# Loop through all Nix files touched by the PR
while readarray -d '' -n 2 entry && (( ${#entry[@]} != 0 )); do
type=${entry[0]}
file=${entry[1]}
case $type in
A*)
source=""
dest=$file
;;
M*)
source=$file
dest=$file
;;
C*|R*)
source=$file
read -r -d '' dest
;;
*)
echo "Ignoring file $file with type $type"
continue
esac
if [[ -n "$source" ]] && [[ "$(nixf_wrapper ${{ env.target }}/"$source")" != '[]' ]] 2>/dev/null; then
echo "Ignoring file $file because it doesn't pass nixf-tidy in the target commit"
echo # insert blank line
else
nixf_report="$(nixf_wrapper "$dest")"
if [[ "$nixf_report" != '[]' ]]; then
echo "$dest doesn't pass nixf-tidy. Reported by nixf-tidy:"
errors=$(echo "$nixf_report" | jq -r --arg dest "$dest" '
def getLCur: "line=" + (.line+1|tostring) + ",col=" + (.column|tostring);
def getRCur: "endLine=" + (.line+1|tostring) + ",endColumn=" + (.column|tostring);
def getRange: "file=\($dest)," + (.lCur|getLCur) + "," + (.rCur|getRCur);
def getBody: . as $top|(.range|getRange) + ",title="+ .sname + "::" +
(.message|sub("{}" ; ($top.args.[]|tostring)));
def getNote: "\n::notice " + (.|getBody);
def getMessage: "::error " + (.|getBody) + (if (.notes|length)>0 then
([.notes.[]|getNote]|add) else "" end);
.[]|getMessage
')
if [[ -z "$DONT_REPORT_ERROR" ]]; then
echo "$errors"
else
# just print in plain text
echo "${errors/::/}"
echo # add one empty line
fi
failedFiles+=("$dest")
fi
fi
done < <(git diff -z --name-status ${{ env.targetRev }} -- '*.nix')
if [[ -n "$DONT_REPORT_ERROR" ]]; then
echo "Edited the PR but didn't change the base branch, only the description/title."
echo "Not reporting errors again to avoid duplication."
echo # add one empty line
fi
if (( "${#failedFiles[@]}" > 0 )); then
echo "Some new/changed Nix files don't pass nixf-tidy."
echo "See ${{ github.event.pull_request.html_url }}/files for reported errors."
echo "If you believe this is a false positive, ping @Aleksanaa and @inclyc in this PR."
exit 1
fi

View File

@@ -1,33 +0,0 @@
name: "Check shell"
on:
pull_request_target:
paths:
- 'shell.nix'
- 'ci/**'
permissions: {}
jobs:
shell-check:
strategy:
fail-fast: false
matrix:
include:
- runner: ubuntu-24.04
system: x86_64-linux
- runner: macos-14
system: aarch64-darwin
name: shell-check-${{ matrix.system }}
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
- name: Build shell
run: nix-build shell.nix

View File

@@ -1,111 +0,0 @@
# This workflow depends on two GitHub Apps with the following permissions:
# - For checking code owners:
# - Permissions:
# - Repository > Administration: read-only
# - Organization > Members: read-only
# - Install App on this repository, setting these variables:
# - OWNER_RO_APP_ID (variable)
# - OWNER_RO_APP_PRIVATE_KEY (secret)
# - For requesting code owners:
# - Permissions:
# - Repository > Administration: read-only
# - Organization > Members: read-only
# - Repository > Pull Requests: read-write
# - Install App on this repository, setting these variables:
# - OWNER_APP_ID (variable)
# - OWNER_APP_PRIVATE_KEY (secret)
#
# This split is done because checking code owners requires handling untrusted PR input,
# while requesting code owners requires PR write access, and those shouldn't be mixed.
#
# Note that the latter is also used for ./eval.yml requesting reviewers.
name: Codeowners v2
on:
pull_request_target:
types: [opened, ready_for_review, synchronize, reopened, edited]
permissions: {}
env:
OWNERS_FILE: ci/OWNERS
# Don't do anything on draft PRs
DRY_MODE: ${{ github.event.pull_request.draft && '1' || '' }}
jobs:
get-merge-commit:
if: github.repository_owner == 'NixOS'
uses: ./.github/workflows/get-merge-commit.yml
# Check that code owners is valid
check:
name: Check
runs-on: ubuntu-24.04
needs: get-merge-commit
if: github.repository_owner == 'NixOS' && needs.get-merge-commit.outputs.mergedSha
steps:
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
- uses: cachix/cachix-action@ad2ddac53f961de1989924296a1f236fcfbaa4fc # v15
with:
# This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere.
name: nixpkgs-ci
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
# Important: Because we use pull_request_target, this checks out the base branch of the PR, not the PR itself.
# We later build and run code from the base branch with access to secrets,
# so it's important this is not the PRs code.
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
path: base
- name: Build codeowners validator
run: nix-build base/ci -A codeownersValidator
- uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3
id: app-token
with:
app-id: ${{ vars.OWNER_RO_APP_ID }}
private-key: ${{ secrets.OWNER_RO_APP_PRIVATE_KEY }}
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
path: pr
- name: Validate codeowners
run: result/bin/codeowners-validator
env:
OWNERS_FILE: pr/${{ env.OWNERS_FILE }}
GITHUB_ACCESS_TOKEN: ${{ steps.app-token.outputs.token }}
REPOSITORY_PATH: pr
OWNER_CHECKER_REPOSITORY: ${{ github.repository }}
# Set this to "notowned,avoid-shadowing" to check that all files are owned by somebody
EXPERIMENTAL_CHECKS: "avoid-shadowing"
# Request reviews from code owners
request:
name: Request
runs-on: ubuntu-24.04
if: github.repository_owner == 'NixOS'
steps:
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
# Important: Because we use pull_request_target, this checks out the base branch of the PR, not the PR head.
# This is intentional, because we need to request the review of owners as declared in the base branch.
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3
id: app-token
with:
app-id: ${{ vars.OWNER_APP_ID }}
private-key: ${{ secrets.OWNER_APP_PRIVATE_KEY }}
- name: Build review request package
run: nix-build ci -A requestReviews
- name: Request reviews
run: result/bin/request-code-owner-reviews.sh ${{ github.repository }} ${{ github.event.number }} "$OWNERS_FILE"
env:
GH_TOKEN: ${{ steps.app-token.outputs.token }}

View File

@@ -1,47 +0,0 @@
name: "Checking EditorConfig v2"
on:
pull_request_target:
permissions: {}
jobs:
get-merge-commit:
uses: ./.github/workflows/get-merge-commit.yml
tests:
name: editorconfig-check
runs-on: ubuntu-24.04
needs: get-merge-commit
if: "needs.get-merge-commit.outputs.mergedSha && !contains(github.event.pull_request.title, '[skip treewide]')"
steps:
- name: Get list of changed files from PR
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh api \
repos/${{ github.repository }}/pulls/${{ github.event.number }}/files --paginate \
| jq '.[] | select(.status != "removed") | .filename' \
> "$HOME/changed_files"
- name: print list of changed files
run: |
cat "$HOME/changed_files"
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
# nixpkgs commit is pinned so that it doesn't break
# editorconfig-checker 2.4.0
nix_path: nixpkgs=https://github.com/NixOS/nixpkgs/archive/c473cc8714710179df205b153f4e9fa007107ff9.tar.gz
- name: Checking EditorConfig
run: |
< "$HOME/changed_files" nix-shell -p editorconfig-checker --run 'xargs -r editorconfig-checker -disable-indent-size'
- if: ${{ failure() }}
run: |
echo "::error :: Hey! It looks like your changes don't follow our editorconfig settings. Read https://editorconfig.org/#download to configure your editor so you never see this error again."

View File

@@ -1,30 +0,0 @@
name: "Building Nixpkgs lib-tests"
on:
pull_request_target:
paths:
- 'lib/**'
permissions: {}
jobs:
get-merge-commit:
uses: ./.github/workflows/get-merge-commit.yml
nixpkgs-lib-tests:
name: nixpkgs-lib-tests
runs-on: ubuntu-24.04
needs: get-merge-commit
if: needs.get-merge-commit.outputs.mergedSha
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- name: Building Nixpkgs lib-tests
run: |
nix-build --arg pkgs "(import ./ci/. {}).pkgs" ./lib/tests/release.nix

View File

@@ -1,339 +0,0 @@
name: Eval
on:
pull_request_target:
types: [opened, ready_for_review, synchronize, reopened]
push:
# Keep this synced with ci/request-reviews/dev-branches.txt
branches:
- master
- staging
- release-*
- staging-*
- haskell-updates
- python-updates
permissions: {}
jobs:
get-merge-commit:
uses: ./.github/workflows/get-merge-commit.yml
attrs:
name: Attributes
runs-on: ubuntu-24.04
needs: get-merge-commit
if: needs.get-merge-commit.outputs.mergedSha
outputs:
targetSha: ${{ steps.targetSha.outputs.targetSha }}
systems: ${{ steps.systems.outputs.systems }}
steps:
- name: Check out the PR at the test merge commit
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
fetch-depth: 2
path: nixpkgs
- name: Determine target commit
if: github.event_name == 'pull_request_target'
id: targetSha
run: |
targetSha=$(git -C nixpkgs rev-parse HEAD^1)
echo "targetSha=$targetSha" >> "$GITHUB_OUTPUT"
- name: Install Nix
uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- name: Evaluate the list of all attributes and get the systems matrix
id: systems
run: |
nix-build nixpkgs/ci -A eval.attrpathsSuperset
echo "systems=$(<result/systems.json)" >> "$GITHUB_OUTPUT"
- name: Upload the list of all attributes
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: paths
path: result/*
eval-aliases:
name: Eval nixpkgs with aliases enabled
runs-on: ubuntu-24.04
needs: [ get-merge-commit ]
steps:
- name: Check out the PR at the test merge commit
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
path: nixpkgs
- name: Install Nix
uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- name: Query nixpkgs with aliases enabled to check for basic syntax errors
run: |
time nix-env -I ./nixpkgs -f ./nixpkgs -qa '*' --option restrict-eval true --option allow-import-from-derivation false >/dev/null
outpaths:
name: Outpaths
runs-on: ubuntu-24.04
needs: [ attrs, get-merge-commit ]
strategy:
fail-fast: false
matrix:
system: ${{ fromJSON(needs.attrs.outputs.systems) }}
steps:
- name: Enable swap
run: |
sudo fallocate -l 10G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
- name: Download the list of all attributes
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: paths
path: paths
- name: Check out the PR at the test merge commit
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
path: nixpkgs
- name: Install Nix
uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- name: Evaluate the ${{ matrix.system }} output paths for all derivation attributes
env:
MATRIX_SYSTEM: ${{ matrix.system }}
run: |
nix-build nixpkgs/ci -A eval.singleSystem \
--argstr evalSystem "$MATRIX_SYSTEM" \
--arg attrpathFile ./paths/paths.json \
--arg chunkSize 10000
# If it uses too much memory, slightly decrease chunkSize
- name: Upload the output paths and eval stats
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: intermediate-${{ matrix.system }}
path: result/*
process:
name: Process
runs-on: ubuntu-24.04
needs: [ outpaths, attrs, get-merge-commit ]
outputs:
targetRunId: ${{ steps.targetRunId.outputs.targetRunId }}
steps:
- name: Download output paths and eval stats for all systems
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
pattern: intermediate-*
path: intermediate
- name: Check out the PR at the test merge commit
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
fetch-depth: 2
path: nixpkgs
- name: Install Nix
uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- name: Combine all output paths and eval stats
run: |
nix-build nixpkgs/ci -A eval.combine \
--arg resultsDir ./intermediate \
-o prResult
- name: Upload the combined results
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: result
path: prResult/*
- name: Get target run id
if: needs.attrs.outputs.targetSha
id: targetRunId
run: |
# Get the latest eval.yml workflow run for the PR's target commit
if ! run=$(gh api --method GET /repos/"$REPOSITORY"/actions/workflows/eval.yml/runs \
-f head_sha="$TARGET_SHA" -f event=push \
--jq '.workflow_runs | sort_by(.run_started_at) | .[-1]') \
|| [[ -z "$run" ]]; then
echo "Could not find an eval.yml workflow run for $TARGET_SHA, cannot make comparison"
exit 1
fi
echo "Comparing against $(jq .html_url <<< "$run")"
runId=$(jq .id <<< "$run")
conclusion=$(jq -r .conclusion <<< "$run")
while [[ "$conclusion" == null || "$conclusion" == "" ]]; do
echo "Workflow not done, waiting 10 seconds before checking again"
sleep 10
conclusion=$(gh api /repos/"$REPOSITORY"/actions/runs/"$runId" --jq '.conclusion')
done
if [[ "$conclusion" != "success" ]]; then
echo "Workflow was not successful (conclusion: $conclusion), cannot make comparison"
exit 1
fi
echo "targetRunId=$runId" >> "$GITHUB_OUTPUT"
env:
REPOSITORY: ${{ github.repository }}
TARGET_SHA: ${{ needs.attrs.outputs.targetSha }}
GH_TOKEN: ${{ github.token }}
- uses: actions/download-artifact@v4
if: steps.targetRunId.outputs.targetRunId
with:
name: result
path: targetResult
github-token: ${{ github.token }}
run-id: ${{ steps.targetRunId.outputs.targetRunId }}
- name: Compare against the target branch
if: steps.targetRunId.outputs.targetRunId
run: |
git -C nixpkgs worktree add ../target ${{ needs.attrs.outputs.targetSha }}
git -C nixpkgs diff --name-only ${{ needs.attrs.outputs.targetSha }} \
| jq --raw-input --slurp 'split("\n")[:-1]' > touched-files.json
# Use the target branch to get accurate maintainer info
nix-build target/ci -A eval.compare \
--arg beforeResultDir ./targetResult \
--arg afterResultDir ./prResult \
--arg touchedFilesJson ./touched-files.json \
-o comparison
cat comparison/step-summary.md >> "$GITHUB_STEP_SUMMARY"
- name: Upload the combined results
if: steps.targetRunId.outputs.targetRunId
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: comparison
path: comparison/*
# Separate job to have a very tightly scoped PR write token
tag:
name: Tag
runs-on: ubuntu-24.04
needs: [ attrs, process ]
if: needs.process.outputs.targetRunId
permissions:
pull-requests: write
statuses: write
steps:
# See ./codeowners-v2.yml, reuse the same App because we need the same permissions
# Can't use the token received from permissions above, because it can't get enough permissions
- uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3
id: app-token
with:
app-id: ${{ vars.OWNER_APP_ID }}
private-key: ${{ secrets.OWNER_APP_PRIVATE_KEY }}
- name: Download process result
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: comparison
path: comparison
- name: Install Nix
uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
# Important: This workflow job runs with extra permissions,
# so we need to make sure to not run untrusted code from PRs
- name: Check out Nixpkgs at the base commit
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.attrs.outputs.targetSha }}
path: base
sparse-checkout: ci
- name: Build the requestReviews derivation
run: nix-build base/ci -A requestReviews
- name: Labelling pull request
run: |
# Get all currently set rebuild labels
gh api \
/repos/"$REPOSITORY"/issues/"$NUMBER"/labels \
--jq '.[].name | select(startswith("10.rebuild"))' \
| sort > before
# And the labels that should be there
jq -r '.labels[]' comparison/changed-paths.json \
| sort > after
# Remove the ones not needed anymore
while read -r toRemove; do
echo "Removing label $toRemove"
gh api \
--method DELETE \
/repos/"$REPOSITORY"/issues/"$NUMBER"/labels/"$toRemove"
done < <(comm -23 before after)
# And add the ones that aren't set already
while read -r toAdd; do
echo "Adding label $toAdd"
gh api \
--method POST \
/repos/"$REPOSITORY"/issues/"$NUMBER"/labels \
-f "labels[]=$toAdd"
done < <(comm -13 before after)
env:
GH_TOKEN: ${{ github.token }}
REPOSITORY: ${{ github.repository }}
NUMBER: ${{ github.event.number }}
- name: Add eval summary to commit statuses
if: ${{ github.event_name == 'pull_request_target' }}
run: |
description=$(jq -r '
"Package: added " + (.attrdiff.added | length | tostring) +
", removed " + (.attrdiff.removed | length | tostring) +
", changed " + (.attrdiff.changed | length | tostring) +
", Rebuild: linux " + (.rebuildCountByKernel.linux | tostring) +
", darwin " + (.rebuildCountByKernel.darwin | tostring)
' <comparison/changed-paths.json)
target_url="$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID?pr=$NUMBER"
gh api --method POST \
-H "Accept: application/vnd.github+json" -H "X-GitHub-Api-Version: 2022-11-28" \
"/repos/$GITHUB_REPOSITORY/statuses/$PR_HEAD_SHA" \
-f "context=Eval / Summary" -f "state=success" -f "description=$description" -f "target_url=$target_url"
env:
GH_TOKEN: ${{ github.token }}
PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }}
NUMBER: ${{ github.event.number }}
- name: Requesting maintainer reviews
run: |
# maintainers.json contains GitHub IDs. Look up handles to request reviews from.
# There appears to be no API to request reviews based on GitHub IDs
jq -r 'keys[]' comparison/maintainers.json \
| while read -r id; do gh api /user/"$id" --jq .login; done \
| GH_TOKEN=${{ steps.app-token.outputs.token }} result/bin/request-reviewers.sh "$REPOSITORY" "$NUMBER" "$AUTHOR"
env:
GH_TOKEN: ${{ github.token }}
REPOSITORY: ${{ github.repository }}
NUMBER: ${{ github.event.number }}
AUTHOR: ${{ github.event.pull_request.user.login }}
# Don't request reviewers on draft PRs
DRY_MODE: ${{ github.event.pull_request.draft && '1' || '' }}

View File

@@ -1,43 +0,0 @@
name: Get merge commit
on:
workflow_call:
outputs:
mergedSha:
description: "The merge commit SHA"
value: ${{ jobs.resolve-merge-commit.outputs.mergedSha }}
permissions: {}
jobs:
resolve-merge-commit:
runs-on: ubuntu-24.04
outputs:
mergedSha: ${{ steps.merged.outputs.mergedSha }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
path: base
sparse-checkout: ci
- name: Check if the PR can be merged and get the test merge commit
id: merged
env:
GH_TOKEN: ${{ github.token }}
GH_EVENT: ${{ github.event_name }}
run: |
case "$GH_EVENT" in
push)
echo "mergedSha=${{ github.sha }}" >> "$GITHUB_OUTPUT"
;;
pull_request_target)
if mergedSha=$(base/ci/get-merge-commit.sh ${{ github.repository }} ${{ github.event.number }}); then
echo "Checking the merge commit $mergedSha"
echo "mergedSha=$mergedSha" >> "$GITHUB_OUTPUT"
else
# Skipping so that no notifications are sent
echo "Skipping the rest..."
fi
;;
esac
rm -rf base

View File

@@ -1,31 +0,0 @@
# WARNING:
# When extending this action, be aware that $GITHUB_TOKEN allows some write
# access to the GitHub API. This means that it should not evaluate user input in
# a way that allows code injection.
name: "Label PR"
on:
pull_request_target:
types: [edited, opened, synchronize, reopened]
permissions:
contents: read
pull-requests: write
jobs:
labels:
name: label-pr
runs-on: ubuntu-24.04
if: "github.repository_owner == 'NixOS' && !contains(github.event.pull_request.title, '[skip treewide]')"
steps:
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
configuration-path: .github/labeler.yml # default
sync-labels: true
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
configuration-path: .github/labeler-no-sync.yml
sync-labels: false

View File

@@ -1,7 +0,0 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p bash actionlint shellcheck -I nixpkgs=../..
set -euo pipefail
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
cd "$SCRIPT_DIR/../.."
actionlint

View File

@@ -1,33 +0,0 @@
name: "Build NixOS manual v2"
on:
pull_request_target:
branches:
- master
paths:
- 'nixos/**'
permissions: {}
jobs:
nixos:
name: nixos-manual-build
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- uses: cachix/cachix-action@ad2ddac53f961de1989924296a1f236fcfbaa4fc # v15
if: github.repository_owner == 'NixOS'
with:
# This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere.
name: nixpkgs-ci
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Building NixOS manual
run: NIX_PATH=nixpkgs=$(pwd) nix-build --option restrict-eval true nixos/release.nix -A manual.x86_64-linux

View File

@@ -1,35 +0,0 @@
name: "Build Nixpkgs manual v2"
on:
pull_request_target:
branches:
- master
paths:
- 'doc/**'
- 'lib/**'
- 'pkgs/tools/nix/nixdoc/**'
permissions: {}
jobs:
nixpkgs:
name: nixpkgs-manual-build
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: refs/pull/${{ github.event.pull_request.number }}/merge
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
- uses: cachix/cachix-action@ad2ddac53f961de1989924296a1f236fcfbaa4fc # v15
if: github.repository_owner == 'NixOS'
with:
# This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere.
name: nixpkgs-ci
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Building Nixpkgs manual
run: NIX_PATH=nixpkgs=$(pwd) nix-build --option restrict-eval true pkgs/top-level/release.nix -A manual -A manual.tests

View File

@@ -1,47 +0,0 @@
name: "Check whether nix files are parseable v2"
on:
pull_request_target:
permissions: {}
jobs:
get-merge-commit:
uses: ./.github/workflows/get-merge-commit.yml
tests:
name: nix-files-parseable-check
runs-on: ubuntu-24.04
needs: get-merge-commit
if: "needs.get-merge-commit.outputs.mergedSha && !contains(github.event.pull_request.title, '[skip treewide]')"
steps:
- name: Get list of changed files from PR
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh api \
repos/${{ github.repository }}/pulls/${{github.event.number}}/files --paginate \
| jq --raw-output '.[] | select(.status != "removed" and (.filename | endswith(".nix"))) | .filename' \
> "$HOME/changed_files"
if [[ -s "$HOME/changed_files" ]]; then
echo "CHANGED_FILES=$HOME/changed_files" > "$GITHUB_ENV"
fi
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
if: ${{ env.CHANGED_FILES && env.CHANGED_FILES != '' }}
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
extra_nix_config: sandbox = true
nix_path: nixpkgs=channel:nixpkgs-unstable
- name: Parse all changed or added nix files
run: |
ret=0
while IFS= read -r file; do
out="$(nix-instantiate --parse "$file")" || { echo "$out" && ret=1; }
done < "$HOME/changed_files"
exit "$ret"
if: ${{ env.CHANGED_FILES && env.CHANGED_FILES != '' }}

View File

@@ -1,73 +0,0 @@
# `nixpkgs-vet` is a tool to vet Nixpkgs: its architecture, package structure, and more.
# Among other checks, it makes sure that `pkgs/by-name` (see `../../pkgs/by-name/README.md`) follows the validity rules outlined in [RFC 140](https://github.com/NixOS/rfcs/pull/140).
# When you make changes to this workflow, please also update `ci/nixpkgs-vet.sh` to reflect the impact of your work to the CI.
# See https://github.com/NixOS/nixpkgs-vet for details on the tool and its checks.
name: Vet nixpkgs
on:
pull_request_target:
# This workflow depends on the base branch of the PR, but changing the base branch is not included in the default trigger events, which would be `opened`, `synchronize` or `reopened`.
# Instead it causes an `edited` event, so we need to add it explicitly here.
# While `edited` is also triggered when the PR title/body is changed, this PR action is fairly quick, and PRs don't get edited **that** often, so it shouldn't be a problem.
# There is a feature request for adding a `base_changed` event: https://github.com/orgs/community/discussions/35058
types: [opened, synchronize, reopened, edited]
permissions: {}
# We don't use a concurrency group here, because the action is triggered quite often (due to the PR edit trigger), and contributors would get notified on any canceled run.
# There is a feature request for suppressing notifications on concurrency-canceled runs: https://github.com/orgs/community/discussions/13015
jobs:
get-merge-commit:
uses: ./.github/workflows/get-merge-commit.yml
check:
name: nixpkgs-vet
# This needs to be x86_64-linux, because we depend on the tooling being pre-built in the GitHub releases.
runs-on: ubuntu-24.04
# This should take 1 minute at most, but let's be generous. The default of 6 hours is definitely too long.
timeout-minutes: 10
needs: get-merge-commit
if: needs.get-merge-commit.outputs.mergedSha
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
# Fetches the merge commit and its parents
fetch-depth: 2
- name: Checking out target branch
run: |
target=$(mktemp -d)
git worktree add "$target" "$(git rev-parse HEAD^1)"
echo "target=$target" >> "$GITHUB_ENV"
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
- name: Fetching the pinned tool
# Update the pinned version using ci/nixpkgs-vet/update-pinned-tool.sh
run: |
# The pinned version of the tooling to use.
toolVersion=$(<ci/nixpkgs-vet/pinned-version.txt)
# Fetch the x86_64-linux-specific release artifact containing the gzipped NAR of the pre-built tool.
toolPath=$(curl -sSfL https://github.com/NixOS/nixpkgs-vet/releases/download/"$toolVersion"/x86_64-linux.nar.gz \
| gzip -cd | nix-store --import | tail -1)
# Adds a result symlink as a GC root.
nix-store --realise "$toolPath" --add-root result
- name: Running nixpkgs-vet
env:
# Force terminal colors to be enabled. The library that `nixpkgs-vet` uses respects https://bixense.com/clicolors/
CLICOLOR_FORCE: 1
run: |
if result/bin/nixpkgs-vet --base "$target" .; then
exit 0
else
exitCode=$?
echo "To run locally: ./ci/nixpkgs-vet.sh $GITHUB_BASE_REF https://github.com/$GITHUB_REPOSITORY.git"
echo "If you're having trouble, ping @NixOS/nixpkgs-vet"
exit "$exitCode"
fi

View File

@@ -1,25 +0,0 @@
name: "No channel PR"
on:
pull_request_target:
# Re-run should be triggered when the base branch is updated, instead of silently failing
types: [opened, synchronize, reopened, edited]
branches:
- 'nixos-**'
- 'nixpkgs-**'
permissions: {}
jobs:
fail:
name: "This PR is is targeting a channel branch"
runs-on: ubuntu-24.04
steps:
- run: |
cat <<EOF
The nixos-* and nixpkgs-* branches are pushed to by the channel
release script and should not be merged into directly.
Please target the equivalent release-* branch or master instead.
EOF
exit 1

View File

@@ -1,40 +0,0 @@
# This action periodically merges base branches into staging branches.
# This is done to
# * prevent conflicts or rather resolve them early
# * make all potential breakage happen on the staging branch
# * and make sure that all major rebuilds happen before the staging
# branch gets merged back into its base branch.
name: "Periodic Merges (24h)"
on:
schedule:
# * is a special character in YAML so you have to quote this string
# Merge every 24 hours
- cron: '0 0 * * *'
workflow_dispatch:
permissions: {}
jobs:
periodic-merge:
if: github.repository_owner == 'NixOS'
strategy:
# don't fail fast, so that all pairs are tried
fail-fast: false
# certain branches need to be merged in order, like master->staging-next->staging
# and disabling parallelism ensures the order of the pairs below.
max-parallel: 1
matrix:
pairs:
- from: release-24.11
into: staging-next-24.11
- from: staging-next-24.11
into: staging-24.11
- from: master staging
into: haskell-updates
uses: ./.github/workflows/periodic-merge.yml
with:
from: ${{ matrix.pairs.from }}
into: ${{ matrix.pairs.into }}
secrets: inherit

View File

@@ -1,38 +0,0 @@
# This action periodically merges base branches into staging branches.
# This is done to
# * prevent conflicts or rather resolve them early
# * make all potential breakage happen on the staging branch
# * and make sure that all major rebuilds happen before the staging
# branch gets merged back into its base branch.
name: "Periodic Merges (6h)"
on:
schedule:
# * is a special character in YAML so you have to quote this string
# Merge every 6 hours
- cron: '0 */6 * * *'
workflow_dispatch:
permissions: {}
jobs:
periodic-merge:
if: github.repository_owner == 'NixOS'
strategy:
# don't fail fast, so that all pairs are tried
fail-fast: false
# certain branches need to be merged in order, like master->staging-next->staging
# and disabling parallelism ensures the order of the pairs below.
max-parallel: 1
matrix:
pairs:
- from: master
into: staging-next
- from: staging-next
into: staging
uses: ./.github/workflows/periodic-merge.yml
with:
from: ${{ matrix.pairs.from }}
into: ${{ matrix.pairs.into }}
secrets: inherit

View File

@@ -1,58 +0,0 @@
name: "Merge"
on:
workflow_call:
inputs:
from:
description: Branch to merge into target branch. Can also be two branches separated by space to find the merge base between them.
required: true
type: string
into:
description: Target branch to merge into.
required: true
type: string
jobs:
merge:
runs-on: ubuntu-24.04
name: ${{ inputs.from }} → ${{ inputs.into }}
steps:
# Use a GitHub App to create the PR so that CI gets triggered
# The App is scoped to Repository > Contents and Pull Requests: write for Nixpkgs
- uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3
id: app-token
with:
app-id: ${{ vars.NIXPKGS_CI_APP_ID }}
private-key: ${{ secrets.NIXPKGS_CI_APP_PRIVATE_KEY }}
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Find merge base between two branches
if: contains(inputs.from, ' ')
id: merge_base
env:
branches: ${{ inputs.from }}
run: |
# turn into bash array, split on space
read -ra branches <<< "$branches"
git fetch --shallow-since="1 month ago" origin "${branches[@]}"
merge_base="$(git merge-base "refs/remotes/origin/${branches[0]}" "refs/remotes/origin/${branches[1]}")"
echo "Found merge base: $merge_base" >&2
echo "merge_base=$merge_base" >> "$GITHUB_OUTPUT"
- name: ${{ inputs.from }} → ${{ inputs.into }}
uses: devmasx/merge-branch@854d3ac71ed1e9deb668e0074781b81fdd6e771f # 1.4.0
with:
type: now
from_branch: ${{ steps.merge_base.outputs.merge_base || inputs.from }}
target_branch: ${{ inputs.into }}
github_token: ${{ steps.app-token.outputs.token }}
- name: Comment on failure
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
if: ${{ failure() }}
with:
issue-number: 105153
body: |
Periodic merge from `${{ inputs.from }}` into `${{ inputs.into }}` has [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
token: ${{ steps.app-token.outputs.token }}

24
.gitignore vendored
View File

@@ -2,38 +2,16 @@
,*
.*.swp
.*.swo
.\#*
\#*\#
.idea/
.nixos-test-history
.vscode/
.helix/
outputs/
result-*
result
repl-result-*
tags
!pkgs/development/python-modules/result
result-*
/doc/NEWS.html
/doc/NEWS.txt
/doc/manual.html
/doc/manual.pdf
/source/
.version-suffix
.direnv
.envrc
.DS_Store
.mypy_cache
__pycache__
/pkgs/development/libraries/qt-5/*/tmp/
/pkgs/desktops/kde-5/*/tmp/
/pkgs/development/mobile/androidenv/xml/*
# generated by pkgs/common-updater/update-script.nix
update-git-commits.txt
/*.log
# JetBrains IDEA module declaration file
/nixpkgs.iml

View File

@@ -1,30 +0,0 @@
ajs124 <git@ajs124.de> <ajs124@users.noreply.github.com>
Anderson Torres <torres.anderson.85@protonmail.com>
Atemu <git@atemu.net> <atemu.main@gmail.com>
Christina Sørensen <christina@cafkafk.com>
Christina Sørensen <christina@cafkafk.com> <christinaafk@gmail.com>
Christina Sørensen <christina@cafkafk.com> <89321978+cafkafk@users.noreply.github.com>
Daniel Løvbrøtte Olsen <me@dandellion.xyz> <daniel.olsen99@gmail.com>
Fabian Affolter <mail@fabian-affolter.ch> <fabian@affolter-engineering.ch>
Fiona Behrens <me@kloenk.dev>
Fiona Behrens <me@kloenk.dev> <me@kloenk.de>
goatastronaut0212 <goatastronaut0212@outlook.com> <goatastronaut0212@proton.me>
Janne Heß <janne@hess.ooo> <dasJ@users.noreply.github.com>
jopejoe1 <nixpkgs@missing.ninja>
jopejoe1 <nixpkgs@missing.ninja> <johannes@joens.email>
jopejoe1 <nixpkgs@missing.ninja> <34899572+jopejoe1@users.noreply.github.com>
Jörg Thalheim <joerg@thalheim.io> <Mic92@users.noreply.github.com>
Lin Jian <me@linj.tech> <linj.dev@outlook.com>
Lin Jian <me@linj.tech> <75130626+jian-lin@users.noreply.github.com>
Martin Weinelt <hexa@darmstadt.ccc.de> <mweinelt@users.noreply.github.com>
moni <lythe1107@gmail.com> <lythe1107@icloud.com>
R. RyanTM <ryantm-bot@ryantm.com>
Robert Hensing <robert@roberthensing.nl> <roberth@users.noreply.github.com>
Sandro Jäckel <sandro.jaeckel@gmail.com>
Sandro Jäckel <sandro.jaeckel@gmail.com> <sandro.jaeckel@sap.com>
superherointj <5861043+superherointj@users.noreply.github.com>
Tomodachi94 <tomodachi94@protonmail.com> Tomo <68489118+Tomodachi94@users.noreply.github.com>
Vladimír Čunát <v@cunat.cz> <vcunat@gmail.com>
Vladimír Čunát <v@cunat.cz> <vladimir.cunat@nic.cz>
Yifei Sun <ysun@hey.com> StepBroBD <Hi@StepBroBD.com>
Yifei Sun <ysun@hey.com> <ysun+git@stepbrobd.com>

View File

@@ -1,21 +0,0 @@
queue_rules:
# This rule is for https://docs.mergify.com/commands/queue/
# and can be triggered with: @mergifyio queue
- name: default
merge_conditions:
# all github action checks in this list are required to merge a pull request
- check-success=Attributes
- check-success=Check
- check-success=Outpaths (aarch64-darwin)
- check-success=Outpaths (aarch64-linux)
- check-success=Outpaths (x86_64-darwin)
- check-success=Outpaths (x86_64-linux)
- check-success=Process
- check-success=Request
- check-success=editorconfig-check
- check-success=label-pr
- check-success=nix-files-parseable-check
- check-success=nixfmt-check
- check-success=nixpkgs-vet
# queue up to 5 pull requests at a time
batch_size: 5

View File

@@ -1 +0,0 @@
lib/.version

1
.version Normal file
View File

@@ -0,0 +1 @@
20.03

View File

@@ -1,802 +0,0 @@
# Contributing to Nixpkgs
This document is for people wanting to contribute to the implementation of Nixpkgs.
This involves interacting with implementation changes that are proposed using [GitHub](https://github.com/) [pull requests](https://docs.github.com/pull-requests) to the [Nixpkgs](https://github.com/nixos/nixpkgs/) repository (which you're in right now).
As such, a GitHub account is recommended, which you can sign up for [here](https://github.com/signup).
See [here](https://discourse.nixos.org/t/about-the-patches-category/477) for how to contribute without a GitHub account.
Additionally this document assumes that you already know how to use GitHub and Git.
If that's not the case, we recommend learning about it first [here](https://docs.github.com/en/get-started/quickstart/hello-world).
## Overview
[overview]: #overview
This file contains general contributing information, but individual parts also have more specific information to them in their respective `README.md` files, linked here:
- [`lib`](./lib/README.md): Sources and documentation of the [library functions](https://nixos.org/manual/nixpkgs/stable/#chap-functions)
- [`maintainers`](./maintainers/README.md): Nixpkgs maintainer and team listings, maintainer scripts
- [`pkgs`](./pkgs/README.md): Package and [builder](https://nixos.org/manual/nixpkgs/stable/#part-builders) definitions
- [`doc`](./doc/README.md): Sources and infrastructure for the [Nixpkgs manual](https://nixos.org/manual/nixpkgs/stable/)
- [`nixos`](./nixos/README.md): Implementation of [NixOS](https://nixos.org/manual/nixos/stable/)
# How to's
## How to create pull requests
[pr-create]: #how-to-create-pull-requests
This section describes in some detail how changes can be made and proposed with pull requests.
> [!Note]
> Be aware that contributing implies licensing those contributions under the terms of [COPYING](./COPYING), an MIT-like license.
0. Set up a local version of Nixpkgs to work with using GitHub and Git
1. [Fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo#forking-a-repository) the [Nixpkgs repository](https://github.com/nixos/nixpkgs/).
1. [Clone the forked repository](https://docs.github.com/en/get-started/quickstart/fork-a-repo#cloning-your-forked-repository) into a local `nixpkgs` directory.
1. [Configure the upstream Nixpkgs repository](https://docs.github.com/en/get-started/quickstart/fork-a-repo#configuring-git-to-sync-your-fork-with-the-upstream-repository).
1. Figure out the branch that should be used for this change by going through [this section][branch].
If in doubt use `master`, that's where most changes should go.
This can be changed later by [rebasing][rebase].
2. Create and switch to a new Git branch, ideally such that:
- The name of the branch hints at the change you'd like to implement, e.g. `update-hello`.
- The base of the branch includes the most recent changes on the base branch from step 1, we'll assume `master` here.
```bash
# Make sure you have the latest changes from upstream Nixpkgs
git fetch upstream
# Create and switch to a new branch based off the master branch in Nixpkgs
git switch --create update-hello upstream/master
```
To avoid having to download and build potentially many derivations, at the expense of using a potentially outdated version, you can base the branch off a specific [Git commit](https://www.git-scm.com/docs/gitglossary#def_commit) instead:
- The commit of the latest `nixpkgs-unstable` channel, available [here](https://channels.nixos.org/nixpkgs-unstable/git-revision).
- The commit of a local Nixpkgs downloaded using [nix-channel](https://nixos.org/manual/nix/stable/command-ref/nix-channel), available using `nix-instantiate --eval --expr '(import <nixpkgs/lib>).trivial.revisionWithDefault null'`
- If you're using NixOS, the commit of your NixOS installation, available with `nixos-version --revision`.
Once you have an appropriate commit you can use it instead of `upstream/master` in the above command:
```bash
git switch --create update-hello <the desired base commit>
```
3. Make the desired changes in the local Nixpkgs repository using an editor of your choice.
Make sure to:
- Adhere to both the [general code conventions][code-conventions], and the code conventions specific to the part you're making changes to.
See the [overview section][overview] for more specific information.
- Test the changes.
See the [overview section][overview] for more specific information.
- If necessary, document the change.
See the [overview section][overview] for more specific information.
4. Commit your changes using `git commit`.
Make sure to adhere to the [commit conventions](#commit-conventions).
Repeat the steps 3-4 as many times as necessary.
Advance to the next step if all the commits (viewable with `git log`) make sense together.
5. Push your commits to your fork of Nixpkgs.
```
git push --set-upstream origin HEAD
```
The above command will output a link that allows you to directly quickly do the next step:
```
remote: Create a pull request for 'update-hello' on GitHub by visiting:
remote: https://github.com/myUser/nixpkgs/pull/new/update-hello
```
6. [Create a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request#creating-the-pull-request) from the new branch in your Nixpkgs fork to the upstream Nixpkgs repository.
Use the branch from step 2 as the pull requests base branch.
Go through the [pull request template](#pull-request-template) in the pre-filled default description.
7. Respond to review comments, potential CI failures and potential merge conflicts by updating the pull request.
Always keep the pull request in a mergeable state.
This process is covered in more detail from the non-technical side in [I opened a PR, how do I get it merged?](#i-opened-a-pr-how-do-i-get-it-merged).
The custom [OfBorg](https://github.com/NixOS/ofborg) CI system will perform various checks to help ensure code quality, whose results you can see at the bottom of the pull request.
See [the OfBorg Readme](https://github.com/NixOS/ofborg#readme) for more details.
- To add new commits, repeat steps 3-4 and push the result using
```
git push
```
- To change existing commits you will have to [rewrite Git history](https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History).
Useful Git commands that can help a lot with this are `git commit --patch --amend` and `git rebase --interactive`.
With a rewritten history you need to force-push the commits using
```
git push --force-with-lease
```
- In case of merge conflicts you will also have to [rebase the branch](https://git-scm.com/book/en/v2/Git-Branching-Rebasing) on top of current `master`.
Sometimes this can be done [on GitHub directly](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/keeping-your-pull-request-in-sync-with-the-base-branch#updating-your-pull-request-branch), but if not you will have to rebase locally using
```
git fetch upstream
git rebase upstream/master
git push --force-with-lease
```
- If you need to change the base branch of the pull request, you can do so by [rebasing][rebase].
8. If your pull request is merged and [acceptable for releases][release-acceptable] you may [backport][pr-backport] the pull request.
### Pull request template
[pr-template]: #pull-request-template
The pull request template helps determine what steps have been made for a contribution so far, and will help guide maintainers on the status of a change. The motivation section of the PR should include any extra details the title does not address and link any existing issues related to the pull request.
When a PR is created, it will be pre-populated with some checkboxes detailed below:
#### Tested using sandboxing
When sandbox builds are enabled, Nix will set up an isolated environment for each build process.
It is used to remove further hidden dependencies set by the build environment to improve reproducibility.
This includes access to the network during the build outside of `fetch*` functions and files outside the Nix store.
Depending on the operating system, access to other resources is blocked as well (e.g., inter-process communication is isolated on Linux); see [sandbox](https://nixos.org/manual/nix/stable/command-ref/conf-file#conf-sandbox) in the Nix manual for details.
In pull requests for [nixpkgs](https://github.com/NixOS/nixpkgs/) people are asked to test builds with sandboxing enabled (see `Tested using sandboxing` in the pull request template) because in [Hydra](https://nixos.org/hydra/) sandboxing is also used.
If you are on Linux, sandboxing is enabled by default.
On other platforms, sandboxing is disabled by default due to a small performance hit on each build.
Please enable sandboxing **before** building the package by adding the following to: `/etc/nix/nix.conf`:
```ini
sandbox = true
```
#### Built on platform(s)
Many Nix packages are designed to run on multiple platforms. As such, its important to let the maintainer know which platforms your changes have been tested on. Its not always practical to test a change on all platforms, and is not required for a pull request to be merged. Only check the systems you tested the build on in this section.
#### Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
Packages with automated tests are much more likely to be merged in a timely fashion because it doesnt require as much manual testing by the maintainer to verify the functionality of the package. If there are existing tests for the package, they should be run to verify your changes do not break the tests. Tests can only be run on Linux. For more details on writing and running tests, see the [section in the NixOS manual](https://nixos.org/nixos/manual/index.html#sec-nixos-tests).
#### Tested compilation of all pkgs that depend on this change using `nixpkgs-review`
If you are modifying a package, you can use `nixpkgs-review` to make sure all packages that depend on the updated package still compile correctly. The `nixpkgs-review` utility can look for and build all dependencies either based on uncommitted changes with the `wip` option or specifying a GitHub pull request number.
Review changes from pull request number 12345:
```ShellSession
nix-shell -p nixpkgs-review --run "nixpkgs-review pr 12345"
```
Alternatively, with flakes (and analogously for the other commands below):
```ShellSession
nix run nixpkgs#nixpkgs-review -- pr 12345
```
Review uncommitted changes:
```ShellSession
nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
```
Review changes from last commit:
```ShellSession
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
```
#### Tested execution of all binary files (usually in `./result/bin/`)
Its important to test any executables generated by a build when you change or create a package in nixpkgs. This can be done by looking in `./result/bin` and running any files in there, or at a minimum, the main executable for the package. For example, if you make a change to texlive, you probably would only check the binaries associated with the change you made rather than testing all of them.
#### Meets Nixpkgs contribution standards
The last checkbox is about whether it fits the guidelines in this `CONTRIBUTING.md` file. This document has detailed information on standards the Nix community has for commit messages, reviews, licensing of contributions you make to the project, etc... Everyone should read and understand the standards the community has for contributing before submitting a pull request.
### Rebasing between branches (i.e. from master to staging)
[rebase]: #rebasing-between-branches-ie-from-master-to-staging
From time to time, changes between branches must be rebased, for example, if the
number of new rebuilds they would cause is too large for the target branch.
In the following example, we assume that the current branch, called `feature`,
is based on `master`, and we rebase it onto the merge base between
`master` and `staging` so that the PR can be retargeted to
`staging`. The example uses `upstream` as the remote for `NixOS/nixpkgs.git`
while `origin` is the remote you are pushing to.
```console
# Rebase your commits onto the common merge base
git rebase --onto upstream/staging... upstream/master
# Force push your changes
git push origin feature --force-with-lease
```
The syntax `upstream/staging...` is equivalent to `upstream/staging...HEAD` and
stands for the merge base between `upstream/staging` and `HEAD` (hence between
`upstream/staging` and `upstream/master`).
Then change the base branch in the GitHub PR using the *Edit* button in the upper
right corner, and switch from `master` to `staging`. *After* the PR has been
retargeted it might be necessary to do a final rebase onto the target branch, to
resolve any outstanding merge conflicts.
```console
# Rebase onto target branch
git rebase upstream/staging
# Review and fixup possible conflicts
git status
# Force push your changes
git push origin feature --force-with-lease
```
## How to backport pull requests
[pr-backport]: #how-to-backport-pull-requests
Once a pull request has been merged into `master`, a backport pull request to the corresponding `release-YY.MM` branch can be created either automatically or manually.
### Automatically backporting changes
> [!Note]
> You have to be a [Nixpkgs maintainer](./maintainers) to automatically create a backport pull request.
Add the [`backport release-YY.MM` label](https://github.com/NixOS/nixpkgs/labels?q=backport) to the pull request on the `master` branch.
This will cause [a GitHub Action](.github/workflows/backport.yml) to open a pull request to the `release-YY.MM` branch a few minutes later.
This can be done on both open or already merged pull requests.
### Manually backporting changes
To manually create a backport pull request, follow [the standard pull request process][pr-create], with these notable differences:
- Use `release-YY.MM` for the base branch, both for the local branch and the pull request.
> [!Warning]
> Do not use the `nixos-YY.MM` branch, that is a branch pointing to the tested release channel commit
- Instead of manually making and committing the changes, use [`git cherry-pick -x`](https://git-scm.com/docs/git-cherry-pick) for each commit from the pull request you'd like to backport.
Either `git cherry-pick -x <commit>` when the reason for the backport is obvious (such as minor versions, fixes, etc.), otherwise use `git cherry-pick -xe <commit>` to add a reason for the backport to the commit message.
Here is [an example](https://github.com/nixos/nixpkgs/commit/5688c39af5a6c5f3d646343443683da880eaefb8) of this.
> [!Warning]
> Ensure the commits exists on the master branch.
> In the case of squashed or rebased merges, the commit hash will change and the new commits can be found in the merge message at the bottom of the master pull request.
- In the pull request description, link to the original pull request to `master`.
The pull request title should include `[YY.MM]` matching the release you're backporting to.
- When the backport pull request is merged and you have the necessary privileges you can also replace the label `9.needs: port to stable` with `8.has: port to stable` on the original pull request.
This way maintainers can keep track of missing backports easier.
## How to review pull requests
[pr-review]: #how-to-review-pull-requests
> [!Warning]
> The following section is a draft, and the policy for reviewing is still being discussed in issues such as [#11166](https://github.com/NixOS/nixpkgs/issues/11166) and [#20836](https://github.com/NixOS/nixpkgs/issues/20836).
The Nixpkgs project receives a fairly high number of contributions via GitHub pull requests. Reviewing and approving these is an important task and a way to contribute to the project.
The high change rate of Nixpkgs makes any pull request that remains open for too long subject to conflicts that will require extra work from the submitter or the merger. Reviewing pull requests in a timely manner and being responsive to the comments is the key to avoid this issue. GitHub provides sort filters that can be used to see the [most recently](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+sort%3Aupdated-desc) and the [least recently](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+sort%3Aupdated-asc) updated pull requests. We highly encourage looking at [this list of ready to merge, unreviewed pull requests](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+review%3Anone+status%3Asuccess+-label%3A%222.status%3A+work-in-progress%22+no%3Aproject+no%3Aassignee+no%3Amilestone).
When reviewing a pull request, please always be nice and polite. Controversial changes can lead to controversial opinions, but it is important to respect every community member and their work.
GitHub provides reactions as a simple and quick way to provide feedback to pull requests or any comments. The thumb-down reaction should be used with care and if possible accompanied with some explanation so the submitter has directions to improve their contribution.
When doing a review:
- Aim to drive the proposal to a timely conclusion.
- Focus on the proposed changes to keep the scope of the discussion narrow.
- Help the contributor prioritise their efforts towards getting their change merged.
If you find anything related that could be improved but is not immediately required for acceptance, consider
- Implementing the changes yourself in a follow-up pull request (and request review from the person who inspired you)
- Tracking your idea in an issue
- Offering the original contributor to review a follow-up pull request
- Making concrete [suggestions](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/incorporating-feedback-in-your-pull-request) in the same pull request.
For example, follow-up changes could involve refactoring code in the affected files.
But please remember not to make such additional considerations a blocker, and communicate that to the contributor, for example by following the [conventional comments](https://conventionalcomments.org/) pattern.
If the related change is essential for the contribution at hand, make clear why you think it is important to address that first.
Pull request reviews should include a list of what has been reviewed in a comment, so other reviewers and mergers can know the state of the review.
All the review template samples provided in this section are generic and meant as examples. Their usage is optional and the reviewer is free to adapt them to their liking.
To get more information about how to review specific parts of Nixpkgs, refer to the documents linked to in the [overview section][overview].
If a pull request contains documentation changes that might require feedback from the documentation team, ping [@NixOS/documentation-team](https://github.com/orgs/nixos/teams/documentation-team) on the pull request.
If you consider having enough knowledge and experience in a topic and would like to be a long-term reviewer for related submissions, please contact the current reviewers for that topic. They will give you information about the reviewing process. The main reviewers for a topic can be hard to find as there is no list, but checking past pull requests to see who reviewed or git-blaming the code to see who committed to that topic can give some hints.
Container system, boot system and library changes are some examples of the pull requests fitting this category.
## How to merge pull requests yourself
[pr-merge]: #how-to-merge-pull-requests
To streamline automated updates, leverage the nixpkgs-merge-bot by simply commenting `@NixOS/nixpkgs-merge-bot merge`. The bot will verify if the following conditions are met, refusing to merge otherwise:
- the PR author should be @r-ryantm;
- the commenter that issued the command should be among the package maintainers;
- the package should reside in `pkgs/by-name`.
Further, nixpkgs-merge-bot will ensure all ofBorg checks (except the Darwin-related ones) are successfully completed before merging the pull request. Should the checks still be underway, the bot patiently waits for ofBorg to finish before attempting the merge again.
For other pull requests, please see [I opened a PR, how do I get it merged?](#i-opened-a-pr-how-do-i-get-it-merged).
In case the PR is stuck waiting for the original author to apply a trivial
change (a typo, capitalisation change, etc.) and the author allowed the members
to modify the PR, consider applying it yourself (or commit the existing review
suggestion). You should pay extra attention to make sure the addition doesn't go
against the idea of the original PR and would not be opposed by the author.
<!--
The following paragraphs about how to deal with unactive contributors is just a proposition and should be modified to what the community agrees to be the right policy.
Please note that contributors with commit rights unactive for more than three months will have their commit rights revoked.
-->
Please see the discussion in [GitHub nixpkgs issue #321665](https://github.com/NixOS/nixpkgs/issues/321665) for information on how to proceed to be granted this level of access.
In a case a contributor definitively leaves the Nix community, they should create an issue or post on [Discourse](https://discourse.nixos.org) with references of packages and modules they maintain so the maintainership can be taken over by other contributors.
# Flow of merged pull requests
After a pull request is merged, it eventually makes it to the [official Hydra CI](https://hydra.nixos.org/).
Hydra regularly evaluates and builds Nixpkgs, updating [the official channels](https://channels.nixos.org/) when specific Hydra jobs succeeded.
See [Nix Channel Status](https://status.nixos.org/) for the current channels and their state.
Here's a brief overview of the main Git branches and what channels they're used for:
- `master`: The main branch, used for the unstable channels such as `nixpkgs-unstable`, `nixos-unstable` and `nixos-unstable-small`.
- `release-YY.MM` (e.g. `release-25.05`): The NixOS release branches, used for the stable channels such as `nixos-25.05`, `nixos-25.05-small` and `nixpkgs-25.05-darwin`.
When a channel is updated, a corresponding Git branch is also updated to point to the corresponding commit.
So e.g. the [`nixpkgs-unstable` branch](https://github.com/nixos/nixpkgs/tree/nixpkgs-unstable) corresponds to the Git commit from the [`nixpkgs-unstable` channel](https://channels.nixos.org/nixpkgs-unstable).
Nixpkgs in its entirety is tied to the NixOS release process, which is documented in the [NixOS Release Wiki](https://nixos.github.io/release-wiki/).
See [this section][branch] to know when to use the release branches.
## Staging
[staging]: #staging
The staging workflow exists to batch Hydra builds of many packages together.
It is coordinated in the [Staging room](https://matrix.to/#/#staging:nixos.org) on Matrix.
It works by directing commits that cause [mass rebuilds][mass-rebuild] to a separate `staging` branch that isn't directly built by Hydra.
Regularly, the `staging` branch is _manually_ merged into a `staging-next` branch to be built by Hydra using the [`nixpkgs:staging-next` jobset](https://hydra.nixos.org/jobset/nixpkgs/staging-next).
The `staging-next` branch should then only receive changes that fix Hydra builds;
**for anything else, ask the [Staging room](https://matrix.to/#/#staging:nixos.org) first**.
Once it is verified that there are no major regressions, it is merged into `master` using [a pull request](https://github.com/NixOS/nixpkgs/pulls?q=head%3Astaging-next).
This is done manually in order to ensure it's a good use of Hydra's computing resources.
By keeping the `staging-next` branch separate from `staging`, this batching does not block developers from merging changes into `staging`.
In order for the `staging` and `staging-next` branches to be up-to-date with the latest commits on `master`, there are regular _automated_ merges from `master` into `staging-next` and `staging`.
This is implemented using GitHub workflows [here](.github/workflows/periodic-merge-6h.yml) and [here](.github/workflows/periodic-merge-24h.yml).
> [!Note]
> Changes must be sufficiently tested before being merged into any branch.
> Hydra builds should not be used as testing platform.
Here is a Git history diagram showing the flow of commits between the three branches:
```mermaid
%%{init: {
'theme': 'base',
'themeVariables': {
'gitInv0': '#ff0000',
'gitInv1': '#ff0000',
'git2': '#ff4444',
'commitLabelFontSize': '15px'
},
'gitGraph': {
'showCommitLabel':true,
'mainBranchName': 'master',
'rotateCommitLabel': true
}
} }%%
gitGraph
commit id:" "
branch staging
commit id:" "
branch staging-next
merge master id:"automatic"
checkout staging
merge staging-next id:"automatic "
checkout staging-next
merge staging type:HIGHLIGHT id:"manual"
commit id:"fixup"
checkout master
checkout staging
checkout master
commit id:" "
checkout staging-next
merge master id:"automatic "
checkout staging
merge staging-next id:"automatic "
checkout staging-next
commit id:"fixup "
checkout master
merge staging-next type:HIGHLIGHT id:"manual (PR)"
```
Here's an overview of the different branches:
| branch | `master` | `staging-next` | `staging` |
| --- | --- | --- | --- |
| Used for development | ✔️ | ❌ | ✔️ |
| Built by Hydra | ✔️ | ✔️ | ❌ |
| [Mass rebuilds][mass-rebuild] | ❌ | ⚠️ Only to fix Hydra builds | ✔️ |
| Critical security fixes | ✔️ for non-mass-rebuilds | ✔️ for mass-rebuilds | ❌ |
| Automatically merged into | `staging-next` | `staging` | - |
| Manually merged into | - | `master` | `staging-next` |
The staging workflow is used for all main branches, `master` and `release-YY.MM`, with corresponding names:
- `master`/`release-YY.MM`
- `staging`/`staging-YY.MM`
- `staging-next`/`staging-next-YY.MM`
# Conventions
## Branch conventions
<!-- This section is relevant to both contributors and reviewers -->
[branch]: #branch-conventions
Most changes should go to the `master` branch, but sometimes other branches should be used instead.
Use the following decision process to figure out which one it should be:
Is the change [acceptable for releases][release-acceptable] and do you wish to have the change in the release?
- No: Use the `master` branch, do not backport the pull request.
- Yes: Can the change be implemented the same way on the `master` and release branches?
For example, a packages major version might differ between the `master` and release branches, such that separate security patches are required.
- Yes: Use the `master` branch and [backport the pull request](#how-to-backport-pull-requests).
- No: Create separate pull requests to the `master` and `release-XX.YY` branches.
Furthermore, if the change causes a [mass rebuild][mass-rebuild], use the appropriate staging branch instead:
- Mass rebuilds to `master` should go to `staging` instead.
- Mass rebuilds to `release-XX.YY` should go to `staging-XX.YY` instead.
See [this section][staging] for more details about such changes propagate between the branches.
### Changes acceptable for releases
[release-acceptable]: #changes-acceptable-for-releases
Only changes to supported releases may be accepted.
The oldest supported release (`YYMM`) can be found using
```
nix-instantiate --eval -A lib.trivial.oldestSupportedRelease
```
The release branches should generally only receive backwards-compatible changes, both for the Nix expressions and derivations.
Here are some examples of backwards-compatible changes that are okay to backport:
- ✔️ New packages, modules and functions
- ✔️ Security fixes
- ✔️ Package version updates
- ✔️ Patch versions with fixes
- ✔️ Minor versions with new functionality, but no breaking changes
In addition, major package version updates with breaking changes are also acceptable for:
- ✔️ Services that would fail without up-to-date client software, such as `spotify`, `steam`, and `discord`
- ✔️ Security critical applications, such as `firefox` and `chromium`
### Changes causing mass rebuilds
[mass-rebuild]: #changes-causing-mass-rebuilds
Which changes cause mass rebuilds is not formally defined.
In order to help the decision, CI automatically assigns [`rebuild` labels](https://github.com/NixOS/nixpkgs/labels?q=rebuild) to pull requests based on the number of packages they cause rebuilds for.
As a rule of thumb, if the number of rebuilds is **over 500**, it can be considered a mass rebuild.
To get a sense for what changes are considered mass rebuilds, see [previously merged pull requests to the staging branches](https://github.com/NixOS/nixpkgs/issues?q=base%3Astaging+-base%3Astaging-next+is%3Amerged).
## Commit conventions
[commit-conventions]: #commit-conventions
- Create a commit for each logical unit.
- Check for unnecessary whitespace with `git diff --check` before committing.
- If you have commits `pkg-name: oh, forgot to insert whitespace`: squash commits in this case. Use `git rebase -i`.
See [Squashing Commits](https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History#_squashing) for additional information.
- For consistency, there should not be a period at the end of the commit message's summary line (the first line of the commit message).
- When adding yourself as maintainer in the same pull request, make a separate
commit with the message `maintainers: add <handle>`.
Add the commit before those making changes to the package or module.
See [Nixpkgs Maintainers](./maintainers/README.md) for details.
- Make sure you read about any commit conventions specific to the area you're touching. See:
- [Commit conventions](./pkgs/README.md#commit-conventions) for changes to `pkgs`.
- [Commit conventions](./lib/README.md#commit-conventions) for changes to `lib`.
- [Commit conventions](./nixos/README.md#commit-conventions) for changes to `nixos`.
- [Commit conventions](./doc/README.md#commit-conventions) for changes to `doc`, the Nixpkgs manual.
### Writing good commit messages
[writing-good-commit-messages]: #writing-good-commit-messages
In addition to writing properly formatted commit messages, it's important to include relevant information so other developers can later understand *why* a change was made. While this information usually can be found by digging code, mailing list/Discourse archives, pull request discussions or upstream changes, it may require a lot of work.
Package version upgrades usually allow for simpler commit messages, including attribute name, old and new version, as well as a reference to the relevant release notes/changelog. Every once in a while a package upgrade requires more extensive changes, and that subsequently warrants a more verbose message.
Pull requests should not be squash merged in order to keep complete commit messages and GPG signatures intact and must not be when the change doesn't make sense as a single commit.
## Code conventions
[code-conventions]: #code-conventions
### Release notes
If you removed packages or made some major NixOS changes, write about it in the release notes for the next stable release in [`nixos/doc/manual/release-notes`](./nixos/doc/manual/release-notes).
### File naming and organisation
Names of files and directories should be in lowercase, with dashes between words — not in camel case. For instance, it should be `all-packages.nix`, not `allPackages.nix` or `AllPackages.nix`.
### Syntax
- Set up [editorconfig](https://editorconfig.org/) for your editor, such that [the settings](./.editorconfig) are automatically applied.
- Use `lowerCamelCase` for variable names, not `UpperCamelCase`. Note, this rule does not apply to package attribute names, which instead follow the rules in [package naming](./pkgs/README.md#package-naming).
- New files must be formatted by entering the `nix-shell` from the repository root and running `nixfmt`.
- Functions should list their expected arguments as precisely as possible. That is, write
```nix
{ stdenv, fetchurl, perl }: <...>
```
instead of
```nix
args: with args; <...>
```
or
```nix
{ stdenv, fetchurl, perl, ... }: <...>
```
For functions that are truly generic in the number of arguments (such as wrappers around `mkDerivation`) that have some required arguments, you should write them using an `@`-pattern:
```nix
{ stdenv, doCoverageAnalysis ? false, ... } @ args:
stdenv.mkDerivation (args // {
foo = if doCoverageAnalysis then "bla" else "";
})
```
instead of
```nix
args:
args.stdenv.mkDerivation (args // {
foo = if args ? doCoverageAnalysis && args.doCoverageAnalysis then "bla" else "";
})
```
- Unnecessary string conversions should be avoided. Do
```nix
{
rev = version;
}
```
instead of
```nix
{
rev = "${version}";
}
```
- Building lists conditionally _should_ be done with `lib.optional(s)` instead of using `if cond then [ ... ] else null` or `if cond then [ ... ] else [ ]`.
```nix
{
buildInputs = lib.optional stdenv.hostPlatform.isDarwin iconv;
}
```
instead of
```nix
{
buildInputs = if stdenv.hostPlatform.isDarwin then [ iconv ] else null;
}
```
As an exception, an explicit conditional expression with null can be used when fixing a important bug without triggering a mass rebuild.
If this is done a follow up pull request _should_ be created to change the code to `lib.optional(s)`.
# Practical contributing advice
To contribute effectively and efficiently, you need to be aware of how the contributing process generally works.
This section aims to document the process as we live it in Nixpkgs to set expectations right and give practical tips on how to work with it.
## I opened a PR, how do I get it merged?
[i-opened-a-pr-how-do-i-get-it-merged]:#i-opened-a-pr-how-do-i-get-it-merged
In order for your PR to be merged, someone with merge permissions on the repository ("committer") needs to review and merge it.
Because the group of people with merge permissions is mostly a collection of independent unpaid volunteers who do this in their own free time, this can take some time to happen.
It is entirely normal for your PR to sit around without any feedback for days, weeks or sometimes even months.
We strive to avoid the latter cases of course but the reality of it is that this does happen quite frequently.
Even when you get feedback, follow-up feedback may take similarly long.
Don't be intimidated by this and kindly ask for feedback again every so often.
If your change is good it will eventually be merged at some point.
There are some things you can do to help speed up the process of your PR being merged though.
In order to speed the process up, you need to know what needs to happen before a committer will actually hit the merge button.
This section intends to give a little overview and insight of what happens after you create your PR.
### The committer's perspective
PRs have varying quality and even the best people make mistakes.
It is the role of the committer team to assess whether any PR's changes are good changes or not.
In order for any PR to be merged, at least one committer needs to be convinced of its quality enough to merge it.
Committers typically assess three aspects of your PR:
1. Whether the change's intention is necessary and desirable
2. Whether the code quality of your changes is good
3. Whether the artefacts produced by the code are good
If you want your PR to get merged quickly and smoothly, it is in your best interest to help convince committers in these three aspects.
### How to help committers assess your PR
For the committer to judge your intention, it's best to explain why you've made your change.
This does not apply to trivial changes like version updates because the intention is obvious (though linking the changelog is appreciated).
For any more nuanced changed or even major version upgrades, it helps if you explain the background behind your change a bit.
E.g. if you're adding a package, explain what it is and why it should be in Nixpkgs.
This goes hand in hand with [Writing good commit messages](#writing-good-commit-messages).
For the code quality assessment, you cannot do anything yourself as only the committer can do this and they already have your code to look at.
In order to minimise the need for back and forth though, do take a look over your code changes yourself and try to put yourself into the shoes of someone who didn't just write that code.
Would you immediately know what the code does or why it is needed by glancing at it?
If not, reviewers will notice this and will ask you to clarify the code by refactoring it and/or adding a few explanations in code comments.
Doing this preemptively can save you and the committer a lot of time.
To better convey the "story" of your change, consider dividing your change into multiple atomic commits.
There is a balance to strike however: over-fragmentation causes friction.
The code artefacts are the hardest for committers to assess because PRs touch all sorts of components: applications, libraries, NixOS modules, editor plugins and many many other things.
Any individual committer can only really assess components that they themselves know how to use however and yet they must still be convinced somehow.
There isn't a good generic solution to this but there are some ways easing the committer's job here:
- Provide smoke tests that the committer can run without much research or setup.
Committers usually don't have the time or interest to learn how your component works and how they could test its functionality.
If you can provide a quick guide on how to use the component in a meaningful way or a ready-made command that demonstrates that the component works as expected, the committer can easily convince themselves that your change is good.
If it can be automated, you could even turn this smoke test into an automated NixOS test which reviewers could simply run via Nix.
- Invite other users of the component to try it out and report their findings.
If a committer sees the testimonials of other users trying your change and it works as expected for them, that too can convince the committer of your PR's quality.
- Describe what you have done to test your PR.
If you can convince the committer that you have done sufficient quality assurance on your changes and they trust your report, this too can convince them of your PR's quality, albeit not as strongly as the methods above.
- Become a maintainer of the component.
This isn't something you can do on your first few PRs touching a component but listed maintainers generally receive more trust when it comes to changes to their maintained components and committers may opt to merge changes without deeper review when they see they're done by their respective maintainer.
Even if you adhere to all of these recommendations, it is still quite possible for your PR to be forgotten or abandoned by any given committer.
Please remain mindful of the fact that they are doing this on their own volition and unpaid in their free time and therefore [owe you nothing](https://mikemcquaid.com/open-source-maintainers-owe-you-nothing/).
Causing a stink in such a situation is a surefire way to get any other potential committer to not want to look at your PR either.
Ask them nicely whether they still intend to review your PR and find yourself another committer to look at your PR if not.
### How can I get a committer to look at my PR?
- Improve skimmability: use a simple descriptive PR title (details go in commit titles) outlining _what_ is done and _why_.
- Improve discoverability: apply all relevant labels, tick all relevant PR body checkboxes.
- Wait. Reviewers frequently browse open PRs and may happen to run across yours and take a look.
- Get non-committers to review/approve. Many committers filter open PRs for low-hanging fruit that are already been reviewed.
- [@-mention](https://github.blog/news-insights/mention-somebody-they-re-notified/) someone and ask them nicely
- Post in one of the channels made for this purpose if there has been no activity for at least one week
- The current "PRs ready for review" or "PRs already reviewed" threads in the [NixOS Discourse](https://discourse.nixos.org/c/dev/14) (of course choose the one that applies to your situation)
- The [Nixpkgs Review Requests Matrix room](https://matrix.to/#/#review-requests:nixos.org).
### CI failed or got stuck on my PR, what do I do?
First ensure that the failure is actually related to your change.
Sometimes, the CI system simply has a hiccup or the check was broken by someone else before you made your changes.
Read through the error message; it's usually quite easy to tell whether it is caused by anything you did by checking whether it mentions the component you touched anywhere.
If it is indeed caused by your change, obviously try to fix it.
Don't be afraid of asking for advice if you're uncertain how to do that, others have likely fixed such issues dozens of times and can help you out.
Your PR is unlikely to be merged if it has a known issue and it is the purpose of CI to alert you aswell as reviewers to these issues.
ofBorg builds can often get stuck, particularly in PRs targeting `staging` and in builders for the Darwin platform. Reviewers will know how to handle them or when to ignore them.
Don't worry about it.
If there is a build failure however and it happened due to a package related to your change, you need to investigate it of course.
If ofBorg reveals the build to be broken on some platform and you don't have access to that platform, you should set your package's `meta.broken` accordingly.
When in any doubt, please ask via a comment in your PR or through one of the help channels.
## I received a review on my PR, how do I get it over the finish line?
In the review process, the committer will have left some sort of feedback on your PR.
They may have immediately approved of your PR or even merged it but the more likely case is that they want you to change a few things or that they require further input.
A reviewer may have taken a look at the code and it looked good to them ("Diff LGTM") but they still need to be convinced of the artefact's quality.
They might also be waiting on input from other users of the component or its listed maintainer on whether the intention of your PR makes sense for the component.
If you know of people who could help clarify any of this, please bring the PR to their attention.
The current state of the PR is frequently not clearly communicated, so please don't hesitate to ask about it if it's unclear to you.
It's also possible for the reviewer to not be convinced that your PR is necessary or that the method you've chose to achieve your intention is the right one.
Please explain your intentions and reasoning to the committer in such a case.
There may be constraints you had to work with which they're not aware of or qualities of your approach that they didn't immediately notice.
(If these weren't clear to the reviewer, that's a good sign you should explain them in your commit message or code comments!)
There are some further pitfalls and realities which this section intends to make you aware of.
### Aim to reduce cycles
Please be prepared for it to take a while before the reviewer gets back to you after you respond.
This is simply the reality of community projects at the scale of Nixpkgs.
As such, make sure to respond to _all_ feedback, either by applying suggested changes or argue in favor of something else or no change.
It wastes everyone time waiting for a couple of days just for the reviewer to remind you to address something they asked for.
### A reviewer requested a bunch of insubstantial changes on my PR
The people involved in Nixpkgs care about code quality because, once in Nixpkgs, it needs to be maintained for many years to come.
It is therefore likely that other people will ask you to do some things in another way or adhere to some standard.
Sometimes however, they also care a bit too much and may ask you to adhere to a personal preference of theirs.
It's not always easy to tell which is which and whether the requests are critically important to merging the PR.
Sometimes another reviewer may also come along with totally different opinions on some points too.
It is convention to mark review comments that are not critical to the PR as nitpicks but this is not always followed.
As the PR author, you should still take a look at these as they will often reveal best practices and unwritten rules that usually have good reasons behind them and you may want to incorporate them into your modus operandi.
Please keep in mind that reviewers almost always mean well here.
Their intent is not to denounce your code, they want your code to be as good as it can be.
Through their experience, they may also take notice of a seemingly insignificant issues that have caused significant burden before.
Sometimes however, they can also get a bit carried away and become too perfectionistic.
If you feel some of the requests are unreasonable, out of scope, or merely a matter of personal preference, try to nicely remind the reviewers that you may not intend this code to be 100% perfect or that you have different taste in some regards and press them on whether they think that these requests are *critical* to the PR's success.
While we do have a set of [official standards for the Nix community](https://github.com/NixOS/rfcs/), we don't have standards for everything and there are often multiple valid ways to achieve the same goal.
Unless there are standards forbidding the patterns used in your code or there are serious technical, maintainability or readability issues with your code, you can insist to keep the code the way you made it and disregard the requests.
Please communicate this clearly though; a simple "I prefer it this way and see no major issue with it" can save you a lot of arguing.
If you are unsure about some change requests, please ask reviewers *why* they requested them.
This will usually reveal how important they deem it to be and will help educate you about standards, best practices, unwritten rules aswell as preferences people have and why.
Some committers may have stronger opinions on some things and therefore (understandably) may not want to merge your PR if you don't follow their requests.
It is totally fine to get yourself a second or third opinion in such a case.
### Committers work on a push-basis
It's possible for you to get a review but nothing happens afterwards, even if you reply to review comments.
A committer not following up on your PR does not necessarily mean they're disinterested or unresponsive, they may have simply forgotten to follow up on it or had some other circumstances preventing them from doing so.
Committers typically handle many other PRs besides yours and it is not realistic for them to keep up with all of them to a degree where they could reasonably remember to follow up on all PRs that they had intended following up upon.
If someone left an approving review on your PR and didn't merge a few days later, the most likely case is that they simply forgot.
Please see it as your responsibility to actively remind reviewers of your open PRs.
The easiest way to do so is to cause them a Github notification.
Github notifies people involved in the PR whenever you add a comment to your PR, push your PR or re-request their review.
Doing any of that will get you people's attention again.
Everyone deserves proper attention, and yes that includes you!
However please be mindful that committers can sadly not always give everyone the attention they deserve.
It may very well be the case that you have to do this every time you need the committer to follow up upon your PR.
Again, this is a community project so please be mindful of people's circumstances here; be nice when requesting reviews again.
It may also be the case that the committer has lost interest or isn't familiar enough with the component you're touching to be comfortable merging your PR.
They will likely not immediately state that fact however, so please ask for clarification and don't hesitate to find yourself another committer to take a look at your PR.
### Nothing helped
If you followed these guidelines but still got no results or if you feel that you have been wronged in some way, please explicitly reach out to the greater community via its communication channels.
The [NixOS Discourse](https://discourse.nixos.org/) is a great place to do this as it has historically been the asynchronous medium with the greatest concentration of committers and other people who are significantly involved in Nixpkgs.
There is a dedicated discourse thread [PRs in distress](https://discourse.nixos.org/t/prs-in-distress/3604) where you can link your PR if everything else fails.
The [Nixpkgs / NixOS contributions Matrix channel](https://matrix.to/#/#dev:nixos.org) is the best synchronous channel with the same qualities.
Please reserve these for cases where you've made a serious effort in trying to get the attention of multiple active committers and provided realistic means for them to assess your PR's quality though.
As mentioned previously, it is unfortunately perfectly normal for a PR to sit around for weeks on end due to the realities of this being a community project.
Please don't blow up situations where progress is happening but is merely not going fast enough for your tastes.
Honking in a traffic jam will not make you go any faster.

View File

@@ -1,4 +1,4 @@
Copyright (c) 2003-2025 Eelco Dolstra and the Nixpkgs/NixOS contributors
Copyright (c) 2003-2020 Eelco Dolstra and the Nixpkgs/NixOS contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the

View File

@@ -1,20 +1,14 @@
<p align="center">
<a href="https://nixos.org">
<picture>
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png">
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/NixOS/nixos-artwork/master/logo/nixos-white.png">
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/main/public/logo/nixos-hires.png" width="500px" alt="NixOS logo">
</picture>
</a>
<a href="https://nixos.org/nixos"><img src="https://nixos.org/logo/nixos-hires.png" width="500px" alt="NixOS logo" /></a>
</p>
<p align="center">
<a href="CONTRIBUTING.md"><img src="https://img.shields.io/github/contributors-anon/NixOS/nixpkgs" alt="Contributors badge" /></a>
<a href="https://opencollective.com/nixos"><img src="https://opencollective.com/nixos/tiers/supporter/badge.svg?label=supporters&color=brightgreen" alt="Open Collective supporters" /></a>
<a href="https://www.codetriage.com/nixos/nixpkgs"><img src="https://www.codetriage.com/nixos/nixpkgs/badges/users.svg" alt="Code Triagers badge" /></a>
<a href="https://opencollective.com/nixos"><img src="https://opencollective.com/nixos/tiers/supporter/badge.svg?label=Supporter&color=brightgreen" alt="Open Collective supporters" /></a>
</p>
[Nixpkgs](https://github.com/nixos/nixpkgs) is a collection of over
100,000 software packages that can be installed with the
40,000 software packages that can be installed with the
[Nix](https://nixos.org/nix/) package manager. It also implements
[NixOS](https://nixos.org/nixos/), a purely-functional Linux distribution.
@@ -27,10 +21,9 @@
# Community
* [Discourse Forum](https://discourse.nixos.org/)
* [Matrix Chat](https://matrix.to/#/#community:nixos.org)
* [IRC - #nixos on freenode.net](irc://irc.freenode.net/#nixos)
* [NixOS Weekly](https://weekly.nixos.org/)
* [Official wiki](https://wiki.nixos.org/)
* [Community-maintained list of ways to get in touch](https://wiki.nixos.org/wiki/Get_In_Touch#Chat) (Discord, Telegram, IRC, etc.)
* [Community-maintained wiki](https://nixos.wiki/)
# Other Project Repositories
@@ -40,7 +33,6 @@ the main ones:
* [Nix](https://github.com/NixOS/nix) - the purely functional package manager
* [NixOps](https://github.com/NixOS/nixops) - the tool to remotely deploy NixOS machines
* [nixos-hardware](https://github.com/NixOS/nixos-hardware) - NixOS profiles to optimize settings for different hardware
* [Nix RFCs](https://github.com/NixOS/rfcs) - the formal process for making substantial changes to the community
* [NixOS homepage](https://github.com/NixOS/nixos-homepage) - the [NixOS.org](https://nixos.org) website
* [hydra](https://github.com/NixOS/hydra) - our continuous integration system
@@ -52,29 +44,48 @@ Nixpkgs and NixOS are built and tested by our continuous integration
system, [Hydra](https://hydra.nixos.org/).
* [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined)
* [Continuous package builds for the NixOS 24.11 release](https://hydra.nixos.org/jobset/nixos/release-24.11)
* [Continuous package builds for the NixOS 20.03 release](https://hydra.nixos.org/jobset/nixos/release-20.03)
* [Tests for unstable/master](https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents)
* [Tests for the NixOS 24.11 release](https://hydra.nixos.org/job/nixos/release-24.11/tested#tabs-constituents)
* [Tests for the NixOS 20.03 release](https://hydra.nixos.org/job/nixos/release-20.03/tested#tabs-constituents)
Artifacts successfully built with Hydra are published to cache at
https://cache.nixos.org/. When successful build and test criteria are
met, the Nixpkgs expressions are distributed via [Nix
channels](https://nix.dev/manual/nix/stable/command-ref/nix-channel.html).
channels](https://nixos.org/nix/manual/#sec-channels).
# Contributing
Nixpkgs is among the most active projects on GitHub. While thousands
of open issues and pull requests might seem a lot at first, it helps
consider it in the context of the scope of the project. Nixpkgs
describes how to build tens of thousands of pieces of software and implements a
describes how to build over 40,000 pieces of software and implements a
Linux distribution. The [GitHub Insights](https://github.com/NixOS/nixpkgs/pulse)
page gives a sense of the project activity.
Community contributions are always welcome through GitHub Issues and
Pull Requests.
Pull Requests. When pull requests are made, our tooling automation bot,
[OfBorg](https://github.com/NixOS/ofborg) will perform various checks
to help ensure expression quality.
The *Nixpkgs maintainers* are people who have assigned themselves to
maintain specific individual packages. We encourage people who care
about a package to assign themselves as a maintainer. When a pull
request is made against a package, OfBorg will notify the appropriate
maintainer(s). The *Nixpkgs committers* are people who have been given
permission to merge.
Most contributions are based on and merged into these branches:
* `master` is the main branch where all small contributions go
* `staging` is branched from master, changes that have a big impact on
Hydra builds go to this branch
* `staging-next` is branched from staging and only fixes to stabilize
and security fixes with a big impact on Hydra builds should be
contributed to this branch. This branch is merged into master when
deemed of sufficiently high quality
For more information about contributing to the project, please visit
the [contributing page](CONTRIBUTING.md).
the [contributing page](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).
# Donations
@@ -84,8 +95,7 @@ Foundation](https://nixos.org/nixos/foundation.html). To ensure the
continuity and expansion of the NixOS infrastructure, we are looking
for donations to our organization.
You can donate to the NixOS foundation through [SEPA bank
transfers](https://nixos.org/donate.html) or by using Open Collective:
You can donate to the NixOS foundation by using Open Collective:
<a href="https://opencollective.com/nixos#support"><img src="https://opencollective.com/nixos/tiers/supporter.svg?width=890" /></a>

444
ci/OWNERS
View File

@@ -1,444 +0,0 @@
# This file is used to describe who owns what in this repository.
# Users/teams will get review requests for PRs that change their files.
#
# This file does not replace `meta.maintainers`
# but is instead used for other things than derivations and modules,
# like documentation, package sets, and other assets.
#
# This file uses the same syntax as the natively supported CODEOWNERS file,
# see https://help.github.com/articles/about-codeowners/ for documentation.
# However it comes with some notable differences:
# - There is no need for user/team listed here to have write access.
# - No reviews will be requested for PRs that target the wrong base branch.
#
# Processing of this file is implemented in workflows/codeowners-v2.yml
# CI
/.github/*_TEMPLATE* @SigmaSquadron
/.github/workflows @NixOS/Security @Mic92 @zowoq @infinisil @azuwis @wolfgangwalther
/.github/workflows/check-nix-format.yml @infinisil @wolfgangwalther
/.github/workflows/codeowners-v2.yml @infinisil @wolfgangwalther
/.github/workflows/nixpkgs-vet.yml @infinisil @philiptaron @wolfgangwalther
/ci @infinisil @philiptaron @NixOS/Security @wolfgangwalther
/ci/OWNERS @infinisil @philiptaron
# Development support
/.editorconfig @Mic92 @zowoq
/shell.nix @infinisil @NixOS/Security
# Libraries
/lib @infinisil
/lib/systems @alyssais @ericson2314 @NixOS/stdenv
/lib/generators.nix @infinisil @Profpatsch
/lib/cli.nix @infinisil @Profpatsch
/lib/debug.nix @infinisil @Profpatsch
/lib/asserts.nix @infinisil @Profpatsch
/lib/path/* @infinisil
/lib/fileset @infinisil
## Libraries / Module system
/lib/modules.nix @infinisil @roberth
/lib/types.nix @infinisil @roberth
/lib/options.nix @infinisil @roberth
/lib/tests/modules.sh @infinisil @roberth
/lib/tests/modules @infinisil @roberth
# Nixpkgs Internals
/default.nix @Ericson2314
/pkgs/top-level/default.nix @Ericson2314
/pkgs/top-level/impure.nix @Ericson2314
/pkgs/top-level/stage.nix @Ericson2314
/pkgs/top-level/splice.nix @Ericson2314
/pkgs/top-level/release-cross.nix @Ericson2314
/pkgs/top-level/by-name-overlay.nix @infinisil @philiptaron
/pkgs/stdenv @philiptaron @NixOS/stdenv
/pkgs/stdenv/generic @Ericson2314 @NixOS/stdenv
/pkgs/stdenv/generic/check-meta.nix @Ericson2314 @NixOS/stdenv
/pkgs/stdenv/cross @Ericson2314 @NixOS/stdenv
/pkgs/build-support @philiptaron
/pkgs/build-support/cc-wrapper @Ericson2314
/pkgs/build-support/bintools-wrapper @Ericson2314
/pkgs/build-support/setup-hooks @Ericson2314
/pkgs/build-support/setup-hooks/auto-patchelf.sh @layus
/pkgs/by-name/au/auto-patchelf @layus
## Format generators/serializers
/pkgs/pkgs-lib @Stunkymonkey @h7x4
# Nixpkgs build-support
/pkgs/build-support/writers @lassulus @Profpatsch
# Nixpkgs make-disk-image
/doc/build-helpers/images/makediskimage.section.md @raitobezarius
/nixos/lib/make-disk-image.nix @raitobezarius
# Nix, the package manager
# @raitobezarius is not "code owner", but is listed here to be notified of changes
# pertaining to the Nix package manager.
# i.e. no authority over those files.
pkgs/tools/package-management/nix/ @NixOS/nix-team @raitobezarius
nixos/modules/installer/tools/nix-fallback-paths.nix @NixOS/nix-team @raitobezarius
# Nixpkgs documentation
/maintainers/scripts/db-to-md.sh @jtojnar @ryantm
/maintainers/scripts/doc @jtojnar @ryantm
# Contributor documentation
/CONTRIBUTING.md @infinisil
/.github/PULL_REQUEST_TEMPLATE.md @infinisil
/doc/contributing/ @infinisil
/doc/contributing/contributing-to-documentation.chapter.md @jtojnar @infinisil
/lib/README.md @infinisil
/doc/README.md @infinisil
/nixos/README.md @infinisil
/pkgs/README.md @infinisil
/pkgs/by-name/README.md @infinisil
/maintainers/README.md @infinisil
# User-facing development documentation
/doc/development.md @infinisil
/doc/development @infinisil
# NixOS Internals
/nixos/default.nix @infinisil
/nixos/lib/from-env.nix @infinisil
/nixos/lib/eval-config.nix @infinisil
/nixos/modules/misc/ids.nix @R-VdP
/nixos/modules/system/activation/bootspec.nix @grahamc @cole-h @raitobezarius
/nixos/modules/system/activation/bootspec.cue @grahamc @cole-h @raitobezarius
# NixOS Render Docs
/pkgs/by-name/ni/nixos-render-docs @fricklerhandwerk @GetPsyched @hsjobeki
/doc/redirects.json @fricklerhandwerk @GetPsyched @hsjobeki
/nixos/doc/manual/redirects.json @fricklerhandwerk @GetPsyched @hsjobeki
# NixOS integration test driver
/nixos/lib/test-driver @tfc
# NixOS QEMU virtualisation
/nixos/modules/virtualisation/qemu-vm.nix @raitobezarius
# ACME
/nixos/modules/security/acme @NixOS/acme
# Systemd
/nixos/modules/system/boot/systemd.nix @NixOS/systemd
/nixos/modules/system/boot/systemd @NixOS/systemd
/nixos/lib/systemd-*.nix @NixOS/systemd
/pkgs/os-specific/linux/systemd @NixOS/systemd
# Systemd-boot
/nixos/modules/system/boot/loader/systemd-boot @JulienMalka
# Images and installer media
/nixos/modules/profiles/installation-device.nix @ElvishJerricco
/nixos/modules/installer/cd-dvd/ @ElvishJerricco
/nixos/modules/installer/sd-card/
# Amazon
/nixos/modules/virtualisation/amazon-init.nix @arianvp
/nixos/modules/virtualisation/ec2-data.nix @arianvp
/nixos/modules/virtualisation/amazon-options.nix @arianvp
/nixos/modules/virtualisation/amazon-image.nix @arianvp
/nixos/maintainers/scripts/ec2/ @arianvp
/nixos/modules/services/misc/amazon-ssm-agent.nix @arianvp
/nixos/tests/amazon-ssm-agent.nix @arianvp
/nixos/modules/system/boot/grow-partition.nix @arianvp
/nixos/modules/services/monitoring/amazon-cloudwatch-agent.nix @philipmw
/nixos/tests/amazon-cloudwatch-agent.nix @philipmw
# nixos-rebuild-ng
/pkgs/by-name/ni/nixos-rebuild-ng @thiagokokada
# Updaters
## update.nix
/maintainers/scripts/update.nix @jtojnar
/maintainers/scripts/update.py @jtojnar
## common-updater-scripts
/pkgs/common-updater/scripts/update-source-version @jtojnar
# Python-related code and docs
/doc/languages-frameworks/python.section.md @mweinelt @natsukium
/maintainers/scripts/update-python-libraries @mweinelt @natsukium
/pkgs/by-name/up/update-python-libraries @mweinelt @natsukium
/pkgs/development/interpreters/python @mweinelt @natsukium
/pkgs/top-level/python-packages.nix @natsukium
/pkgs/top-level/release-python.nix @natsukium
# Haskell
/doc/languages-frameworks/haskell.section.md @sternenseemann @maralorn
/maintainers/scripts/haskell @sternenseemann @maralorn
/pkgs/development/compilers/ghc @sternenseemann @maralorn
/pkgs/development/haskell-modules @sternenseemann @maralorn
/pkgs/test/haskell @sternenseemann @maralorn
/pkgs/top-level/release-haskell.nix @sternenseemann @maralorn
/pkgs/top-level/haskell-packages.nix @sternenseemann @maralorn
# Perl
/pkgs/development/interpreters/perl @stigtsp @zakame @marcusramberg
/pkgs/top-level/perl-packages.nix @stigtsp @zakame @marcusramberg
/pkgs/development/perl-modules @stigtsp @zakame @marcusramberg
# R
/pkgs/applications/science/math/R @jbedo
/pkgs/development/r-modules @jbedo
# Rust
/pkgs/development/compilers/rust @alyssais @Mic92 @zowoq @winterqt @figsoda
/pkgs/build-support/rust @zowoq @winterqt @figsoda
/pkgs/build-support/rust/fetch-cargo-vendor* @TomaSajt
/doc/languages-frameworks/rust.section.md @zowoq @winterqt @figsoda
# Tcl
/pkgs/development/interpreters/tcl @fgaz
/pkgs/development/libraries/tk @fgaz
/pkgs/top-level/tcl-packages.nix @fgaz
/pkgs/development/tcl-modules @fgaz
/doc/languages-frameworks/tcl.section.md @fgaz
# C compilers
/pkgs/development/compilers/gcc
/pkgs/development/compilers/llvm @alyssais @RossComputerGuy @NixOS/llvm
/pkgs/development/compilers/emscripten @raitobezarius
/doc/languages-frameworks/emscripten.section.md @raitobezarius
# Audio
/nixos/modules/services/audio/botamusique.nix @mweinelt
/nixos/modules/services/audio/snapserver.nix @mweinelt
/nixos/tests/botamusique.nix @mweinelt
/nixos/tests/snapcast.nix @mweinelt
# Browsers
/pkgs/applications/networking/browsers/firefox @mweinelt
/pkgs/applications/networking/browsers/chromium @emilylange @networkException
/nixos/tests/chromium.nix @emilylange @networkException
# Certificate Authorities
pkgs/data/misc/cacert/ @ajs124 @lukegb @mweinelt
pkgs/development/libraries/nss/ @ajs124 @lukegb @mweinelt
pkgs/development/python-modules/buildcatrust/ @ajs124 @lukegb @mweinelt
# Java
/doc/languages-frameworks/java.section.md @NixOS/java
/doc/languages-frameworks/gradle.section.md @NixOS/java
/doc/languages-frameworks/maven.section.md @NixOS/java
/nixos/modules/programs/java.nix @NixOS/java
/pkgs/top-level/java-packages.nix @NixOS/java
# Jetbrains
/pkgs/applications/editors/jetbrains @edwtjo @leona-ya @theCapypara
# Licenses
/lib/licenses.nix @alyssais
# Qt
/pkgs/development/libraries/qt-5 @K900 @NickCao @SuperSandro2000 @ttuegel
/pkgs/development/libraries/qt-6 @K900 @NickCao @SuperSandro2000 @ttuegel
# KDE / Plasma 5
/pkgs/applications/kde @K900 @NickCao @SuperSandro2000 @ttuegel
/pkgs/desktops/plasma-5 @K900 @NickCao @SuperSandro2000 @ttuegel
/pkgs/development/libraries/kde-frameworks @K900 @NickCao @SuperSandro2000 @ttuegel
# KDE / Plasma 6
/pkgs/kde @K900 @NickCao @SuperSandro2000 @ttuegel
/maintainers/scripts/kde @K900 @NickCao @SuperSandro2000 @ttuegel
# PostgreSQL and related stuff
/pkgs/by-name/ps/psqlodbc @NixOS/postgres
/pkgs/servers/sql/postgresql @NixOS/postgres
/pkgs/development/tools/rust/cargo-pgrx @NixOS/postgres
/nixos/modules/services/databases/postgresql.md @NixOS/postgres
/nixos/modules/services/databases/postgresql.nix @NixOS/postgres
/nixos/tests/postgresql @NixOS/postgres
# MySQL/MariaDB and related stuff
/nixos/modules/services/backup/mysql-backup.nix @6543
# Hardened profile & related modules
/nixos/modules/profiles/hardened.nix @joachifm
/nixos/modules/security/lock-kernel-modules.nix @joachifm
/nixos/modules/security/misc.nix @joachifm
/nixos/tests/hardened.nix @joachifm
/pkgs/os-specific/linux/kernel/hardened/ @fabianhjr @joachifm
# Home Automation
/nixos/modules/services/home-automation/home-assistant.nix @mweinelt
/nixos/modules/services/home-automation/zigbee2mqtt.nix @mweinelt
/nixos/tests/home-assistant.nix @mweinelt
/nixos/tests/zigbee2mqtt.nix @mweinelt
/pkgs/servers/home-assistant @mweinelt
/pkgs/tools/misc/esphome @mweinelt
# Network Time Daemons
/pkgs/by-name/ch/chrony @thoughtpolice
/pkgs/by-name/nt/ntp @thoughtpolice
/pkgs/by-name/op/openntpd @thoughtpolice
/nixos/modules/services/networking/ntp @thoughtpolice
# Network
/pkgs/by-name/ke/kea @mweinelt
/pkgs/by-name/ba/babeld @mweinelt
/nixos/modules/services/networking/babeld.nix @mweinelt
/nixos/modules/services/networking/kea.nix @mweinelt
/nixos/modules/services/networking/knot.nix @mweinelt
/nixos/modules/services/monitoring/prometheus/exporters/kea.nix @mweinelt
/nixos/tests/babeld.nix @mweinelt
/nixos/tests/kea.nix @mweinelt
/nixos/tests/knot.nix @mweinelt
# Web servers
/doc/packages/nginx.section.md @raitobezarius
/pkgs/servers/http/nginx/ @raitobezarius
/nixos/modules/services/web-servers/nginx/ @raitobezarius
# Dhall
/pkgs/development/dhall-modules @Gabriella439 @Profpatsch @ehmry
/pkgs/development/interpreters/dhall @Gabriella439 @Profpatsch @ehmry
# Idris
/pkgs/development/idris-modules @Infinisil
/pkgs/development/compilers/idris2 @mattpolzin
# Bazel
/pkgs/development/tools/build-managers/bazel @Profpatsch
# NixOS modules for e-mail and dns services
/nixos/modules/services/mail/mailman.nix @peti
/nixos/modules/services/mail/postfix.nix @peti
/nixos/modules/services/networking/bind.nix @peti
/nixos/modules/services/mail/rspamd.nix @peti
# Emacs
/pkgs/applications/editors/emacs/elisp-packages @NixOS/emacs
/pkgs/applications/editors/emacs @NixOS/emacs
/pkgs/top-level/emacs-packages.nix @NixOS/emacs
/doc/packages/emacs.section.md @NixOS/emacs
/nixos/modules/services/editors/emacs.md @NixOS/emacs
# Kakoune
/pkgs/applications/editors/kakoune @philiptaron
# Neovim
/pkgs/applications/editors/neovim @NixOS/neovim
# VimPlugins
/pkgs/applications/editors/vim/plugins @NixOS/neovim
# VsCode Extensions
/pkgs/applications/editors/vscode/extensions
# PHP interpreter, packages, extensions, tests and documentation
/doc/languages-frameworks/php.section.md @aanderse @drupol @globin @ma27 @talyz
/nixos/tests/php @aanderse @drupol @globin @ma27 @talyz
/pkgs/build-support/php/build-pecl.nix @aanderse @drupol @globin @ma27 @talyz
/pkgs/build-support/php @drupol
/pkgs/development/interpreters/php @jtojnar @aanderse @drupol @globin @ma27 @talyz
/pkgs/development/php-packages @aanderse @drupol @globin @ma27 @talyz
/pkgs/top-level/php-packages.nix @jtojnar @aanderse @drupol @globin @ma27 @talyz
# Docker tools
/pkgs/build-support/docker @roberth
/nixos/tests/docker-tools* @roberth
/doc/build-helpers/images/dockertools.section.md @roberth
# Blockchains
/pkgs/applications/blockchains @mmahut @RaghavSood
# Go
/doc/languages-frameworks/go.section.md @kalbasit @katexochen @Mic92 @zowoq
/pkgs/build-support/go @kalbasit @katexochen @Mic92 @zowoq
/pkgs/development/compilers/go @kalbasit @katexochen @Mic92 @zowoq
# GNOME
/pkgs/desktops/gnome @jtojnar
/pkgs/desktops/gnome/extensions @jtojnar
/pkgs/build-support/make-hardcode-gsettings-patch @jtojnar
# Cinnamon
/pkgs/by-name/ci/cinnamon-* @mkg20001
/pkgs/by-name/cj/cjs @mkg20001
/pkgs/by-name/mu/muffin @mkg20001
/pkgs/by-name/ne/nemo @mkg20001
/pkgs/by-name/ne/nemo-* @mkg20001
# Xfce
/doc/hooks/xfce4-dev-tools.section.md @NixOS/xfce
# nim
/doc/languages-frameworks/nim.section.md @ehmry
/pkgs/build-support/build-nim-package.nix @ehmry
/pkgs/build-support/build-nim-sbom.nix @ehmry
/pkgs/top-level/nim-overrides.nix @ehmry
# terraform providers
/pkgs/applications/networking/cluster/terraform-providers @zowoq
# Forgejo
nixos/modules/services/misc/forgejo.nix @adamcstephens @bendlas @emilylange
pkgs/by-name/fo/forgejo/ @adamcstephens @bendlas @emilylange
# Dotnet
/pkgs/build-support/dotnet @corngood
/pkgs/development/compilers/dotnet @corngood
/pkgs/test/dotnet @corngood
/doc/languages-frameworks/dotnet.section.md @corngood
# Node.js
/pkgs/build-support/node/build-npm-package @winterqt
/pkgs/build-support/node/fetch-npm-deps @winterqt
/doc/languages-frameworks/javascript.section.md @winterqt
/pkgs/development/tools/pnpm @Scrumplex @gepbird
# OCaml
/pkgs/build-support/ocaml @ulrikstrid
/pkgs/development/compilers/ocaml @ulrikstrid
/pkgs/development/ocaml-modules @ulrikstrid
# Zig
/pkgs/development/compilers/zig @figsoda @RossComputerGuy
/doc/hooks/zig.section.md @figsoda @RossComputerGuy
# Buildbot
nixos/modules/services/continuous-integration/buildbot @Mic92 @zowoq
nixos/tests/buildbot.nix @Mic92 @zowoq
pkgs/development/tools/continuous-integration/buildbot @Mic92 @zowoq
# Pretix
pkgs/by-name/pr/pretix/ @mweinelt
pkgs/by-name/pr/pretalx/ @mweinelt
nixos/modules/services/web-apps/pretix.nix @mweinelt
nixos/modules/services/web-apps/pretalx.nix @mweinelt
nixos/tests/web-apps/pretix.nix @mweinelt
nixos/tests/web-apps/pretalx.nix @mweinelt
# incus/lxc
nixos/maintainers/scripts/incus/ @adamcstephens
nixos/modules/virtualisation/incus.nix @adamcstephens
nixos/modules/virtualisation/lxc* @adamcstephens
nixos/tests/incus/ @adamcstephens
pkgs/by-name/in/incus/ @adamcstephens
pkgs/by-name/lx/lxc* @adamcstephens
# ExpidusOS, Flutter
/pkgs/development/compilers/flutter @RossComputerGuy
/pkgs/desktops/expidus @RossComputerGuy
# GNU Tar & Zip
/pkgs/tools/archivers/gnutar @RossComputerGuy
/pkgs/by-name/zi/zip @RossComputerGuy
# SELinux
/pkgs/by-name/ch/checkpolicy @RossComputerGuy
/pkgs/by-name/li/libselinux @RossComputerGuy
/pkgs/by-name/li/libsepol @RossComputerGuy
# installShellFiles
/pkgs/by-name/in/installShellFiles/* @Ericson2314
/pkgs/test/install-shell-files/* @Ericson2314
/doc/hooks/installShellFiles.section.md @Ericson2314
# Darwin
/pkgs/by-name/ap/apple-sdk @NixOS/darwin-core
/pkgs/os-specific/darwin/apple-source-releases @NixOS/darwin-core
/pkgs/stdenv/darwin @NixOS/darwin-core

View File

@@ -1,85 +0,0 @@
# CI support files
This directory contains files to support CI, such as [GitHub Actions](https://github.com/NixOS/nixpkgs/tree/master/.github/workflows) and [Ofborg](https://github.com/nixos/ofborg).
This is in contrast with [`maintainers/scripts`](../maintainers/scripts) which is for human use instead.
## Pinned Nixpkgs
CI may need certain packages from Nixpkgs.
In order to ensure that the needed packages are generally available without building,
[`pinned-nixpkgs.json`](./pinned-nixpkgs.json) contains a pinned Nixpkgs version tested by Hydra.
Run [`update-pinned-nixpkgs.sh`](./update-pinned-nixpkgs.sh) to update it.
## `ci/nixpkgs-vet.sh BASE_BRANCH [REPOSITORY]`
Runs the [`nixpkgs-vet` tool](https://github.com/NixOS/nixpkgs-vet) on the HEAD commit, closely matching what CI does. This can't do exactly the same as CI, because CI needs to rely on GitHub's server-side Git history to compute the mergeability of PRs before the check can be started.
In turn, when contributors are running this tool locally, we don't want to have to push commits to test them, and we can also rely on the local Git history to do the mergeability check.
Arguments:
- `BASE_BRANCH`: The base branch to use, e.g. master or release-24.05
- `REPOSITORY`: The repository from which to fetch the base branch. Defaults to <https://github.com/NixOS/nixpkgs.git>.
## `ci/nixpkgs-vet`
This directory contains scripts and files used and related to [`nixpkgs-vet`](https://github.com/NixOS/nixpkgs-vet/), which the CI uses to implement `pkgs/by-name` checks, along with many other Nixpkgs architecture rules.
See also the [CI GitHub Action](../.github/workflows/nixpkgs-vet.yml).
## `ci/nixpkgs-vet/update-pinned-tool.sh`
Updates the pinned [`nixpkgs-vet` tool](https://github.com/NixOS/nixpkgs-vet) in [`ci/nixpkgs-vet/pinned-version.txt`](./nixpkgs-vet/pinned-version.txt) to the latest [release](https://github.com/NixOS/nixpkgs-vet/releases).
Each release contains a pre-built `x86_64-linux` version of the tool which is used by CI.
This script currently needs to be called manually when the CI tooling needs to be updated.
Why not just build the tooling right from the PRs Nixpkgs version?
- Because it allows CI to check all PRs, even if they would break the CI tooling.
- Because it makes the CI check very fast, since no Nix builds need to be done, even for mass rebuilds.
- Because it improves security, since we don't have to build potentially untrusted code from PRs.
The tool only needs a very minimal Nix evaluation at runtime, which can work with [readonly-mode](https://nixos.org/manual/nix/stable/command-ref/opt-common.html#opt-readonly-mode) and [restrict-eval](https://nixos.org/manual/nix/stable/command-ref/conf-file.html#conf-restrict-eval).
## `get-merge-commit.sh GITHUB_REPO PR_NUMBER`
Check whether a PR is mergeable and return the test merge commit as
[computed by GitHub](https://docs.github.com/en/rest/guides/using-the-rest-api-to-interact-with-your-git-database?apiVersion=2022-11-28#checking-mergeability-of-pull-requests).
Arguments:
- `GITHUB_REPO`: The repository of the PR, e.g. `NixOS/nixpkgs`
- `PR_NUMBER`: The PR number, e.g. `1234`
Exit codes:
- 0: The PR can be merged, the test merge commit hash is returned on stdout
- 1: The PR cannot be merged because it's not open anymore
- 2: The PR cannot be merged because it has a merge conflict
- 3: The merge commit isn't being computed, GitHub is likely having internal issues, unknown if the PR is mergeable
### Usage
This script is implemented as a reusable GitHub Actions workflow, and can be used as follows:
```yaml
on: pull_request_target
# We need a token to query the API, but it doesn't need any special permissions
permissions: {}
jobs:
get-merge-commit:
# use the relative path of the get-merge-commit workflow yaml here
uses: ./.github/workflows/get-merge-commit.yml
build:
name: Build
runs-on: ubuntu-24.04
needs: get-merge-commit
steps:
- uses: actions/checkout@<VERSION>
# Add this to _all_ subsequent steps to skip them
if: needs.get-merge-commit.outputs.mergedSha
with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
- ...
```

View File

@@ -1,31 +0,0 @@
{
buildGoModule,
fetchFromGitHub,
fetchpatch,
}:
buildGoModule {
name = "codeowners-validator";
src = fetchFromGitHub {
owner = "mszostok";
repo = "codeowners-validator";
rev = "f3651e3810802a37bd965e6a9a7210728179d076";
hash = "sha256-5aSmmRTsOuPcVLWfDF6EBz+6+/Qpbj66udAmi1CLmWQ=";
};
patches = [
# https://github.com/mszostok/codeowners-validator/pull/222
(fetchpatch {
name = "user-write-access-check";
url = "https://github.com/mszostok/codeowners-validator/compare/f3651e3810802a37bd965e6a9a7210728179d076...840eeb88b4da92bda3e13c838f67f6540b9e8529.patch";
hash = "sha256-t3Dtt8SP9nbO3gBrM0nRE7+G6N/ZIaczDyVHYAG/6mU=";
})
# Undoes part of the above PR: We don't want to require write access
# to the repository, that's only needed for GitHub's native CODEOWNERS.
# Furthermore, it removes an unneccessary check from the code
# that breaks tokens generated for GitHub Apps.
./permissions.patch
# Allows setting a custom CODEOWNERS path using the OWNERS_FILE env var
./owners-file-name.patch
];
postPatch = "rm -r docs/investigation";
vendorHash = "sha256-R+pW3xcfpkTRqfS2ETVOwG8PZr0iH5ewroiF7u8hcYI=";
}

View File

@@ -1,15 +0,0 @@
diff --git a/pkg/codeowners/owners.go b/pkg/codeowners/owners.go
index 6910bd2..e0c95e9 100644
--- a/pkg/codeowners/owners.go
+++ b/pkg/codeowners/owners.go
@@ -39,6 +39,10 @@ func NewFromPath(repoPath string) ([]Entry, error) {
// openCodeownersFile finds a CODEOWNERS file and returns content.
// see: https://help.github.com/articles/about-code-owners/#codeowners-file-location
func openCodeownersFile(dir string) (io.Reader, error) {
+ if file, ok := os.LookupEnv("OWNERS_FILE"); ok {
+ return fs.Open(file)
+ }
+
var detectedFiles []string
for _, p := range []string{".", "docs", ".github"} {
pth := path.Join(dir, p)

View File

@@ -1,36 +0,0 @@
diff --git a/internal/check/valid_owner.go b/internal/check/valid_owner.go
index a264bcc..610eda8 100644
--- a/internal/check/valid_owner.go
+++ b/internal/check/valid_owner.go
@@ -16,7 +16,6 @@ import (
const scopeHeader = "X-OAuth-Scopes"
var reqScopes = map[github.Scope]struct{}{
- github.ScopeReadOrg: {},
}
type ValidOwnerConfig struct {
@@ -223,10 +222,7 @@ func (v *ValidOwner) validateTeam(ctx context.Context, name string) *validateErr
for _, t := range v.repoTeams {
// GitHub normalizes name before comparison
if strings.EqualFold(t.GetSlug(), team) {
- if t.Permissions["push"] {
- return nil
- }
- return newValidateError("Team %q cannot review PRs on %q as neither it nor any parent team has write permissions.", team, v.orgRepoName)
+ return nil
}
}
@@ -245,10 +241,7 @@ func (v *ValidOwner) validateGitHubUser(ctx context.Context, name string) *valid
for _, u := range v.repoUsers {
// GitHub normalizes name before comparison
if strings.EqualFold(u.GetLogin(), userName) {
- if u.Permissions["push"] {
- return nil
- }
- return newValidateError("User %q cannot review PRs on %q as they don't have write permissions.", userName, v.orgRepoName)
+ return nil
}
}

View File

@@ -1,30 +0,0 @@
let
pinnedNixpkgs = builtins.fromJSON (builtins.readFile ./pinned-nixpkgs.json);
in
{
system ? builtins.currentSystem,
nixpkgs ? null,
}:
let
nixpkgs' =
if nixpkgs == null then
fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/${pinnedNixpkgs.rev}.tar.gz";
sha256 = pinnedNixpkgs.sha256;
}
else
nixpkgs;
pkgs = import nixpkgs' {
inherit system;
config = { };
overlays = [ ];
};
in
{
inherit pkgs;
requestReviews = pkgs.callPackage ./request-reviews { };
codeownersValidator = pkgs.callPackage ./codeowners-validator { };
eval = pkgs.callPackage ./eval { };
}

View File

@@ -1,21 +0,0 @@
# Nixpkgs CI evaluation
The code in this directory is used by the [eval.yml](../../.github/workflows/eval.yml) GitHub Actions workflow to evaluate the majority of Nixpkgs for all PRs, effectively making sure that when the development branches are processed by Hydra, no evaluation failures are encountered.
Furthermore it also allows local evaluation using
```
nix-build ci -A eval.full \
--max-jobs 4 \
--cores 2 \
--arg chunkSize 10000 \
--arg evalSystems '["x86_64-linux" "aarch64-darwin"]'
```
- `--max-jobs`: The maximum number of derivations to run at the same time. Only each [supported system](../supportedSystems.nix) gets a separate derivation, so it doesn't make sense to set this higher than that number.
- `--cores`: The number of cores to use for each job. Recommended to set this to the amount of cores on your system divided by `--max-jobs`.
- `chunkSize`: The number of attributes that are evaluated simultaneously on a single core. Lowering this decreases memory usage at the cost of increased evaluation time. If this is too high, there won't be enough chunks to process them in parallel, and will also increase evaluation time.
- `evalSystems`: The set of systems for which `nixpkgs` should be evaluated. Defaults to the four official platforms (`x86_64-linux`, `aarch64-linux`, `x86_64-darwin` and `aarch64-darwin`).
A good default is to set `chunkSize` to 10000, which leads to about 3.6GB max memory usage per core, so suitable for fully utilising machines with 4 cores and 16GB memory, 8 cores and 32GB memory or 16 cores and 64GB memory.
Note that 16GB memory is the recommended minimum, while with less than 8GB memory evaluation time suffers greatly.

View File

@@ -1,132 +0,0 @@
{
lib,
jq,
runCommand,
writeText,
...
}:
{
beforeResultDir,
afterResultDir,
touchedFilesJson,
}:
let
/*
Derivation that computes which packages are affected (added, changed or removed) between two revisions of nixpkgs.
Note: "platforms" are "x86_64-linux", "aarch64-darwin", ...
---
Inputs:
- beforeResultDir, afterResultDir: The evaluation result from before and after the change.
They can be obtained by running `nix-build -A ci.eval.full` on both revisions.
---
Outputs:
- changed-paths.json: Various information about the changes:
{
attrdiff: {
added: ["package1"],
changed: ["package2", "package3"],
removed: ["package4"],
},
labels: [
"10.rebuild-darwin: 1-10",
"10.rebuild-linux: 1-10"
],
rebuildsByKernel: {
darwin: ["package1", "package2"],
linux: ["package1", "package2", "package3"]
},
rebuildCountByKernel: {
darwin: 2,
linux: 3,
},
rebuildsByPlatform: {
aarch64-darwin: ["package1", "package2"],
aarch64-linux: ["package1", "package2"],
x86_64-linux: ["package1", "package2", "package3"],
x86_64-darwin: ["package1"],
},
}
- step-summary.md: A markdown render of the changes
---
Implementation details:
Helper functions can be found in ./utils.nix.
Two main "types" are important:
- `packagePlatformPath`: A string of the form "<PACKAGE_PATH>.<PLATFORM>"
Example: "python312Packages.numpy.x86_64-linux"
- `packagePlatformAttr`: An attrs representation of a packagePlatformPath:
Example: { name = "python312Packages.numpy"; platform = "x86_64-linux"; }
*/
inherit (import ./utils.nix { inherit lib; })
diff
groupByKernel
convertToPackagePlatformAttrs
groupByPlatform
extractPackageNames
getLabels
;
getAttrs = dir: builtins.fromJSON (builtins.readFile "${dir}/outpaths.json");
beforeAttrs = getAttrs beforeResultDir;
afterAttrs = getAttrs afterResultDir;
# Attrs
# - keys: "added", "changed" and "removed"
# - values: lists of `packagePlatformPath`s
diffAttrs = diff beforeAttrs afterAttrs;
rebuilds = diffAttrs.added ++ diffAttrs.changed;
rebuildsPackagePlatformAttrs = convertToPackagePlatformAttrs rebuilds;
changed-paths =
let
rebuildsByPlatform = groupByPlatform rebuildsPackagePlatformAttrs;
rebuildsByKernel = groupByKernel rebuildsPackagePlatformAttrs;
rebuildCountByKernel = lib.mapAttrs (
kernel: kernelRebuilds: lib.length kernelRebuilds
) rebuildsByKernel;
in
writeText "changed-paths.json" (
builtins.toJSON {
attrdiff = lib.mapAttrs (_: extractPackageNames) diffAttrs;
inherit
rebuildsByPlatform
rebuildsByKernel
rebuildCountByKernel
;
labels =
(getLabels rebuildCountByKernel)
# Adds "10.rebuild-*-stdenv" label if the "stdenv" attribute was changed
++ lib.mapAttrsToList (kernel: _: "10.rebuild-${kernel}-stdenv") (
lib.filterAttrs (_: kernelRebuilds: kernelRebuilds ? "stdenv") rebuildsByKernel
);
}
);
maintainers = import ./maintainers.nix {
changedattrs = lib.attrNames (lib.groupBy (a: a.name) rebuildsPackagePlatformAttrs);
changedpathsjson = touchedFilesJson;
};
in
runCommand "compare"
{
nativeBuildInputs = [ jq ];
maintainers = builtins.toJSON maintainers;
passAsFile = [ "maintainers" ];
}
''
mkdir $out
cp ${changed-paths} $out/changed-paths.json
jq -r -f ${./generate-step-summary.jq} < ${changed-paths} > $out/step-summary.md
cp "$maintainersPath" "$out/maintainers.json"
# TODO: Compare eval stats
''

View File

@@ -1,30 +0,0 @@
def truncate(xs; n):
if xs | length > n then xs[:n] + ["..."]
else xs
end;
def itemize_packages(xs):
truncate(xs; 2000) |
map("- [\(.)](https://search.nixos.org/packages?channel=unstable&show=\(.)&from=0&size=50&sort=relevance&type=packages&query=\(.))") |
join("\n");
def get_title(s; xs):
s + " (" + (xs | length | tostring) + ")";
def section(title; xs):
"<details> <summary>" + get_title(title; xs) + "</summary>\n\n" + itemize_packages(xs) + "</details>";
def fallback_document(content; n):
if content | utf8bytelength > n then
get_title("Added packages"; .attrdiff.added) + "\n\n" +
get_title("Removed packages"; .attrdiff.removed) + "\n\n" +
get_title("Changed packages"; .attrdiff.changed)
else content
end;
# we truncate the list to stay below the GitHub limit of 1MB per step summary.
fallback_document(
section("Added packages"; .attrdiff.added) + "\n\n" +
section("Removed packages"; .attrdiff.removed) + "\n\n" +
section("Changed packages"; .attrdiff.changed); 1000 * 1000
)

View File

@@ -1,94 +0,0 @@
# Almost directly vendored from https://github.com/NixOS/ofborg/blob/5a4e743f192fb151915fcbe8789922fa401ecf48/ofborg/src/maintainers.nix
{ changedattrs, changedpathsjson }:
let
pkgs = import ../../.. {
system = "x86_64-linux";
config = { };
overlays = [ ];
};
inherit (pkgs) lib;
changedpaths = builtins.fromJSON (builtins.readFile changedpathsjson);
anyMatchingFile =
filename: builtins.any (changed: lib.strings.hasSuffix changed filename) changedpaths;
anyMatchingFiles = files: builtins.any anyMatchingFile files;
enrichedAttrs = builtins.map (name: {
path = lib.splitString "." name;
name = name;
}) changedattrs;
validPackageAttributes = builtins.filter (
pkg:
if (lib.attrsets.hasAttrByPath pkg.path pkgs) then
(
if (builtins.tryEval (lib.attrsets.attrByPath pkg.path null pkgs)).success then
true
else
builtins.trace "Failed to access ${pkg.name} even though it exists" false
)
else
builtins.trace "Failed to locate ${pkg.name}." false
) enrichedAttrs;
attrsWithPackages = builtins.map (
pkg: pkg // { package = lib.attrsets.attrByPath pkg.path null pkgs; }
) validPackageAttributes;
attrsWithMaintainers = builtins.map (
pkg: pkg // { maintainers = (pkg.package.meta or { }).maintainers or [ ]; }
) attrsWithPackages;
relevantFilenames =
drv:
(lib.lists.unique (
builtins.map (pos: lib.strings.removePrefix (toString ../..) pos.file) (
builtins.filter (x: x != null) [
(builtins.unsafeGetAttrPos "maintainers" (drv.meta or { }))
(builtins.unsafeGetAttrPos "src" drv)
# broken because name is always set by stdenv:
# # A hack to make `nix-env -qa` and `nix search` ignore broken packages.
# # TODO(@oxij): remove this assert when something like NixOS/nix#1771 gets merged into nix.
# name = assert validity.handled; name + lib.optionalString
#(builtins.unsafeGetAttrPos "name" drv)
(builtins.unsafeGetAttrPos "pname" drv)
(builtins.unsafeGetAttrPos "version" drv)
# Use ".meta.position" for cases when most of the package is
# defined in a "common" section and the only place where
# reference to the file with a derivation the "pos"
# attribute.
#
# ".meta.position" has the following form:
# "pkgs/tools/package-management/nix/default.nix:155"
# We transform it to the following:
# { file = "pkgs/tools/package-management/nix/default.nix"; }
{ file = lib.head (lib.splitString ":" (drv.meta.position or "")); }
]
)
));
attrsWithFilenames = builtins.map (
pkg: pkg // { filenames = relevantFilenames pkg.package; }
) attrsWithMaintainers;
attrsWithModifiedFiles = builtins.filter (pkg: anyMatchingFiles pkg.filenames) attrsWithFilenames;
listToPing = lib.concatMap (
pkg:
builtins.map (maintainer: {
id = maintainer.githubId;
packageName = pkg.name;
dueToFiles = pkg.filenames;
}) pkg.maintainers
) attrsWithModifiedFiles;
byMaintainer = lib.groupBy (ping: toString ping.id) listToPing;
packagesPerMaintainer = lib.attrsets.mapAttrs (
maintainer: packages: builtins.map (pkg: pkg.packageName) packages
) byMaintainer;
in
packagesPerMaintainer

View File

@@ -1,238 +0,0 @@
{ lib, ... }:
rec {
# Borrowed from https://github.com/NixOS/nixpkgs/pull/355616
uniqueStrings = list: builtins.attrNames (builtins.groupBy lib.id list);
/*
Converts a `packagePlatformPath` into a `packagePlatformAttr`
Turns
"hello.aarch64-linux"
into
{
name = "hello";
packagePath = [ "hello" ];
platform = "aarch64-linux";
}
*/
convertToPackagePlatformAttr =
packagePlatformPath:
let
# python312Packages.numpy.aarch64-linux -> ["python312Packages" "numpy" "aarch64-linux"]
splittedPath = lib.splitString "." packagePlatformPath;
# ["python312Packages" "numpy" "aarch64-linux"] -> ["python312Packages" "numpy"]
packagePath = lib.sublist 0 (lib.length splittedPath - 1) splittedPath;
# "python312Packages.numpy"
name = lib.concatStringsSep "." packagePath;
in
if name == "" then
null
else
{
# [ "python312Packages" "numpy" ]
inherit packagePath;
# python312Packages.numpy
inherit name;
# "aarch64-linux"
platform = lib.last splittedPath;
};
/*
Converts a list of `packagePlatformPath`s into a list of `packagePlatformAttr`s
Turns
[
"hello.aarch64-linux"
"hello.x86_64-linux"
"hello.aarch64-darwin"
"hello.x86_64-darwin"
"bye.x86_64-darwin"
"bye.aarch64-darwin"
"release-checks" <- Will be dropped
]
into
[
{ name = "hello"; platform = "aarch64-linux"; packagePath = [ "hello" ]; }
{ name = "hello"; platform = "x86_64-linux"; packagePath = [ "hello" ]; }
{ name = "hello"; platform = "aarch64-darwin"; packagePath = [ "hello" ]; }
{ name = "hello"; platform = "x86_64-darwin"; packagePath = [ "hello" ]; }
{ name = "bye"; platform = "aarch64-darwin"; packagePath = [ "hello" ]; }
{ name = "bye"; platform = "x86_64-darwin"; packagePath = [ "hello" ]; }
]
*/
convertToPackagePlatformAttrs =
packagePlatformPaths:
builtins.filter (x: x != null) (builtins.map convertToPackagePlatformAttr packagePlatformPaths);
/*
Converts a list of `packagePlatformPath`s directly to a list of (unique) package names
Turns
[
"hello.aarch64-linux"
"hello.x86_64-linux"
"hello.aarch64-darwin"
"hello.x86_64-darwin"
"bye.x86_64-darwin"
"bye.aarch64-darwin"
]
into
[
"hello"
"bye"
]
*/
extractPackageNames =
packagePlatformPaths:
let
packagePlatformAttrs = convertToPackagePlatformAttrs (uniqueStrings packagePlatformPaths);
in
uniqueStrings (builtins.map (p: p.name) packagePlatformAttrs);
/*
Computes the key difference between two attrs
{
added: [ <keys only in the second object> ],
removed: [ <keys only in the first object> ],
changed: [ <keys with different values between the two objects> ],
}
*/
diff =
let
filterKeys = cond: attrs: lib.attrNames (lib.filterAttrs cond attrs);
in
old: new: {
added = filterKeys (n: _: !(old ? ${n})) new;
removed = filterKeys (n: _: !(new ? ${n})) old;
changed = filterKeys (
n: v:
# Filter out attributes that don't exist anymore
(new ? ${n})
# Filter out attributes that are the same as the new value
&& (v != (new.${n}))
) old;
};
/*
Group a list of `packagePlatformAttr`s by platforms
Turns
[
{ name = "hello"; platform = "aarch64-linux"; ... }
{ name = "hello"; platform = "x86_64-linux"; ... }
{ name = "hello"; platform = "aarch64-darwin"; ... }
{ name = "hello"; platform = "x86_64-darwin"; ... }
{ name = "bye"; platform = "aarch64-darwin"; ... }
{ name = "bye"; platform = "x86_64-darwin"; ... }
]
into
{
aarch64-linux = [ "hello" ];
x86_64-linux = [ "hello" ];
aarch64-darwin = [ "hello" "bye" ];
x86_64-darwin = [ "hello" "bye" ];
}
*/
groupByPlatform =
packagePlatformAttrs:
let
packagePlatformAttrsByPlatform = builtins.groupBy (p: p.platform) packagePlatformAttrs;
extractPackageNames = map (p: p.name);
in
lib.mapAttrs (_: extractPackageNames) packagePlatformAttrsByPlatform;
# Turns
# [
# { name = "hello"; platform = "aarch64-linux"; ... }
# { name = "hello"; platform = "x86_64-linux"; ... }
# { name = "hello"; platform = "aarch64-darwin"; ... }
# { name = "hello"; platform = "x86_64-darwin"; ... }
# { name = "bye"; platform = "aarch64-darwin"; ... }
# { name = "bye"; platform = "x86_64-darwin"; ... }
# ]
#
# into
#
# {
# linux = [ "hello" ];
# darwin = [ "hello" "bye" ];
# }
groupByKernel =
packagePlatformAttrs:
let
filterKernel =
kernel:
builtins.attrNames (
builtins.groupBy (p: p.name) (
builtins.filter (p: lib.hasSuffix kernel p.platform) packagePlatformAttrs
)
);
in
lib.genAttrs [ "linux" "darwin" ] filterKernel;
/*
Maps an attrs of `kernel - rebuild counts` mappings to a list of labels
Turns
{
linux = 56;
darwin = 1;
}
into
[
"10.rebuild-darwin: 1"
"10.rebuild-darwin: 1-10"
"10.rebuild-linux: 11-100"
]
*/
getLabels =
rebuildCountByKernel:
lib.concatLists (
lib.mapAttrsToList (
kernel: rebuildCount:
let
numbers =
if rebuildCount == 0 then
[ "0" ]
else if rebuildCount == 1 then
[
"1"
"1-10"
]
else if rebuildCount <= 10 then
[ "1-10" ]
else if rebuildCount <= 100 then
[ "11-100" ]
else if rebuildCount <= 500 then
[ "101-500" ]
else if rebuildCount <= 1000 then
[
"501-1000"
"501+"
]
else if rebuildCount <= 2500 then
[
"1001-2500"
"501+"
]
else if rebuildCount <= 5000 then
[
"2501-5000"
"501+"
]
else
[
"5001+"
"501+"
];
in
lib.forEach numbers (number: "10.rebuild-${kernel}: ${number}")
) rebuildCountByKernel
);
}

View File

@@ -1,294 +0,0 @@
{
lib,
runCommand,
writeShellScript,
writeText,
linkFarm,
time,
procps,
nixVersions,
jq,
sta,
}:
let
nixpkgs =
with lib.fileset;
toSource {
root = ../..;
fileset = unions (
map (lib.path.append ../..) [
"default.nix"
"doc"
"lib"
"maintainers"
"nixos"
"pkgs"
".version"
"ci/supportedSystems.nix"
]
);
};
nix = nixVersions.nix_2_24;
supportedSystems = import ../supportedSystems.nix;
attrpathsSuperset =
runCommand "attrpaths-superset.json"
{
src = nixpkgs;
nativeBuildInputs = [
nix
time
];
env.supportedSystems = builtins.toJSON supportedSystems;
passAsFile = [ "supportedSystems" ];
}
''
export NIX_STATE_DIR=$(mktemp -d)
mkdir $out
export GC_INITIAL_HEAP_SIZE=4g
command time -f "Attribute eval done [%MKB max resident, %Es elapsed] %C" \
nix-instantiate --eval --strict --json --show-trace \
"$src/pkgs/top-level/release-attrpaths-superset.nix" \
-A paths \
-I "$src" \
--option restrict-eval true \
--option allow-import-from-derivation false \
--arg enableWarnings false > $out/paths.json
mv "$supportedSystemsPath" $out/systems.json
'';
singleSystem =
{
# The system to evaluate.
# Note that this is intentionally not called `system`,
# because `--argstr system` would only be passed to the ci/default.nix file!
evalSystem,
# The path to the `paths.json` file from `attrpathsSuperset`
attrpathFile,
# The number of attributes per chunk, see ./README.md for more info.
chunkSize,
checkMeta ? true,
includeBroken ? true,
# Whether to just evaluate a single chunk for quick testing
quickTest ? false,
}:
let
singleChunk = writeShellScript "single-chunk" ''
set -euo pipefail
chunkSize=$1
myChunk=$2
system=$3
outputDir=$4
export NIX_SHOW_STATS=1
export NIX_SHOW_STATS_PATH="$outputDir/stats/$myChunk"
echo "Chunk $myChunk on $system start"
set +e
command time -f "Chunk $myChunk on $system done [%MKB max resident, %Es elapsed] %C" \
nix-env -f "${nixpkgs}/pkgs/top-level/release-attrpaths-parallel.nix" \
--option restrict-eval true \
--option allow-import-from-derivation false \
--query --available \
--no-name --attr-path --out-path \
--show-trace \
--arg chunkSize "$chunkSize" \
--arg myChunk "$myChunk" \
--arg attrpathFile "${attrpathFile}" \
--arg systems "[ \"$system\" ]" \
--arg checkMeta ${lib.boolToString checkMeta} \
--arg includeBroken ${lib.boolToString includeBroken} \
-I ${nixpkgs} \
-I ${attrpathFile} \
> "$outputDir/result/$myChunk"
exitCode=$?
set -e
if (( exitCode != 0 )); then
echo "Evaluation failed with exit code $exitCode"
# This immediately halts all xargs processes
kill $PPID
fi
'';
in
runCommand "nixpkgs-eval-${evalSystem}"
{
nativeBuildInputs = [
nix
time
procps
jq
];
env = {
inherit evalSystem chunkSize;
};
}
''
export NIX_STATE_DIR=$(mktemp -d)
nix-store --init
echo "System: $evalSystem"
cores=$NIX_BUILD_CORES
echo "Cores: $cores"
attrCount=$(jq length "${attrpathFile}")
echo "Attribute count: $attrCount"
echo "Chunk size: $chunkSize"
# Same as `attrCount / chunkSize` but rounded up
chunkCount=$(( (attrCount - 1) / chunkSize + 1 ))
echo "Chunk count: $chunkCount"
mkdir $out
# Record and print stats on free memory and swap in the background
(
while true; do
availMemory=$(free -b | grep Mem | awk '{print $7}')
freeSwap=$(free -b | grep Swap | awk '{print $4}')
echo "Available memory: $(( availMemory / 1024 / 1024 )) MiB, free swap: $(( freeSwap / 1024 / 1024 )) MiB"
if [[ ! -f "$out/min-avail-memory" ]] || (( availMemory < $(<$out/min-avail-memory) )); then
echo "$availMemory" > $out/min-avail-memory
fi
if [[ ! -f $out/min-free-swap ]] || (( availMemory < $(<$out/min-free-swap) )); then
echo "$freeSwap" > $out/min-free-swap
fi
sleep 4
done
) &
seq_end=$(( chunkCount - 1 ))
${lib.optionalString quickTest ''
seq_end=0
''}
chunkOutputDir=$(mktemp -d)
mkdir "$chunkOutputDir"/{result,stats}
seq -w 0 "$seq_end" |
command time -f "%e" -o "$out/total-time" \
xargs -I{} -P"$cores" \
${singleChunk} "$chunkSize" {} "$evalSystem" "$chunkOutputDir"
if (( chunkSize * chunkCount != attrCount )); then
# A final incomplete chunk would mess up the stats, don't include it
rm "$chunkOutputDir"/stats/"$seq_end"
fi
# Make sure the glob doesn't break when there's no files
shopt -s nullglob
cat "$chunkOutputDir"/result/* > $out/paths
cat "$chunkOutputDir"/stats/* > $out/stats.jsonstream
'';
combine =
{
resultsDir,
}:
runCommand "combined-result"
{
nativeBuildInputs = [
jq
sta
];
}
''
mkdir -p $out
# Transform output paths to JSON
cat ${resultsDir}/*/paths |
jq --sort-keys --raw-input --slurp '
split("\n") |
map(select(. != "") | split(" ") | map(select(. != ""))) |
map(
{
key: .[0],
value: .[1] | split(";") | map(split("=") |
if length == 1 then
{ key: "out", value: .[0] }
else
{ key: .[0], value: .[1] }
end) | from_entries}
) | from_entries
' > $out/outpaths.json
# Computes min, mean, error, etc. for a list of values and outputs a JSON from that
statistics() {
local stat=$1
sta --transpose |
jq --raw-input --argjson stat "$stat" -n '
[
inputs |
split("\t") |
{ key: .[0], value: (.[1] | fromjson) }
] |
from_entries |
{
key: ($stat | join(".")),
value: .
}'
}
# Gets all available number stats (without .sizes because those are constant and not interesting)
readarray -t stats < <(jq -cs '.[0] | del(.sizes) | paths(type == "number")' ${resultsDir}/*/stats.jsonstream)
# Combines the statistics from all evaluations
{
echo "{ \"key\": \"minAvailMemory\", \"value\": $(cat ${resultsDir}/*/min-avail-memory | sta --brief --min) }"
echo "{ \"key\": \"minFreeSwap\", \"value\": $(cat ${resultsDir}/*/min-free-swap | sta --brief --min) }"
cat ${resultsDir}/*/total-time | statistics '["totalTime"]'
for stat in "''${stats[@]}"; do
cat ${resultsDir}/*/stats.jsonstream |
jq --argjson stat "$stat" 'getpath($stat)' |
statistics "$stat"
done
} |
jq -s from_entries > $out/stats.json
'';
compare = import ./compare {
inherit
lib
jq
runCommand
writeText
supportedSystems
;
};
full =
{
# Whether to evaluate on a specific set of systems, by default all are evaluated
evalSystems ? if quickTest then [ "x86_64-linux" ] else supportedSystems,
# The number of attributes per chunk, see ./README.md for more info.
chunkSize,
quickTest ? false,
}:
let
results = linkFarm "results" (
map (evalSystem: {
name = evalSystem;
path = singleSystem {
inherit quickTest evalSystem chunkSize;
attrpathFile = attrpathsSuperset + "/paths.json";
};
}) evalSystems
);
in
combine {
resultsDir = results;
};
in
{
inherit
attrpathsSuperset
singleSystem
combine
compare
# The above three are used by separate VMs in a GitHub workflow,
# while the below is intended for testing on a single local machine
full
;
}

View File

@@ -1,62 +0,0 @@
#!/usr/bin/env bash
# See ./README.md for docs
set -euo pipefail
log() {
echo "$@" >&2
}
if (( $# < 2 )); then
log "Usage: $0 GITHUB_REPO PR_NUMBER"
exit 99
fi
repo=$1
prNumber=$2
# Retry the API query this many times
retryCount=5
# Start with 5 seconds, but double every retry
retryInterval=5
while true; do
log "Checking whether the pull request can be merged"
prInfo=$(gh api \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"/repos/$repo/pulls/$prNumber")
# Non-open PRs won't have their mergeability computed no matter what
state=$(jq -r .state <<< "$prInfo")
if [[ "$state" != open ]]; then
log "PR is not open anymore"
exit 1
fi
mergeable=$(jq -r .mergeable <<< "$prInfo")
if [[ "$mergeable" == "null" ]]; then
if (( retryCount == 0 )); then
log "Not retrying anymore. It's likely that GitHub is having internal issues: check https://www.githubstatus.com/"
exit 3
else
(( retryCount -= 1 )) || true
# null indicates that GitHub is still computing whether it's mergeable
# Wait a couple seconds before trying again
log "GitHub is still computing whether this PR can be merged, waiting $retryInterval seconds before trying again ($retryCount retries left)"
sleep "$retryInterval"
(( retryInterval *= 2 )) || true
fi
else
break
fi
done
if [[ "$mergeable" == "true" ]]; then
log "The PR can be merged"
jq -r .merge_commit_sha <<< "$prInfo"
else
log "The PR has a merge conflict"
exit 2
fi

View File

@@ -1,71 +0,0 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p jq
set -o pipefail -o errexit -o nounset
trace() { echo >&2 "$@"; }
tmp=$(mktemp -d)
cleanup() {
# Don't exit early if anything fails to cleanup
set +o errexit
trace -n "Cleaning up.. "
[[ -e "$tmp/base" ]] && git worktree remove --force "$tmp/base"
[[ -e "$tmp/merged" ]] && git worktree remove --force "$tmp/merged"
rm -rf "$tmp"
trace "Done"
}
trap cleanup exit
repo=https://github.com/NixOS/nixpkgs.git
if (( $# != 0 )); then
baseBranch=$1
shift
else
trace "Usage: $0 BASE_BRANCH [REPOSITORY]"
trace "BASE_BRANCH: The base branch to use, e.g. master or release-23.11"
trace "REPOSITORY: The repository to fetch the base branch from, defaults to $repo"
exit 1
fi
if (( $# != 0 )); then
repo=$1
shift
fi
if [[ -n "$(git status --porcelain)" ]]; then
trace -e "\e[33mWarning: Dirty tree, uncommitted changes won't be taken into account\e[0m"
fi
headSha=$(git rev-parse HEAD)
trace -e "Using HEAD commit \e[34m$headSha\e[0m"
trace -n "Creating Git worktree for the HEAD commit in $tmp/merged.. "
git worktree add --detach -q "$tmp/merged" HEAD
trace "Done"
trace -n "Fetching base branch $baseBranch to compare against.. "
git fetch -q "$repo" refs/heads/"$baseBranch"
baseSha=$(git rev-parse FETCH_HEAD)
trace -e "\e[34m$baseSha\e[0m"
trace -n "Creating Git worktree for the base branch in $tmp/base.. "
git worktree add -q "$tmp/base" "$baseSha"
trace "Done"
trace -n "Merging base branch into the HEAD commit in $tmp/merged.. "
git -C "$tmp/merged" merge -q --no-edit "$baseSha"
trace -e "\e[34m$(git -C "$tmp/merged" rev-parse HEAD)\e[0m"
trace -n "Reading pinned nixpkgs-vet version from pinned-version.txt.. "
toolVersion=$(<"$tmp/merged/ci/nixpkgs-vet/pinned-version.txt")
trace -e "\e[34m$toolVersion\e[0m"
trace -n "Building tool.. "
nix-build https://github.com/NixOS/nixpkgs-vet/tarball/"$toolVersion" -o "$tmp/tool" -A build
trace "Running nixpkgs-vet.."
"$tmp/tool/bin/nixpkgs-vet" --base "$tmp/base" "$tmp/merged"

View File

@@ -1 +0,0 @@
0.1.4

View File

@@ -1,22 +0,0 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p jq curl
set -o pipefail -o errexit -o nounset
trace() { echo >&2 "$@"; }
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
repository=NixOS/nixpkgs-vet
pin_file=$SCRIPT_DIR/pinned-version.txt
trace -n "Fetching latest release of $repository.. "
latestRelease=$(curl -sSfL \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/"$repository"/releases/latest)
latestVersion=$(jq .tag_name -r <<< "$latestRelease")
trace "$latestVersion"
trace "Updating $pin_file"
echo "$latestVersion" > "$pin_file"

View File

@@ -1,4 +0,0 @@
{
"rev": "5757bbb8bd7c0630a0cc4bb19c47e588db30b97c",
"sha256": "0px0lr7ad2zrws400507c9w5nnaffz9mp9hqssm64icdm6f6h0fz"
}

View File

@@ -1,44 +0,0 @@
{
lib,
stdenvNoCC,
makeWrapper,
coreutils,
codeowners,
jq,
curl,
github-cli,
gitMinimal,
}:
stdenvNoCC.mkDerivation {
name = "request-reviews";
src = lib.fileset.toSource {
root = ./.;
fileset = lib.fileset.unions [
./get-code-owners.sh
./request-reviewers.sh
./request-code-owner-reviews.sh
./verify-base-branch.sh
./dev-branches.txt
];
};
nativeBuildInputs = [ makeWrapper ];
dontBuild = true;
installPhase = ''
mkdir -p $out/bin
mv dev-branches.txt $out/bin
for bin in *.sh; do
mv "$bin" "$out/bin"
wrapProgram "$out/bin/$bin" \
--set PATH ${
lib.makeBinPath [
coreutils
codeowners
jq
curl
github-cli
gitMinimal
]
}
done
'';
}

View File

@@ -1,9 +0,0 @@
# Trusted development branches:
# These generally require PRs to update and are built by Hydra.
# Keep this synced with the branches in .github/workflows/eval.yml
master
staging
release-*
staging-*
haskell-updates
python-updates

View File

@@ -1,97 +0,0 @@
#!/usr/bin/env bash
# Get the code owners of the files changed by a PR, returning one username per line
set -euo pipefail
log() {
echo "$@" >&2
}
if (( "$#" < 4 )); then
log "Usage: $0 GIT_REPO OWNERS_FILE BASE_REF HEAD_REF"
exit 1
fi
gitRepo=$1
ownersFile=$2
baseRef=$3
headRef=$4
tmp=$(mktemp -d)
trap 'rm -rf "$tmp"' exit
git -C "$gitRepo" diff --name-only --merge-base "$baseRef" "$headRef" > "$tmp/touched-files"
readarray -t touchedFiles < "$tmp/touched-files"
log "This PR touches ${#touchedFiles[@]} files"
# Get the owners file from the base, because we don't want to allow PRs to
# remove code owners to avoid pinging them
git -C "$gitRepo" show "$baseRef":"$ownersFile" > "$tmp"/codeowners
# Associative array with the user as the key for easy de-duplication
# Make sure to always lowercase keys to avoid duplicates with different casings
declare -A users=()
for file in "${touchedFiles[@]}"; do
result=$(codeowners --file "$tmp"/codeowners "$file")
# Remove the file prefix and trim the surrounding spaces
read -r owners <<< "${result#"$file"}"
if [[ "$owners" == "(unowned)" ]]; then
log "File $file is unowned"
continue
fi
log "File $file is owned by $owners"
# Split up multiple owners, separated by arbitrary amounts of spaces
IFS=" " read -r -a entries <<< "$owners"
for entry in "${entries[@]}"; do
# GitHub technically also supports Emails as code owners,
# but we can't easily support that, so let's not
if [[ ! "$entry" =~ @(.*) ]]; then
warn -e "\e[33mCodeowner \"$entry\" for file $file is not valid: Must start with \"@\"\e[0m" >&2
# Don't fail, because the PR for which this script runs can't fix it,
# it has to be fixed in the base branch
continue
fi
# The first regex match is everything after the @
entry=${BASH_REMATCH[1]}
if [[ "$entry" =~ (.*)/(.*) ]]; then
# Teams look like $org/$team
org=${BASH_REMATCH[1]}
team=${BASH_REMATCH[2]}
# Instead of requesting a review from the team itself,
# we request reviews from the individual users.
# This is because once somebody from a team reviewed the PR,
# the API doesn't expose that the team was already requested for a review,
# so we wouldn't be able to avoid rerequesting reviews
# without saving some some extra state somewhere
# We could also consider implementing a more advanced heuristic
# in the future that e.g. only pings one team member,
# but escalates to somebody else if that member doesn't respond in time.
gh api \
--cache=1h \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"/orgs/$org/teams/$team/members" \
--jq '.[].login' > "$tmp/team-members"
readarray -t members < "$tmp/team-members"
log "Team $entry has these members: ${members[*]}"
for user in "${members[@]}"; do
users[${user,,}]=
done
else
# Everything else is a user
users[${entry,,}]=
fi
done
done
printf "%s\n" "${!users[@]}"

View File

@@ -1,82 +0,0 @@
#!/usr/bin/env bash
# Requests reviews for a PR after verifying that the base branch is correct
set -euo pipefail
tmp=$(mktemp -d)
trap 'rm -rf "$tmp"' exit
SCRIPT_DIR=$(dirname "$0")
log() {
echo "$@" >&2
}
effect() {
if [[ -n "${DRY_MODE:-}" ]]; then
log "Skipping in dry mode:" "${@@Q}"
else
"$@"
fi
}
if (( $# < 3 )); then
log "Usage: $0 GITHUB_REPO PR_NUMBER OWNERS_FILE"
exit 1
fi
baseRepo=$1
prNumber=$2
ownersFile=$3
log "Fetching PR info"
prInfo=$(gh api \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"/repos/$baseRepo/pulls/$prNumber")
baseBranch=$(jq -r .base.ref <<< "$prInfo")
log "Base branch: $baseBranch"
prRepo=$(jq -r .head.repo.full_name <<< "$prInfo")
log "PR repo: $prRepo"
prBranch=$(jq -r .head.ref <<< "$prInfo")
log "PR branch: $prBranch"
prAuthor=$(jq -r .user.login <<< "$prInfo")
log "PR author: $prAuthor"
extraArgs=()
if pwdRepo=$(git rev-parse --show-toplevel 2>/dev/null); then
# Speedup for local runs
extraArgs+=(--reference-if-able "$pwdRepo")
fi
log "Fetching Nixpkgs commit history"
# We only need the commit history, not the contents, so we can do a tree-less clone using tree:0
# https://github.blog/open-source/git/get-up-to-speed-with-partial-clone-and-shallow-clone/#user-content-quick-summary
git clone --bare --filter=tree:0 --no-tags --origin upstream "${extraArgs[@]}" https://github.com/"$baseRepo".git "$tmp"/nixpkgs.git
log "Fetching the PR commit history"
# Fetch the PR
git -C "$tmp/nixpkgs.git" remote add fork https://github.com/"$prRepo".git
# This remote config is the same as --filter=tree:0 when cloning
git -C "$tmp/nixpkgs.git" config remote.fork.partialclonefilter tree:0
git -C "$tmp/nixpkgs.git" config remote.fork.promisor true
git -C "$tmp/nixpkgs.git" fetch --no-tags fork "$prBranch"
headRef=$(git -C "$tmp/nixpkgs.git" rev-parse refs/remotes/fork/"$prBranch")
log "Checking correctness of the base branch"
if ! "$SCRIPT_DIR"/verify-base-branch.sh "$tmp/nixpkgs.git" "$headRef" "$baseRepo" "$baseBranch" "$prRepo" "$prBranch" | tee "$tmp/invalid-base-error" >&2; then
log "Posting error as comment"
if ! response=$(effect gh api \
--method POST \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"/repos/$baseRepo/issues/$prNumber/comments" \
-F "body=@$tmp/invalid-base-error"); then
log "Failed to post the comment: $response"
fi
exit 1
fi
log "Requesting reviews from code owners"
"$SCRIPT_DIR"/get-code-owners.sh "$tmp/nixpkgs.git" "$ownersFile" "$baseBranch" "$headRef" | \
"$SCRIPT_DIR"/request-reviewers.sh "$baseRepo" "$prNumber" "$prAuthor"

View File

@@ -1,88 +0,0 @@
#!/usr/bin/env bash
# Request reviewers for a PR, reading line-separated usernames on stdin,
# filtering for valid reviewers before using the API endpoint to request reviews:
# https://docs.github.com/en/rest/pulls/review-requests?apiVersion=2022-11-28#request-reviewers-for-a-pull-request
set -euo pipefail
tmp=$(mktemp -d)
trap 'rm -rf "$tmp"' exit
log() {
echo "$@" >&2
}
effect() {
if [[ -n "${DRY_MODE:-}" ]]; then
log "Skipping in dry mode:" "${@@Q}"
else
"$@"
fi
}
if (( "$#" < 3 )); then
log "Usage: $0 BASE_REPO PR_NUMBER PR_AUTHOR"
exit 1
fi
baseRepo=$1
prNumber=$2
prAuthor=$3
tmp=$(mktemp -d)
trap 'rm -rf "$tmp"' exit
declare -A users=()
while read -r handle && [[ -n "$handle" ]]; do
users[${handle,,}]=
done
# Cannot request a review from the author
if [[ -v users[${prAuthor,,}] ]]; then
log "One or more files are owned by the PR author, ignoring"
unset 'users[${prAuthor,,}]'
fi
gh api \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"/repos/$baseRepo/pulls/$prNumber/reviews" \
--jq '.[].user.login' > "$tmp/already-reviewed-by"
# And we don't want to rerequest reviews from people who already reviewed
while read -r user; do
if [[ -v users[${user,,}] ]]; then
log "User $user is a potential reviewer, but has already left a review, ignoring"
unset 'users[${user,,}]'
fi
done < "$tmp/already-reviewed-by"
for user in "${!users[@]}"; do
if ! gh api \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"/repos/$baseRepo/collaborators/$user" >&2; then
log "User $user is not a repository collaborator, probably missed the automated invite to the maintainers team (see <https://github.com/NixOS/nixpkgs/issues/234293>), ignoring"
unset 'users[$user]'
fi
done
if [[ "${#users[@]}" -gt 10 ]]; then
log "Too many reviewers (${!users[*]}), skipping review requests"
exit 0
fi
for user in "${!users[@]}"; do
log "Requesting review from: $user"
if ! response=$(jq -n --arg user "$user" '{ reviewers: [ $user ] }' | \
effect gh api \
--method POST \
-H "Accept: application/vnd.github+json" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"/repos/$baseRepo/pulls/$prNumber/requested_reviewers" \
--input -); then
log "Failed to request review from $user: $response"
fi
done

View File

@@ -1,104 +0,0 @@
#!/usr/bin/env bash
# Check that a PR doesn't include commits from other development branches.
# Fails with next steps if it does
set -euo pipefail
tmp=$(mktemp -d)
trap 'rm -rf "$tmp"' exit
SCRIPT_DIR=$(dirname "$0")
log() {
echo "$@" >&2
}
# Small helper to check whether an element is in a list
# Usage: `elementIn foo "${list[@]}"`
elementIn() {
local e match=$1
shift
for e; do
if [[ "$e" == "$match" ]]; then
return 0
fi
done
return 1
}
if (( $# < 6 )); then
log "Usage: $0 LOCAL_REPO HEAD_REF BASE_REPO BASE_BRANCH PR_REPO PR_BRANCH"
exit 1
fi
localRepo=$1
headRef=$2
baseRepo=$3
baseBranch=$4
prRepo=$5
prBranch=$6
# All development branches
devBranchPatterns=()
while read -r pattern; do
if [[ "$pattern" != '#'* ]]; then
devBranchPatterns+=("$pattern")
fi
done < "$SCRIPT_DIR/dev-branches.txt"
git -C "$localRepo" branch --list --format "%(refname:short)" "${devBranchPatterns[@]}" > "$tmp/dev-branches"
readarray -t devBranches < "$tmp/dev-branches"
if [[ "$baseRepo" == "$prRepo" ]] && elementIn "$prBranch" "${devBranches[@]}"; then
log "This PR merges $prBranch into $baseBranch, no commit check necessary"
exit 0
fi
# The current merge base of the PR
prMergeBase=$(git -C "$localRepo" merge-base "$baseBranch" "$headRef")
log "The PR's merge base with the base branch $baseBranch is $prMergeBase"
# This is purely for debugging
git -C "$localRepo" rev-list --reverse "$baseBranch".."$headRef" > "$tmp/pr-commits"
log "The PR includes these $(wc -l < "$tmp/pr-commits") commits:"
cat <"$tmp/pr-commits" >&2
for testBranch in "${devBranches[@]}"; do
if [[ -z "$(git -C "$localRepo" rev-list -1 --since="1 month ago" "$testBranch")" ]]; then
log "Not checking $testBranch, was inactive for the last month"
continue
fi
log "Checking if commits from $testBranch are included in the PR"
# We need to check for any commits that are in the PR which are also in the test branch.
# We could check each commit from the PR individually, but that's unnecessarily slow.
#
# This does _almost_ what we want: `git rev-list --count headRef testBranch ^baseBranch`,
# except that it includes commits that are reachable from _either_ headRef or testBranch,
# instead of restricting it to ones reachable by both
# Easily fixable though, because we can use `git merge-base testBranch headRef`
# to get the least common ancestor (aka merge base) commit reachable by both.
# If the branch being tested is indeed the right base branch,
# this is then also the commit from that branch that the PR is based on top of.
testMergeBase=$(git -C "$localRepo" merge-base "$testBranch" "$headRef")
# And then use the `git rev-list --count`, but replacing the non-working
# `headRef testBranch` with the merge base of the two.
extraCommits=$(git -C "$localRepo" rev-list --count "$testMergeBase" ^"$baseBranch")
if (( extraCommits != 0 )); then
log -e "\e[33m"
echo "The PR's base branch is set to $baseBranch, but $extraCommits commits from the $testBranch branch are included. Make sure you know the [right base branch for your changes](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#branch-conventions), then:"
echo "- If the changes should go to the $testBranch branch, [change the base branch](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-base-branch-of-a-pull-request) to $testBranch"
echo "- If the changes should go to the $baseBranch branch, rebase your PR onto the merge base with the $baseBranch branch:"
echo " \`\`\`bash"
echo " # git rebase --onto \$(git merge-base upstream/$baseBranch HEAD) \$(git merge-base upstream/$testBranch HEAD)"
echo " git rebase --onto $prMergeBase $testMergeBase"
echo " git push --force-with-lease"
echo " \`\`\`"
log -e "\e[m"
exit 1
fi
done
log "Base branch is correct, no commits from development branches are included"

View File

@@ -1,6 +0,0 @@
[
"aarch64-linux"
"aarch64-darwin"
"x86_64-linux"
"x86_64-darwin"
]

View File

@@ -1,17 +0,0 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p jq
set -euo pipefail
# https://stackoverflow.com/a/246128
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
repo=https://github.com/nixos/nixpkgs
branch=nixpkgs-unstable
file=$SCRIPT_DIR/pinned-nixpkgs.json
defaultRev=$(git ls-remote "$repo" refs/heads/"$branch" | cut -f1)
rev=${1:-$defaultRev}
sha256=$(nix-prefetch-url --unpack "$repo/archive/$rev.tar.gz" --name source)
jq -n --arg rev "$rev" --arg sha256 "$sha256" '$ARGS.named' | tee /dev/stderr > $file

View File

@@ -1,8 +1,6 @@
let
requiredVersion = import ./lib/minver.nix;
in
let requiredVersion = import ./lib/minver.nix; in
if !builtins ? nixVersion || builtins.compareVersions requiredVersion builtins.nixVersion == 1 then
if ! builtins ? nixVersion || builtins.compareVersions requiredVersion builtins.nixVersion == 1 then
abort ''
@@ -16,7 +14,7 @@ if !builtins ? nixVersion || builtins.compareVersions requiredVersion builtins.n
- If you installed Nix using the install script (https://nixos.org/nix/install),
it is safe to upgrade by running it again:
curl -L https://nixos.org/nix/install | sh
curl https://nixos.org/nix/install | sh
For more information, please see the NixOS release notes at
https://nixos.org/nixos/manual or locally at

8
doc/.gitignore vendored Normal file
View File

@@ -0,0 +1,8 @@
*.chapter.xml
*.section.xml
.version
functions/library/generated
functions/library/locations.xml
highlightjs
manual-full.xml
out

110
doc/Makefile Normal file
View File

@@ -0,0 +1,110 @@
MD_TARGETS=$(addsuffix .xml, $(basename $(wildcard ./*.md ./**/*.md)))
.PHONY: all
all: validate format out/html/index.html out/epub/manual.epub
.PHONY: debug
debug:
nix-shell --run "xmloscopy --docbook5 ./manual.xml ./manual-full.xml"
.PHONY: format
format: doc-support/result
find . -iname '*.xml' -type f | while read f; do \
echo $$f ;\
xmlformat --config-file "doc-support/result/xmlformat.conf" -i $$f ;\
done
.PHONY: fix-misc-xml
fix-misc-xml:
find . -iname '*.xml' -type f \
-exec ../nixos/doc/varlistentry-fixer.rb {} ';'
.PHONY: clean
clean:
rm -f ${MD_TARGETS} doc-support/result .version manual-full.xml functions/library/locations.xml functions/library/generated
rm -rf ./out/ ./highlightjs
.PHONY: validate
validate: manual-full.xml doc-support/result
jing doc-support/result/docbook.rng manual-full.xml
out/html/index.html: doc-support/result manual-full.xml style.css highlightjs
mkdir -p out/html
xsltproc \
--nonet --xinclude \
--output $@ \
doc-support/result/xhtml.xsl \
./manual-full.xml
mkdir -p out/html/highlightjs/
cp -r highlightjs out/html/
cp ./overrides.css out/html/
cp ./style.css out/html/style.css
mkdir -p out/html/images/callouts
cp doc-support/result/xsl/docbook/images/callouts/*.svg out/html/images/callouts/
chmod u+w -R out/html/
out/epub/manual.epub: manual-full.xml
mkdir -p out/epub/scratch
xsltproc --nonet \
--output out/epub/scratch/ \
doc-support/result/epub.xsl \
./manual-full.xml
cp ./overrides.css out/epub/scratch/OEBPS
cp ./style.css out/epub/scratch/OEBPS
mkdir -p out/epub/scratch/OEBPS/images/callouts/
cp doc-support/result/xsl/docbook/images/callouts/*.svg out/epub/scratch/OEBPS/images/callouts/
echo "application/epub+zip" > mimetype
zip -0Xq "out/epub/manual.epub" mimetype
rm mimetype
cd "out/epub/scratch/" && zip -Xr9D "../manual.epub" *
rm -rf "out/epub/scratch/"
highlightjs: doc-support/result
mkdir -p highlightjs
cp -r doc-support/result/highlightjs/highlight.pack.js highlightjs/
cp -r doc-support/result/highlightjs/LICENSE highlightjs/
cp -r doc-support/result/highlightjs/mono-blue.css highlightjs/
cp -r doc-support/result/highlightjs/loader.js highlightjs/
manual-full.xml: ${MD_TARGETS} .version functions/library/locations.xml functions/library/generated *.xml **/*.xml **/**/*.xml
xmllint --nonet --xinclude --noxincludenode manual.xml --output manual-full.xml
.version: doc-support/result
ln -rfs ./doc-support/result/version .version
doc-support/result: doc-support/default.nix
(cd doc-support; nix-build)
functions/library/locations.xml: doc-support/result
ln -rfs ./doc-support/result/function-locations.xml functions/library/locations.xml
functions/library/generated: doc-support/result
ln -rfs ./doc-support/result/function-docs functions/library/generated
%.section.xml: %.section.md
pandoc $^ -w docbook+smart \
-f markdown+smart \
| sed -e 's|<ulink url=|<link xlink:href=|' \
-e 's|</ulink>|</link>|' \
-e 's|<sect. id=|<section xml:id=|' \
-e 's|</sect[0-9]>|</section>|' \
-e '1s| id=| xml:id=|' \
-e '1s|\(<[^ ]* \)|\1xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" |' \
| cat > $@
%.chapter.xml: %.chapter.md
pandoc $^ -w docbook+smart \
--top-level-division=chapter \
-f markdown+smart \
| sed -e 's|<ulink url=|<link xlink:href=|' \
-e 's|</ulink>|</link>|' \
-e 's|<sect. id=|<section xml:id=|' \
-e 's|</sect[0-9]>|</section>|' \
-e '1s| id=| xml:id=|' \
-e '1s|\(<[^ ]* \)|\1|' \
| cat > $@

View File

@@ -1,394 +0,0 @@
# Contributing to the Nixpkgs reference manual
This directory houses the sources files for the Nixpkgs reference manual.
> [!IMPORTANT]
> We are actively restructuring our documentation to follow the [Diátaxis framework](https://diataxis.fr/)
>
> Going forward, this directory should **only** contain [reference documentation](https://nix.dev/contributing/documentation/diataxis#reference).
> For tutorials, guides and explanations, contribute to <https://nix.dev/> instead.
>
> We are actively working to generate **all** reference documentation from the [doc-comments](https://github.com/NixOS/rfcs/blob/master/rfcs/0145-doc-strings.md) present in code.
> This also provides the benefit of using `:doc` in the `nix repl` to view reference documentation locally on the fly.
For documentation only relevant for contributors, use Markdown files next to the source and regular code comments.
> [!TIP]
> Feedback for improving support for parsing and rendering doc-comments is highly appreciated.
> [Open an issue](https://github.com/NixOS/nixpkgs/issues/new?labels=6.topic%3A+documentation&title=Doc%3A+) to request bugfixes or new features.
Rendered documentation:
- [Unstable (from master)](https://nixos.org/manual/nixpkgs/unstable/)
- [Stable (from latest release)](https://nixos.org/manual/nixpkgs/stable/)
The rendering tool is [nixos-render-docs](../pkgs/by-name/ni/nixos-render-docs), sometimes abbreviated `nrd`.
## Contributing to this documentation
You can quickly check your edits with `nix-build`:
```ShellSession
$ cd /path/to/nixpkgs
$ nix-build doc
```
If the build succeeds, the manual will be in `./result/share/doc/nixpkgs/manual.html`.
### devmode
The shell in the manual source directory makes available a command, `devmode`.
It is a daemon, that:
1. watches the manual's source for changes and when they occur — rebuilds
2. HTTP serves the manual, injecting a script that triggers reload on changes
3. opens the manual in the default browser
### Testing redirects
Once you have a successful build, you can open the relevant HTML (path mentioned above) in a browser along with the anchor, and observe the redirection.
Note that if you already loaded the page and *then* input the anchor, you will need to perform a reload. This is because browsers do not re-run client JS code when only the anchor has changed.
## Syntax
As per [RFC 0072](https://github.com/NixOS/rfcs/pull/72), all new documentation content should be written in [CommonMark](https://commonmark.org/) Markdown dialect.
Additional syntax extensions are available, all of which can be used in NixOS option documentation. The following extensions are currently used:
#### Tables
Tables, using the [GitHub-flavored Markdown syntax](https://github.github.com/gfm/#tables-extension-).
#### Anchors
Explicitly defined **anchors** on headings, to allow linking to sections. These should be always used, to ensure the anchors can be linked even when the heading text changes, and to prevent conflicts between [automatically assigned identifiers](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/auto_identifiers.md).
It uses the widely compatible [header attributes](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/attributes.md) syntax:
```markdown
## Syntax {#sec-contributing-markup}
```
> [!Note]
> NixOS option documentation does not support headings in general.
#### Inline Anchors
Allow linking arbitrary place in the text (e.g. individual list items, sentences…).
They are defined using a hybrid of the link syntax with the attributes syntax known from headings, called [bracketed spans](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/bracketed_spans.md):
```markdown
- []{#ssec-gnome-hooks-glib} `glib` setup hook will populate `GSETTINGS_SCHEMAS_PATH` and then `wrapGApps*` hook will prepend it to `XDG_DATA_DIRS`.
```
#### Automatic links
If you **omit a link text** for a link pointing to a section, the text will be substituted automatically. For example `[](#chap-contributing)`.
This syntax is taken from [MyST](https://myst-parser.readthedocs.io/en/latest/using/syntax.html#targets-and-cross-referencing).
#### HTML
Inlining HTML is not allowed. Parts of the documentation gets rendered to various non-HTML formats, such as man pages in the case of NixOS manual.
#### Roles
If you want to link to a man page, you can use `` {manpage}`nix.conf(5)` ``. The references will turn into links when a mapping exists in [`doc/manpage-urls.json`](./manpage-urls.json).
Please keep the `manpage-urls.json` file alphabetically sorted.
A few markups for other kinds of literals are also available:
- `` {command}`rm -rfi` ``
- `` {env}`XDG_DATA_DIRS` ``
- `` {file}`/etc/passwd` ``
- `` {option}`networking.useDHCP` ``
- `` {var}`/etc/passwd` ``
These literal kinds are used mostly in NixOS option documentation.
This syntax is taken from [MyST](https://myst-parser.readthedocs.io/en/latest/syntax/syntax.html#roles-an-in-line-extension-point). Though, the feature originates from [reStructuredText](https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#role-manpage) with slightly different syntax.
#### Admonitions
Set off from the text to bring attention to something.
It uses pandocs [fenced `div`s syntax](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/fenced_divs.md):
```markdown
::: {.warning}
This is a warning
:::
```
The following are supported:
- `caution`
- `important`
- `note`
- `tip`
- `warning`
- `example`
Example admonitions require a title to work.
If you don't provide one, the manual won't be built.
```markdown
::: {.example #ex-showing-an-example}
# Title for this example
Text for the example.
:::
```
#### [Definition lists](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/definition_lists.md)
For defining a group of terms:
```markdown
pear
: green or yellow bulbous fruit
watermelon
: green fruit with red flesh
```
## Commit conventions
- Make sure you read about the [commit conventions](../CONTRIBUTING.md#commit-conventions) common to Nixpkgs as a whole.
- If creating a commit purely for documentation changes, format the commit message in the following way:
```
doc: (documentation summary)
(Motivation for change, relevant links, additional information.)
```
Examples:
* doc: update the kernel config documentation to use `nix-shell`
* doc: add information about `nix-update-script`
Closes #216321.
- If the commit contains more than just documentation changes, follow the commit message format relevant for the rest of the changes.
## Documentation conventions
In an effort to keep the Nixpkgs manual in a consistent style, please follow the conventions below, unless they prevent you from properly documenting something.
In that case, please open an issue about the particular documentation convention and tag it with a "needs: documentation" label.
When needed, each convention explain why it exists, so you can make a decision whether to follow it or not based on your particular case.
Note that these conventions are about the **structure** of the manual (and its source files), not about the content that goes in it.
You, as the writer of documentation, are still in charge of its content.
### One sentence per line
Put each sentence in its own line.
This makes reviews and suggestions much easier, since GitHub's review system is based on lines.
It also helps identifying long sentences at a glance.
### Callouts and examples
Use the [admonition syntax](#admonitions) for callouts and examples.
### Provide self-contained examples
Provide at least one example per function, and make examples self-contained.
This is easier to understand for beginners.
It also helps with testing that it actually works especially once we introduce automation.
Example code should be such that it can be passed to `pkgs.callPackage`.
Instead of something like:
```nix
pkgs.dockerTools.buildLayeredImage {
name = "hello";
contents = [ pkgs.hello ];
}
```
Write something like:
```nix
{ dockerTools, hello }:
dockerTools.buildLayeredImage {
name = "hello";
contents = [ hello ];
}
```
### REPLs
When showing inputs/outputs of any [REPL](https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop), such as a shell or the Nix REPL, use a format as you'd see in the REPL, while trying to visually separate inputs from outputs.
This means that for a shell, you should use a format like the following:
```shell
$ nix-build -A hello '<nixpkgs>' \
--option require-sigs false \
--option trusted-substituters file:///tmp/hello-cache \
--option substituters file:///tmp/hello-cache
/nix/store/zhl06z4lrfrkw5rp0hnjjfrgsclzvxpm-hello-2.12.1
```
Note how the input is preceded by `$` on the first line and indented on subsequent lines, and how the output is provided as you'd see on the shell.
For the Nix REPL, you should use a format like the following:
```shell
nix-repl> builtins.attrNames { a = 1; b = 2; }
[ "a" "b" ]
```
Note how the input is preceded by `nix-repl>` and the output is provided as you'd see on the Nix REPL.
### Headings for inputs, outputs and examples
When documenting functions or anything that has inputs/outputs and example usage, use nested headings to clearly separate inputs, outputs, and examples.
Keep examples as the last nested heading, and link to the examples wherever applicable in the documentation.
The purpose of this convention is to provide a familiar structure for navigating the manual, so any reader can expect to find content related to inputs in an "inputs" heading, examples in an "examples" heading, and so on.
An example:
```
## buildImage
Some explanation about the function here.
Describe a particular scenario, and point to [](#ex-dockerTools-buildImage), which is an example demonstrating it.
### Inputs
Documentation for the inputs of `buildImage`.
Perhaps even point to [](#ex-dockerTools-buildImage) again when talking about something specifically linked to it.
### Passthru outputs
Documentation for any passthru outputs of `buildImage`.
### Examples
Note that this is the last nested heading in the `buildImage` section.
:::{.example #ex-dockerTools-buildImage}
# Using `buildImage`
Example of how to use `buildImage` goes here.
:::
```
### Function arguments
Use [definition lists](#definition-lists) to document function arguments, and the attributes of such arguments as well as their [types](https://nixos.org/manual/nix/stable/language/values).
For example:
```markdown
# pkgs.coolFunction {#pkgs.coolFunction}
`pkgs.coolFunction` *`name`* *`config`*
Description of what `callPackage` does.
## Inputs {#pkgs-coolFunction-inputs}
If something's special about `coolFunction`'s general argument handling, you can say so here.
Otherwise, just describe the single argument or start the arguments' definition list without introduction.
*`name`* (String)
: The name of the resulting image.
*`config`* (Attribute set)
: Introduce the parameter. Maybe you have a test to make sure `{ }` is a sensible default; then you can say: these attributes are optional; `{ }` is a valid argument.
`outputHash` (String; _optional_)
: A brief explanation including when and when not to pass this attribute.
: _Default:_ the output path's hash.
```
Checklist:
- Start with a synopsis, to show the order of positional arguments.
- Metavariables are in emphasized code spans: ``` *`arg1`* ```. Metavariables are placeholders where users may write arbitrary expressions. This includes positional arguments.
- Attribute names are regular code spans: ``` `attr1` ```. These identifiers can _not_ be picked freely by users, so they are _not_ metavariables.
- _optional_ attributes have a _`Default:`_ if it's easily described as a value.
- _optional_ attributes have a _`Default behavior:`_ if it's not easily described using a value.
- Nix types aren't in code spans, because they are not code
- Nix types are capitalized, to distinguish them from the camelCase Module System types, which _are_ code and behave like functions.
#### Examples
To define a referenceable figure use the following fencing:
```markdown
:::{.example #an-attribute-set-example}
# An attribute set example
You can add text before
```nix
{ a = 1; b = 2;}
```
and after code fencing
:::
```
Defining examples through the `example` fencing class adds them to a "List of Examples" section after the Table of Contents.
Though this is not shown in the rendered documentation on nixos.org.
#### Figures
To define a referenceable figure use the following fencing:
```markdown
::: {.figure #nixos-logo}
# NixOS Logo
![NixOS logo](./nixos_logo.png)
:::
```
Defining figures through the `figure` fencing class adds them to a `List of Figures` after the `Table of Contents`.
Though this is not shown in the rendered documentation on nixos.org.
#### Footnotes
To add a foonote explanation, use the following syntax:
```markdown
Sometimes it's better to add context [^context] in a footnote.
[^context]: This explanation will be rendered at the end of the chapter.
```
#### Inline comments
Inline comments are supported with following syntax:
```markdown
<!-- This is an inline comment -->
```
The comments will not be rendered in the rendered HTML.
#### Link reference definitions
Links can reference a label, for example, to make the link target reusable:
```markdown
::: {.note}
Reference links can also be used to [shorten URLs][url-id] and keep the markdown readable.
:::
[url-id]: https://github.com/NixOS/nixpkgs/blob/19d4f7dc485f74109bd66ef74231285ff797a823/doc/README.md
```
This syntax is taken from [CommonMark](https://spec.commonmark.org/0.30/#link-reference-definitions).
#### Typographic replacements
Typographic replacements are enabled. Check the [list of possible replacement patterns check](https://github.com/executablebooks/markdown-it-py/blob/3613e8016ecafe21709471ee0032a90a4157c2d1/markdown_it/rules_core/replacements.py#L1-L15).
## Getting help
If you need documentation-specific help or reviews, ping [@NixOS/documentation-team](https://github.com/orgs/nixos/teams/documentation-team) on your pull request.

View File

@@ -1,3 +0,0 @@
document.addEventListener('DOMContentLoaded', function(event) {
anchors.add('h1[id]:not(div.note h1, div.warning h1, div.tip h1, div.caution h1, div.important h1), h2[id]:not(div.note h2, div.warning h2, div.tip h2, div.caution h2, div.important h2), h3[id]:not(div.note h3, div.warning h3, div.tip h3, div.caution h3, div.important h3), h4[id]:not(div.note h4, div.warning h4, div.tip h4, div.caution h4, div.important h4), h5[id]:not(div.note h5, div.warning h5, div.tip h5, div.caution h5, div.important h5), h6[id]:not(div.note h6, div.warning h6, div.tip h6, div.caution h6, div.important h6)');
});

9
doc/anchor.min.js vendored

File diff suppressed because one or more lines are too long

View File

@@ -1,30 +0,0 @@
# Build helpers {#part-builders}
A build helper is a function that produces derivations.
:::{.warning}
This is not to be confused with the [`builder` argument of the Nix `derivation` primitive](https://nixos.org/manual/nix/unstable/language/derivations.html), which refers to the executable that produces the build result, or [remote builder](https://nixos.org/manual/nix/stable/advanced-topics/distributed-builds.html), which refers to a remote machine that could run such an executable.
:::
Such a function is usually designed to abstract over a typical workflow for a given programming language or framework.
This allows declaring a build recipe by setting a limited number of options relevant to the particular use case instead of using the `derivation` function directly.
[`stdenv.mkDerivation`](#part-stdenv) is the most widely used build helper, and serves as a basis for many others.
In addition, it offers various options to customize parts of the builds.
There is no uniform interface for build helpers.
[Trivial build helpers](#chap-trivial-builders) and [fetchers](#chap-pkgs-fetchers) have various input types for convenience.
[Language- or framework-specific build helpers](#chap-language-support) usually follow the style of `stdenv.mkDerivation`, which accepts an attribute set or a fixed-point function taking an attribute set.
```{=include=} chapters
build-helpers/fixed-point-arguments.chapter.md
build-helpers/fetchers.chapter.md
build-helpers/trivial-build-helpers.chapter.md
build-helpers/testers.chapter.md
build-helpers/dev-shell-tools.chapter.md
build-helpers/special.md
build-helpers/images.md
hooks/index.md
languages-frameworks/index.md
packages/index.md
```

View File

@@ -1,75 +0,0 @@
# Development Shell helpers {#chap-devShellTools}
The `nix-shell` command has popularized the concept of transient shell environments for development or testing purposes.
<!--
We should try to document the product, not its development process in the Nixpkgs reference manual,
but *something* needs to be said to provide context for this library.
This is the most future proof sentence I could come up with while Nix itself does yet make use of this.
Relevant is the current status of the devShell attribute "project": https://github.com/NixOS/nix/issues/7501
-->
However, `nix-shell` is not the only way to create such environments, and even `nix-shell` itself can indirectly benefit from this library.
This library provides a set of functions that help create such environments.
## `devShellTools.valueToString` {#sec-devShellTools-valueToString}
Converts Nix values to strings in the way the [`derivation` built-in function](https://nix.dev/manual/nix/2.23/language/derivations) does.
:::{.example}
## `valueToString` usage examples
```nix
devShellTools.valueToString (builtins.toFile "foo" "bar")
=> "/nix/store/...-foo"
```
```nix
devShellTools.valueToString false
=> ""
```
:::
## `devShellTools.unstructuredDerivationInputEnv` {#sec-devShellTools-unstructuredDerivationInputEnv}
Convert a set of derivation attributes (as would be passed to [`derivation`]) to a set of environment variables that can be used in a shell script.
This function does not support `__structuredAttrs`, but does support `passAsFile`.
:::{.example}
## `unstructuredDerivationInputEnv` usage example
```nix
devShellTools.unstructuredDerivationInputEnv {
drvAttrs = {
name = "foo";
buildInputs = [ hello figlet ];
builder = bash;
args = [ "-c" "${./builder.sh}" ];
};
}
=> {
name = "foo";
buildInputs = "/nix/store/...-hello /nix/store/...-figlet";
builder = "/nix/store/...-bash";
}
```
Note that `args` is not included, because Nix does not added it to the builder process environment.
:::
## `devShellTools.derivationOutputEnv` {#sec-devShellTools-derivationOutputEnv}
Takes the relevant parts of a derivation and returns a set of environment variables, that would be present in the derivation.
:::{.example}
## `derivationOutputEnv` usage example
```nix
let
pkg = hello;
in
devShellTools.derivationOutputEnv { outputList = pkg.outputs; outputMap = pkg; }
```
:::

View File

@@ -1,931 +0,0 @@
# Fetchers {#chap-pkgs-fetchers}
Building software with Nix often requires downloading source code and other files from the internet.
To this end, we use functions that we call _fetchers_, which obtain remote sources via various protocols and services.
Nix provides built-in fetchers such as [`builtins.fetchTarball`](https://nixos.org/manual/nix/stable/language/builtins.html#builtins-fetchTarball).
Nixpkgs provides its own fetchers, which work differently:
- A built-in fetcher will download and cache files at evaluation time and produce a [store path](https://nixos.org/manual/nix/stable/glossary#gloss-store-path).
A Nixpkgs fetcher will create a ([fixed-output](https://nixos.org/manual/nix/stable/glossary#gloss-fixed-output-derivation)) [derivation](https://nixos.org/manual/nix/stable/glossary#gloss-derivation), and files are downloaded at build time.
- Built-in fetchers will invalidate their cache after [`tarball-ttl`](https://nixos.org/manual/nix/stable/command-ref/conf-file#conf-tarball-ttl) expires, and will require network activity to check if the cache entry is up to date.
Nixpkgs fetchers only re-download if the specified hash changes or the store object is not available.
- Built-in fetchers do not use [substituters](https://nixos.org/manual/nix/stable/command-ref/conf-file#conf-substituters).
Derivations produced by Nixpkgs fetchers will use any configured binary cache transparently.
This significantly reduces the time needed to evaluate Nixpkgs, and allows [Hydra](https://nixos.org/hydra) to retain and re-distribute sources used by Nixpkgs in the [public binary cache](https://cache.nixos.org).
For these reasons, Nix's built-in fetchers are not allowed in Nixpkgs.
The following table summarises the differences:
| Fetchers | Download | Output | Cache | Re-download when |
|-|-|-|-|-|
| `builtins.fetch*` | evaluation time | store path | `/nix/store`, `~/.cache/nix` | `tarball-ttl` expires, cache miss in `~/.cache/nix`, output store object not in local store |
| `pkgs.fetch*` | build time | derivation | `/nix/store`, substituters | output store object not available |
:::{.tip}
`pkgs.fetchFrom*` helpers retrieve _snapshots_ of version-controlled sources, as opposed to the entire version history, which is more efficient.
`pkgs.fetchgit` by default also has the same behaviour, but can be changed through specific attributes given to it.
:::
## Caveats {#chap-pkgs-fetchers-caveats}
Because Nixpkgs fetchers are fixed-output derivations, an [output hash](https://nixos.org/manual/nix/stable/language/advanced-attributes#adv-attr-outputHash) has to be specified, usually indirectly through a `hash` attribute.
This hash refers to the derivation output, which can be different from the remote source itself!
This has the following implications that you should be aware of:
- Use Nix (or Nix-aware) tooling to produce the output hash.
- When changing any fetcher parameters, always update the output hash.
Use one of the methods from [](#sec-pkgs-fetchers-updating-source-hashes).
Otherwise, existing store objects that match the output hash will be re-used rather than fetching new content.
:::{.note}
A similar problem arises while testing changes to a fetcher's implementation.
If the output of the derivation already exists in the Nix store, test failures can go undetected.
The [`invalidateFetcherByDrvHash`](#tester-invalidateFetcherByDrvHash) function helps prevent reusing cached derivations.
:::
## Updating source hashes {#sec-pkgs-fetchers-updating-source-hashes}
There are several ways to obtain the hash corresponding to a remote source.
Unless you understand how the fetcher you're using calculates the hash from the downloaded contents, you should use [the fake hash method](#sec-pkgs-fetchers-updating-source-hashes-fakehash-method).
1. []{#sec-pkgs-fetchers-updating-source-hashes-fakehash-method} The fake hash method: In your package recipe, set the hash to one of
- `""`
- `lib.fakeHash`
- `lib.fakeSha256`
- `lib.fakeSha512`
Attempt to build, extract the calculated hashes from error messages, and put them into the recipe.
:::{.warning}
You must use one of these four fake hashes and not some arbitrarily-chosen hash.
See [](#sec-pkgs-fetchers-secure-hashes) for details.
:::
:::{.example #ex-fetchers-update-fod-hash}
# Update source hash with the fake hash method
Consider the following recipe that produces a plain file:
```nix
{ fetchurl }:
fetchurl {
url = "https://raw.githubusercontent.com/NixOS/nixpkgs/23.05/.version";
hash = "sha256-ZHl1emidXVojm83LCVrwULpwIzKE/mYwfztVkvpruOM=";
}
```
A common mistake is to update a fetcher parameter, such as `url`, without updating the hash:
```nix
{ fetchurl }:
fetchurl {
url = "https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/.version";
hash = "sha256-ZHl1emidXVojm83LCVrwULpwIzKE/mYwfztVkvpruOM=";
}
```
**This will produce the same output as before!**
Set the hash to an empty string:
```nix
{ fetchurl }:
fetchurl {
url = "https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/.version";
hash = "";
}
```
When building the package, use the error message to determine the correct hash:
```shell
$ nix-build
(some output removed for clarity)
error: hash mismatch in fixed-output derivation '/nix/store/7yynn53jpc93l76z9zdjj4xdxgynawcw-version.drv':
specified: sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
got: sha256-BZqI7r0MNP29yGH5+yW2tjU9OOpOCEvwWKrWCv5CQ0I=
error: build of '/nix/store/bqdjcw5ij5ymfbm41dq230chk9hdhqff-version.drv' failed
```
:::
2. Prefetch the source with [`nix-prefetch-<type> <URL>`](https://search.nixos.org/packages?buckets={%22package_attr_set%22%3A[%22No%20package%20set%22]%2C%22package_license_set%22%3A[]%2C%22package_maintainers_set%22%3A[]%2C%22package_platforms%22%3A[]}&query=nix-prefetch), where `<type>` is one of
- `url`
- `git`
- `hg`
- `cvs`
- `bzr`
- `svn`
The hash is printed to stdout.
3. Prefetch by package source (with `nix-prefetch-url '<nixpkgs>' -A <package>.src`, where `<package>` is package attribute name).
The hash is printed to stdout.
This works well when you've upgraded the existing package version and want to find out new hash, but is useless if the package can't be accessed by attribute or the package has multiple sources (`.srcs`, architecture-dependent sources, etc).
4. Upstream hash: use it when upstream provides `sha256` or `sha512`.
Don't use it when upstream provides `md5`, compute `sha256` instead.
A little nuance is that `nix-prefetch-*` tools produce hashes with the `nix32` encoding (a Nix-specific base32 adaptation), but upstream usually provides hexadecimal (`base16`) encoding.
Fetchers understand both formats.
Nixpkgs does not standardise on any one format.
You can convert between hash formats with [`nix-hash`](https://nixos.org/manual/nix/stable/command-ref/nix-hash).
5. Extract the hash from a local source archive with `sha256sum`.
Use `nix-prefetch-url file:///path/to/archive` if you want the custom Nix `base32` hash.
## Obtaining hashes securely {#sec-pkgs-fetchers-secure-hashes}
It's always a good idea to avoid Man-in-the-Middle (MITM) attacks when downloading source contents.
Otherwise, you could unknowingly download malware instead of the intended source, and instead of the actual source hash, you'll end up using the hash of malware.
Here are security considerations for this scenario:
- `http://` URLs are not secure to prefetch hashes.
- Upstream hashes should be obtained via a secure protocol.
- `https://` URLs give you more protections when using `nix-prefetch-*` or for upstream hashes.
- `https://` URLs are secure when using the [fake hash method](#sec-pkgs-fetchers-updating-source-hashes-fakehash-method) *only if* you use one of the listed fake hashes.
If you use any other hash, the download will be exposed to MITM attacks even if you use HTTPS URLs.
In more concrete terms, if you use any other hash, the [`--insecure` flag](https://curl.se/docs/manpage.html#-k) will be passed to the underlying call to `curl` when downloading content.
## Proxy usage {#sec-pkgs-fetchers-proxy}
Nixpkgs fetchers can make use of a http(s) proxy. Each fetcher will automatically inherit proxy-related environment variables (`http_proxy`, `https_proxy`, etc) via [impureEnvVars](https://nixos.org/manual/nix/stable/language/advanced-attributes#adv-attr-impureEnvVars).
The environment variable `NIX_SSL_CERT_FILE` is also inherited in fetchers, and can be used to provide a custom certificate bundle to fetchers. This is usually required for a https proxy to work without certificate validation errors.
[]{#fetchurl}
## `fetchurl` {#sec-pkgs-fetchers-fetchurl}
`fetchurl` returns a [fixed-output derivation](https://nixos.org/manual/nix/stable/glossary.html#gloss-fixed-output-derivation) which downloads content from a given URL and stores the unaltered contents within the Nix store.
It uses {manpage}`curl(1)` internally, and allows its behaviour to be modified by specifying a few attributes in the argument to `fetchurl` (see the documentation for attributes `curlOpts`, `curlOptsList`, and `netrcPhase`).
The resulting [store path](https://nixos.org/manual/nix/stable/store/store-path) is determined by the hash given to `fetchurl`, and also the `name` (or `pname` and `version`) values.
If neither `name` nor `pname` and `version` are specified when calling `fetchurl`, it will default to using the [basename](https://nixos.org/manual/nix/stable/language/builtins.html#builtins-baseNameOf) of `url` or the first element of `urls`.
If `pname` and `version` are specified, `fetchurl` will use those values and will ignore `name`, even if it is also specified.
### Inputs {#sec-pkgs-fetchers-fetchurl-inputs}
`fetchurl` requires an attribute set with the following attributes:
`url` (String; _optional_)
: The URL to download from.
:::{.note}
Either `url` or `urls` must be specified, but not both.
:::
All URLs of the format [specified here](https://curl.se/docs/url-syntax.html#rfc-3986-plus) are supported.
_Default value:_ `""`.
`urls` (List of String; _optional_)
: A list of URLs, specifying download locations for the same content.
Each URL will be tried in order until one of them succeeds with some content or all of them fail.
See [](#ex-fetchers-fetchurl-nixpkgs-version-multiple-urls) to understand how this attribute affects the behaviour of `fetchurl`.
:::{.note}
Either `url` or `urls` must be specified, but not both.
:::
_Default value:_ `[]`.
`hash` (String; _optional_)
: Hash of the derivation output of `fetchurl`, following the format for integrity metadata as defined by [SRI](https://www.w3.org/TR/SRI/).
For more information, see [](#chap-pkgs-fetchers-caveats).
:::{.note}
It is recommended that you use the `hash` attribute instead of the other hash-specific attributes that exist for backwards compatibility.
If `hash` is not specified, you must specify `outputHash` and `outputHashAlgo`, or one of `sha512`, `sha256`, or `sha1`.
:::
_Default value:_ `""`.
`outputHash` (String; _optional_)
: Hash of the derivation output of `fetchurl` in the format expected by Nix.
See [the documentation on the Nix manual](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-outputHash) for more information about its format.
:::{.note}
It is recommended that you use the `hash` attribute instead.
If `outputHash` is specified, you must also specify `outputHashAlgo`.
:::
_Default value:_ `""`.
`outputHashAlgo` (String; _optional_)
: Algorithm used to generate the value specified in `outputHash`.
See [the documentation on the Nix manual](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-outputHashAlgo) for more information about the values it supports.
:::{.note}
It is recommended that you use the `hash` attribute instead.
The value specified in `outputHashAlgo` will be ignored if `outputHash` isn't also specified.
:::
_Default value:_ `""`.
`sha1` (String; _optional_)
: SHA-1 hash of the derivation output of `fetchurl` in the format expected by Nix.
See [the documentation on the Nix manual](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-outputHash) for more information about its format.
:::{.note}
It is recommended that you use the `hash` attribute instead.
:::
_Default value:_ `""`.
`sha256` (String; _optional_)
: SHA-256 hash of the derivation output of `fetchurl` in the format expected by Nix.
See [the documentation on the Nix manual](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-outputHash) for more information about its format.
:::{.note}
It is recommended that you use the `hash` attribute instead.
:::
_Default value:_ `""`.
`sha512` (String; _optional_)
: SHA-512 hash of the derivation output of `fetchurl` in the format expected by Nix.
See [the documentation on the Nix manual](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-outputHash) for more information about its format.
:::{.note}
It is recommended that you use the `hash` attribute instead.
:::
_Default value:_ `""`.
`name` (String; _optional_)
: The symbolic name of the downloaded file when saved in the Nix store.
See [the `fetchurl` overview](#sec-pkgs-fetchers-fetchurl) for details on how the name of the file is decided.
_Default value:_ `""`.
`pname` (String; _optional_)
: A base name, which will be combined with `version` to form the symbolic name of the downloaded file when saved in the Nix store.
See [the `fetchurl` overview](#sec-pkgs-fetchers-fetchurl) for details on how the name of the file is decided.
:::{.note}
If `pname` is specified, you must also specify `version`, otherwise `fetchurl` will ignore the value of `pname`.
:::
_Default value:_ `""`.
`version` (String; _optional_)
: A version, which will be combined with `pname` to form the symbolic name of the downloaded file when saved in the Nix store.
See [the `fetchurl` overview](#sec-pkgs-fetchers-fetchurl) for details on how the name of the file is decided.
_Default value:_ `""`.
`recursiveHash` (Boolean; _optional_) []{#sec-pkgs-fetchers-fetchurl-inputs-recursiveHash}
: If set to `true`, will signal to Nix that the hash given to `fetchurl` was calculated using the `"recursive"` mode.
See [the documentation on the Nix manual](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-outputHashMode) for more information about the existing modes.
By default, `fetchurl` uses `"recursive"` mode when the `executable` attribute is set to `true`, so you don't need to specify `recursiveHash` in this case.
_Default value:_ `false`.
`executable` (Boolean; _optional_)
: If `true`, sets the executable bit on the downloaded file.
_Default value_: `false`.
`downloadToTemp` (Boolean; _optional_) []{#sec-pkgs-fetchers-fetchurl-inputs-downloadToTemp}
: If `true`, saves the downloaded file to a temporary location instead of the expected Nix store location.
This is useful when used in conjunction with `postFetch` attribute, otherwise `fetchurl` will not produce any meaningful output.
The location of the downloaded file will be set in the `$downloadedFile` variable, which should be used by the script in the `postFetch` attribute.
See [](#ex-fetchers-fetchurl-nixpkgs-version-postfetch) to understand how to work with this attribute.
_Default value:_ `false`.
`postFetch` (String; _optional_)
: Script executed after the file has been downloaded successfully, and before `fetchurl` finishes running.
Useful for post-processing, to check or transform the file in some way.
See [](#ex-fetchers-fetchurl-nixpkgs-version-postfetch) to understand how to work with this attribute.
_Default value:_ `""`.
`netrcPhase` (String or Null; _optional_)
: Script executed to create a {manpage}`netrc(5)` file to be used with {manpage}`curl(1)`.
The script should create the `netrc` file (note that it does not begin with a ".") in the directory it's currently running in (`$PWD`).
The script is executed during the setup done by `fetchurl` before it runs any of its code to download the specified content.
:::{.note}
If specified, `fetchurl` will automatically alter its invocation of {manpage}`curl(1)` to use the `netrc` file, so you don't need to add anything to `curlOpts` or `curlOptsList`.
:::
:::{.caution}
Since `netrcPhase` needs to be specified in your source Nix code, any secrets that you put directly in it will be world-readable by design (both in your source code, and when the derivation gets created in the Nix store).
If you want to avoid this behaviour, see the documentation of `netrcImpureEnvVars` for an alternative way of dealing with these secrets.
:::
_Default value_: `null`.
`netrcImpureEnvVars` (List of String; _optional_)
: If specified, `fetchurl` will add these environment variable names to the list of [impure environment variables](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-impureEnvVars), which will be passed from the environment of the calling user to the builder running the `fetchurl` code.
This is useful when used with `netrcPhase` to hide any secrets that are used in it, because the script in `netrcPhase` only needs to reference the environment variables with the secrets in them instead.
However, note that these are called _impure_ variables for a reason:
the environment that starts the build needs to have these variables declared for everything to work properly, which means that additional setup is required outside what Nix controls.
_Default value:_ `[]`.
`curlOpts` (String; _optional_)
: If specified, this value will be appended to the invocation of {manpage}`curl(1)` when downloading the URL(s) given to `fetchurl`.
Multiple arguments can be separated by spaces normally, but values with whitespaces will be interpreted as multiple arguments (instead of a single value), even if the value is escaped.
See `curlOptsList` for a way to pass values with whitespaces in them.
_Default value:_ `""`.
`curlOptsList` (List of String; _optional_)
: If specified, each element of this list will be passed as an argument to the invocation of {manpage}`curl(1)` when downloading the URL(s) given to `fetchurl`.
This allows passing values that contain spaces, with no escaping needed.
_Default value:_ `[]`.
`showURLs` (Boolean; _optional_)
: If set to `true`, this will stop `fetchurl` from downloading anything at all.
Instead, it will output a list of all the URLs it would've used to download the content (after resolving `mirror://` URLs, for example).
This is useful for debugging.
_Default value:_ `false`.
`meta` (Attribute Set; _optional_)
: Specifies any [meta-attributes](#chap-meta) for the derivation returned by `fetchurl`.
_Default value:_ `{}`.
`passthru` (Attribute Set; _optional_)
: Specifies any extra [`passthru`](#chap-passthru) attributes for the derivation returned by `fetchurl`.
Note that `fetchurl` defines [`passthru` attributes of its own](#ssec-pkgs-fetchers-fetchurl-passthru-outputs).
Attributes specified in `passthru` can override the default attributes returned by `fetchurl`.
_Default value:_ `{}`.
`preferLocalBuild` (Boolean; _optional_)
: This is the same attribute as [defined in the Nix manual](https://nixos.org/manual/nix/stable/language/advanced-attributes.html#adv-attr-preferLocalBuild).
It is `true` by default because making a remote machine download the content just duplicates network traffic (since the local machine might download the results from the derivation anyway), but this could be useful in cases where network access is restricted on local machines.
_Default value:_ `true`.
`nativeBuildInputs` (List of Attribute Set; _optional_)
: Additional packages needed to download the content.
This is useful if you need extra packages for `postFetch` or `netrcPhase`, for example.
Has the same semantics as in [](#var-stdenv-nativeBuildInputs).
See [](#ex-fetchers-fetchurl-nixpkgs-version-postfetch) to understand how this can be used with `postFetch`.
_Default value:_ `[]`.
### Passthru outputs {#ssec-pkgs-fetchers-fetchurl-passthru-outputs}
`fetchurl` also defines its own [`passthru`](#chap-passthru) attributes:
`url` (String)
: The same `url` attribute passed in the argument to `fetchurl`.
### Examples {#ssec-pkgs-fetchers-fetchurl-examples}
:::{.example #ex-fetchers-fetchurl-nixpkgs-version}
# Using `fetchurl` to download a file
The following package downloads a small file from a URL and shows the most common way to use `fetchurl`:
```nix
{ fetchurl }:
fetchurl {
url = "https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/.version";
hash = "sha256-BZqI7r0MNP29yGH5+yW2tjU9OOpOCEvwWKrWCv5CQ0I=";
}
```
After building the package, the file will be downloaded and place into the Nix store:
```shell
$ nix-build
(output removed for clarity)
/nix/store/4g9y3x851wqrvim4zcz5x2v3zivmsq8n-version
$ cat /nix/store/4g9y3x851wqrvim4zcz5x2v3zivmsq8n-version
23.11
```
:::
:::{.example #ex-fetchers-fetchurl-nixpkgs-version-multiple-urls}
# Using `fetchurl` to download a file with multiple possible URLs
The following package adapts [](#ex-fetchers-fetchurl-nixpkgs-version) to use multiple URLs.
The first URL was crafted to intentionally return an error to illustrate how `fetchurl` will try multiple URLs until it finds one that works (or all URLs fail).
```nix
{ fetchurl }:
fetchurl {
urls = [
"https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/does-not-exist"
"https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/.version"
];
hash = "sha256-BZqI7r0MNP29yGH5+yW2tjU9OOpOCEvwWKrWCv5CQ0I=";
}
```
After building the package, both URLs will be used to download the file:
```shell
$ nix-build
(some output removed for clarity)
trying https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/does-not-exist
(some output removed for clarity)
curl: (22) The requested URL returned error: 404
trying https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/.version
(some output removed for clarity)
/nix/store/n9asny31z32q7sdw6a8r1gllrsfy53kl-does-not-exist
$ cat /nix/store/n9asny31z32q7sdw6a8r1gllrsfy53kl-does-not-exist
23.11
```
However, note that the name of the file was derived from the first URL (this is further explained in [the `fetchurl` overview](#sec-pkgs-fetchers-fetchurl)).
To ensure the result will have the same name regardless of which URLs are used, we can modify the package:
```nix
{ fetchurl }:
fetchurl {
name = "nixpkgs-version";
urls = [
"https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/does-not-exist"
"https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/.version"
];
hash = "sha256-BZqI7r0MNP29yGH5+yW2tjU9OOpOCEvwWKrWCv5CQ0I=";
}
```
After building the package, the result will have the name we specified:
```shell
$ nix-build
(output removed for clarity)
/nix/store/zczb6wl3al6jm9sm5h3pr6nqn0i5ji9z-nixpkgs-version
```
:::
:::{.example #ex-fetchers-fetchurl-nixpkgs-version-postfetch}
# Manipulating the content downloaded by `fetchurl`
It might be useful to manipulate the content downloaded by `fetchurl` directly in its derivation.
In this example, we'll adapt [](#ex-fetchers-fetchurl-nixpkgs-version) to append the result of running the `hello` package to the contents we download, purely to illustrate how to manipulate the content.
```nix
{ fetchurl, hello, lib }:
fetchurl {
url = "https://raw.githubusercontent.com/NixOS/nixpkgs/23.11/.version";
nativeBuildInputs = [ hello ];
downloadToTemp = true;
postFetch = ''
${lib.getExe hello} >> $downloadedFile
mv $downloadedFile $out
'';
hash = "sha256-ceooQQYmDx5+0nfg40uU3NNI2yKrixP7HZ/xLZUNv+w=";
}
```
After building the package, the resulting file will have "Hello, world!" appended to it:
```shell
$ nix-build
(output removed for clarity)
/nix/store/ifi6pp7q0ag5h7c5v9h1c1c7bhd10c7f-version
$ cat /nix/store/ifi6pp7q0ag5h7c5v9h1c1c7bhd10c7f-version
23.11
Hello, world!
```
Note that the `hash` specified in the package is different than the hash specified in [](#ex-fetchers-fetchurl-nixpkgs-version), because the contents of the output have changed (even though the actual file that was downloaded is the same).
See [](#chap-pkgs-fetchers-caveats) for more details on how to work with the `hash` attribute when the output changes.
:::
## `fetchzip` {#sec-pkgs-fetchers-fetchzip}
Returns a [fixed-output derivation](https://nixos.org/manual/nix/stable/glossary.html#gloss-fixed-output-derivation) which downloads an archive from a given URL and decompresses it.
Despite its name, `fetchzip` is not limited to `.zip` files but can also be used with [various compressed tarball formats](#tar-files) by default.
This can extended by specifying additional attributes, see [](#ex-fetchers-fetchzip-rar-archive) to understand how to do that.
### Inputs {#sec-pkgs-fetchers-fetchzip-inputs}
`fetchzip` requires an attribute set, and most attributes are passed to the underlying call to [`fetchurl`](#sec-pkgs-fetchers-fetchurl).
The attributes below are treated differently by `fetchzip` when compared to what `fetchurl` expects:
`name` (String; _optional_)
: Works as defined in `fetchurl`, but has a different default value than `fetchurl`.
_Default value:_ `"source"`.
`nativeBuildInputs` (List of Attribute Set; _optional_)
: Works as defined in `fetchurl`, but it is also augmented by `fetchzip` to include packages to deal with additional archives (such as `.zip`).
_Default value:_ `[]`.
`postFetch` (String; _optional_)
: Works as defined in `fetchurl`, but it is also augmented with the code needed to make `fetchzip` work.
:::{.caution}
It is only safe to modify files in `$out` in `postFetch`.
Consult the implementation of `fetchzip` for anything more involved.
:::
_Default value:_ `""`.
`stripRoot` (Boolean; _optional_)
: If `true`, the decompressed contents are moved one level up the directory tree.
This is useful for archives that decompress into a single directory which commonly includes some values that change with time, such as version numbers.
When this is the case (and `stripRoot` is `true`), `fetchzip` will remove this directory and make the decompressed contents available in the top-level directory.
[](#ex-fetchers-fetchzip-simple-striproot) shows what this attribute does.
This attribute is **not** passed through to `fetchurl`.
_Default value:_ `true`.
`extension` (String or Null; _optional_)
: If set, the archive downloaded by `fetchzip` will be renamed to a filename with the extension specified in this attribute.
This is useful when making `fetchzip` support additional types of archives, because the implementation may use the extension of an archive to determine whether they can decompress it.
If the URL you're using to download the contents doesn't end with the extension associated with the archive, use this attribute to fix the filename of the archive.
This attribute is **not** passed through to `fetchurl`.
_Default value:_ `null`.
`recursiveHash` (Boolean; _optional_)
: Works [as defined in `fetchurl`](#sec-pkgs-fetchers-fetchurl-inputs-recursiveHash), but its default value is different than for `fetchurl`.
_Default value:_ `true`.
`downloadToTemp` (Boolean; _optional_)
: Works [as defined in `fetchurl`](#sec-pkgs-fetchers-fetchurl-inputs-downloadToTemp), but its default value is different than for `fetchurl`.
_Default value:_ `true`.
`extraPostFetch` **DEPRECATED**
: This attribute is deprecated.
Please use `postFetch` instead.
This attribute is **not** passed through to `fetchurl`.
### Examples {#sec-pkgs-fetchers-fetchzip-examples}
::::{.example #ex-fetchers-fetchzip-simple-striproot}
# Using `fetchzip` to output contents directly
The following recipe shows how to use `fetchzip` to decompress a `.tar.gz` archive:
```nix
{ fetchzip }:
fetchzip {
url = "https://github.com/NixOS/patchelf/releases/download/0.18.0/patchelf-0.18.0.tar.gz";
hash = "sha256-3ABYlME9R8klcpJ7MQpyFEFwHmxDDEzIYBqu/CpDYmg=";
}
```
This archive has all its contents in a directory named `patchelf-0.18.0`.
This means that after decompressing, you'd have to enter this directory to see the contents of the archive.
However, `fetchzip` makes this easier through the attribute `stripRoot` (enabled by default).
After building the recipe, the derivation output will show all the files in the archive at the top level:
```shell
$ nix-build
(output removed for clarity)
/nix/store/1b7h3fvmgrcddvs0m299hnqxlgli1yjw-source
$ ls /nix/store/1b7h3fvmgrcddvs0m299hnqxlgli1yjw-source
aclocal.m4 completions configure.ac m4 Makefile.in patchelf.spec README.md tests
build-aux configure COPYING Makefile.am patchelf.1 patchelf.spec.in src version
```
If `stripRoot` is set to `false`, the derivation output will be the decompressed archive as-is:
```nix
{ fetchzip }:
fetchzip {
url = "https://github.com/NixOS/patchelf/releases/download/0.18.0/patchelf-0.18.0.tar.gz";
hash = "sha256-uv3FuKE4DqpHT3yfE0qcnq0gYjDNQNKZEZt2+PUAneg=";
stripRoot = false;
}
```
:::{.caution}
The hash changed!
Whenever changing attributes of a Nixpkgs fetcher, [remember to invalidate the hash](#chap-pkgs-fetchers-caveats), otherwise you won't get the results you're expecting!
:::
After building the recipe:
```shell
$ nix-build
(output removed for clarity)
/nix/store/2hy5bxw7xgbgxkn0i4x6hjr8w3dbx16c-source
$ ls /nix/store/2hy5bxw7xgbgxkn0i4x6hjr8w3dbx16c-source
patchelf-0.18.0
```
::::
::::{.example #ex-fetchers-fetchzip-rar-archive}
# Using `fetchzip` to decompress a `.rar` file
The `unrar` package provides a [setup hook](#ssec-setup-hooks) to decompress `.rar` archives during the [unpack phase](#ssec-unpack-phase), which can be used with `fetchzip` to decompress those archives:
```nix
{ fetchzip, unrar }:
fetchzip {
url = "https://archive.org/download/SpaceCadet_Plus95/Space_Cadet.rar";
hash = "sha256-fC+zsR8BY6vXpUkVd6i1jF0IZZxVKVvNi6VWCKT+pA4=";
stripRoot = false;
nativeBuildInputs = [ unrar ];
}
```
Since this particular `.rar` file doesn't put its contents in a directory inside the archive, `stripRoot` must be set to `false`.
After building the recipe, the derivation output will show the decompressed files:
```shell
$ nix-build
(output removed for clarity)
/nix/store/zpn7knxfva6rfjja2gbb4p3l9w1f0d36-source
$ ls /nix/store/zpn7knxfva6rfjja2gbb4p3l9w1f0d36-source
FONT.DAT PINBALL.DAT PINBALL.EXE PINBALL2.MID TABLE.BMP WMCONFIG.EXE
MSCREATE.DIR PINBALL.DOC PINBALL.MID Sounds WAVEMIX.INF
```
::::
## `fetchpatch` {#fetchpatch}
`fetchpatch` works very similarly to `fetchurl` with the same arguments expected. It expects patch files as a source and performs normalization on them before computing the checksum. For example, it will remove comments or other unstable parts that are sometimes added by version control systems and can change over time.
- `relative`: Similar to using `git-diff`'s `--relative` flag, only keep changes inside the specified directory, making paths relative to it.
- `stripLen`: Remove the first `stripLen` components of pathnames in the patch.
- `decode`: Pipe the downloaded data through this command before processing it as a patch.
- `extraPrefix`: Prefix pathnames by this string.
- `excludes`: Exclude files matching these patterns (applies after the above arguments).
- `includes`: Include only files matching these patterns (applies after the above arguments).
- `revert`: Revert the patch.
Note that because the checksum is computed after applying these effects, using or modifying these arguments will have no effect unless the `hash` argument is changed as well.
Most other fetchers return a directory rather than a single file.
## `fetchDebianPatch` {#fetchdebianpatch}
A wrapper around `fetchpatch`, which takes:
- `patch` and `hash`: the patch's filename,
and its hash after normalization by `fetchpatch` ;
- `pname`: the Debian source package's name ;
- `version`: the upstream version number ;
- `debianRevision`: the [Debian revision number] if applicable ;
- the `area` of the Debian archive: `main` (default), `contrib`, or `non-free`.
Here is an example of `fetchDebianPatch` in action:
```nix
{ lib
, fetchDebianPatch
, buildPythonPackage
}:
buildPythonPackage rec {
pname = "pysimplesoap";
version = "1.16.2";
src = <...>;
patches = [
(fetchDebianPatch {
inherit pname version;
debianRevision = "5";
patch = "Add-quotes-to-SOAPAction-header-in-SoapClient.patch";
hash = "sha256-xA8Wnrpr31H8wy3zHSNfezFNjUJt1HbSXn3qUMzeKc0=";
})
];
# ...
}
```
Patches are fetched from `sources.debian.org`, and so must come from a
package version that was uploaded to the Debian archive. Packages may
be removed from there once that specific version isn't in any suite
anymore (stable, testing, unstable, etc.), so maintainers should use
`copy-tarballs.pl` to archive the patch if it needs to be available
longer-term.
[Debian revision number]: https://www.debian.org/doc/debian-policy/ch-controlfields.html#version
## `fetchsvn` {#fetchsvn}
Used with Subversion. Expects `url` to a Subversion directory, `rev`, and `hash`.
## `fetchgit` {#fetchgit}
Used with Git. Expects `url` to a Git repo, `rev`, and `hash`. `rev` in this case can be full the git commit id (SHA1 hash) or a tag name like `refs/tags/v1.0`.
If you want to fetch a tag you should pass the `tag` parameter instead of `rev` which has the same effect as setting `rev = "refs/tags"/${version}"`.
This is safer than just setting `rev = version` w.r.t. possible branch and tag name conflicts.
Additionally, the following optional arguments can be given:
*`fetchSubmodules`* (Boolean)
: Whether to also fetch the submodules of a repository.
*`fetchLFS`* (Boolean)
: Whether to fetch LFS objects.
*`postFetch`* (String)
: Shell code executed after the file has been fetched successfully.
This can do things like check or transform the file.
*`leaveDotGit`* (Boolean)
: Whether the `.git` directory of the clone should *not* be removed after checkout.
Be warned though that the git repository format is not stable and this flag is therefore not suitable for actual use by itself.
Only use this for testing purposes or in conjunction with removing the `.git` directory in `postFetch`.
*`deepClone`* (Boolean)
: Clone the entire repository as opposing to just creating a shallow clone.
This implies `leaveDotGit`.
*`sparseCheckout`* (List of String)
: Prevent git from fetching unnecessary blobs from server.
This is useful if only parts of the repository are needed.
::: {.example #ex-fetchgit-sparseCheckout}
# Use `sparseCheckout` to only include some directories:
```nix
{ stdenv, fetchgit }:
stdenv.mkDerivation {
name = "hello";
src = fetchgit {
url = "https://...";
sparseCheckout = [
"directory/to/be/included"
"another/directory"
];
hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
};
}
```
:::
See [git sparse-checkout](https://git-scm.com/docs/git-sparse-checkout) for more information.
Some additional parameters for niche use-cases can be found listed in the function parameters in the declaration of `fetchgit`: `pkgs/build-support/fetchgit/default.nix`.
Future parameters additions might also happen without immediately being documented here.
## `fetchfossil` {#fetchfossil}
Used with Fossil. Expects `url` to a Fossil archive, `rev`, and `hash`.
## `fetchcvs` {#fetchcvs}
Used with CVS. Expects `cvsRoot`, `tag`, and `hash`.
## `fetchhg` {#fetchhg}
Used with Mercurial. Expects `url`, `rev`, and `hash`.
A number of fetcher functions wrap part of `fetchurl` and `fetchzip`. They are mainly convenience functions intended for commonly used destinations of source code in Nixpkgs. These wrapper fetchers are listed below.
## `fetchFromGitea` {#fetchfromgitea}
`fetchFromGitea` expects five arguments. `domain` is the gitea server name. `owner` is a string corresponding to the Gitea user or organization that controls this repository. `repo` corresponds to the name of the software repository. These are located at the top of every Gitea HTML page as `owner`/`repo`. `rev` corresponds to the Git commit hash or tag (e.g `v1.0`) that will be downloaded from Git. Finally, `hash` corresponds to the hash of the extracted directory. Again, other hash algorithms are also available but `hash` is currently preferred.
## `fetchFromGitHub` {#fetchfromgithub}
`fetchFromGitHub` expects four arguments. `owner` is a string corresponding to the GitHub user or organization that controls this repository. `repo` corresponds to the name of the software repository. These are located at the top of every GitHub HTML page as `owner`/`repo`. `rev` corresponds to the Git commit hash or tag (e.g `v1.0`) that will be downloaded from Git. If you need to fetch a tag however, you should prefer to use the `tag` parameter which achieves this in a safer way with less boilerplate. Finally, `hash` corresponds to the hash of the extracted directory. Again, other hash algorithms are also available, but `hash` is currently preferred.
To use a different GitHub instance, use `githubBase` (defaults to `"github.com"`).
`fetchFromGitHub` uses `fetchzip` to download the source archive generated by GitHub for the specified revision. If `leaveDotGit`, `deepClone` or `fetchSubmodules` are set to `true`, `fetchFromGitHub` will use `fetchgit` instead. Refer to its section for documentation of these options.
## `fetchFromGitLab` {#fetchfromgitlab}
This is used with GitLab repositories. It behaves similarly to `fetchFromGitHub`, and expects `owner`, `repo`, `rev`, and `hash`.
To use a specific GitLab instance, use `domain` (defaults to `"gitlab.com"`).
## `fetchFromGitiles` {#fetchfromgitiles}
This is used with Gitiles repositories. The arguments expected are similar to `fetchgit`.
## `fetchFromBitbucket` {#fetchfrombitbucket}
This is used with BitBucket repositories. The arguments expected are very similar to `fetchFromGitHub` above.
## `fetchFromSavannah` {#fetchfromsavannah}
This is used with Savannah repositories. The arguments expected are very similar to `fetchFromGitHub` above.
## `fetchFromRepoOrCz` {#fetchfromrepoorcz}
This is used with repo.or.cz repositories. The arguments expected are very similar to `fetchFromGitHub` above.
## `fetchFromSourcehut` {#fetchfromsourcehut}
This is used with sourcehut repositories. Similar to `fetchFromGitHub` above,
it expects `owner`, `repo`, `rev` and `hash`, but don't forget the tilde (~)
in front of the username! Expected arguments also include `vc` ("git" (default)
or "hg"), `domain` and `fetchSubmodules`.
If `fetchSubmodules` is `true`, `fetchFromSourcehut` uses `fetchgit`
or `fetchhg` with `fetchSubmodules` or `fetchSubrepos` set to `true`,
respectively. Otherwise, the fetcher uses `fetchzip`.
## `requireFile` {#requirefile}
`requireFile` allows requesting files that cannot be fetched automatically, but whose content is known.
This is a useful last-resort workaround for license restrictions that prohibit redistribution, or for downloads that are only accessible after authenticating interactively in a browser.
If the requested file is present in the Nix store, the resulting derivation will not be built, because its expected output is already available.
Otherwise, the builder will run, but fail with a message explaining to the user how to provide the file. The following code, for example:
```nix
requireFile {
name = "jdk-${version}_linux-x64_bin.tar.gz";
url = "https://www.oracle.com/java/technologies/javase-jdk11-downloads.html";
hash = "sha256-lL00+F7jjT71nlKJ7HRQuUQ7kkxVYlZh//5msD8sjeI=";
}
```
results in this error message:
```
***
Unfortunately, we cannot download file jdk-11.0.10_linux-x64_bin.tar.gz automatically.
Please go to https://www.oracle.com/java/technologies/javase-jdk11-downloads.html to download it yourself, and add it to the Nix store
using either
nix-store --add-fixed sha256 jdk-11.0.10_linux-x64_bin.tar.gz
or
nix-prefetch-url --type sha256 file:///path/to/jdk-11.0.10_linux-x64_bin.tar.gz
***
```
This function should only be used by non-redistributable software with an unfree license that we need to require the user to download manually.
It produces packages that cannot be built automatically.
## `fetchtorrent` {#fetchtorrent}
`fetchtorrent` expects two arguments. `url` which can either be a Magnet URI (Magnet Link) such as `magnet:?xt=urn:btih:dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c` or an HTTP URL pointing to a `.torrent` file. It can also take a `config` argument which will craft a `settings.json` configuration file and give it to `transmission`, the underlying program that is performing the fetch. The available config options for `transmission` can be found [here](https://github.com/transmission/transmission/blob/main/docs/Editing-Configuration-Files.md#options)
```nix
{ fetchtorrent }:
fetchtorrent {
config = { peer-limit-global = 100; };
url = "magnet:?xt=urn:btih:dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c";
hash = "";
}
```
### Parameters {#fetchtorrent-parameters}
- `url`: Magnet URI (Magnet Link) such as `magnet:?xt=urn:btih:dd8255ecdc7ca55fb0bbf81323d87062db1f6d1c` or an HTTP URL pointing to a `.torrent` file.
- `backend`: Which bittorrent program to use. Default: `"transmission"`. Valid values are `"rqbit"` or `"transmission"`. These are the two most suitable torrent clients for fetching in a fixed-output derivation at the time of writing, as they can be easily exited after usage. `rqbit` is written in Rust and has a smaller closure size than `transmission`, and the performance and peer discovery properties differs between these clients, requiring experimentation to decide upon which is the best.
- `config`: When using `transmission` as the `backend`, a json configuration can
be supplied to transmission. Refer to the [upstream documentation](https://github.com/transmission/transmission/blob/main/docs/Editing-Configuration-Files.md) for information on how to configure.

View File

@@ -1,74 +0,0 @@
# Fixed-point arguments of build helpers {#chap-build-helpers-finalAttrs}
As mentioned in the beginning of this part, `stdenv.mkDerivation` could alternatively accept a fixed-point function. The input of such function, typically named `finalAttrs`, is expected to be the final state of the attribute set.
A build helper like this is said to accept **fixed-point arguments**.
Build helpers don't always support fixed-point arguments yet, as support in [`stdenv.mkDerivation`](#mkderivation-recursive-attributes) was first included in Nixpkgs 22.05.
## Defining a build helper with `lib.extendMkDerivation` {#sec-build-helper-extendMkDerivation}
Developers can use the Nixpkgs library function [`lib.customisation.extendMkDerivation`](#function-library-lib.customisation.extendMkDerivation) to define a build helper supporting fixed-point arguments from an existing one with such support, with an attribute overlay similar to the one taken by [`<pkg>.overrideAttrs`](#sec-pkg-overrideAttrs).
Beside overriding, `lib.extendMkDerivation` also supports `excludeDrvArgNames` to optionally exclude some arguments in the input fixed-point argumnts from passing down the base build helper (specified as `constructDrv`).
:::{.example #ex-build-helpers-extendMkDerivation}
# Example definition of `mkLocalDerivation` extended from `stdenv.mkDerivation` with `lib.extendMkDerivation`
We want to define a build helper named `mkLocalDerivation` that builds locally without using substitutes by default.
Instead of taking a plain attribute set,
```nix
{
preferLocalBuild ? true,
allowSubstitute ? false,
specialArg ? (_: false),
...
}@args:
stdenv.mkDerivation (
removeAttrs [
# Don't pass specialArg into mkDerivation.
"specialArg"
] args
// {
# Arguments to pass
inherit preferLocalBuild allowSubstitute;
# Some expressions involving specialArg
greeting = if specialArg "hi" then "hi" else "hello";
}
)
```
we could define with `lib.extendMkDerivation` an attribute overlay to make the result build helper also accepts the the attribute set's fixed point passing to the underlying `stdenv.mkDerivation`, named `finalAttrs` here:
```nix
lib.extendMkDerivation {
constructDrv = stdenv.mkDerivation;
excludeDrvArgNames = [
# Don't pass specialArg into mkDerivation.
"specialArg"
];
extendDrvArgs =
finalAttrs:
{
preferLocalBuild ? true,
allowSubstitute ? false,
specialArg ? (_: false),
...
}@args:
{
# Arguments to pass
inherit
preferLocalBuild
allowSubstitute
;
# Some expressions involving specialArg
greeting = if specialArg "hi" then "hi" else "hello";
};
}
```
:::
If one needs to apply extra changes to the result derivation, pass the derivation transformation function to `lib.extendMkDerivation` as `lib.customisation.extendMkDerivation { transformDrv = drv: ...; }`.

View File

@@ -1,12 +0,0 @@
# Images {#chap-images}
This chapter describes tools for creating various types of images.
```{=include=} sections
images/appimagetools.section.md
images/dockertools.section.md
images/ocitools.section.md
images/portableservice.section.md
images/makediskimage.section.md
images/binarycache.section.md
```

View File

@@ -1,167 +0,0 @@
# pkgs.appimageTools {#sec-pkgs-appimageTools}
`pkgs.appimageTools` is a set of functions for extracting and wrapping [AppImage](https://appimage.org/) files.
They are meant to be used if traditional packaging from source is infeasible, or if it would take too long.
To quickly run an AppImage file, `pkgs.appimage-run` can be used as well.
::: {.warning}
The `appimageTools` API is unstable and may be subject to backwards-incompatible changes in the future.
:::
## Wrapping {#ssec-pkgs-appimageTools-wrapping}
Use `wrapType2` to wrap any AppImage.
This will create a FHS environment with many packages [expected to exist](https://github.com/AppImage/pkg2appimage/blob/master/excludelist) for the AppImage to work.
`wrapType2` expects an argument with the `src` attribute, and either a `name` attribute or `pname` and `version` attributes.
It will eventually call into [`buildFHSEnv`](#sec-fhs-environments), and any extra attributes in the argument to `wrapType2` will be passed through to it.
This means that you can pass the `extraInstallCommands` attribute, for example, and it will have the same effect as described in [`buildFHSEnv`](#sec-fhs-environments).
::: {.note}
In the past, `appimageTools` provided both `wrapType1` and `wrapType2`, to be used depending on the type of AppImage that was being wrapped.
However, [those were unified early 2020](https://github.com/NixOS/nixpkgs/pull/81833), meaning that both `wrapType1` and `wrapType2` have the same behaviour now.
:::
:::{.example #ex-wrapping-appimage-from-github}
# Wrapping an AppImage from GitHub
```nix
{ appimageTools, fetchurl }:
let
pname = "nuclear";
version = "0.6.30";
src = fetchurl {
url = "https://github.com/nukeop/nuclear/releases/download/v${version}/${pname}-v${version}.AppImage";
hash = "sha256-he1uGC1M/nFcKpMM9JKY4oeexJcnzV0ZRxhTjtJz6xw=";
};
in
appimageTools.wrapType2 {
inherit pname version src;
}
```
:::
The argument passed to `wrapType2` can also contain an `extraPkgs` attribute, which allows you to include additional packages inside the FHS environment your AppImage is going to run in.
`extraPkgs` must be a function that returns a list of packages.
There are a few ways to learn which dependencies an application needs:
- Looking through the extracted AppImage files, reading its scripts and running `patchelf` and `ldd` on its executables.
This can also be done in `appimage-run`, by setting `APPIMAGE_DEBUG_EXEC=bash`.
- Running `strace -vfefile` on the wrapped executable, looking for libraries that can't be found.
:::{.example #ex-wrapping-appimage-with-extrapkgs}
# Wrapping an AppImage with extra packages
```nix
{ appimageTools, fetchurl }:
let
pname = "irccloud";
version = "0.16.0";
src = fetchurl {
url = "https://github.com/irccloud/irccloud-desktop/releases/download/v${version}/IRCCloud-${version}-linux-x86_64.AppImage";
hash = "sha256-/hMPvYdnVB1XjKgU2v47HnVvW4+uC3rhRjbucqin4iI=";
};
in appimageTools.wrapType2 {
inherit pname version src;
extraPkgs = pkgs: [ pkgs.at-spi2-core ];
}
```
:::
## Extracting {#ssec-pkgs-appimageTools-extracting}
Use `extract` if you need to extract the contents of an AppImage.
This is usually used in Nixpkgs to install extra files in addition to [wrapping](#ssec-pkgs-appimageTools-wrapping) the AppImage.
`extract` expects an argument with the `src` attribute, and either a `name` attribute or `pname` and `version` attributes.
::: {.note}
In the past, `appimageTools` provided both `extractType1` and `extractType2`, to be used depending on the type of AppImage that was being extracted.
However, [those were unified early 2020](https://github.com/NixOS/nixpkgs/pull/81572), meaning that both `extractType1` and `extractType2` have the same behaviour as `extract` now.
:::
:::{.example #ex-extracting-appimage}
# Extracting an AppImage to install extra files
This example was adapted from a real package in Nixpkgs to show how `extract` is usually used in combination with `wrapType2`.
Note how `appimageContents` is used in `extraInstallCommands` to install additional files that were extracted from the AppImage.
```nix
{ appimageTools, fetchurl }:
let
pname = "irccloud";
version = "0.16.0";
src = fetchurl {
url = "https://github.com/irccloud/irccloud-desktop/releases/download/v${version}/IRCCloud-${version}-linux-x86_64.AppImage";
hash = "sha256-/hMPvYdnVB1XjKgU2v47HnVvW4+uC3rhRjbucqin4iI=";
};
appimageContents = appimageTools.extract {
inherit pname version src;
};
in appimageTools.wrapType2 {
inherit pname version src;
extraPkgs = pkgs: [ pkgs.at-spi2-core ];
extraInstallCommands = ''
mv $out/bin/${pname}-${version} $out/bin/${pname}
install -m 444 -D ${appimageContents}/irccloud.desktop $out/share/applications/irccloud.desktop
install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/512x512/apps/irccloud.png \
$out/share/icons/hicolor/512x512/apps/irccloud.png
substituteInPlace $out/share/applications/irccloud.desktop \
--replace-fail 'Exec=AppRun' 'Exec=${pname}'
'';
}
```
:::
The argument passed to `extract` can also contain a `postExtract` attribute, which allows you to execute additional commands after the files are extracted from the AppImage.
`postExtract` must be a string with commands to run.
:::{.example #ex-extracting-appimage-with-postextract}
# Extracting an AppImage to install extra files, using `postExtract`
This is a rewrite of [](#ex-extracting-appimage) to use `postExtract`.
```nix
{ appimageTools, fetchurl }:
let
pname = "irccloud";
version = "0.16.0";
src = fetchurl {
url = "https://github.com/irccloud/irccloud-desktop/releases/download/v${version}/IRCCloud-${version}-linux-x86_64.AppImage";
hash = "sha256-/hMPvYdnVB1XjKgU2v47HnVvW4+uC3rhRjbucqin4iI=";
};
appimageContents = appimageTools.extract {
inherit pname version src;
postExtract = ''
substituteInPlace $out/irccloud.desktop --replace-fail 'Exec=AppRun' 'Exec=${pname}'
'';
};
in appimageTools.wrapType2 {
inherit pname version src;
extraPkgs = pkgs: [ pkgs.at-spi2-core ];
extraInstallCommands = ''
mv $out/bin/${pname}-${version} $out/bin/${pname}
install -m 444 -D ${appimageContents}/irccloud.desktop $out/share/applications/irccloud.desktop
install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/512x512/apps/irccloud.png \
$out/share/icons/hicolor/512x512/apps/irccloud.png
'';
}
```
:::

View File

@@ -1,58 +0,0 @@
# pkgs.mkBinaryCache {#sec-pkgs-binary-cache}
`pkgs.mkBinaryCache` is a function for creating Nix flat-file binary caches.
Such a cache exists as a directory on disk, and can be used as a Nix substituter by passing `--substituter file:///path/to/cache` to Nix commands.
Nix packages are most commonly shared between machines using [HTTP, SSH, or S3](https://nixos.org/manual/nix/stable/package-management/sharing-packages.html), but a flat-file binary cache can still be useful in some situations.
For example, you can copy it directly to another machine, or make it available on a network file system.
It can also be a convenient way to make some Nix packages available inside a container via bind-mounting.
`mkBinaryCache` expects an argument with the `rootPaths` attribute.
`rootPaths` must be a list of derivations.
The transitive closure of these derivations' outputs will be copied into the cache.
::: {.note}
This function is meant for advanced use cases.
The more idiomatic way to work with flat-file binary caches is via the [nix-copy-closure](https://nixos.org/manual/nix/stable/command-ref/nix-copy-closure.html) command.
You may also want to consider [dockerTools](#sec-pkgs-dockerTools) for your containerization needs.
:::
[]{#sec-pkgs-binary-cache-example}
:::{.example #ex-mkbinarycache-copying-package-closure}
# Copying a package and its closure to another machine with `mkBinaryCache`
The following derivation will construct a flat-file binary cache containing the closure of `hello`.
```nix
{ mkBinaryCache, hello }:
mkBinaryCache {
rootPaths = [hello];
}
```
Build the cache on a machine.
Note that the command still builds the exact nix package above, but adds some boilerplate to build it directly from an expression.
```shellSession
$ nix-build -E 'let pkgs = import <nixpkgs> {}; in pkgs.callPackage ({ mkBinaryCache, hello }: mkBinaryCache { rootPaths = [hello]; }) {}'
/nix/store/azf7xay5xxdnia4h9fyjiv59wsjdxl0g-binary-cache
```
Copy the resulting directory to another machine, which we'll call `host2`:
```shellSession
$ scp result host2:/tmp/hello-cache
```
At this point, the cache can be used as a substituter when building derivations on `host2`:
```shellSession
$ nix-build -A hello '<nixpkgs>' \
--option require-sigs false \
--option trusted-substituters file:///tmp/hello-cache \
--option substituters file:///tmp/hello-cache
/nix/store/zhl06z4lrfrkw5rp0hnjjfrgsclzvxpm-hello-2.12.1
```
:::

File diff suppressed because it is too large Load Diff

View File

@@ -1,106 +0,0 @@
# `<nixpkgs/nixos/lib/make-disk-image.nix>` {#sec-make-disk-image}
`<nixpkgs/nixos/lib/make-disk-image.nix>` is a function to create _disk images_ in multiple formats: raw, QCOW2 (QEMU), QCOW2-Compressed (compressed version), VDI (VirtualBox), VPC (VirtualPC).
This function can create images in two ways:
- using `cptofs` without any virtual machine to create a Nix store disk image,
- using a virtual machine to create a full NixOS installation.
When testing early-boot or lifecycle parts of NixOS such as a bootloader or multiple generations, it is necessary to opt for a full NixOS system installation.
Whereas for many web servers, applications, it is possible to work with a Nix store only disk image and is faster to build.
NixOS tests also use this function when preparing the VM. The `cptofs` method is used when `virtualisation.useBootLoader` is false (the default). Otherwise the second method is used.
## Features {#sec-make-disk-image-features}
For reference, read the function signature source code for documentation on arguments: <https://github.com/NixOS/nixpkgs/blob/master/nixos/lib/make-disk-image.nix>.
Features are separated in various sections depending on if you opt for a Nix-store only image or a full NixOS image.
### Common {#sec-make-disk-image-features-common}
- arbitrary NixOS configuration
- automatic or bound disk size: `diskSize` parameter, `additionalSpace` can be set when `diskSize` is `auto` to add a constant of disk space
- multiple partition table layouts: EFI, legacy, legacy + GPT, hybrid, none through `partitionTableType` parameter
- OVMF or EFI firmwares and variables templates can be customized
- root filesystem `fsType` can be customized to whatever `mkfs.${fsType}` exist during operations
- root filesystem label can be customized, defaults to `nix-store` if it's a Nix store image, otherwise `nixpkgs/nixos`
- arbitrary code can be executed after disk image was produced with `postVM`
- the current nixpkgs can be realized as a channel in the disk image, which will change the hash of the image when the sources are updated
- additional store paths can be provided through `additionalPaths`
### Full NixOS image {#sec-make-disk-image-features-full-image}
- arbitrary contents with permissions can be placed in the target filesystem using `contents`
- a `/etc/nixpkgs/nixos/configuration.nix` can be provided through `configFile`
- bootloaders are supported
- EFI variables can be mutated during image production and the result is exposed in `$out`
- boot partition size when partition table is `efi` or `hybrid`
### On bit-to-bit reproducibility {#sec-make-disk-image-features-reproducibility}
Images are **NOT** deterministic, please do not hesitate to try to fix this, source of determinisms are (not exhaustive) :
- bootloader installation have timestamps
- SQLite Nix store database contain registration times
- `/etc/shadow` is in a non-deterministic order
A `deterministic` flag is available for best efforts determinism.
## Usage {#sec-make-disk-image-usage}
To produce a Nix-store only image:
```nix
let
pkgs = import <nixpkgs> {};
lib = pkgs.lib;
make-disk-image = import <nixpkgs/nixos/lib/make-disk-image.nix>;
in
make-disk-image {
inherit pkgs lib;
config = {};
additionalPaths = [ ];
format = "qcow2";
onlyNixStore = true;
partitionTableType = "none";
installBootLoader = false;
touchEFIVars = false;
diskSize = "auto";
additionalSpace = "0M"; # Defaults to 512M.
copyChannel = false;
}
```
Some arguments can be left out, they are shown explicitly for the sake of the example.
Building this derivation will provide a QCOW2 disk image containing only the Nix store and its registration information.
To produce a NixOS installation image disk with UEFI and bootloader installed:
```nix
let
pkgs = import <nixpkgs> {};
lib = pkgs.lib;
make-disk-image = import <nixpkgs/nixos/lib/make-disk-image.nix>;
evalConfig = import <nixpkgs/nixos/lib/eval-config.nix>;
in
make-disk-image {
inherit pkgs lib;
inherit (evalConfig {
modules = [
{
fileSystems."/" = { device = "/dev/vda"; fsType = "ext4"; autoFormat = true; };
boot.grub.device = "/dev/vda";
}
];
}) config;
format = "qcow2";
onlyNixStore = false;
partitionTableType = "legacy+gpt";
installBootLoader = true;
touchEFIVars = true;
diskSize = "auto";
additionalSpace = "0M"; # Defaults to 512M.
copyChannel = false;
memSize = 2048; # Qemu VM memory size in megabytes. Defaults to 1024M.
}
```

View File

@@ -1,104 +0,0 @@
# pkgs.ociTools {#sec-pkgs-ociTools}
`pkgs.ociTools` is a set of functions for creating runtime container bundles according to the [OCI runtime specification v1.0.0](https://github.com/opencontainers/runtime-spec/blob/v1.0.0/spec.md).
It makes no assumptions about the container runner you choose to use to run the created container.
The set of functions in `pkgs.ociTools` currently does not handle the [OCI image specification](https://github.com/opencontainers/image-spec).
At a high-level an OCI implementation would download an OCI Image then unpack that image into an OCI Runtime filesystem bundle.
At this point the OCI Runtime Bundle would be run by an OCI Runtime.
`pkgs.ociTools` provides utilities to create OCI Runtime bundles.
## buildContainer {#ssec-pkgs-ociTools-buildContainer}
This function creates an OCI runtime container (consisting of a `config.json` and a root filesystem directory) that runs a single command inside of it.
The nix store of the container will contain all referenced dependencies of the given command.
This function has an assumption that the container will run on POSIX platforms, and sets configurations (such as the user running the process or certain mounts) according to this assumption.
Because of this, a container built with `buildContainer` will not work on Windows or other non-POSIX platforms without modifications to the container configuration.
These modifications aren't supported by `buildContainer`.
For `linux` platforms, `buildContainer` also configures the following namespaces (see {manpage}`unshare(1)`) to isolate the OCI container from the global namespace:
PID, network, mount, IPC, and UTS.
Note that no user namespace is created, which means that you won't be able to run the container unless you are the `root` user.
### Inputs {#ssec-pkgs-ociTools-buildContainer-inputs}
`buildContainer` expects an argument with the following attributes:
`args` (List of String)
: Specifies a set of arguments to run inside the container.
Any packages referenced by `args` will be made available inside the container.
`mounts` (Attribute Set; _optional_)
: Would specify additional mounts that the runtime must make available to the container.
:::{.warning}
As explained in [issue #290879](https://github.com/NixOS/nixpkgs/issues/290879), this attribute is currently ignored.
:::
:::{.note}
`buildContainer` includes a minimal set of necessary filesystems to be mounted into the container, and this set can't be changed with the `mounts` attribute.
:::
_Default value:_ `{}`.
`readonly` (Boolean; _optional_)
: If `true`, sets the container's root filesystem as read-only.
_Default value:_ `false`.
`os` **DEPRECATED**
: Specifies the operating system on which the container filesystem is based on.
If specified, its value should follow the [OCI Image Configuration Specification](https://github.com/opencontainers/image-spec/blob/main/config.md#properties).
According to the linked specification, all possible values for `$GOOS` in [the Go docs](https://go.dev/doc/install/source#environment) should be valid, but will commonly be one of `darwin` or `linux`.
_Default value:_ `"linux"`.
`arch` **DEPRECATED**
: Used to specify the architecture for which the binaries in the container filesystem have been compiled.
If specified, its value should follow the [OCI Image Configuration Specification](https://github.com/opencontainers/image-spec/blob/main/config.md#properties).
According to the linked specification, all possible values for `$GOARCH` in [the Go docs](https://go.dev/doc/install/source#environment) should be valid, but will commonly be one of `386`, `amd64`, `arm`, or `arm64`.
_Default value:_ `x86_64`.
### Examples {#ssec-pkgs-ociTools-buildContainer-examples}
::: {.example #ex-ociTools-buildContainer-bash}
# Creating an OCI runtime container that runs `bash`
This example uses `ociTools.buildContainer` to create a simple container that runs `bash`.
```nix
{ ociTools, lib, bash }:
ociTools.buildContainer {
args = [
(lib.getExe bash)
];
readonly = false;
}
```
As an example of how to run the container generated by this package, we'll use `runc` to start the container.
Any other tool that supports OCI containers could be used instead.
```shell
$ nix-build
(some output removed for clarity)
/nix/store/7f9hgx0arvhzp2a3qphp28rxbn748l25-join
$ cd /nix/store/7f9hgx0arvhzp2a3qphp28rxbn748l25-join
$ nix-shell -p runc
[nix-shell:/nix/store/7f9hgx0arvhzp2a3qphp28rxbn748l25-join]$ sudo runc run ocitools-example
help
GNU bash, version 5.2.26(1)-release (x86_64-pc-linux-gnu)
(some output removed for clarity)
```
:::

View File

@@ -1,174 +0,0 @@
# pkgs.portableService {#sec-pkgs-portableService}
`pkgs.portableService` is a function to create [Portable Services](https://systemd.io/PORTABLE_SERVICES/) in a read-only, immutable, `squashfs` raw disk image.
This lets you use Nix to build images which can be run on many recent Linux distributions.
::: {.note}
Portable services are supported starting with systemd 239 (released on 2018-06-22).
:::
The generated image will contain the file system structure as required by the Portable Services specification, along with the packages given to `portableService` and all of their dependencies.
When generated, the image will exist in the Nix store with the `.raw` file extension, as required by the specification.
See [](#ex-portableService-hello) to understand how to use the output of `portableService`.
## Inputs {#ssec-pkgs-portableService-inputs}
`portableService` expects one argument with the following attributes:
`pname` (String)
: The name of the portable service.
The generated image will be named according to the template `$pname_$version.raw`, which is supported by the Portable Services specification.
`version` (String)
: The version of the portable service.
The generated image will be named according to the template `$pname_$version.raw`, which is supported by the Portable Services specification.
`units` (List of Attribute Set)
: A list of derivations for systemd unit files.
Each derivation must produce a single file, and must have a name that starts with the value of `pname` and ends with the suffix of the unit type (e.g. ".service", ".socket", ".timer", and so on).
See [](#ex-portableService-hello) to better understand this naming constraint.
`description` (String or Null; _optional_)
: If specified, the value is added as `PORTABLE_PRETTY_NAME` to the `/etc/os-release` file in the generated image.
This could be used to provide more information to anyone inspecting the image.
_Default value:_ `null`.
`homepage` (String or Null; _optional_)
: If specified, the value is added as `HOME_URL` to the `/etc/os-release` file in the generated image.
This could be used to provide more information to anyone inspecting the image.
_Default value:_ `null`.
`symlinks` (List of Attribute Set; _optional_)
: A list of attribute sets in the format `{object, symlink}`.
For each item in the list, `portableService` will create a symlink in the path specified by `symlink` (relative to the root of the image) that points to `object`.
All packages that `object` depends on and their dependencies are automatically copied into the image.
This can be used to create symlinks for applications that assume some files to exist globally (`/etc/ssl` or `/bin/bash`, for example).
See [](#ex-portableService-symlinks) to understand how to do that.
_Default value:_ `[]`.
`contents` (List of Attribute Set; _optional_)
: A list of additional derivations to be included as-is in the image.
These derivations will be included directly in a `/nix/store` directory inside the image.
_Default value:_ `[]`.
`squashfsTools` (Attribute Set; _optional_)
: Allows you to override the package that provides {manpage}`mksquashfs(1)`, which is used internally by `portableService`.
_Default value:_ `pkgs.squashfsTools`.
`squash-compression` (String; _optional_)
: Passed as the compression option to {manpage}`mksquashfs(1)`, which is used internally by `portableService`.
_Default value:_ `"xz -Xdict-size 100%"`.
`squash-block-size` (String; _optional_)
: Passed as the block size option to {manpage}`mksquashfs(1)`, which is used internally by `portableService`.
_Default value:_ `"1M"`.
## Examples {#ssec-pkgs-portableService-examples}
[]{#ex-pkgs-portableService}
:::{.example #ex-portableService-hello}
# Building a Portable Service image
The following example builds a Portable Service image with the `hello` package, along with a service unit that runs it.
```nix
{ lib, writeText, portableService, hello }:
let
hello-service = writeText "hello.service" ''
[Unit]
Description=Hello world service
[Service]
Type=oneshot
ExecStart=${lib.getExe hello}
'';
in
portableService {
pname = "hello";
inherit (hello) version;
units = [ hello-service ];
}
```
After building the package, the generated image can be loaded into a system through {manpage}`portablectl(1)`:
```shell
$ nix-build
(some output removed for clarity)
/nix/store/8c20z1vh7z8w8dwagl8w87b45dn5k6iq-hello-img-2.12.1
$ portablectl attach /nix/store/8c20z1vh7z8w8dwagl8w87b45dn5k6iq-hello-img-2.12.1/hello_2.12.1.raw
Created directory /etc/systemd/system.attached.
Created directory /etc/systemd/system.attached/hello.service.d.
Written /etc/systemd/system.attached/hello.service.d/20-portable.conf.
Created symlink /etc/systemd/system.attached/hello.service.d/10-profile.conf → /usr/lib/systemd/portable/profile/default/service.conf.
Copied /etc/systemd/system.attached/hello.service.
Created symlink /etc/portables/hello_2.12.1.raw → /nix/store/8c20z1vh7z8w8dwagl8w87b45dn5k6iq-hello-img-2.12.1/hello_2.12.1.raw.
$ systemctl start hello
$ journalctl -u hello
Feb 28 22:39:16 hostname systemd[1]: Starting Hello world service...
Feb 28 22:39:16 hostname hello[102887]: Hello, world!
Feb 28 22:39:16 hostname systemd[1]: hello.service: Deactivated successfully.
Feb 28 22:39:16 hostname systemd[1]: Finished Hello world service.
$ portablectl detach hello_2.12.1
Removed /etc/systemd/system.attached/hello.service.
Removed /etc/systemd/system.attached/hello.service.d/10-profile.conf.
Removed /etc/systemd/system.attached/hello.service.d/20-portable.conf.
Removed /etc/systemd/system.attached/hello.service.d.
Removed /etc/portables/hello_2.12.1.raw.
Removed /etc/systemd/system.attached.
```
:::
:::{.example #ex-portableService-symlinks}
# Specifying symlinks when building a Portable Service image
Some services may expect files or directories to be available globally.
An example is a service which expects all trusted SSL certificates to exist in a specific location by default.
To make things available globally, you must specify the `symlinks` attribute when using `portableService`.
The following package builds on the package from [](#ex-portableService-hello) to make `/etc/ssl` available globally (this is only for illustrative purposes, because `hello` doesn't use `/etc/ssl`).
```nix
{ lib, writeText, portableService, hello, cacert }:
let
hello-service = writeText "hello.service" ''
[Unit]
Description=Hello world service
[Service]
Type=oneshot
ExecStart=${lib.getExe hello}
'';
in
portableService {
pname = "hello";
inherit (hello) version;
units = [ hello-service ];
symlinks = [
{ object = "${cacert}/etc/ssl"; symlink = "/etc/ssl"; }
];
}
```
:::

View File

@@ -1,12 +0,0 @@
# Special build helpers {#chap-special}
This chapter describes several special build helpers.
```{=include=} sections
special/fakenss.section.md
special/fhs-environments.section.md
special/makesetuphook.section.md
special/mkshell.section.md
special/vm-tools.section.md
special/checkpoint-build.section.md
```

View File

@@ -1,43 +0,0 @@
# pkgs.checkpointBuildTools {#sec-checkpoint-build}
`pkgs.checkpointBuildTools` provides a way to build derivations incrementally. It consists of two functions to make checkpoint builds using Nix possible.
For hermeticity, Nix derivations do not allow any state to be carried over between builds, making a transparent incremental build within a derivation impossible.
However, we can tell Nix explicitly what the previous build state was, by representing that previous state as a derivation output. This allows the passed build state to be used for an incremental build.
To change a normal derivation to a checkpoint based build, these steps must be taken:
- apply `prepareCheckpointBuild` on the desired derivation, e.g.
```nix
{
checkpointArtifacts = (pkgs.checkpointBuildTools.prepareCheckpointBuild pkgs.virtualbox);
}
```
- change something you want in the sources of the package, e.g. use a source override:
```nix
{
changedVBox = pkgs.virtualbox.overrideAttrs (old: {
src = path/to/vbox/sources;
});
}
```
- use `mkCheckpointBuild changedVBox checkpointArtifacts`
- enjoy shorter build times
## Example {#sec-checkpoint-build-example}
```nix
{ pkgs ? import <nixpkgs> {} }:
let
inherit (pkgs.checkpointBuildTools)
prepareCheckpointBuild
mkCheckpointBuild
;
helloCheckpoint = prepareCheckpointBuild pkgs.hello;
changedHello = pkgs.hello.overrideAttrs (_: {
doCheck = false;
patchPhase = ''
sed -i 's/Hello, world!/Hello, Nix!/g' src/hello.c
'';
});
in mkCheckpointBuild changedHello helloCheckpoint
```

View File

@@ -1,77 +0,0 @@
# fakeNss {#sec-fakeNss}
Provides `/etc/passwd` and `/etc/group` files that contain `root` and `nobody`, allowing user/group lookups to work in binaries that insist on doing those.
This might be a better choice than a custom script running `useradd` and related utilities if you only need those files to exist with some entries.
`fakeNss` also provides `/etc/nsswitch.conf`, configuring NSS host resolution to first check `/etc/hosts` before checking DNS, since the default in the absence of a config file (`dns [!UNAVAIL=return] files`) is quite unexpected.
It also creates an empty directory at `/var/empty` because it uses that as the home directory for the `root` and `nobody` users.
The `/var/empty` directory can also be used as a `chroot` target to prevent file access in processes that do not need to access files, if your container runs such processes.
The user entries created by `fakeNss` use the `/bin/sh` shell, which is not provided by `fakeNss` because in most cases it won't be used.
If you need that to be available, see [`dockerTools.binSh`](#sssec-pkgs-dockerTools-helpers-binSh) or provide your own.
## Inputs {#sec-fakeNss-inputs}
`fakeNss` is made available in Nixpkgs as a package rather than a function, but it has two attributes that can be overridden and might be useful in particular cases.
For more details on how overriding works, see [](#ex-fakeNss-overriding) and [](#sec-pkg-override).
`extraPasswdLines` (List of Strings; _optional_)
: A list of lines that will be added to `/etc/passwd`.
Useful if extra users need to exist in the output of `fakeNss`.
If `extraPasswdLines` is specified, it will **not** override the `root` and `nobody` entries created by `fakeNss`.
Those entries will always exist.
Lines specified here must follow the format in {manpage}`passwd(5)`.
_Default value:_ `[]`.
`extraGroupLines` (List of Strings; _optional_)
: A list of lines that will be added to `/etc/group`.
Useful if extra groups need to exist in the output of `fakeNss`.
If `extraGroupLines` is specified, it will **not** override the `root` and `nobody` entries created by `fakeNss`.
Those entries will always exist.
Lines specified here must follow the format in {manpage}`group(5)`.
_Default value:_ `[]`.
## Examples {#sec-fakeNss-examples}
:::{.example #ex-fakeNss-dockerTools-buildImage}
# Using `fakeNss` with `dockerTools.buildImage`
This example shows how to use `fakeNss` as-is.
It is useful with functions in `dockerTools` to allow building Docker images that have the `/etc/passwd` and `/etc/group` files.
This example includes the `hello` binary in the image so it can do something besides just have the extra files.
```nix
{ dockerTools, fakeNss, hello }:
dockerTools.buildImage {
name = "image-with-passwd";
tag = "latest";
copyToRoot = [ fakeNss hello ];
config = {
Cmd = [ "/bin/hello" ];
};
}
```
:::
:::{.example #ex-fakeNss-overriding}
# Using `fakeNss` with an override to add extra lines
The following code uses `override` to add extra lines to `/etc/passwd` and `/etc/group` to create another user and group entry.
```nix
{ fakeNss }:
fakeNss.override {
extraPasswdLines = ["newuser:x:9001:9001:new user:/var/empty:/bin/sh"];
extraGroupLines = ["newuser:x:9001:"];
}
```
:::

Some files were not shown because too many files have changed in this diff Show More