Commit Graph

5233 Commits

Author SHA1 Message Date
DavHau
dfcc51def7 fetchpatch: allow empty hash
Previously, when sha256 either wasn't defined or set to an empty string
fetchpatch would error out as follows:

'''
warning: found empty hash, assuming 'sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA='
...
/nix/store/agwlk2bcfvz2ggrsbvwd7696qj55frbi-stdenv-linux/setup: line 96: /build/: Is a directory
sed: couldn't flush stdout: Broken pipe
'''

This patch makes it show fetchurl's error message instead:

'''
warning: found empty hash, assuming 'sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA='
...
error: hash mismatch in fixed-output derivation:
         specified: sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
            got:    sha256-NWGWoyEgT/ztCwbhNgGPvG+nqX4bxtFnD+wds6fklbs=
'''

This is very convenient for TOFU.

Co-Authored-By: Ivar Scholten <ivar.scholten@protonmail.com>
2022-02-02 12:15:47 +01:00
github-actions[bot]
87efa4e516
Merge staging-next into staging 2022-01-31 12:01:50 +00:00
Jan Tojnar
54b828006e Merge branch 'staging-next' into staging 2022-01-31 12:57:47 +01:00
Vincent Ambo
af9f248926 streamLayeredImage: pass through passthru attributes
This is useful for a use-case we have with a Nix-based CI system that
specifies things like deploy steps as passthru attributes[0].

Previously the only way to do this would have been to concatenate
attributes onto the resulting derivation, but passing them in and
actually treating them as proper passthru attributes is cleaner.

[0]: https://cs.tvl.fyi/depot@f7d7da6aceb407b719cf4683a75878fd3aca319e/-/blob/nix/buildkite/default.nix?L222-226
2022-01-31 10:10:10 +03:00
Felix Buehler
70ee115571 from-quicklisp: move urls-from-page.sh to its directory 2022-01-30 23:34:40 +01:00
github-actions[bot]
0b0b544416
Merge staging-next into staging 2022-01-30 00:02:26 +00:00
Thomas Watson
d8bb89b9ff make-initrd: fix reproducibility problems with hard links 2022-01-29 18:07:11 -05:00
Colin
66d547dec8
garble: 20200107 -> 0.5.1, switch to go_1_17
This was pretty straightforward, note that go1.17 is explicitly required
by v0.5.1, and one of the tests requires git, so I added it to the
checkInputs.

Also the tests now pass and don't need the mangle, so I removed the
patch. I left the darwin/aarch64 patch in.
2022-01-30 07:42:46 +10:00
Jan Tojnar
2da5ce4ab3 Merge branch 'staging-next' into staging
; Conflicts:
;	pkgs/development/python-modules/fakeredis/default.nix
2022-01-28 14:05:11 +01:00
Sandro
27cccd4e49
Merge pull request #151363 from Stunkymonkey/doc-updateWalker 2022-01-27 14:06:36 +01:00
Dmitry Kalinkin
0693fd77f7
Merge branch 'staging-next' into staging
Conflicts:
	nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
	nixos/doc/manual/release-notes/rl-2205.section.md
	pkgs/development/python-modules/aioesphomeapi/default.nix
	pkgs/development/python-modules/mat2/default.nix
	pkgs/development/python-modules/pydevccu/default.nix
	pkgs/development/python-modules/pywlroots/default.nix
	pkgs/development/python-modules/rokuecp/default.nix
2022-01-27 00:54:10 -05:00
polykernel
4a9d9928dc nixos/nix-daemon: use structural settings
The `nix.*` options, apart from options for setting up the
daemon itself, currently provide a lot of setting mappings
for the Nix daemon configuration. The scope of the mapping yields
convience, but the line where an option is considered essential
is blurry. For instance, the `extra-sandbox-paths` mapping is
provided without its primary consumer, and the corresponding
`sandbox-paths` option is also not mapped.

The current system increases the maintenance burden as maintainers have to
closely follow upstream changes. In this case, there are two state versions
of Nix which have to be maintained collectively, with different options
avaliable.

This commit aims to following the standard outlined in RFC 42[1] to
implement a structural setting pattern. The Nix configuration is encoded
at its core as key-value pairs which maps nicely to attribute sets, making
it feasible to express in the Nix language itself. Some existing options are
kept such as `buildMachines` and `registry` which present a simplified interface
to managing the respective settings. The interface is exposed as `nix.settings`.

Legacy configurations are mapped to their corresponding options under `nix.settings`
for backwards compatibility.

Various options settings in other nixos modules and relevant tests have been
updated to use structural setting for consistency.

The generation and validation of the configration file has been modified to
use `writeTextFile` instead of `runCommand` for clarity. Note that validation
is now mandatory as strict checking of options has been pushed down to the
derivation level due to freeformType consuming unmatched options. Furthermore,
validation can not occur when cross-compiling due to current limitations.

A new option `publicHostKey` was added to the `buildMachines`
submodule corresponding to the base64 encoded public host key settings
exposed in the builder syntax. The build machine generation was subsequently
rewritten to use `concatStringsSep` for better performance by grouping
concatenations.

[1] - https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md
2022-01-26 21:04:50 -05:00
Felix Buehler
59c55f4558 update-walker: remove because unused 2022-01-26 21:46:59 +01:00
Martin Weinelt
48f17360d9 Merge remote-tracking branch 'origin/master' into staging-next 2022-01-25 15:53:19 +01:00
Alyssa Ross
1a60dd2adc
Merge remote-tracking branch 'nixpkgs/staging-next' into staging
Conflicts:
	pkgs/development/python-modules/cupy/default.nix
	pkgs/development/python-modules/staticjinja/default.nix
2022-01-24 15:39:34 +00:00
Jonathan Ringer
4bde5a3a68
libredirect: fix build for aarch64-darwin (PR #156460) 2022-01-24 12:20:51 +01:00
Zhong Jianxin
57829cc246 fetchgithub: Support sparseCheckout 2022-01-24 11:31:41 +08:00
Zhong Jianxin
36cc03e151 fetchgit: Add test for sparseCheckout 2022-01-24 11:23:56 +08:00
Zhong Jianxin
d03a07d5a7 fetchgit: Support sparse checkout
This allow git checkout small parts of a large repo, and avoid fetching
unnecessary blobs from server.
2022-01-24 11:23:56 +08:00
Robert Scott
e3e0626730
Merge pull request #155519 from risicle/ris-libredirect-unlink-rmdir-mktemp
libredirect: add support for `unlink(at)?`, `rmdir`, `mko?stemps?`, `mkd?temp`
2022-01-21 23:50:54 +00:00
github-actions[bot]
b74b591fbe
Merge master into staging-next 2022-01-20 00:01:46 +00:00
Andreas Rammhold
31e5b8dc21
Remove myself from maintainers
I don't have time and energy to deal with all of this anymore.
2022-01-20 00:24:52 +01:00
github-actions[bot]
0fdca24272
Merge master into staging-next 2022-01-19 00:01:38 +00:00
Linus Heckemann
f76bef6136
Merge pull request #145258 from Ma27/steam-resolv-conf-override
steam: fix `/etc/resolv.conf` reference in FHS env
2022-01-18 22:59:08 +01:00
Robert Scott
86783a69c2 libredirect: add support for mktemp 2022-01-18 20:20:29 +00:00
Robert Scott
d38832ace0 libredirect: add support for mkdtemp 2022-01-18 20:20:28 +00:00
Robert Scott
2185a70fa4 libredirect: add support for mkstemp family of functions 2022-01-18 20:20:28 +00:00
Robert Scott
b3a7dc22d1 libredirect: add support for unlink, unlinkat, rmdir
add coverage of these and mkdir functions in tests
2022-01-18 20:20:27 +00:00
github-actions[bot]
d1d6f982a8
Merge master into staging-next 2022-01-16 18:00:59 +00:00
Pavol Rusnak
5c32667d6e
Merge pull request #154677 from IvarWithoutBones/dotnetModule-installphase
buildDotnetModule: wrap executables in preFixup
2022-01-16 15:22:54 +01:00
github-actions[bot]
0173b359a6
Merge master into staging-next 2022-01-16 12:01:11 +00:00
Christian Kampka
b648a4742e
skawarePackages.buildPackage: reformat with nixpkgs-fmt 2022-01-15 22:06:56 +01:00
Christian Kampka
bb88853516
skawarePackages: fix llvm build 2022-01-15 21:56:26 +01:00
Jörg Thalheim
37ed2951d2
libredirect: improve musl support (#154039)
__nss_files_open is glibc only. Also mark some linux specific system
calls as such for better portability with other unixes.
2022-01-12 01:35:23 -05:00
IvarWithoutBones
fcbd429742 buildDotnetModule: wrap executables in preFixup
Not doing this used to break wrapGAppsHook as gappsWrapperArgs is set in preFixup, but it was used in installPhase
2022-01-12 00:23:53 +01:00
Jan Tojnar
f7aa55946b Merge branch 'staging-next' into staging
; Conflicts:
;	nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
;	nixos/doc/manual/release-notes/rl-2205.section.md
;	pkgs/build-support/libredirect/default.nix
2022-01-10 01:26:05 +01:00
Graham Christensen
de94824ee4
Merge pull request #153457 from heyarne/bugfix/build-graalvm-native-image-utf8
buildGraalVmNativeImage: enable utf-8 by default
2022-01-09 09:14:29 -05:00
github-actions[bot]
3ce63131a1
Merge master into staging-next 2022-01-09 00:01:57 +00:00
Robert Hensing
91917122d3
Merge pull request #126718 from roberth/testEqualDerivation
testEqualDerivation: init
2022-01-08 21:44:21 +01:00
Robert Hensing
d75b85c5dc
Merge pull request #147690 from pasqui23/hosts
concatTextFile: init
2022-01-08 20:40:31 +01:00
github-actions[bot]
b40a01817b
Merge master into staging-next 2022-01-08 18:01:00 +00:00
Robert Hensing
c555a4e329 testEqualDerivation: init 2022-01-08 15:18:57 +01:00
Dmitry Bogatov
17577f6b54
pkgsStatic.libredirect: print error message why it won't work
The whole point of libredirect is manipulation with LD_PRELOAD, which is not
supposed to work on static builds.
2022-01-08 14:14:35 +00:00
github-actions[bot]
cf7efe1192
Merge staging-next into staging 2022-01-08 12:01:36 +00:00
Dmitry Kalinkin
477540469e
Merge branch 'master' into staging-next
Conflicts:
	pkgs/development/python-modules/gradient-utils/default.nix
	pkgs/development/python-modules/gradient/default.nix
2022-01-08 02:39:35 -05:00
Jonas Chevalier
1e910209ae
mkShell: make it buildable (#153194)
When I designed `mkShell`, I didn't have a good idea of what the output
should look like and so decided to make the build fail. In practice,
this causes quite a bit of confusion and complications because now the
shell cannot be part of a normal package set without failing the CI as
well.

This commit changes that build phase to record all the build inputs in a
file. That way it becomes possible to build it, makes sure that all the
build inputs get built as well, and also can be used as a GC root.
(by applying the same trick as #95536).

The documentation has also been improved to better describe what mkShell
does and how to use it.
2022-01-08 01:54:04 +01:00
Moritz Angermann
38377ab026
libredirect: build fat library for x86_64, arm64, arm64e on darwin (#153441)
macOS's dyld can be rather picky as to what dylib it accepts. This
even changes across macOS versions. Therefore we now build a fat
dylib with all three architectures (x86_64, arm64, arm64e). This
should then be compatible with pretty much any macOS's dyld.
2022-01-07 18:32:21 -05:00
github-actions[bot]
1342506d40
Merge staging-next into staging 2022-01-07 00:04:19 +00:00
github-actions[bot]
4da57fcb62
Merge master into staging-next 2022-01-07 00:01:42 +00:00
Renaud
952aa6f820
Merge pull request #148606 from McSinyx/fetch-srht-recurse
fetchFromSourcehut: allow recursive fetching
2022-01-06 22:55:23 +01:00
Pasquale
86e2880d11
tests.concat: added empty case 2022-01-04 23:14:50 +01:00
heyarne
ce9b3a3723 buildGraalVmNativeImage: enable utf-8 by default
The tools built with buildGraalVmNativeImage have broken UTF-8 support
when not properly setting the locale, e.g.

$ bb -e '(prn "bépo àê")'
"b??po ????"

This commit sets the locale to en_US.UTF-8 by default, which fixes that.
2022-01-04 09:56:34 +01:00
github-actions[bot]
d6a3b9cec5
Merge staging-next into staging 2022-01-04 06:01:41 +00:00
github-actions[bot]
872c4bf219
Merge master into staging-next 2022-01-04 06:01:03 +00:00
github-actions[bot]
25662d01ae
Merge staging-next into staging 2022-01-04 00:02:40 +00:00
Dmitry Kalinkin
7a95bc1b14
garble: mark as broken on darwin 2022-01-03 18:53:54 -05:00
Martin Weinelt
11a0b61783 Merge remote-tracking branch 'origin/master' into staging-next 2022-01-03 23:21:08 +01:00
Nguyễn Gia Phong
b97ccaa18d
fetchFromSourcehut: allow recursive fetching 2022-01-03 16:37:16 +07:00
Sandro
5f58402c94
fetchurl: also check certificate when using all zero hash (#152608) 2022-01-02 13:01:17 +01:00
Ben Pye
29b40b07db fhs-userenv-bubblewrap: allow additional arguments to bwrap 2022-01-01 16:53:27 -08:00
Ryan Burns
85cc2c3e8a
Merge pull request #152829 from r-burns/libredirect-musl
[staging] libredirect: fix musl build
2022-01-01 14:51:56 -08:00
Moritz Angermann
14996789a1
Check link type based on expanded parameters
So far we've ignored response files in arguments, and did not
check linkType against expanded parameters.  This means if
we have `-static` in a @reponse-file, linkType will not be
set to `-static` as we never check against the expanded arguments
from response files.
2022-01-01 20:30:56 +08:00
github-actions[bot]
38dc27dab2
Merge staging-next into staging 2022-01-01 00:02:16 +00:00
github-actions[bot]
c30032af77
Merge master into staging-next 2022-01-01 00:01:38 +00:00
Yana Timoshenko
719567e91f maintainers: update personal details 2021-12-31 21:48:55 +03:00
github-actions[bot]
f2adf20b71
Merge staging-next into staging 2021-12-31 18:01:40 +00:00
github-actions[bot]
df24694c45
Merge master into staging-next 2021-12-31 18:01:05 +00:00
Jörg Thalheim
2b91ac56ad
Merge pull request #152458 from alyssais/vmTools-test
vmTools/test: fix
2021-12-31 15:48:41 +00:00
Jörg Thalheim
d6fee2a44a vmTools/test: fix pcmanfm instead of pan
This goes much quicker. Also disable parallel build for machines with
many cores to avoid running out of memory.
2021-12-31 16:47:22 +01:00
Jan Tojnar
d995596052 Merge branch 'staging-next' into staging
; Conflicts:
;	nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
;	nixos/doc/manual/release-notes/rl-2205.section.md
2021-12-31 15:32:37 +01:00
Jan Tojnar
380c030740 Merge branch 'master' into staging-next
; Conflicts:
;	pkgs/development/python-modules/aiohttp-socks/default.nix
;	pkgs/development/python-modules/emv/default.nix
;	pkgs/development/python-modules/mocket/default.nix
;	pkgs/development/python-modules/types-protobuf/default.nix
2021-12-31 07:26:03 +01:00
Ryan Burns
830900ff6a libredirect: fix musl build 2021-12-30 15:29:30 -08:00
IvarWithoutBones
612f808fcc buildDotnetModule: stop passthru attributes from being overwritten 2021-12-30 18:55:03 +01:00
Pasquale
5187d2cd8f
concatText: test now works 2021-12-30 13:12:34 +01:00
Yureka
c420487e0b fetchYarnDeps: support more url types 2021-12-30 11:13:25 +01:00
Alyssa Ross
37c5db5a29
vmTools/test: add missing backing format 2021-12-28 13:10:16 +00:00
Alyssa Ross
80b5b4917c
vmTools/test: give pan build more memory 2021-12-28 13:10:15 +00:00
Alyssa Ross
55b883448e
vmTools.buildRPM: properly derive source name
This fixes e.g. building the rpm of patchelf as in
pkgs/build-support/vm/test.nix.  The glob won't work if there are
multiple spec files but I don't think rpmbuild would work in that case
either.
2021-12-28 13:10:13 +00:00
Alyssa Ross
e0455e1e29
vmTools: fix phases
These gave missing attribute errors.  They should have been written as
strings in ae9337179b.

Fixes: ae9337179b ("vm: deprecate phases")
Fixes: 52b10ee872 ("vmTools refactor: don't use huge `with pkgs;`")
2021-12-28 13:10:11 +00:00
Alyssa Ross
812fe6a2b3
vmTools/test: update for new releases 2021-12-28 12:40:57 +00:00
github-actions[bot]
6c181e1244
Merge staging-next into staging 2021-12-28 12:01:59 +00:00
github-actions[bot]
2e759d4fd0
Merge master into staging-next 2021-12-28 12:01:23 +00:00
Jörg Thalheim
61d501ee3f
Merge pull request #152197 from K900/patch-3
rust/hooks: ensure the build output ends up in the right place
2021-12-28 11:33:07 +00:00
Gabriella Gonzalez
07f1f2ca9c
makeWrapper: Add --prefix-each flag (#145104)
This is for symmetry with `--suffix-each`, and also because
(in my limited experience), `--prefix-each` is more useful since it
ensures that the new entries superseded the existing `PATH` entries
2021-12-27 22:15:06 -08:00
Naïm Favier
10ec5da56e tests.trivial-builders.overriding: update after shellDryRun 2021-12-27 20:30:01 -05:00
Naïm Favier
f2065d81ad stdenv/generic: introduce shellDryRun
Add `shellDryRun` to the generic stdenv and substitute it for uses of
`${stdenv.shell} -n`. The point of this layer of abstraction is to add
the flag `-O extglob`, which resolves #126344 in a more direct way.
2021-12-27 20:30:01 -05:00
Thiago Kenji Okada
24f9dcd06b buildGraalvmNativeImage: fix meta 2021-12-27 19:49:52 -03:00
K900
deb7e771aa rust/hooks: ensure the build output ends up in the right place
Otherwise cargoInstallHook can fail to find and actually install it.
2021-12-26 11:04:07 +03:00
Dmitry Kalinkin
2ddda43924
Merge branch 'staging' into staging-next
Conflicts:
	pkgs/os-specific/linux/kernel/common-config.nix
2021-12-25 17:16:26 -05:00
Dmitry Kalinkin
2ab60f6132
Merge pull request #146205 from expipiplus1/ellie-libsurvive2
lapack: include lapacke_utils.h in alternatives/lapack
2021-12-25 17:07:33 -05:00
Maximilian Bosch
f3f82d8330
steam: fix /etc/resolv.conf reference in FHS env
It seems as if it's a problem if `/etc/resolv.conf` is a symlink to
`/run/systemd/resolve/stub-resolv.conf` which is the case when using
`systemd-resolved.service`:

    bwrap: Can't bind mount /oldroot/etc/resolv.conf on /newroot/etc/resolv.conf: Unable to mount source on destination: No such file or directory

I confirmed that by following the symlink of `/etc/resolv.conf`
(pointing to `/run/systemd/resolve/stub-resolv.conf`) with `readlink -f`
the issues are all gone.
2021-12-25 19:32:52 +01:00
github-actions[bot]
b7f2d2da61
Merge master into staging-next 2021-12-24 00:01:44 +00:00
Felix Buehler
81eb599e8d nuget-to-nix: update to use pname instead of name 2021-12-23 22:47:34 +01:00
Felix Buehler
989e950f48 buildDotnetPackage: rename baseName to pname 2021-12-23 22:46:35 +01:00
github-actions[bot]
5e2c1acfa3
Merge master into staging-next 2021-12-22 18:01:00 +00:00
Tomas Bravo
80ab168c4a nix-prefetch-git: fix incorrect mktemp usage 2021-12-22 16:45:18 +01:00
Pavol Rusnak
4c252f40af
Merge pull request #151468 from IvarWithoutBones/dotnetmodule-tests
buildDotnetModule: restore and build testProjectFile
2021-12-22 15:12:09 +01:00
github-actions[bot]
39d035c4cf
Merge master into staging-next 2021-12-22 00:01:35 +00:00
Doron Behar
203bc068e0
Merge pull request #151573 from ncfavier/make-binary-wrapper/mkdir 2021-12-21 20:37:06 +02:00
Naïm Favier
ffdf9681ab
makeBinaryWrapper: create destination directory 2021-12-21 18:22:49 +01:00