3
0
Fork 0
forked from mirrors/nixpkgs
Commit graph

3364 commits

Author SHA1 Message Date
Michael Eden f93470d7a3 rust: set PKG_CONFIG_ALLOW_CROSS conditionally in buildRustPackage 2019-03-29 11:11:00 -04:00
Michael Eden bdd3c3fdcb rust: allow building in debug or release modes 2019-03-29 11:11:00 -04:00
Michael Eden 60761e65ba rust: move releaseDir to target/release in the buildPhase 2019-03-29 11:11:00 -04:00
Jörg Thalheim 912dca193a rust: fix cross-compilation 2019-03-29 11:11:00 -04:00
Andreas Rammhold e0b4356c0d
Merge pull request #57936 from andir/build-rust-crate-nix-build-cores
buildRustCrate: use $NIX_BUILD_CORES for each of the crates
2019-03-29 12:29:43 +01:00
lewo dc3ed336df
Merge pull request #58345 from xtruder/pkgs/dockerTools/pullImage/finalImageName
dockerTools: add finalImageName parameter for pullImage
2019-03-28 16:25:01 +01:00
Alex Biehl 1b1e23024b Strip leading ./ in customization layer 2019-03-27 12:08:50 +01:00
Alex Biehl 096e3cbdec Add /nix/store to each layer.tar
To be totally consistent with the way Docker builds images we need to
include the /nix/store in the layer tarballs first.
2019-03-27 11:35:27 +01:00
Pierre-Étienne Meunier 81d9ddab1a Carnix: 0.9 -> 0.10 2019-03-26 18:54:28 +00:00
Jaka Hudoklin 468df177c4
dockerTools: add finalImageName parameter for pullImage 2019-03-26 19:35:14 +01:00
Jaka Hudoklin 5d429f6822
dockerTools: storePathToLayer use runtimeShell in script 2019-03-26 11:07:24 +01:00
Aaron Lindsay 1eca945e94 systems: support TI MSP430 microcontrollers 2019-03-25 20:33:58 -07:00
Teo Klestrup Röijezon 5eec83eb83 buildRustCrate: Fix include filter
buildRustCrate has a handy `include` helper, that only imports those whitelisted
files and folders to the store.

However, the function's matching logic is broken and includes all files,
regardless of whether or not they're whitelisted, as long as the whitelist
contains at least one name (regardless of whether that name exists). This is
because it doesn't take into account that
`lib.strings.removePrefix "foo" "bar" == "bar"` (that is, paths that don't match
the prefix are passed straight through).
2019-03-25 15:24:42 +01:00
Frederik Rietdijk 23e431387b Merge staging-next into staging 2019-03-23 09:20:09 +01:00
Frederik Rietdijk b40d752872 Merge master into staging-next 2019-03-23 09:18:41 +01:00
lewo 2b9aa0ac90
Merge pull request #57505 from nlewo/fix-55290
dockerTools.buildImage.runAsRoot: preserve layers ordering at image unpacking
2019-03-22 18:11:50 +01:00
Wael M. Nasreddine 5af0780492
Merge remote-tracking branch 'origin/master' into staging
* origin/master: (693 commits)
  buildGoModule: use go_1_12 instead of go_1_11 (#58103)
  gitAndTools.lab: 0.15.2 -> 0.15.3 (#58091)
  signal-desktop: 1.22.0 -> 1.23.0
  added missing semicolon to documentation
  terminus_font_ttf: 4.46.0 -> 4.47.0
  buildGoModule: remove SSL env vars in favor of cacert in buildInputs (#58071)
  dav1d: init at 0.2.1
  dropbox-cli: 2018.11.28 -> 2019.02.14
  atlassian-confluence: 6.14.1 -> 6.14.2
  maintainers: update email for dywedir
  python.pkgs.hglib: use patch to specify hg path (#57926)
  chkrootkit: 0.52 -> 0.53
  radare2-cutter: 1.7.2 -> 1.8.0
  autorandr: 1.7 -> 1.8
  pythonPackages.pyhepmc: fix build
  llvm-polly/clang-polly: use latest llvm
  apulse: 0.1.11.1 -> 0.1.12, cleanup
  factorio: experimental 0.17.14 → 0.17.16 (#58000)
  sequeler: 0.6.7 -> 0.6.8
  nasc: 0.5.1 -> 0.5.2
  ...
2019-03-21 21:01:25 -07:00
tv 7437268cd4 build-support writers: add writeNginxConfig 2019-03-20 18:47:48 +01:00
Danylo Hlynskyi de0612c46c
auto-patchelf: don't use grep -q, as it causes Broken pipe (#56958)
This rare sitation was caught when building zoom-us package:
```
automatically fixing dependencies for ELF files
/nix/store/71d65fplq44y9yn2fvkpn2d3hrszracd-auto-patchelf-hook/nix-support/setup-hook: line 213: echo: write error: Broken pipe
/nix/store/71d65fplq44y9yn2fvkpn2d3hrszracd-auto-patchelf-hook/nix-support/setup-hook: line 210: echo: write error: Broken pipe
```

The worst is that derivation continued and resulted into broken package:
https://github.com/NixOS/nixpkgs/pull/55566#issuecomment-470065690

I hope, replacing `grep -q` with `grep` will remove this race condition.
2019-03-20 14:57:59 +02:00
Andreas Rammhold 4c89619152
buildRustCrate: use $NIX_BUILD_CORES for each of the crates 2019-03-20 02:19:50 +01:00
Jan Tojnar 1e0661cd60
Merge pull request #57603 from jtojnar/wrap-gapps-hook-self-gio
wrapGAppsHook: add package’s own modules to GIO_EXTRA_MODULES
2019-03-15 14:26:17 +01:00
Vladimír Čunát 04066403ae
Merge branch 'master' into staging-next
Lots of rebuilds from master, apparently.
Hydra nixpkgs: ?compare=1509577
2019-03-14 19:54:49 +01:00
Jan Tojnar 0ea220b9bd
wrapGAppsHook: add package’s own modules to GIO_EXTRA_MODULES
When a package provides both executables and gio modules, it is quite
probable the executables will need those modules. wrapGAppsHook wraps
executables with GIO_EXTRA_MODULES picked up from dependencies
but forgets about the package being built. Let’s add to consideration.

Closes: https://github.com/NixOS/nixpkgs/issues/50254
2019-03-13 23:03:53 +01:00
Antoine Eiche fe6860800b dockerTools.buildImage.runAsRoot: preserve layers ordering at image unpacking
This patch preserves the ordering of layers of a parent image when the
image is unpacked.

Fixes #55290
2019-03-12 12:04:22 +01:00
Uri Baghin 130d987ab1 bazel-remote: init at 2019-01-12 2019-03-11 11:10:59 +01:00
Jörg Thalheim cd498f7c80
Merge pull request #56634 from marsam/buildrustcreate-pname-attribute
buildRustPackage: Allow pname attribute
2019-03-11 10:08:00 +00:00
Vladimír Čunát 8d502fd425
Merge branch 'staging-next' into staging 2019-03-10 08:05:27 +01:00
Vladimír Čunát bf47162c26
Merge branch 'master' into staging-next
Hydra nixpkgs: ?compare=1508887
2019-03-10 08:04:21 +01:00
Matthew Bauer 8a08d7e7cc
Merge pull request #56031 from matthewbauer/priorities
Add some more priorities
2019-03-09 18:02:55 -05:00
Shea Levy 5d3fd3674a
Merge pull request #56918 from grahamc/closure-graph-memory
references-by-popularity: get a handle on memory usage
2019-03-06 08:31:42 -05:00
Vladyslav M df65650909
Merge pull request #56778 from kolloch/patch-2
buildRustCrate: Make CARGO_MANIFEST_DIR absolute
2019-03-06 14:41:51 +02:00
Antoine Eiche af23d1e2e7 nixos/test/docker-tools: fix Nix image digest 2019-03-06 09:26:33 +01:00
Graham Christensen 09362bc3e8
references-by-popularity: cache computation to avoid memory bloat
On very large graphs (14k+ paths), we'd end up with a massive in
memory tree of mostly duplication.

We can safely cache trees and point back to them later, saving
memory.
2019-03-05 16:37:52 -05:00
Graham Christensen 54826e7471
references-by-popularity: create debug output 2019-03-05 16:32:06 -05:00
Wael M. Nasreddine 9b22a51712
build-support/docker: fix the build of tarsum with Go 1.12 2019-03-05 10:53:21 -08:00
Frederik Rietdijk 5d7ab31949 Merge master into staging-next 2019-03-05 08:32:52 +01:00
Matthew Bauer 71704e8129
Merge pull request #55081 from moyamo/fix-subdirs.el
Link subdirs.el into emacs-packages-deps site-lisp
2019-03-04 16:12:41 -05:00
Peter Kolloch baa3d6f43b
buildRustCrate: Make CARGO_MANIFEST_DIR absolute
While it is not obvious from the source, cargo sets CARGO_MANIFEST_DIR to an absolute directory. This let to a build problem with the popular "tera" crate using the "pest" crate.

## Cargo details

The variable is set here:

f7c91ba622/src/cargo/core/compiler/compilation.rs (L229)

and computed from the `manifest_path`:

f7c91ba622/src/cargo/core/package.rs (L163)

The manifest path is also exported via `cargo metadata` where you can see that it is absolute.
2019-03-03 12:02:26 +01:00
Mario Rodas 435b326722
buildRustPackage: Allow pname attribute 2019-03-01 21:48:44 -05:00
Frederik Rietdijk 205e0fc5bd Merge staging-next into staging 2019-03-01 09:22:21 +01:00
Frederik Rietdijk 2fcb11a244 Merge staging-next into master 2019-03-01 09:06:20 +01:00
Ryan Mulligan 934b2a8a59
Merge pull request #56542 from seppeljordan/bump-nix-prefetch-github-version
nix-prefetch-github: 2.1 -> 2.2
2019-02-28 20:38:07 -08:00
Sebastian Jordan b0e63adc93 nix-prefetch-github: 2.1 -> 2.2 2019-02-28 22:02:54 +01:00
Matthew Bauer 85536e892b bintools-wrapper: fix unknown emulation error message
Using the + operator with throw doesn’t seems to work properly. You
need to use antiquotes here to get the targetPlatform config included.
2019-02-26 15:55:48 -05:00
Matthew Bauer aab8c7ba43 netbsd: add cross target 2019-02-26 15:55:47 -05:00
Jörg Thalheim dadc7eb329
treewide: use runtimeShell instead of stdenv.shell whenever possible
Whenever we create scripts that are installed to $out, we must use runtimeShell
in order to get the shell that can be executed on the machine we create the
package for. This is relevant for cross-compiling. The only use case for
stdenv.shell are scripts that are executed as part of the build system.
Usages in checkPhase are borderline however to decrease the likelyhood
of people copying the wrong examples, I decided to use runtimeShell as well.
2019-02-26 14:10:49 +00:00
Pierre-Étienne Meunier 32e94c2674 buildRustCrate: adding the description field 2019-02-25 15:22:03 +00:00
Profpatsch 61c22bcc0e build-support/skaware: factor out clean packaging utils
They are useful for other packages as well.
2019-02-25 10:34:16 +01:00
Matthew Bauer 73061742af Merge remote-tracking branch 'NixOS/master' into staging 2019-02-24 18:54:32 -05:00
Ryan Mulligan d461adff17
Merge pull request #56314 from P-E-Meunier/carnix-0.9.8
Carnix: 0.9.7 -> 0.9.8
2019-02-24 15:10:31 -08:00
Andreas Rammhold 8b20328230
Merge pull request #55972 from andir/rust-editions
buildRustCrate support editions
2019-02-24 23:56:13 +01:00
Pierre-Étienne Meunier 7a1853ef35 Carnix: 0.9.7 -> 0.9.8 2019-02-24 19:29:13 +00:00
Sebastian Jordan 1eae884bd8 nix-prefetch-github: 2.0 -> 2.1 2019-02-24 14:51:25 +01:00
Frederik Rietdijk c2eac6741b Merge master into staging-next 2019-02-24 09:19:12 +01:00
Graham Christensen 695fb802f1
Merge pull request #54693 from tilpner/appimage-tools
appimageTools: init
2019-02-23 18:06:31 -05:00
Profpatsch b64d25c447 skawarePackages.execline: wrap execlineb with tools
The execlineb program is the launcher (and lexer) of execline scripts.
So it makes a lot of sense to have all the small tools in scope by
default.
We append to the end of PATH so that they can be easily overwritten by
the user.

Co-authored-by: Alyssa Ross <hi@alyssa.is>
2019-02-23 23:28:26 +01:00
tilpner 58443d8a50
appimageTools: init
The appimageTools attrset contains utilities to prevent
the usage of appimage-run to package AppImages, like done/attempted
in #49370 and #53156.

This has the advantage of allowing for per-package environment changes,
and extracts into the store instead of the users home directory.

The package list was extracted into appimageTools to prevent
duplication.
2019-02-23 21:04:21 +01:00
Ryan Mulligan e6caf6e1bc
Merge pull request #56168 from seppeljordan/bumb-nix-prefetch-github
nix-prefetch-github: 1.3 -> 2.0
2019-02-22 20:31:25 -08:00
Silvan Mosberger c0318efe9a
Merge pull request #50504 from symphorien/local-closureInfo
nixos: add preferLocalBuild=true; on derivations for config files and closureInfo
2019-02-22 20:53:17 +01:00
Symphorien Gibol a915b33315 nixos: add preferLocalBuild=true; on derivations for config files 2019-02-22 20:11:27 +01:00
Vladimír Čunát 71f4ba29a3
Merge branch 'master' into staging-next
Hydra nixpkgs: ?compare=1506218
2019-02-22 17:51:01 +01:00
Vladimír Čunát 2adf954e84
Merge #55420: buildEnv, substituteAll: disable binary cache
... into staging.
2019-02-22 13:57:01 +01:00
Sebastian Jordan 96800caed3 nix-prefetch-github: 1.3 -> 2.0 2019-02-21 22:56:22 +01:00
Austin Seipp c36c048c0e dockerTools: mark store-path-to-layer.sh as executable
bcf54ce5bb introduced a treewide change to
use ${stdenv.shell} where-ever possible. However, this broke a script
used by dockerTools, store-path-to-layer.sh, as it did not preserve the
+x mode bit. This meant the file got put into the store as mode 0444,
resulting in a build-time error later on that looked like:

    xargs: /nix/store/jixivxhh3c8sncp9xlkc4ls3y5f2mmxh-store-path-to-layer.sh: Permission denied

However, in a twist of fate, bcf54ce5bb
not only introduced this regression but, in this particular instance,
didn't even fix the original bug: the store-path-to-layer.sh script
*still* uses /bin/sh as its shebang line, rather than an absolute path
to stdenv. (Fixing this can be done in a separate commit.)

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2019-02-21 08:30:47 -06:00
Maximilian Bosch 9fcd3bffc2 buildEnv: improve file check to avoid false-positives
The original change in #55372 was supposed to fix the case where a store
path which is a file should be placed into `buildEnv` which broke with a
fairly misleading Perl error.

Unfortunately this introduced a regression, `findFiles` can have targets
that are files if the file isn't a store path. Rather than adding more
obscure checks with probably further regressions, I figured that it's
better to replicate the behavior of `lib.isStorePath` and explicitly
check if the store path is a file and break in this case only.

This should also fix recent staging issues.
2019-02-21 10:37:42 +01:00
Frederik Rietdijk e2cd07b997 Merge staging-next into staging 2019-02-21 07:54:33 +01:00
Uri Baghin 718a82b108 buildBazelPackage: autodetect nix toolchain instead of Xcode one on macOS (#56033) 2019-02-19 16:44:05 +00:00
Maximilian Bosch 1cab56e01a buildEnv: break with a proper error if one path is actually a file
I noticed by creating `buildEnv` where I accidentally put a derivation
from `pkgs.writeText` into `paths` and got a broken build with the
following misleading error message:

```
Use of uninitialized value $stat1 in numeric ne (!=) at /nix/store/9g4wc31j7a2xp22xpgwr0qssfxahxdzl-builder.pl line 74.
Use of uninitialized value $stat1 in bitwise and (&) at /nix/store/9g4wc31j7a2xp22xpgwr0qssfxahxdzl-builder.pl line 75.
different permissions in `' and `/nix/store/0vy5ss91laxvwkyvrbld5hv27i88qk5w-noise': 0000 <-> 0444 at /nix/store/9g4wc31j7a2xp22xpgwr0qssfxahxdzl-builder.pl line 75.
```

It can be reproduced with an expression like this:

``` nix
{ pkgs ? import <nixpkgs> { } }:
let
  file = pkgs.writeText "test" ''
    content
  '';
in
  pkgs.buildEnv {
    name = "test-env";
    paths = [ /* ... */ file ];
  }
```
2019-02-19 07:56:44 +01:00
Matthew Bauer 9f6f223c18 bintools-wrapper: set low priority 2019-02-18 21:10:12 -05:00
Matthew Bauer b1bbd94bb6 Merge remote-tracking branch 'NixOS/master' into staging 2019-02-18 20:36:48 -05:00
Linus Heckemann 01dacc84d4
Merge pull request #55859 from nlewo/dockerTools-fix-55290
dockerTools.buildImage: preserve layers ordering at image repacking
2019-02-18 17:15:20 +01:00
Raitis Veinbahs d8a7a01fec nix-gitignore: init at v3.0.0 (#46112)
closes siers/nix-gitignore#6
2019-02-18 09:57:30 +00:00
Andreas Rammhold 6a3b144d02
buildRustCrate: support rust editions
In combination with carnix we can now build crates that require a
specific edition of rust features. A few crates started requiring that
already and having this in nixpkgs is just logical.
2019-02-18 01:09:54 +01:00
Andreas Rammhold 044a8a24ed
buildRustCrate: pass extraRustcOpts to configure crate
Previously build flags would not be available during the configure phase
while they might be required to build the `build.rs` file.
2019-02-18 00:10:36 +01:00
Justin Bedő 05ab1a6e5a
Merge branch 'master' into singularity 2019-02-17 21:49:37 +00:00
Ryan Mulligan a954ca52e5
Merge pull request #55035 from uri-canva/bazel-deps
bazel-deps: 2018-11-01 -> 2019-02-01
2019-02-17 06:49:31 -08:00
Ben Hipple 0fb7c7af88 mirrorx.nix: add https and http mirrors for gcc
HTTP is never worse and often better than FTP, since many users may be on
networks that do not allow FTP traffic.
2019-02-16 01:26:31 +00:00
Antoine Eiche da7cd82ab1 dockerTools.buildImage: preserve layers ordering at image repacking
This patch preserves the ordering of layers of a parent image when the
new image is packed.

It is currently not the case: layers are stacked in the reverse order.

Fixes #55290
2019-02-16 00:50:23 +01:00
Frederik Rietdijk a25d48cd4f Merge master into staging 2019-02-14 11:35:50 +01:00
Michael Raskin 8384cfe455
Merge pull request #55129 from oxij/tree/move-defaults-to-package-files
all-packages.nix: move defaults to package files
2019-02-13 20:04:08 +00:00
Frederik Rietdijk 7257dedd7c Merge master into staging-next 2019-02-13 12:33:29 +01:00
deliciouslytyped ca1062ea24
Document undocumented argument to makeWrapper() 2019-02-11 21:45:02 +01:00
Michael Raskin f4a8ac84fc
Merge pull request #55003 from volth/patch-303
linkFarm: hacky quoting -> escapeShellArg
2019-02-10 14:43:22 +00:00
Matthew Bauer 5c09d977c7 Merge remote-tracking branch 'origin/master' into staging 2019-02-09 12:14:06 -05:00
Alyssa Ross 21d991b1fd
Merge pull request #54578 from alyssais/gcj-darwin
gcj: fix build on Darwin
2019-02-08 16:54:35 +00:00
volth c706233f2e
buildFHSEnv: allowSubstitutes = false
trivial builder
2019-02-08 00:27:40 +00:00
volth 5c28152a95
substituteAllFiles: allowSubstitutes = false
trivial builder
2019-02-08 00:22:51 +00:00
volth f07c113ddc
linkFarm: allowSubstitutes = false
trivial builder
2019-02-08 00:21:24 +00:00
volth 18e5db37bf
substituteAll: allowSubstitutes = false;
trivial derivation
2019-02-07 22:20:42 +00:00
volth 09665fee2b
buildEnv: allowSubstitutes = false
trivial derivation
2019-02-07 22:19:26 +00:00
Vladimír Čunát ff101946a8
Merge branch 'master' into staging-next
Hydra nixpkgs: ?compare=1503899
2019-02-06 14:24:46 +01:00
Eelco Dolstra dd5aa1a67d
Merge pull request #54626 from FlorianFranzen/bionic
buid-support: Add Ubuntu bionic base images
2019-02-05 10:15:02 +01:00
Jan Malakhovski 8abaf8dfe5 fetchsvn: move defaults to package file 2019-02-03 15:33:14 +00:00
Vladimír Čunát 32767d139f
Merge branch 'staging-next'
This round is without the systemd CVE,
as we don't have binaries for that yet.
BTW, I just ignore darwin binaries these days,
as I'd have to wait for weeks for them.
2019-02-20 09:38:45 +01:00
Vincent Weisner a547a9b554 Fix alpha-embedded Target on Hydra (#55725) 2019-02-19 22:36:00 -05:00
Vladimír Čunát 024407bf9a
Merge branch 'master' into staging-next
Hydra nixpkgs: ?compare=1505754
2019-02-19 12:11:04 +01:00
Frederik Rietdijk 815b77cbe6 Merge master into staging-next 2019-02-18 14:18:04 +01:00
Vladimír Čunát f7f1a2f54e
Merge branch 'master' into staging-next
A mass darwin rebuild from master (#55784).
2019-02-17 08:05:24 +01:00
Frederik Rietdijk 6fe10d2779 Merge master into staging-next 2019-02-16 09:29:54 +01:00
Jan Malakhovski a4f20976fb fetchsvnssh: move defaults to package file 2019-02-03 15:30:27 +00:00
Mohammed Yaseen Mowzer d17d18ad81 emacs: Link subdirs.el into emacs-packages-deps
Emacs loads all the elisp files in the top-level of the site-lisp
directory. However some packages (e.g. mu4e) put their elisp files in a
subdirectory of site-lisp. Emacs will not load these packages unless
subdirs.el is present.

This commit links the subdirs.el file from the emacs package into the
emacs-package-deps package so that packages that put their elisp files
in a subdirectory of site-lisp are loaded.
2019-02-02 15:37:13 +02:00
Jan Tojnar d42ef371c9
Merge pull request #54909 from tollb/fix/wrap-gapps-hook_unnecessary_symlink_wrap
wrap-gapps-hook.sh: only wrap links when required
2019-02-01 14:20:37 +01:00
Vladimír Čunát 8ba516664b
Merge branch 'staging-next' into staging 2019-02-01 09:42:53 +01:00
Vladimír Čunát 5effa4e0f9
Merge branch 'master' into staging-next
Comments on conflicts:
- llvm: d6f401e1 vs. 469ecc70 - docs for 6 and 7 say the default is
  to build all targets, so we should be fine
- some pypi hashes: they were equivalent, just base16 vs. base32
2019-02-01 09:22:29 +01:00
Uri Baghin 2b2854e522 bazel-deps: 2018-11-01 -> 2019-02-01 2019-02-01 17:30:36 +11:00
Bruce Toll bbb2f93cee wrap-gapps-hook.sh: only wrap links when required
Unless dontWrapGapps is set, the wrap-gapps-hook.sh will currently
wrap all executables (and symbolic links to executables) found under
the target directories: bin and libexec.

As a result, if a symbolic link in a target directory points to an
executable in a target directory, both will get wrapped.  This
causes an extra shell/exec when following the symbolic link,
as well as increasing the size of the final executable's environment.

To avoid wrapping a link to an already wrapped executable, this
commit splits the determination of what gets wrapped into two phases:

1. All binaries under the target directories are wrapped and logged
   with "Wrapping program ..."

2. All links to executables under the target directories are
   identified and checked to see if they reference an executable
   under one of the target directories.

   If yes, the required wrapping has already been performed on
   the associated binary (in phase 1), so no wrapping is done
   and "Not wrapping link: ... (already wrapped)" is logged.

   If no, the link points at an executable that hasn't been
   wrapped, so the link is wrapped and "Wrapping link: ..." is logged.

As an example, the yelp package has a bin directory that contains
an executable "yelp" and a symbolic link "gnome-help" -> "yelp".

Prior to this commit, the bin directory would contain these files
after wrapping:

  gnome-help          -- wrapper to exec .gnome-help-wrapped
  .gnome-help-wrapped -- a symbolic link to yelp
  yelp                -- wrapper to exec .yelp-wrapped
  .yelp-wrapped       -- the original yelp binary

After this commit, the bin directory will instead contain:

  gnome-help          -- a symbolic link to yelp
  yelp                -- wrapper to exec .yelp-wrapped
  .yelp-wrapped       -- the original yelp binary

NOTE: The primary motivation for this commit is to avoid obscuring
the fact that two or more paths are simple aliases and expected to
behave identically. It also reduces the likelihood of hitting
limits related to environment variable size.

LIMITATION: The method used above is intended to be conservative
and will still wrap symbolic links to other symbolic links when
the ultimate target is outside of bin or libexec.
2019-01-31 20:14:30 -05:00
Matthew Bauer 830879d4c4
cc-wrapper: set priority to 10 2019-01-31 20:07:55 -05:00
volth 97870258b2
linkFarm: hacky quoting -> escapeShellArg 2019-01-31 17:26:49 +00:00
Justin Bedo 5611397f33
singularity: 2.6.0 -> 3.0.1 2019-01-31 09:21:18 +11:00
Alyssa Ross b9b83748f3
gcj: fix build on Darwin
Partially addresses https://github.com/NixOS/nixpkgs/issues/29715.
2019-01-30 18:19:17 +00:00
Kevin Rauwolf 2890a38652 Use nativeBuildInputs for building Docker images 2019-01-29 20:29:18 -08:00
volth e64a551603
runInLinuxVM: pkgs.linux -> kernel
There is a function params `kernel' intended to specify which kernel to use.
It defaults to `pkgs.linux`.
But when we override `kernel', compiling and using two kernels seems not to be the intendend bevavior.
2019-01-29 20:17:44 +00:00
Matthew Bauer bb3683d778
Merge pull request #54624 from matthewbauer/libcxx
cc-wrapper: add libcxx for libcxxClang
2019-01-27 13:55:18 -05:00
Matthew Bauer d16e0f8dc3 all-packages: move fetch* to pkgs/build-support/ 2019-01-26 22:47:54 -05:00
Matthew Bauer 77550df8e6 cc-wrapper: add libcxx for libcxxClang
clang needs to find headers + libraries for compiling with libc++. We
need to add a libcxx argument to cc-wrapper. This means you do not
have to pass in c++ headers directly.

This resolves the last case remaining of #30670. Darwin clang++ now
works properly.

Fixes #30670
2019-01-26 22:45:15 -05:00
Florian Franzen f15bdea8c3 buid-support: Add Ubuntu bionic base images 2019-01-26 16:32:19 +01:00
Andrew Childs 597d6d2bcd nix-prefetch-git: propagate errors under --quiet 2019-01-25 01:52:26 +09:00
Vladimír Čunát 3fe32b675e
Merge branch 'master' into staging 2019-01-22 15:59:42 +01:00
Jörg Thalheim 86ef9a7766
Merge pull request #53934 from Mic92/prefer-fetch-remote
prefer-fetch-remote: an overlay to fetch on remote builders
2019-01-21 10:47:59 +00:00
Frederik Rietdijk ca2edf79f7 Merge master into staging-next 2019-01-20 18:22:17 +01:00
lewo 105ffa445d
Merge pull request #54270 from xtruder/build-support/docker/layered_image_tag_passthru
dockerTools: buildLayeredImage passthru imageTag
2019-01-20 12:21:20 +01:00
Frederik Rietdijk d531da6f8a
Merge pull request #54094 from rnhmjoj/shell
treewide: use ${stdenv.shell} instead of /bin/sh where possible
2019-01-19 14:15:51 +01:00
Jörg Thalheim eac6797380
prefer-fetch-remote: an overlay to fetch on remote builders
This is useful when running tools like NixOps or nix-review
on workstations where the upload to the builder is significantly
slower then downloading the source on the builder itself.
2019-01-18 14:41:10 +00:00
Jaka Hudoklin 1787afb861
dockerTools: buildLayeredImage passthru imageTag 2019-01-18 13:52:07 +01:00
Frederik Rietdijk 9cfae76fc5 Merge staging-next into staging 2019-01-17 09:21:29 +01:00
rnhmjoj bcf54ce5bb
treewide: use ${stdenv.shell} instead of /bin/sh where possible 2019-01-16 20:37:15 +01:00
Pierre-Etienne Meunier 121318a9b4 toml2nix: init at 0.1.1 (#53883) 2019-01-15 23:36:36 +02:00
Frederik Rietdijk bb9581cd88 Merge staging-next into staging 2019-01-13 14:46:43 +01:00
Vladimír Čunát bde8efe792
Merge branch 'master' into staging-next
A couple thousand rebuilds have accumulated on master.
2019-01-12 12:19:34 +01:00
Orivej Desh (NixOS) 9a21967f0a
stdenv: prune libtool files by default (#51767)
See the motivation in fd97db43bc (#41819).
2019-01-11 13:20:46 +00:00
lewo 7612a6add4
Merge pull request #52870 from xtruder/pkgs/dockerTools/buildLayeredImage/extraCommands
dockerTools: allow to pass extraCommands, uid and gid to buildLayered image
2019-01-10 19:00:19 +01:00
Jaka Hudoklin 954cda5c9d
dockerTools: allow to pass extraCommands, uid and gid to buildLayeredImage 2019-01-10 16:02:23 +01:00
Franz Pletz 237deba4e7
Merge remote-tracking branch 'origin/master' into staging 2019-01-10 16:00:34 +01:00
Vladimír Čunát 287144e342
Merge branch 'master' into staging-next 2019-01-10 13:07:21 +01:00
Dmitry Kalinkin 6b81768297
Merge pull request #30479 from obsidiansystems/singularity-tools
singularity-tools: Only copy into /bin what is specified in contents
2019-01-09 19:39:08 -05:00
Daniel Goertzen 1c10efc912 add generic x86_32 support (#52634)
* add generic x86_32 support

- Add support for i386-i586.
- Add `isx86_32` predicate that can replace most uses of `isi686`.
- `isi686` is reinterpreted to mean "exactly i686 arch, and not say i585 or i386".
- This branch was used to build working i586 kernel running on i586 hardware.

* revert `isi[345]86`, remove dead code

- Remove changes to dead code in `doubles.nix` and `for-meta.nix`.
- Remove `isi[345]86` predicates since other cpu families don't have specific model predicates.

* remove i386-linux since linux not supported on that cpu
2019-01-06 12:57:36 -06:00
Lengyel Balazs d848495a9f xorg: update mirrors to https and remove an outdated one 2019-01-04 14:38:57 +01:00
Frederik Rietdijk 070290bda7 Merge master into staging-next 2018-12-31 12:00:36 +01:00
Silvan Mosberger 69ef070296
Merge pull request #50341 from corngood/chicken-5
chicken: 4.13.0 -> 5.0.0
2018-12-31 05:09:57 +01:00
lewo bb86d0ca24
Merge pull request #52959 from nlewo/runAsRootParentImage
dockerTools.example.runAsRootParentImage: init
2018-12-29 12:56:47 +01:00
Frederik Rietdijk 10afccf145 Merge staging-next into staging 2018-12-27 18:11:34 +01:00
lewo 23ebff30a3
Merge pull request #52109 from djahandarie/master
dockerTools.buildImage: fix two bugs introduced in c88337c9ac
2018-12-27 11:17:51 +01:00
Antoine Eiche 43cbba0274 dockerTools.examples.runAsRootParentImage: init
Example of running something as root on top of a parent image.
This is a regression test related to the PR #52109.
2018-12-27 11:15:35 +01:00
David McFarland 6c063ac076 chicken: 4.13.0 -> 5.0.0 2018-12-26 22:23:01 -04:00
Frederik Rietdijk e45ca47f14 Merge staging-next into staging 2018-12-26 09:30:32 +01:00
Craig Younkins 8b12b17df3
treewide: Fix broken Gmane URLs 2018-12-25 22:34:55 -05:00
Frederik Rietdijk 9ab61ab8e2 Merge staging-next into staging 2018-12-19 09:00:36 +01:00
Frederik Rietdijk 911d1853ca Merge master into staging-next 2018-12-19 08:57:41 +01:00
volth a0d15a0c68
mirrors.nix: remove bad cpan mirrors 2018-12-19 01:19:08 +00:00
volth fed7914539
Merge branch 'staging' into make-perl-pathd 2018-12-18 17:13:27 +00:00
Frederik Rietdijk 826ab7026e Merge master into staging-next 2018-12-18 09:22:17 +01:00
Jan Tojnar aead6e12f9
Merge remote-tracking branch 'upstream/master' into staging 2018-12-16 22:55:06 +01:00
volth bb9557eb7c lib.makePerlPath -> perlPackages.makePerlPath 2018-12-15 03:50:31 +00:00
Darius Jahandarie a3c536fcb3 dockerTools.buildImage: fix two bugs introduced in c88337c9ac 2018-12-14 15:48:58 -05:00
Alexander Krupenkin 451b181586
fetchcargo: fixed config installation path 2018-12-14 16:23:33 +03:00
Darius Jahandarie da84602f61 buildRustCrate: fix extraRustcOpts so it is not discarded 2018-12-12 01:21:46 -06:00
Piotr Bogdan 93545a8910 pruneLibtoolFiles: check if prefix exists 2018-12-09 22:44:29 +00:00
Piotr Bogdan 9cd155f1e2 pruneLibtoolFiles: more permissive regex for detecting libtool files 2018-12-09 00:13:04 +00:00
Frederik Rietdijk 3e950d584c Merge staging-next into master 2018-12-08 16:29:21 +01:00
Benjamin Hipple 8dbc8e586c fetchurl: refresh and add extra KDE mirrors
* fetchurl: fix and add extra KDE mirrors (#51480)

- The gwdg.de mirror has moved the relative path of its KDE tarballs
- Add new mirrors from Berkeley and MIT, which are on the list of officially supported mirrors

https://download.kde.org/extra/download-mirrors.html

* More KDE mirror touchups

- The official one is a redirect to HTTPS anyways, so go directly to HTTPS
- Add China USTC for Asian users
- Swap Finland university from FTP to HTTP

* fetchurl: keep one ftp KDE mirror
2018-12-08 15:39:05 +01:00
Frederik Rietdijk df304abd27 Merge staging-next into staging 2018-12-08 12:50:38 +01:00
Frederik Rietdijk e0950ae9ad Merge master into staging-next 2018-12-08 12:40:13 +01:00
Dmitry Kalinkin 2da30b1384
Merge pull request #49918 from cocreature/agda-env
agda: use writeShellScriptbin instead of writeScriptBin
2018-12-07 21:48:34 -05:00
Dmitry Kalinkin 3b6de72836
agda: use exec in agdaWrapper 2018-12-07 21:37:19 -05:00
Frederik Rietdijk 747aa4cc93 Merge staging-next into staging 2018-12-07 15:31:52 +01:00
Frederik Rietdijk 5f554279ec Merge master into staging-next 2018-12-07 15:22:35 +01:00
lewo f7e67be1dc
Merge pull request #51528 from grahamc/buildImage-on-layered-image
dockertools buildImage: support new-style image specs
2018-12-07 09:44:58 +01:00
Graham Christensen c88337c9ac
dockerTools.buildImage: support using a layered image in fromImage
Docker images used to be, essentially, a linked list of layers. Each
layer would have a tarball and a json document pointing to its parent,
and the image pointed to the top layer:

    imageA  ----> layerA
                    |
                    v
                  layerB
                    |
                    v
                  layerC

The current image spec changed this format to where the Image defined
the order and set of layers:

    imageA  ---> layerA
            |--> layerB
            `--> layerC

For backwards compatibility, docker produces images which follow both
specs: layers point to parents, and images also point to the entire
list:

    imageA  ---> layerA
            |      |
            |      v
            |--> layerB
            |      |
            |      v
            `--> layerC

This is nice for tooling which supported the older version and never
updated to support the newer format.

Our `buildImage` code only supported the old version, so in order for
`buildImage` to properly generate an image based on another image
with `fromImage`, the parent image's layers must fully support the old
mechanism.

This is not a problem in general, but is a problem with
`buildLayeredImage`.

`buildLayeredImage` creates images with newer image spec, because
individual store paths don't have a guaranteed parent layer. Including
a specific parent ID in the layer's json makes the output less likely
to cache hit when published or pulled.

This means until now, `buildLayeredImage` could not be the input to
`buildImage`.

The changes in this PR change `buildImage` to only use the layer's
manifest when locating parent IDs. This does break buildImage on
extremely old Docker images, though I do wonder how many of these
exist.

This work has been sponsored by Target.
2018-12-05 14:25:54 -05:00
Austin Seipp 3aa9091162 buildRustCreate: export RUSTDOC during cargo config
See https://github.com/NixOS/nixpkgs/pull/50452#issuecomment-443455411

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2018-12-04 19:51:51 -06:00
Jörg Thalheim 8c74bea7b8
Merge pull request #51353 from krebs/nix-writers
build-support writers: content can be string or file
2018-12-04 20:13:36 +00:00
lassulus 995defbb9b build-support writers: content can be string or file 2018-12-04 16:40:32 +01:00
Graham Christensen fc459de60e
Merge pull request #50452 from P-E-Meunier/carnix-fix
Rust build-support: fixing a compilation error in some crates
2018-12-03 10:53:25 -05:00
Bjørn Forsman ad28261ad2 audit-tmpdir hook: clean up whitespace 2018-12-02 11:45:34 +01:00
Bjørn Forsman ed0cee645f audit-tmpdir hook: use abspath matching on RPATH entries
This ensures that RPATH entries like "/foo/build/bar" doesn't trigger a
match when TMPDIR is "/build/bar". (I've had this problem with a
prebuilt package.)
2018-12-02 11:45:18 +01:00
Jan Tojnar c5881ec2c9
Merge remote-tracking branch 'upstream/master' into staging 2018-11-30 20:09:45 +01:00
Frederik Rietdijk 1828a5c5ba Merge master into staging-next 2018-11-30 17:46:21 +01:00
Vincent Laporte 66efb76c75 ocamlPackages.buildDunePackage: fix meta.platforms 2018-11-30 16:19:03 +00:00
John Ericson ed71691a81
Merge pull request #51217 from mayflower/source-date-epoch-fix-warning
set-source-date-epoch-to-latest: fix warning
2018-11-29 15:20:22 -05:00
Charles Duffy 8f90b33240
buildMaven: Support metadata-only dependencies
The circumstances which can make this necessary are discussed in NixOS/mvn2nix-maven-plugin#17
2018-11-29 17:29:59 +00:00
Robin Gloster 34faed5bb0
set-source-date-epoch-to-latest: fix warning
If there was no older file than $NIX_BUILD_TOP this would result in a
warning, e.g. with nix-info.

```
/nix/store/15kgcm8hnd99p7plqzx7p4lcr2jni4df-set-source-date-epoch-to-latest.sh: line 13: [: : integer expression expected
```
2018-11-29 09:49:08 +01:00
Frederik Rietdijk 9b81c7e455 Merge staging-next into staging 2018-11-29 09:18:35 +01:00
Frederik Rietdijk 9db2421d1f Merge master into staging-next 2018-11-29 08:12:56 +01:00
Matthew Bauer 7fa8c41c4a
Merge pull request #50235 from illegalprime/more-fhsuserenv-blacklists
fix FHSUserEnv blacklists
2018-11-28 09:32:01 -06:00
Pierre-Étienne Meunier 3083fa2aa1 Carnix 0.9.2 2018-11-27 16:08:11 +00:00
Thomas Tuegel fb7749620b
melpaBuild: Get package-build from melpa/package-build
This commit causes melpaBuild to use package-build from melpa/package-build
instead of melpa/melpa. Development of package-build happens in the former
repository whereas the latter is much larger, containing also the MELPA
recipes. We do not need to fetch the MELPA recipes from melpa/melpa, as we fetch
them one-by-one for Nixpkgs.
2018-11-27 09:36:28 -06:00
Thomas Tuegel 762295a39c
Merge pull request #51095 from bhipple/fix/emacs-builders
emacsPackagesNg.trivialBuild: cleanup and standardize function
2018-11-27 09:34:12 -06:00
Jörg Thalheim afbdeb7b9b
Merge pull request #50802 from aszlig/autopatchelf-improvements
autoPatchelfHook: Fixes/improvements for Android SDK emulator
2018-11-27 10:25:26 +00:00
Jörg Thalheim f12bd000b9
Merge pull request #49290 from krebs/nix-writers
get nix-writers into nixpkgs
2018-11-27 07:17:03 +00:00
lassulus 2d02cd7790 build-support writers: add tests 2018-11-27 07:08:13 +01:00
lassulus abd0efae35 build-support: add writers from krebs/writers
Reference https://github.com/krebs/nix-writers revision 40fde9e
2018-11-27 07:08:12 +01:00
Benjamin Hipple a7d1474023 emacsPackagesNg.trivialBuild: cleanup and standardize function
No real function change here, but this updates the trivial and melpa builders to
be formatted more consistently with the rest of the builders, and swaps
`eval "$preBuild"` for the more standard `runHook preBuild`.
2018-11-27 00:23:04 -05:00
Jörg Thalheim dc8aca448d
Merge pull request #51028 from clefru/tmp-cargo-config
buildRustPackage: write cargo config to temporary file instead of source dir
2018-11-26 15:00:16 +00:00
aszlig 4a6e3e4185
autoPatchelfHook: Skip on missing segment headers
If the file in question is not a shared object file but an ELF, we
really want to skip the file, because we won't have anything to patch
there.

For example if the file is created via "gcc -c -o foo.o foo.c", we don't
get a segment header and so far autoPatchelf was trying to patch such a
file.

By checking for missing segment headers, we're now no longer going to
attempt patching such a file.

Signed-off-by: aszlig <aszlig@nix.build>
Reported-by: Sander van der Burg <svanderburg@gmail.com>
2018-11-26 01:58:36 +01:00
aszlig 9f23a63f79
autoPatchelfHook: Fix type of norecurse variable
While declaring it as an array doesn't do any harm in our usage, it
might be a bit confusing when reading the code.

Signed-off-by: aszlig <aszlig@nix.build>
2018-11-26 01:13:59 +01:00
aszlig 2faf905f98
autoPatchelfHook: Add addAutoPatchelfSearchPath
This function is useful if autoPatchelf is invoked during some of the
phases of a build and allows to add arbitrary shared objects to the
search path.

So far the same functionality was in autoPatchelf itself, but not
available as a separate function, so when adding shared objects to the
dependency cache one would have to do so manually.

The function also has the --no-recurse flag, which prevents recursing
into subdirectories.

Signed-off-by: aszlig <aszlig@nix.build>
2018-11-25 16:22:32 +01:00
Clemens Fruhwirth 8d4fbc55d8 Write cargo config to temporary file instead of source dir.
... as this fails if the source dir contains a "config" directory.
2018-11-25 15:26:31 +01:00
Frederik Rietdijk c1792242ef Merge staging-next into staging 2018-11-24 10:44:50 +01:00
Frederik Rietdijk e41154d1ab Merge master into staging-next 2018-11-24 10:43:33 +01:00
Jörg Thalheim c424c1161b
Merge pull request #50560 from oxij/pkgs/fetchurl-mirrors
fetchurl: mirrors: http -> https, https before http, http before ftp
2018-11-23 11:56:44 +00:00
Pierre-Étienne Meunier 0e8332ca2b Fixing "include" 2018-11-22 11:40:03 +00:00