3
0
Fork 0
forked from mirrors/nixpkgs
Commit graph

4294 commits

Author SHA1 Message Date
Andreas Rammhold 278b273d9a
Merge pull request #102251 from andir/random-seed
stdenv: introduce -frandom-seed
2020-11-19 01:07:28 +01:00
Frederik Rietdijk da12fc6838 Merge staging-next into staging 2020-11-18 15:36:56 +01:00
Frederik Rietdijk 986c2d36da Merge master into staging-next 2020-11-16 09:01:53 +01:00
John Ericson 86fedc3a92
Merge pull request #102766 from siraben/mmix
Initial implementation of cross-compilation to Knuth's MMIX
2020-11-14 12:46:24 -05:00
hlolli 49c789703c
fetchMavenArtifact: support artifact classifier syntax 2020-11-14 00:55:44 +01:00
zowoq 473b341fb1 bintools-wrapper: remove redundant arg
cctools 949.0.1 warns if min version is passed twice.
2020-11-14 07:11:29 +10:00
Samuel Dionne-Riel 6d8327ea96 Initial support for OpenRISC 1000 (or1k) 2020-11-09 22:32:11 -05:00
Ben Siraphob 445dde6304 Initial implementation of mmix cross-compile 2020-11-09 19:49:55 +07:00
Samuel Gräfenstein 0950c98059 docker: add final newline to detjson.py 2020-11-09 11:39:28 +00:00
Samuel Gräfenstein 22b73d1282 pkgs/*: add final newline to .nix files 2020-11-09 11:39:28 +00:00
DavHau 05fa0f1a2e improve things shellcheck complains about 2020-11-07 18:08:48 +07:00
Robert Hensing 06df74607f
Merge pull request #101403 from mickours
Fix broken pipe error on docker layer creation
2020-11-05 00:17:36 +01:00
Michael 24c5059468 docker: Fix broken pipe on docker layer creation
Add `-p` to the `tee` command to avoid exiting on breaking pipe due to
tarsum finishing before tar which creating docker layers.
2020-11-03 12:33:11 +01:00
Andreas Rammhold 83f0bccc89 stdenv: add -frandom-seed to NIX_CFLAGS_COMPILE for reproducibility
This adds -frandom-seed to each compiler invocation in stdenv. The
object here is to make the compierl invocations produce the same output
every time they are called (for the same derivation). When the
-frandom-seed option is not set the compiler will use a combination of
random numbers (in GCC's case from /dev/urandom) and the durrent time to
produce a "random" input per file. This can (among other things) lead to
different ordering of symbols in the produced object files.

For reason of reproducibility we prefer having the same derivation
produce the exact same outputs. This is not a silver bullet but one way
to tame the compiler.
2020-11-01 19:40:12 +01:00
Vladimír Čunát dfd3ede68d
Merge branch 'master' into staging-next 2020-10-31 14:30:44 +01:00
Jonathan Ringer ec38df81a9 buildFHSUserEnvBubblewrap: fix whitespace with root directories 2020-10-30 22:52:58 -07:00
Matthew Bauer 989b403c7f
Merge pull request #96318 from matthewbauer/provide-patchelf-in-native-stdenv
stdenv/native: provide patchelf on linux
2020-10-30 13:32:13 -05:00
Jörg Thalheim d420c85a55
Merge pull request #102123 from lopsided98/nginx-conf-cross
writers.writeNginxConfig: fix cross-compilation
2020-10-30 12:45:04 +01:00
Ben Wolsieffer 4366281075 writers.writeNginxConfig: fix cross-compilation
Native versions of awk, sed and gixy need to be used.
2020-10-29 21:39:22 -04:00
Matthieu Coudron 1f9ab74d4c buildBazelPackage: build name from pname/version
and updated bazel-remote accordingly.
2020-10-28 17:55:10 +01:00
DavHau 112f275f4d
autoPatchelfHook: fix typos in comments 2020-10-26 17:17:07 +07:00
Vladimír Čunát 89023c38fc
Recover the complicated situation after my bad merge
I made a mistake merge.  Reverting it in c778945806 undid the state
on master, but now I realize it crippled the git merge mechanism.
As the merge contained a mix of commits from `master..staging-next`
and other commits from `staging-next..staging`, it got the
`staging-next` branch into a state that was difficult to recover.

I reconstructed the "desired" state of staging-next tree by:
 - checking out the last commit of the problematic range: 4effe769e2
 - `git rebase -i --preserve-merges a8a018ddc0` - dropping the mistaken
   merge commit and its revert from that range (while keeping
   reapplication from 4effe769e2)
 - merging the last unaffected staging-next commit (803ca85c20)
 - fortunately no other commits have been pushed to staging-next yet
 - applying a diff on staging-next to get it into that state
2020-10-26 09:01:04 +01:00
Vladimír Čunát c778945806
Revert "Merge #101508: libraw: 0.20.0 -> 0.20.2"
I'm sorry; I didn't notice it contained staging commits.

This reverts commit 17f5305b6c, reversing
changes made to a8a018ddc0.
2020-10-25 09:41:51 +01:00
Ashish SHUKLA 4eb42a4f1d
fetchfossil: Depend on cacert
Without it, it'll not able to verify SSL certificates, rendering
it mostly useless
2020-10-24 16:43:05 +05:30
DavHau b9d2541a37
autoPatchelfHook: store dependant for dependency 2020-10-23 13:21:08 +07:00
DavHau f833f0406f
autoPatchelfHook: print dependant for missing deps 2020-10-23 13:16:23 +07:00
DavHau 11a08bcfad
Apply suggestions from code review
Co-authored-by: symphorien <symphorien@users.noreply.github.com>
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2020-10-22 10:15:42 +07:00
Symphorien Gibol a5a383a389 nix-gitignore: filter-out .git 2020-10-21 12:00:00 +00:00
Frederik Rietdijk 23890fc236 Merge staging-next into staging 2020-10-20 20:55:46 +02:00
DavHau 5c382b7f0e autoPatchelfHook: optimize performance, better error handling 2020-10-20 19:09:32 +07:00
Jan Tojnar 5c766c5c24
Merge branch 'staging-next' into staging 2020-10-18 21:21:03 +02:00
Daniël de Kok 48a20e9337 validatePkgConfig: fix variable scope
validatePkgConfig failed due to a wrong variable scope, as reported in
issue #100834. This change corrects the variable scoping.
2020-10-18 14:00:05 +02:00
Aaron Janse 512458c68a add sysroot lockfile update script then run it 2020-10-17 01:34:51 -07:00
Aaron Janse d884b2d877 NEEDS REVIEW: enable sysroot differently 2020-10-17 00:48:38 -07:00
Aaron Janse 7c92361028 enforce noCheck when useSysroot 2020-10-17 00:47:14 -07:00
Aaron Janse dec97eb3e9 minor clean up 2020-10-17 00:45:27 -07:00
Aaron Janse e745f9333e fix whitespace 2020-10-15 19:03:10 -07:00
Aaron Janse d906fda8d2 parameterize rustcSrc 2020-10-15 17:27:51 -07:00
Leon Vack f275b320d9
make-desktopitem: name was being used instead of desktopName
Name should be used as filename and desktopName for the name attribute of the desktop entry (according to docs).
2020-10-15 14:29:32 +02:00
Aaron Janse a153be896f use rustcSrc 2020-10-14 22:54:04 -07:00
maralorn ae2630c96a
Merge pull request #91790 from piegamesde/improve-makedesktopitem
make-desktopitem: refactoring, documentation and improvement
2020-10-15 02:42:12 +02:00
John Ericson c0df12de5d rust: Add support for managing target JSON in Nix 2020-10-14 04:20:23 +00:00
John Ericson 6866f26c89 Merge remote-tracking branch 'upstream/master' into aj-rust-custom-target 2020-10-14 02:54:31 +00:00
piegames 3a76d4caea make-desktopitem: minor fixes and code style 2020-10-14 01:19:43 +02:00
Frederik Rietdijk dc0aeee5db Merge staging-next into staging 2020-10-13 19:35:37 +02:00
Frederik Rietdijk 9e1943edc0 Merge master into staging-next 2020-10-13 19:34:34 +02:00
Aaron Janse 3f3491d64d fix some whitespace 2020-10-12 18:41:13 -07:00
Aaron Janse 0fca6ba580 fix compile error 2020-10-12 14:48:07 -07:00
John Ericson d3d55bcc81
Merge pull request #99066 from lopsided98/buildrustcrate-target-vars
buildRustCrate: fix target config environment variables on 32-bit ARM
2020-10-11 16:46:29 -04:00
Lily Ballard 03c9f6a647 installShellFiles: Add test suite 2020-10-08 15:08:40 -07:00
Lily Ballard 866a7de409 Fix doc comment for installManPage 2020-10-08 15:08:40 -07:00
Lily Ballard 7e1e8543fc installShellFiles: Enhance installShellCompletion
Teach installShellCompletion how to install completions from a named
pipe. Also add a convenience flag `--cmd NAME` that synthesizes the name
for each completion instead of requiring repeated `--name` flags.

Usage looks something like

    installShellCompletion --cmd foobar \
      --bash <($out/bin/foobar --bash-completion) \
      --fish <($out/bin/foobar --fish-completion) \
      --zsh <($out/bin/foobar --zsh-completion)

Fixes #83284
2020-10-08 15:08:40 -07:00
Aaron Janse f8ea4e0c3d makeRustPlatform: support custom targets 2020-10-08 14:32:49 -07:00
Frederik Rietdijk 692d219a93 Merge staging-next into staging 2020-10-06 10:25:58 +02:00
Ben Wolsieffer 91bc6128b9 buildRustCrateTests: support cross-compilation 2020-09-29 14:33:49 -04:00
Ben Wolsieffer f0fdecfbb4 buildRustCrate: fix target config environment variables on 32-bit ARM 2020-09-29 01:40:06 -04:00
John Ericson cffc0eaa98
Merge pull request #99050 from lopsided98/buildrustcrate-cross
buildRustCrate: support cross compilation
2020-09-29 00:13:26 -04:00
Ben Wolsieffer a0e7613509 defaultCrateOverrides: move pkgconfig to nativeBuildInputs
This fixes cross-compiling.
2020-09-28 19:47:52 -04:00
Ben Wolsieffer 295a6690f9 buildRustCrate: support cross compilation 2020-09-28 19:46:04 -04:00
Jan Tojnar 32b4375f10
Merge branch 'staging-next' into staging 2020-09-29 00:12:29 +02:00
Jan Tojnar d471c5d1f3
Merge branch 'staging-next' into staging 2020-09-24 23:09:00 +02:00
Vladimír Čunát a8cda11090
Merge #97597: stdenv wrappers: improve purity checking 2020-09-24 10:58:10 +02:00
zowoq e4c71e6c6c buildRustPackage: support setting test-threads 2020-09-24 07:19:58 +10:00
Shea Levy b694eb6e6a
firmware-manager: Init at 0.1.1 2020-09-23 06:01:05 -04:00
WORLDofPEACE 978e419abe Merge branch 'staging-next' into staging 2020-09-20 18:43:38 -04:00
WORLDofPEACE 34aaac6d7c Merge branch 'staging-next' into staging 2020-09-20 18:41:15 -04:00
zowoq 4482e5ec2c dotnetenv: editorconfig fixes 2020-09-21 08:30:58 +10:00
Lars Jellema 7ea5b08cfc gnat: fix build 2020-09-19 20:54:27 -07:00
Anderson Torres 6740a5998b
Merge pull request #93082 from cfhammill/cfh/fix-singularity-shell-copy
singularity-tools: Check for /bin/sh existence before symlink
2020-09-19 00:42:29 -03:00
Vladimír Čunát 372f89cc44
Merge branch 'master' into staging-next 2020-09-16 17:58:45 +02:00
Anderson Torres a5931fa6e3
Merge pull request #95409 from utdemir/stream_layered_image_fix
dockerTools.streamLayeredImage: Store the customisation layer as a tarball
2020-09-14 11:05:48 -03:00
WORLDofPEACE 4085eee678
Merge pull request #97801 from rycee/user-session-dbus2
Make socket activated user dbus session mandatory
2020-09-14 00:37:09 -04:00
WORLDofPEACE f5fdc6b240
Merge pull request #97894 from TethysSvensson/fixBusybox
busybox: Fix 404 error by using git instead
2020-09-13 14:25:22 -04:00
Tethys Svensson 43cd431b44 fetchgitlab: Escape a few more characters in the revision 2020-09-13 12:34:08 +02:00
Maximilian Bosch 25e60944c6
python3Packages.python-engineio: fix build w/glibc-2.32
Also had to wrap `__nss_files_fopen` in `libredirect` as this is the way
now `nss` uses to retrieve file-databases[1].

[1] https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=299210c1fa67e2dfb564475986fce11cd33db9ad;hp=469c03907b116c37c98d8ad7a9edac2bdbf3e934
2020-09-12 23:04:50 +02:00
Robert Helgesson fbc5093649
hooks: add moveSystemdUserUnitsHook
This hook moves systemd user service file from `lib/systemd/user` to
`share/systemd/user`. This is to allow systemd to find the user
services when installed into a user profile. The `lib/systemd/user`
path does not work since `lib` is not in `XDG_DATA_DIRS`.
2020-09-12 18:29:46 +02:00
Vladimír Čunát e88e14ec8d
Merge branch 'master' into staging-next
A few thousand rebuilds per platform have arrived in the meantime.
2020-09-11 14:24:13 +02:00
Tyson Whitehead 5796715bb7
Accept $TMP, $TMPDIR, $TEMP, and $TEMPDIR paths in purity check 2020-09-10 12:39:08 -04:00
John Ericson 5fd27509cf
Merge pull request #97387 from Ericson2314/fix-android-prebuilt
cc-wrapper: Fix for prebuilt android
2020-09-08 20:24:50 -04:00
John Ericson 204dc3a88b cc-wrapper: Fix for prebuilt android
We don't want to use Nix-built GCC's libs with prebuilt clang in this
case.
2020-09-07 15:08:11 -04:00
Dominik Xaver Hörl b20ec4f719 pkgs/build-support/writers: allow passing ghc arguments in writeHaskell 2020-09-07 19:36:58 +02:00
Frederik Rietdijk 5ceea5705a Revert "utils.bash: also "fix" cc-wrapper and pkg-config-wrapper"
Follow up to the revert in e560459c5b.

This reverts commit 1936b11f63.
2020-09-07 16:31:59 +02:00
Frederik Rietdijk be61518b91 Merge staging-next into staging 2020-09-07 16:31:37 +02:00
Frederik Rietdijk 1936b11f63 utils.bash: also "fix" cc-wrapper and pkg-config-wrapper 2020-09-07 07:19:26 +02:00
Frederik Rietdijk e560459c5b Revert "utils.bash: revert #93560 for darwin, unblocks channels"
Revert the hack and the original faulty commit.

This reverts commit 48264ee506.

Revert "Purity checking should accept $TMP and not just /tmp"

This reverts commit fb777be7d2.
2020-09-06 18:16:14 +02:00
Frederik Rietdijk 1d881848f8 Merge staging-next into staging 2020-09-06 18:15:07 +02:00
Frederik Rietdijk d362c0e54e Merge master into staging-next 2020-09-06 18:14:23 +02:00
Frederik Rietdijk 08eb704bc3 utils.bash: revert #93560 for darwin, unblocks channels
Temporary fix. We definitely do not want to have two separate
implementations.
2020-09-06 18:14:08 +02:00
Evan Stoll 19cb34b04b
buildSupport.rust: fix typo in verifyCargoDeps message (#97058) 2020-09-05 17:04:32 -04:00
Florian Klink 98d6b55fdc nixos/testing: remove remaining coverage-data logic
This isn't used anymore as per
https://github.com/NixOS/nixpkgs/pull/72354#discussion_r451031449.
2020-09-05 16:07:59 +02:00
Frederik Rietdijk af81d39b87 Merge staging-next into staging 2020-09-04 20:03:30 +02:00
Tyson Whitehead fb777be7d2 Purity checking should accept $TMP and not just /tmp 2020-09-04 19:58:46 +02:00
Jan Tojnar 5079e1cd3b
Merge pull request #96939 from jtojnar/drop-gst-010 2020-09-04 17:13:43 +02:00
Utku Demir ae82f81bfa
dockerTools.streamLayeredImage: Store the customisation layer as a tarball
This fixes as issue described here[1], where permissions set by 'extraCommands'
were ignored by Nix.

[1] https://github.com/NixOS/nixpkgs/pull/91084#issuecomment-669834938
2020-09-04 16:53:23 +12:00
Matthew Bauer 3a9b91b486
Merge pull request #96562 from obsidiansystems/bazel-add-dont-add-bazel-opts
build-bazel-package: add dontAddBazelOpts arg
2020-09-02 16:29:53 -05:00
John Ericson 1965a241fc
Merge pull request #61019 from volth/gcc.arch-amd
platform.gcc.arch: support for AMD CPUs
2020-09-01 22:31:16 -04:00
Jan Tojnar d2d24c9a2b
appimage: remove ancient gst dep
it is insecure and broken
2020-09-02 02:24:07 +02:00
Matthew Bauer 27fb209194 build-bazel-package: add dontAddBazelOpts arg
This adds an option to skip adding --copt and --linkopt to Bazel
flags. In some cases, Bazel doesn’t like these flags, like when a
custom toolchain is being used (as opposed to the builtin one. The
compiler can still get the dependencies since it is invoked through
gcc wrapper and picks up the NIX_CFLAGS_COMPILE / NIX_LDFLAGS.
2020-08-28 15:10:59 -05:00
Linus Heckemann 86fa61033a
Merge pull request #96008 from baloo/baloo/bugfixes/make-modules-closure_firmware
makeModulesClosure: fixup firmware extraction
2020-08-28 14:04:10 +02:00
Daniël de Kok 923c9f62c4 fetchCrate: accept pname besides crateName
This enables short argument attrsets similar to fetchPypi:

src = fetchCrate {
  inherit pname version;
  sha256 = "02h8pikmk19ziqw9jgxxf7kjhnb3792vz9is446p1xfvlh4mzmyx";
};
2020-08-28 08:34:22 +02:00
Arthur Gautier 70bc1a3f49 makeModulesClosuse: read modules from corrent kernel version
Before this commit, the firmware information would be loaded from the
currently running kernel, not from the kernel to be loaded.

This commit ensures the correct kernel version and modules are read.
2020-08-27 10:48:18 -07:00
Arthur Gautier ee8572d6b3 makeModulesClosure: fixup firmware extraction
After a recent upgrade of modinfo, its output is now incorrect for
builtin modules. This commit filters out the output until a fix is made
available upstream
2020-08-27 10:45:23 -07:00
Matthew Bauer 4830967736 Fix cc-wrapper in native stdenv 2020-08-26 14:36:26 -05:00
Jan Tojnar 58377555ed
Merge branch 'staging-next' into staging 2020-08-23 02:18:27 +02:00
Jan Tojnar 91104b5417
Merge branch 'master' into staging-next 2020-08-23 02:00:50 +02:00
Jörg Thalheim 542f4e4ad0
Merge pull request #95622 from marsam/buildrustpackage-parallel-build
buildRustPackage: add support for parallel build
2020-08-19 17:33:46 +01:00
Jörg Thalheim bd0e645f02
Merge pull request #94442 from Atemu/buildFHSUserEnvBw 2020-08-19 17:28:02 +01:00
Frederik Rietdijk 0ac85bc455 Merge master into staging-next 2020-08-17 14:54:39 +02:00
Jörg Thalheim b1d86d0e51 build-fhs-user-env-bubblewrap: consistent camelCase 2020-08-17 10:05:25 +02:00
Michael Eden 8c91b3c5b7 fhs-userenv-bubblewrap: bind mount host's devfs
Allows us to talk to devices
2020-08-17 08:49:34 +02:00
Michael Eden 2da4f24e22 fhs-userenv-bubblewrap: bind mount parts of host etc directly 2020-08-17 08:49:29 +02:00
Michael Eden 2ddb43ec24 fhs-userenv-bubblewrap: change to using bubblewrap over chrootenv 2020-08-17 08:49:24 +02:00
Atemu fafbfd2305 fhs-userenv-bubblewrap: start with build-fhs-userenv
Just here to track @illegalprime's actual changes to build-fhs-userenv in the
next commits
2020-08-17 08:48:31 +02:00
Mario Rodas b52808f1ad
buildRustPackage: add support for parallel build 2020-08-16 10:00:00 -05:00
Vladimír Čunát 3937923f81
nixos/systemd.tmpfiles.packages: fix an edge case
symlinkJoin can break (silently) when the passed paths contain symlinks
to directories.  This should work now.

Down-side: when lib/tmpfiles.d doesn't exist for some passed package,
the error message is a little less explicit, because we never get
to the postBuild phase (and symlinkJoin doesn't provide a better way):
/nix/store/HASH-NAME/lib/tmpfiles.d: No such file or directory

Also, it seemed pointless to create symlinks for whole package trees
and using only a part of the result (usually very small part).
2020-08-16 10:23:53 +02:00
Frederik Rietdijk cfe6081cee Merge staging-next into staging 2020-08-15 09:12:42 +02:00
Frederik Rietdijk d59c57f8a6
Merge pull request #92412 from matthewbauer/blas-cross
Blas/Lapack cross fixes
2020-08-15 08:55:57 +02:00
Jörg Thalheim 1f2c19f158
Merge pull request #68524 from nspin/pr/repo-manifest-name
fetchRepoProject: add manifestName parameter
2020-08-14 20:08:25 +01:00
Linus Heckemann efc739f1d2
Merge pull request #92081 from CrystalGamma/modules-closure
makeModulesClosure: handle builtin modules better
2020-08-13 22:37:36 +02:00
Frederik Rietdijk f707715136 Merge master into staging-next 2020-08-11 10:26:35 +02:00
zowoq 1439eaf07b buildRustCrate: editorconfig fixes 2020-08-09 17:47:12 +10:00
volth cf7b63df5b gcc.arch: refactor, move tables under lib/ 2020-08-05 11:18:26 +00:00
volth 463db72e63 platform.gcc.arch: support for AMD CPUs 2020-08-05 02:32:48 +00:00
John Ericson b5f7ed6846
Merge pull request #91293 from Ericson2314/cxx-wrapper-debt-part-2
treewide: Get rid of `cc.gcc`
2020-08-02 20:42:20 -04:00
John Ericson 92f96f47b0 treewide: Get rid of cc.gcc
Instead, we have a new `gccForLibs`, which has the appropriate
definition for e.g. avoiding `x86_32` linking problems.
2020-08-02 17:12:05 +00:00
Frederik Rietdijk 50c060d13d Merge master into staging-next 2020-08-01 19:37:20 +02:00
Johan Thomsen f5db415e2f nixos/tests/dockerTools: add test for running non-root containers with buildLayeredImage
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2020-07-31 10:14:07 +02:00
Johan Thomsen 9f86685cc7 dockerTools: fix permissions on /nix/store 2020-07-30 16:20:50 +02:00
Vladimír Čunát 60d89e5793
Merge branch 'master' into staging 2020-07-29 18:40:28 +02:00
John Ericson cd719c1eae
Merge pull request #91974 from Mic92/nostdinc
stdenv: make -nostdinc work as intended
2020-07-28 19:49:42 -04:00
Jan Tojnar d489409aaa
Merge pull request #85976 from jtojnar/wrap-gapps-hook-tests 2020-07-26 13:55:35 +02:00
Vladimír Čunát 2b7c0dcdaa
Merge branch 'staging-next'
Rebuild on Hydra seems OK-ish.
mongodb.nix needed some conflict resolution (scons versions);
all four versions seem to build fine.
2020-07-25 16:18:40 +02:00
Adrian a6133b7a39
writers.makeScriptWriter: fix on Darwin\MacOS (#93757)
* writers.makeScriptWriter: fix on Darwin\MacOS

On Darwin a script cannot be used as an interpreter in a shebang line, which
causes scripts produced with makeScriptWriter (and its derivatives) to fail at
run time if the used interpreter was wrapped with makeWrapper (as in the case
of python3.withPackages).

This commit fixes the problem by detecting if the interpreter is a script
and prepending its shebang to the final interpreter line.

For example if used interpreter is;
```
/nix/store/ynwv137n2650qy39swcflxbcygk5jwv1-python3-3.8.3-env/bin/python
```

which is a script with following shebang:
```
#! /nix/store/knd85yc7iwli8344ghav3zli8d9gril0-bash-4.4-p23/bin/bash -e
```

then the shebang line in the produced script will be
```
#! /nix/store/knd85yc7iwli8344ghav3zli8d9gril0-bash-4.4-p23/bin/bash -e /nix/store/ynwv137n2650qy39swcflxbcygk5jwv1-python3-3.8.3-env/bin/python
```

This works on Darwin since there does not seem to be a limit to the length
of the shabang line and the shebang lines support multiple arguments to
the interpreters (as opposed to linux where the kernel imposes a strict limit
on shebang lengh and everything following the interpreter is passed to it
as a single string).

fixes; #93609
related to: #65351 #11133 (and probably a bunch of others)

NOTE: scripts produced on platforms other than Darwin will remain unmodified
by this PR. However it might worth considering extending this fix to BSD systems
in general. I didn't do it since I have no way of testing it on systems other
than MacOS and linux.

* writers.makeScriptWriter: fix typo in comment

* writers.makeScriptWriter: fail build if interpreter of interpreter is a script
2020-07-25 11:47:20 +02:00
Lassulus a2ba53f4e1
Merge pull request #93758 from adrian-gierakowski/improve-writers.writePython
writers.writePython2 and writePython3: use "bare" python if no deps are needed
2020-07-25 11:43:56 +02:00
Jörg Thalheim 0216dbd769
Merge pull request #93165 from jbedo/singularity
singularity: 3.2.1 -> 3.6.1
2020-07-24 16:57:59 +01:00
Adrian Gierakowski 76437a88bb writers.writePython2 and writePython3: use "bare" python if no deps are needed
`python.withPackages` has a runtime dependecy on bash since it's wrapped with
`makeWrapper`. This fix avoids bash as runtime dependency when it's not
needed.

as discussed here: https://github.com/NixOS/nixpkgs/issues/93609#issuecomment-662880047
2020-07-24 11:39:01 +01:00
adisbladis e890823467
emacs: Add native builds for nativeComp enabled emacsen 2020-07-24 03:16:17 +02:00
Jan Tojnar 0be3b18d3e
wrapGAppsHook: add comments 2020-07-24 00:36:12 +02:00
Jan Tojnar 49b89afcc2
wrapGAppsHook: add tests 2020-07-24 00:36:04 +02:00
Jan Tojnar 69b89979ba
wrapGAppsHook: move to a separate file 2020-07-23 22:08:18 +02:00
Jörg Thalheim 96092dc936
stdenv: make -nostdinc work as intended
Right now we add glibc to search path also -nostdinc was provided,
which breaks projects providing their own gcc.
2020-07-23 08:39:46 +01:00
Frederik Rietdijk df0eab2726 Merge staging-next into staging 2020-07-22 16:50:25 +02:00
Daniël de Kok 68bd1c8552 blas: do not report an empty line for every checked symbol 2020-07-22 10:24:50 +02:00
Vladimír Čunát 7a5c6fee0f
Merge branch 'master' into staging-next
Some rebuilds, e.g. all of haskell.
Hydra nixpkgs: ?compare=1601713
2020-07-22 08:37:19 +02:00
Justin Bedo 712f1ee9aa
singularity: 3.2.1 -> 3.6.1 2020-07-22 08:51:37 +10:00
Ryan Mulligan b78ffda2b5
Merge pull request #93398 from IvarWithoutBones/appimage-run-fix
appimage: switch to gst-plugins-base 1.0
2020-07-21 08:12:13 -07:00
Vladimír Čunát 4244b73917
Merge branch 'master' into staging 2020-07-18 17:50:23 +02:00
IvarWithoutBones 0269421b7b appimage: switch to gst-plugins-base 1.0 2020-07-18 11:51:05 +02:00
zowoq 0f19b9ba72
Revert "Group packages by language/builder via dummy maintainer" 2020-07-18 17:45:08 +10:00
Luke Granger-Brown d7d4a92695 buildBazelPackage: add "fetchConfigured" for fetching only things required for the build
"bazel fetch" will, by default, fetch everything that _might_ be used,
including things that will later be discarded due to the way the build
is configured.

Concretely, this means that for some builds of Java packages, this will
avoid failures where the builder tries to retrieve the JDK from /usr/share/java
(or equivalent).

This also means that for most packages we can fetch _fewer_ dependencies,
since the standard tree pruning for artifacts to fetch will take effect.

fetchConfigured is disabled by default since it changes the fetch hashes
of tensorflow/tensorflow2 (since it ends up fetching less).
2020-07-17 18:29:58 +02:00
zowoq 2613e6d0e7 buildRustPackage: add nixpkgs-rust maintainer 2020-07-17 11:16:54 +10:00
CrystalGamma b155b1dafb makeModulesClosure: handle builtin modules better
The previous code discarded entire dependency trees if the first entry in the dependency list compiled by `modprobe --show-depends` is a builtin and otherwise handled its output in a rather hackish way.
2020-07-16 20:44:07 +02:00
Robert Hensing c1908bf802
Merge pull request #92934 from hercules-ci/dockerTools-set-imageTag
dockerTools: Always set imageTag attribute
2020-07-16 17:05:58 +02:00
Maximilian Bosch d2694d936e
rustPlatform: don't install artifacts modified by checkPhase
While the artifacts from `buildPhase` should be used for testing as
well, it should be avoided that those are modified during `checkPhase`.

This can happen if a package is built e.g. with special
`cargoBuildFlags` that don't apply to the `checkPhase`. In that case, a
binary would be installed into `$out` without those flags since
`checkPhase` overrides the binary in the `target`-directory.

This patch copies the state of `target/release` into a temporary
location at the end of the `buildPhase` and installs the results from
that temporary directory into `$out` while `checkPhase` can continue
using the configured build-dir.

cc #91689
Closes #93119
Closes #91191
2020-07-15 20:08:30 +02:00
Maximilian Bosch 7713fba8f8
Revert "buildRustPackage: fix cargoBuildFlags"
This reverts commit deb78151a9.

Mixing up two distinct phases of a derivation's build is not a good idea. See
also https://github.com/NixOS/nixpkgs/pull/91689#issuecomment-657813954.
2020-07-14 17:39:09 +02:00
cfhammill 8975b7b0e2 singularity-tools: Check for /bin/sh existence before symlink
Fixes the case where the user has bashInteractive in the
container contents
2020-07-13 17:20:14 -04:00
Robert Hensing 8c0459f611 dockerTools: Always set imageTag attribute
The image tag can be specified or generated from the output hash.
Previously, a generated tag could be recovered from the evaluated
image with some string operations.

However, with the introduction of streamLayeredImage, it's not
feasible to compute the generated tag yourself.

With this change, the imageTag attribute is set unconditionally,
for the buildImage, buildLayeredImage, streamLayeredImage functions.
2020-07-11 16:58:25 +02:00
Frederik Rietdijk ae8eee9c3f Merge master into staging-next 2020-07-11 08:59:54 +02:00
Jos van Bakel 66737168a4
dockerTools.buildLayeredImage: fix created=now 2020-07-09 09:34:18 +02:00
Matthew Bauer 669eb09bd5
Merge branch 'master' into fetchurl-no-hash 2020-07-06 14:40:49 -04:00
Utku Demir 06db331922
dockerTools: Verify nix-store contents on buildLayeredImage test 2020-07-06 16:59:58 +12:00
Utku Demir 2ae2186dfd
dockerTools.streamLayeredImage: Correctly copy hardlinks 2020-07-06 16:42:03 +12:00
Matthew Bauer e7ea3de835 blas: use $NM instead of nm
This is the right one on cross compilation.
2020-07-06 00:25:32 -04:00
Matthew Bauer f42aa7e1d7 cc-wrapper: set FC when langFortran is on
We need to set FC so that CMake and other tools can find the fortran
compiler. Also we need to limit the hardening flags since fortify and
format don’t work with fortran.

Fixes #88449
2020-07-06 00:22:19 -04:00
Utku Demir cc46362929
dockerTools: Support files directly under /nix/store
Also makes sure that the files inside a layer added in a sorted order
to make the results more deterministic.
2020-07-04 22:00:57 +12:00
Flakebi deb78151a9 buildRustPackage: fix cargoBuildFlags
When features were supplied in cargoBuildFlags, the binaries were built
with these features enabled. Unless checking was disabled, `cargo test`
was executed without these build flags, meaning the binaries were
rebuilt and overwritten without the specified features.

Fix this bug by running tests after the installation phase.
2020-07-03 08:53:57 +10:00
Vladimír Čunát 9dcb508f2d
Merge #92089: {cc,bintools}-wrapper: Some fixes 2020-07-02 23:23:04 +02:00
Frederik Rietdijk c33ca7c5ce Merge staging-next into staging 2020-07-02 17:14:53 +02:00
Vincent Laporte 885fb1406d ocamlPackages.buildOasis: fix handling of installation prefix 2020-07-02 07:13:34 +02:00
John Ericson 704daf7a6e {bintools,cc}-wrapper: Ensure nix-support/*-flags files exist
This will unbreak firefox and a few other packages which try to grab
some of the libcxx flags.
2020-06-30 18:26:37 +00:00
John Ericson 1085403acd {cc,bintools}-wrapper: Comments no longer spliced
This means we can freely keep the comments up to date without the
penalty of a mass rebuild.
2020-06-30 15:04:10 +00:00
piegames 51cc553307 make-desktopitem: refactoring, documentation and improvement
- New parameter `extraDesktopEntries` to easily add some less usual entries to the desktop file
- Rewrite of the core logic. Instead of a key-value-list, use an attribute set with nullable values to make it overridable
- Added some comments
- Some cosmetic/readability code refactors
	- I didn't like the doubly nested strings around the `fileValidation`
2020-06-29 23:23:50 +02:00
Alyssa Ross 1421404d42 stdenv: fix backward multiple outputs conditional
This is supposed to shareDocName to a fallback value if it can't be
determined from looking at the configure script.  But the conditional
checked whether shareDocName was set, rather than if it wasn't.  This
meant that if shareDocName had been detected from a configure script,
it would be immediately overridden by the package name, and if it
couldn't be detected, shareDocName would remain unset.

This resulted in QEMU installing files like $out/share/doc/index.html,
which should of course have been in $out/share/doc/qemu/index.html.

An interesting side effect of this is that, since
9f8751528c when this code was added, the
detected package name has never actually been used for installing
documentation, because it would always be overridden.  So this patch
will actually enable that for the first time, four years later.

Fixes: https://github.com/NixOS/nixpkgs/issues/90486
2020-06-29 13:56:27 +00:00
John Ericson fa54dd346f
Merge pull request #85189 from Ericson2314/cxx-wrapper-debt
C++ compilers: Be sane with standard libraries
2020-06-22 10:38:34 -04:00
DavHau c8c09b7dda add autoPatchelfIgnoreMissingDeps to auto-patchelf.sh 2020-06-22 10:41:35 +02:00
John Ericson f3f7612a40 C++ Compilers: Systematize handling of standard libraries 2020-06-22 04:24:44 +00:00
Utku Demir fa8f2bf34f
stream_layered_image: Use pathlib module for directory traversal 2020-06-22 15:11:04 +12:00
Utku Demir 16199521ea
stream_layered_image: Always set uid and gid to root 2020-06-21 12:35:39 +12:00
Utku Demir fe71abfc12
stream_layered_image: Clarify assertion failure 2020-06-21 12:35:39 +12:00
Utku Demir 87a538e149
stream_layered_image: Use more descriptive variable name 2020-06-21 12:35:39 +12:00
Utku Demir 4bff5b7f3d
dockerTools: Properly quote a shell variable 2020-06-21 12:35:39 +12:00
Utku Demir f1d7a09146
stream_layered_image: Add docstrings to functions 2020-06-21 12:35:38 +12:00
Utku Demir 26402290bf
stream_layered_image: Add main method 2020-06-21 12:35:38 +12:00
Utku Demir 307804d97d
dockerTools.streamLayeredImage: comments 2020-06-21 12:35:38 +12:00
Utku Demir 4ab7baf6f6
stream_layered_image.py: comments 2020-06-21 12:35:38 +12:00
Utku Demir a5a611cacb
Set mtime in even more places 2020-06-21 12:35:38 +12:00
Utku Demir 4e0109f873
Set mtime to get more deterministic builds 2020-06-21 12:35:37 +12:00
Utku Demir 560201da66
Implement dockerTools.streamLayeredImage 2020-06-21 12:35:32 +12:00
Robert Hensing 06469493de
Merge pull request #91085 from hercules-ci/fix-dockerTools-nix-symlinks
Fix docker tools nix symlinks
2020-06-19 12:01:47 +02:00
Robert Hensing 2dd94af186 dockerTools: keep symlinks to nix intact 2020-06-19 10:08:34 +02:00
Robert Hensing caf47063b4 dockerTools: test that tar keeps nix binary symlinks intact 2020-06-19 10:08:34 +02:00
Robert Hensing 11b0106cf9 dockerTools: add isExe to streamLayeredImage result 2020-10-05 10:48:17 +02:00
Frederik Rietdijk 4af4a49251 Merge master into staging-next 2020-06-16 18:05:38 +02:00
Andreas Rammhold d282a7e07f
Merge pull request #90193 from danieldk/build-rs-feature-env
buildRustCrate: set CARGO_FEATURE_* when running the build script
2020-06-16 14:19:56 +02:00
Lassulus 453014b456
Merge pull request #89245 from alexarice/agda-literate
agda: install literate files
2020-06-16 14:11:01 +02:00
Daniël de Kok fe50bab788 buildRustCrate: set CARGO_FEATURE_* when running the build script
Cargo sets `CARGO_FEATURE_*` for all features when running a build
script:

https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-build-scripts

Some crates have build scripts (e.g. openblas-src) that rely on the
feature variables being properly set.

Since we now need several representations of features, this change
also updates `createFeatures` to be a list of features, rather than
`rustc` feature arguments. `configureCrate` and `buildCrate` then
build the required representations as-needed.

Fixes #68978
2020-06-13 14:09:06 +02:00
Frederik Rietdijk 2e4b4e3300 Merge staging-next into staging 2020-06-13 11:03:26 +02:00
Frederik Rietdijk 1523382160 Merge master into staging-next 2020-06-13 11:02:21 +02:00
volth 54c4223e55 treewide: central.maven.org -> repo1.maven.org 2020-06-12 14:26:08 +00:00
Frederik Rietdijk febc27b59a Merge master into staging-next 2020-06-12 08:57:26 +02:00
Matthew Bauer f5c1ab06af
Merge pull request #89351 from dwarfmaster/fix-emacs-build
Fix building of emacsWithPackages not findind subdirs.el
2020-06-11 10:52:25 -05:00
José Romildo Malaquias 87eb2f4342
Merge pull request #90004 from romildo/buildenv
buildenv: paths to link resolving to the same absolute path is not a conflict
2020-06-11 12:50:31 -03:00
José Romildo Malaquias 4a1ef63c55 buildenv: paths to link resolving to the same absolute path is not a conflict
When building an environment if two paths conflict but one or both are
symbolic links and they resolve to the same real path, the conflict is
discarded because the contents of both paths are the same. One of them
is chosen and there is no need to recur into them in order to build
deeper symbolic links.
2020-06-10 06:42:48 -03:00
Matthew Bauer 0046802ab6 fetchurl: only allow empty hash when cacert is available
We can use cacert to validate that the data passes SSL certificates.
Normally, this doesn’t happen because we already have the hash, but in
the hash = "" case we don’t.
2020-06-09 12:56:27 -05:00
Matthew Bauer f2e9046de5 fetchurl: allow empty hash
Meant as a companion to https://github.com/NixOS/nix/pull/3674

This just resets outputHash if nothing is passed in.
2020-06-09 01:37:10 -05:00
Frederik Rietdijk 8576d24b2a Merge staging-next into staging 2020-06-08 12:08:51 +02:00
Frederik Rietdijk dc33419285 Merge master into staging-next 2020-06-08 12:06:12 +02:00
hyperfekt 0a8fb89fca rustPlatform: fix cross-compiling by using native diff 2020-06-08 10:05:00 +05:30
Frederik Rietdijk 1c68570ab2 Merge staging-next into staging 2020-06-05 19:42:16 +02:00
Frederik Rietdijk 43f71029cc Merge master into staging-next 2020-06-05 19:40:53 +02:00
Jörg Thalheim f0396574ab
buildRustPackage: add documentation on how to create cargo.lock patches 2020-06-05 10:41:46 +01:00
Vladimír Čunát 677e3960b5
Merge #82342: rustPlatform: increase build-speed of checkPhase
...for rust-packages (into staging)
2020-06-05 09:12:30 +02:00
Frederik Rietdijk 08900c0554 Merge master into staging-next 2020-06-04 15:25:54 +02:00
Benjamin Hipple 4af635feff
Merge pull request #87866 from danieldk/validate-pkgconfig-hook
validatePkgConfig: init
2020-06-02 23:27:27 -04:00
DwarfMaster a9eab6d2b9 Fix building of emacsWithPackages not findind subdirs.el 2020-06-02 11:52:39 +02:00
Florian Klink 8a388c8296
Merge pull request #82258 from erikarvstedt/fix-xchg-caching
fix inconsistent caching of VM xchg dirs
2020-06-01 22:34:48 +02:00
Erik Arvstedt d85dc4f690
qemu-vm: fix inconsistent caching of xchg dirs
xchg is advertised as a bidirectional exchange dir, but file content
transfer from host to VM fails due to caching:
If a file is read in the VM and then modified on the host, subsequent
re-reads in the VM can yield old, cached data.
This is caused by the use of 9p's cache=loose mode that is explicitly
meant for read-only mounts.

9p doesn't provide any suitable cache modes, so fix this by disabling
caching.

Also, remove a now unnecessary sync in the test driver.
2020-06-01 21:55:33 +02:00
Alex Rice e215c3bcac
agda: install literate files 2020-06-01 13:59:20 +01:00
Daniël de Kok 13083b1a01 validatePkgConfig: init
This adds the `validatePkgConfig` hook, which can be used to validate
pkg-config files in the output(s). Currently, this will just run
`pkg-config --validate` on all `.pc` files, capturing errors such as
the issue that was fixed in #87789.

The hook could be extended in the future with more fine-grained
checks.
2020-05-31 20:45:03 +02:00
Pavol Rusnak 9444756222
appimage: replace radare2+jq with readelf+awk+sha256sum
radare2 does not play nicely with filenames containing spaces
https://github.com/radareorg/radare2/issues/16958
2020-05-29 11:14:16 +02:00
Frederik Rietdijk 362d88c2b1 Merge staging-next into staging 2020-05-27 15:27:28 +02:00
Michael Howell c21cbf22d0
buildRustCrate: Replace hyphen with underscore in env variables (#88054)
* Add test case for include dir
* buildRustCrate: replace hyphen with underscore in env

This fixes a bug that prevents encoding_c from building.
2020-05-26 20:52:18 +02:00
adisbladis d8b6e82126
Merge pull request #88856 from zowoq/prefetch-docker
dockerTools: fix skopeo commands
2020-05-25 09:52:09 +02:00
rnhmjoj aee614c996
treewide: replace bazaar with breezy 2020-05-25 09:22:54 +02:00
zowoq 365d07cea0 dockerTools: fix skopeo commands 2020-05-25 14:29:54 +10:00
Florian Klink 9b7a4694a0 fetchgitlab: escape rev to support "+" in it 2020-05-24 22:24:50 +02:00
Shea Levy fffa6e8c18
Merge pull request #88762 from alexbiehl/alex/docker-tools
dockerTools: Properly add /nix/ and /nix/store/ first to layer.tar
2020-05-24 08:34:42 -04:00
Alex Biehl 886c92332c dockerTools: Properly add /nix/ and /nix/store/ first to layer.tar
In https://github.com/NixOS/nixpkgs/pull/58431 the authors ensured that
the resulting layer.tar would always list

  /nix/
  /nix/store/

first to fully comply to the tar spec. Various refactorings later it is only
ensured to create /nix/ but NOT /nix/store anymore. Instead tar transformed
them to /nix/nix and /nix/nix/store.
2020-05-24 14:28:35 +02:00
Frederik Rietdijk d578248611 Merge staging-next into staging 2020-05-24 10:10:06 +02:00
Matthew Bauer c74a9cd3e2
Merge pull request #69144 from SFrijters/gdc
gdc: init at 9.3.0
2020-05-23 16:30:47 -05:00
Orivej Desh 16d7f7edae Merge branch 'master' into staging 2020-05-22 09:13:23 +00:00
John Ericson eae4f22176
Merge pull request #88518 from Ericson2314/fix-pkg-config
pkg-config, pkgconf: Misc fixes
2020-05-21 16:05:42 -04:00
Profpatsch 8b270a96fa skawarePackages.cleanPackaging: copy docFiles before rm noise 2020-05-21 19:46:38 +02:00
John Ericson 7e9d807f2c pkg-config-wrapper: Move comments outside of strings
This is much better because then we can freely keep the comments up to
date without causing mass rebuilds.

Someday, somebody should make the same change with `cc-wrapper` and
`bintools-wrapper`.
2020-05-21 11:35:46 -04:00
John Ericson 95080ea90b pkgconf: Wrap with pkg-config-wrapper 2020-05-21 11:35:46 -04:00
John Ericson 4b2ab665fb pkg-config-wrapper: Provide autoconf macros
This fixes libarchive, and probably numerous other builds.
2020-05-21 09:16:34 -04:00
John Ericson f29919da61 pkg-config: Multiple outputs
This is good practice, and will help with tests. Wrapper adjust to match
bintools-wrapper re these new outputs.
2020-05-21 08:58:34 -04:00
Stefan Frijters fc9b93d2fc gdc: init at 9.3.0 2020-05-19 23:06:52 +02:00
lewo a498da343a
Merge pull request #87154 from utdemir/buildimage-optimizations
Some performance optimizations to dockerTools.build{,Layered}Image
2020-05-19 15:39:25 +02:00
Jan Tojnar f8a9c6efac
Merge branch 'staging-next' into staging 2020-05-18 21:09:48 +02:00
John Ericson c71ab32a67 pkg-config-wrapper: Init
This fixes longstanding build issues
2020-05-16 00:21:21 +00:00
John Ericson ee8cfe4bf3 treewide: pkg-config has targetPrefix 2020-05-16 00:21:21 +00:00
zowoq 42232493a3 dockerTools: pass insecure-policy and tmpdir to skopeo 2020-05-16 08:46:13 +10:00
lewo df928fafd4
Merge pull request #87725 from nlewo/fix-dockertools
dockerTools.examples: fix the nginx image
2020-05-15 16:54:09 +02:00
lewo 98a723e6b3
Merge pull request #87253 from utdemir/dockertools-preserve-env
Preserve environment variables from the parent image on dockerTools.buildImage
2020-05-15 09:59:00 +02:00
Dmitry Kalinkin 9943fd1a1d
Merge pull request #76653 from alexarice/agda-rework
Agda rework
2020-05-14 18:02:50 -04:00
Alex Rice d30e2468e0
agda: rework builder 2020-05-14 20:54:11 +01:00
Frederik Rietdijk 404fe35d65 Merge staging-next into staging 2020-05-14 09:37:03 +02:00
Matthew Bauer d38bad590e
Merge pull request #83180 from matthewbauer/only-add-ldflags-for-macos
bintools: only add macos flags when targeting macOS
2020-05-13 10:34:40 -05:00
Antoine Eiche 9ac444d80e dockerTools.examples: fix the nginx image
Nginx now requires directories `/var/log/nginx` and `/var/cache/nginx`
to be existing.

The objective is to fix the test `nixosTests.docker-tools`.
2020-05-13 10:29:53 +02:00
Maximilian Bosch 6b23cfe689
rustPlatform: add buildAndTestSubdir-argument
There are several tarballs (such as the `rust-lang/rust`-source) with a
`Cargo.toml` at root and several sub-packages (with their own Cargo.toml)
without using workspaces[1].

In such a case it's needed to move into a subdir to only build the
specified sub-package (e.g. `rustfmt` or `rsl`), however the artifacts
are at `/target` in the root-dir of the build environment. This breaks
the build since `buildRustPackage` searches for executables in `target`
(which is at the build-env's root) at the end of the `buildPhase`.

With the optional `buildAndTestSubdir`-argument, the builder moves into
the specified subdir using `pushd`/`popd` during `buildPhase` and
`checkPhase`.

Also moved the logic to find executables and libs to the end of the `buildPhase`
from a custom `postBuild`-hook to fix packages with custom `build`/`install`-procedures
such as `uutils-coreutils`.

[1] https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html
2020-05-13 01:47:17 +02:00
Maximilian Bosch 736462d995
rustPlatform: make it possible to override the profile for cargo test 2020-05-13 01:39:44 +02:00
John Ericson 1ac5398589 *-wrapper; Switch from infixSalt to suffixSalt
I hate the thing too even though I made it, and rather just get rid of
it. But we can't do that yet. In the meantime, this brings us more
inline with autoconf and will make it slightly easier for me to write a
pkg-config wrapper, which we need.
2020-05-12 00:44:44 -04:00
Matthew Bauer 43545032af
Merge pull request #87314 from matthewbauer/bazel-flat
build-bazel-package: switch hash mode to “flat”
2020-05-11 15:27:48 -05:00
Frederik Rietdijk d20d734bcf Merge master into staging-next 2020-05-11 09:19:26 +02:00
Vladimír Čunát 5eaabaf089
Merge branch 'staging-next' into PR 82342
Hydra nixpkgs: ?compare=1586582
2020-05-11 08:22:59 +02:00
talyz 9f09253e52
php.buildPecl: Allow PECLs to depend on other PECLs
Some PECLs depend on other PECLs and, like internal PHP extension
dependencies, need to be loaded in the correct order. This makes this
possible by adding the argument "peclDeps" to buildPecl, which adds
the extension to buildInputs and is treated the same way as
internalDeps when the extension config is generated.
2020-05-09 23:38:21 +02:00
Matthew Bauer 1e19cc37bd build-bazel-package: pass proxy env vars 2020-05-09 13:35:47 -05:00
Matthew Bauer 2a8d05627b build-bazel-package: switch hash mode to “flat”
flat hashes can be substituted through hashed-mirrors, while recursive
hashes can’t. This is especially important for Bazel since the bazel
fetch dependencies can come from multiple different methods (git,
http, ftp, etc.). To do this, we create tar archives from the
output/external directory, which is then extracted to build. All of
the Bazel hashes are all updated.
2020-05-09 13:33:26 -05:00
Maximilian Bosch f236714d65
rustPlatform: fix log 2020-05-08 22:59:50 +02:00
Maximilian Bosch e32c005772
rustPlatform: don't install test executables
This is done by gathering all binaries to install before running the
checkPhase.
2020-05-08 22:59:50 +02:00
Utku Demir f5a90a7aab
dockerTools.buildImage: Preserve environment variables from the parent image 2020-05-08 21:49:16 +12:00
Frederik Rietdijk bc48203b98 Merge staging-next into staging 2020-05-08 06:46:14 +02:00
Benjamin Hipple 7f845578af rustPlatform: fix bug with ambiguous diff tool
If a user provides `nativeBuildInputs = [ llvmPackages.bintools ]` or any other
package containing a `${prefix}/bin/diff`, the builder could use it instead
of the standard unix `diff`, causing a build failure.

This updates the call to specify an abspath to `diff` and avoid reliance on `PATH`.

Resolves #87081
2020-05-06 21:03:41 -04:00
Utku Demir f12346d493
dockerTools: Calculate tarsum's on the fly
Calculating the tarsum after creating a layer is inefficient, since
we have to read the tarball we've just written from the disk.

This commit simultaneously calculates the tarsum while creating the
tarball.
2020-05-07 11:50:07 +12:00
Utku Demir 69f6294724
dockerTools.buildLayeredImage: Avoid appending to tarballs when building layers
Appending to an existing tar archive repeatedly seems to be a quadratic
operation, since tar seems to traverse the existing archive even using
the `-r, --append` flag. This commit avoids that by passing the list of
files to a single tar invocation.
2020-05-07 11:50:00 +12:00
Maximilian Bosch 04248f606f
rustPlatform: increase build-speed of checkPhase for rust-packages
When running `cargo test --release`, the artifacts from `buildPhase`
will be reused here. Previously, most of the stuff had to be recompiled
without optimizations.
2020-05-06 23:47:31 +02:00
Frederik Rietdijk 9875bbae75 Merge master into staging-next 2020-05-05 19:51:09 +02:00
Benjamin Hipple ba160ab741
Merge pull request #85410 from matthewbauer/skip-post-fetch-in-hashed-mirrors
fetchurl: don’t run ‘postFetch’ on hashed-mirrors
2020-05-04 22:45:19 -04:00
Jörg Thalheim 2fb5dac372 nix-prefetch-git: also add store path to json output 2020-05-04 17:43:29 +05:30
Pavol Rusnak 7b0167204d treewide: use https for nixos.org and hydra.nixos.org
tarballs.nixos.org is omitted from the change because urls from there
are always hashed and checked
2020-05-03 22:14:21 -07:00
adisbladis fafb127947
dockertools: Add a buildLayeredImageWithNixDb function
This is analogous to buildImageWithNixDb but instead uses
buildLayeredImage under the hood.
2020-05-02 15:59:39 +01:00
Frederik Rietdijk afb1041148 Merge master into staging-next 2020-05-02 09:39:00 +02:00
Jörg Thalheim d67098ec2e
appimage: fix r2 commands with newer radare2 version 2020-05-01 12:36:18 +01:00
Frederik Rietdijk 484ee79050 Merge staging-next into staging 2020-05-01 08:57:10 +02:00
Frederik Rietdijk 2da19f9483
Merge pull request #85653 from veprbl/pr/darwin_binutils_add_man
darwin.binutils: propagate man pages from darwin.cctools
2020-05-01 08:49:56 +02:00
Mario Rodas f7ac956a2b buildDunePackage: add support for parallel build
dune allows to specify the number of jobs to build the package.
2020-04-29 16:08:52 +02:00
Simonas Kazlauskas dde3e8edf4 nix-prefetch-docker: Add jq into path
Otheriwse running the tool fails with

    line 41: jq: command not found
2020-04-27 22:21:55 +03:00
zimbatm 1bf7f5f240
Merge pull request #85750 from zimbatm/srcOnly-docs
srcOnly: fix invocation and document
2020-04-27 14:49:55 +02:00
zimbatm 31ead7d030
srcOnly: rename buildInputs to nativeBuildInputs
The only reason to pass build inputs is to extend the unpackPhase with
custom unpack commands. Eg: add "unrar" to unpack rar sources. And those
should really be passed as native build inputs. Why? Because
nativeBuildInputs is for dependencies that are used at build time but
will not propagate as runtime dependencies. And also, cross-compilation.
2020-04-27 14:31:40 +02:00
Dmitry Kalinkin f0da3b5e94
Merge pull request #85952 from LnL7/darwin-lapack
lapack: fix darwin library identifiers
2020-04-26 00:39:26 -04:00
Silvan Mosberger eeb4e522b5
Merge pull request #85255 from Infinisil/sanitize-run-command-name 2020-04-25 00:11:41 +02:00
Daiderd Jordan 5ae928e18f
lapack: fix darwin library identifiers
The build system already sets these properly to the absolute path so no
need to patch the libraries on darwin.

    $ otool -D result/lib/liblapacke.dylib
    result/lib/liblapacke.dylib:
    /nix/store/k88gy5s765yn3dc5ws3jbykyvklm7z96-openblas-0.3.8/lib/libopenblasp-r0.3.8.dylib

Fixes #85713
2020-04-24 20:00:56 +02:00
Frederik Rietdijk cff0669a48 Merge master into staging-next 2020-04-23 08:11:16 +02:00
Benjamin Hipple 21be830522
Merge pull request #85799 from matthewbauer/blas-lapack-expand-docs
BLAS/LAPACK fixup and expand docs
2020-04-22 21:56:20 -04:00
Matthew Bauer 5a500ff0ba blas,lapack: use correct name for library
To match the soname, we need to use libblas.so.3, liblapack.so.3.
2020-04-22 12:37:04 -05:00
Frederik Rietdijk 8374a2a0ee Merge master into staging-next 2020-04-22 17:20:20 +02:00
zimbatm bbbc419186
srcOnly: fix invocation and document
Previously, callPackage would try and fill the arguments such as `name`
and `src` which would cause problems if those existed as top-level
attributes. This also makes it clearer what part is the function
signature.

Then document the derivation inline in the code to explain the ellipsis
and various use-cases.
2020-04-22 14:06:28 +02:00
edef e71990711f
Merge pull request #85680 from NixOS/fix-srconly
srcOnly: ignore additional arguments
2020-04-21 22:45:34 +00:00
Frederik Rietdijk 23be4a8b4d Merge master into staging-next 2020-04-21 19:59:56 +02:00
edef 11e13acc46 srcOnly: ignore additional arguments
This reverts commit b32a057425,
which breaks even the most straightforward uses of srcOnly:

    nix-repl> srcOnly guile
    error: anonymous function at /home/src/nixpkgs/pkgs/build-support/src-only/default.nix:1:1 called with unexpected argument 'drvPath', at /home/src/nixpkgs/lib/customisation.nix:69:16

    nix-repl> srcOnly hello
    error: anonymous function at /home/src/nixpkgs/pkgs/build-support/src-only/default.nix:1:1 called with unexpected argument 'drvPath', at /home/src/nixpkgs/lib/customisation.nix:69:16

Link: https://github.com/NixOS/nixpkgs/pull/80903#issuecomment-617172927
2020-04-21 13:20:17 +00:00
Frederik Rietdijk 803b3d296c Merge staging-next into staging 2020-04-21 08:29:51 +02:00
Matthew Bauer 8f58fa044d blas,lapack: symlink headers when using mkl
Some of these are necessary for things like python.pkgs.numexpr
2020-04-21 00:30:44 -05:00
Matthew Bauer 0caa375b4c blas,lapack: provide symlink for libmkl_rt.so
This is needed for numpy to detect mkl correctly.
2020-04-20 23:47:10 -05:00
Dmitry Kalinkin c450617f99
bintools-wrapper: only propagate .info output if it exists in the original 2020-04-20 23:49:02 -04:00
Matthew Bauer ff2f2644f8 blas,lapack: use isILP64 instead of is64bit
This is a better name since we have multiple 64-bit things that could
be referred to.

LP64  : integer=32, long=64, pointer=64
ILP64 : integer=64, long=64, pointer=64
2020-04-20 16:02:43 -05:00
Matthew Bauer 3c9c894f83 blas,lapack: don’t patchelf
We have some unused RPATHs we don’t want shrunk. These are used in MKL
to dlopen based on architecture.
2020-04-20 15:50:28 -05:00
Lars Jellema 8e79583510 gnat: init at 9.3.0 2020-04-20 14:41:22 +02:00
Sébastien Maret 712bf551d8 blas: fix build on darwin 2020-04-19 23:07:10 +02:00
John Ericson 1ea80c2cc3 Merge remote-tracking branch 'upstream/master' into staging 2020-04-18 15:40:49 -04:00