Commit graph

3300 commits

Author SHA1 Message Date
Alexander Krupenkin a4902a33bf cargo-vendor: 0.1.13 -> 0.1.23 2019-04-21 12:11:54 +02:00
Matthew Bauer 5fad67d361 utils.bash: allow response files in bootstrapping
llvm uses response files in bootstrapping. It’s okay for them to
happen even though we don’t use expandResponseParams here right now.
2019-04-20 23:17:04 -04:00
Matthew Bauer d180cb9850 cc-wrapper: make machine configuration configurable
It is useful to make these dynamic and not bake them into gcc. This
means we don’t have to rebuild gcc to change these values. Instead, we
will pass cflags to gcc based on platform values. This was already
done hackily for android gcc (which is multi-target), but not for our
own gccs which are single target.

To accomplish this, we need to add a few things:

- add ‘arch’ to cpu
- add NIX_CFLAGS_COMPILE_BEFORE flag (goes before args)
- set -march everywhere
- set mcpu, mfpu, mmode, and mtune based on targetPlatform.gcc flags

cc-wrapper: only set -march when it is in the cpu type

Some architectures don’t have a good mapping of -march. For instance
POWER architecture doesn’t support the -march flag at all!

https://gcc.gnu.org/onlinedocs/gcc/RS_002f6000-and-PowerPC-Options.html#RS_002f6000-and-PowerPC-Options
2019-04-20 20:05:51 -04:00
Timo Kaufmann 0e8177ad10
Merge pull request #57169 from timokau/appimage-improvements
appimage-run improvements
2019-04-20 18:27:00 +02:00
Izorkin f40f2323fa phpPackages: build packages with pname 2019-04-20 17:32:11 +03:00
Timo Kaufmann 4f956e832a appimage-run: add libtool
Needed by Synfigstudio, see
https://github.com/NixOS/nixpkgs/pull/57169/files#issuecomment-477697665.
2019-04-20 12:32:17 +02:00
Timo Kaufmann fb6bc78a5c appimage-run: add missing libs 2019-04-20 12:32:10 +02:00
Jan Tojnar 90f3a237eb
libredirect: add support for openat and dlopen
gobject-introspection uses glib’s g_module_open function, which in turn relies
on dlopen. I also implemented openat, since I initially thought this function
was used but turns out dlopen uses the openat signal directly. We might as
well keep it, even thought I do not need it at the moment.
2019-04-20 03:09:17 +02:00
Niklas Hambüchen a0fa0cd8cf trivial-builders: Fix runCommand examples 2019-04-19 06:29:42 +02:00
Frederik Rietdijk bae32a9f5c Merge staging-next into staging 2019-04-16 18:54:15 +02:00
Linus Heckemann 3b16f345b5 make-initrd: allow specifying name
Also moves the argument defaults out of all-packages.nix and into
make-initrd itself.
2019-04-13 23:20:58 +02:00
Bob van der Linden 9555fd73f3
fetchpatch: explicitly use patchutils 0.3.3 2019-04-13 23:20:33 +02:00
Matthew Bauer 7edf2db0fd
Merge pull request #59338 from matthewbauer/llvm-libc++
llvm8: support c++ in cross case
2019-04-12 14:09:00 -04:00
Joachim F de9b622eab
Merge pull request #58847 from bachp/fhs-locales
nixos/fhsUserenv: make all locales available
2019-04-12 09:35:20 +00:00
rnhmjoj 5ea4160b33
treewide: fixup bcf54ce
fix the executable bit for scripts installed with substituteAll
and some remaining shebangs.
2019-04-12 09:09:22 +02:00
Matthew Bauer d453273fbf llvm8: support c++ in cross case
this adds libc++ to the LLVM cross, giving us access to the full
Nixpkgs set. This requires 4 stages of wrapped compilers:

- Clang with no libraries
- Clang with just compiler-rt
- Clang with Libc, and compiler-rt
- Clang with Libc++, Libc, and compiler-rt
2019-04-11 21:28:51 -04:00
Frederik Rietdijk c6341c279b Merge staging-next into staging 2019-04-11 07:52:44 +02:00
Frederik Rietdijk 230c67f43b Merge master into staging-next 2019-04-11 07:50:23 +02:00
Jörg Thalheim 4d4f110ca5
Merge pull request #59181 from Izorkin/nginx-format
nixos/nginx: fix error in writeNginxConfig
2019-04-10 19:23:34 +01:00
Matthew Bauer 4aca600624
Merge pull request #59024 from matthewbauer/hackage-mirrors
haskell: add fpcomplete mirror, use hackage mirrors in more places
2019-04-10 01:45:04 -04:00
Frederik Rietdijk d108b49168 Merge master into staging-next 2019-04-09 16:38:35 +02:00
Andreas Rammhold 1462ef27bb
Merge pull request #58394 from P-E-Meunier/carnix-0.10
Carnix: 0.9 -> 0.10
2019-04-08 20:46:14 +00:00
Izorkin 496a73d46d nixos/nginx: fix error in writeNginxConfig 2019-04-08 16:44:23 +03:00
Niklas Hambüchen c4c2aa6586 trivial-builders: Fix outdated comment on writeTextFile 2019-04-08 01:12:50 +02:00
Frederik Rietdijk 4a125f6b20 Merge master into staging-next 2019-04-07 08:33:41 +02:00
lewo a8beff987d
Merge pull request #58350 from xtruder/pkgs/dockerTools/storePathToLayer/runtimeShell
dockerTools: storePathToLayer use runtimeShell in script
2019-04-06 19:01:19 +02:00
Jaka Hudoklin c087b608e8
Merge pull request #58360 from xtruder/pkgs/dockerTools/nix-prefetch-docker
dockerTools: add nix-prefetch-docker script
2019-04-06 14:44:19 +02:00
Jaka Hudoklin c1f0d19785
dockerTools: add nix-prefetch-docker script 2019-04-06 14:16:40 +02:00
Vladimír Čunát 526c4292ae
Merge branch 'staging-next'
This iteration was long, about five weeks (2fcb11a2), I think.
Darwin: it's missing a few thousand binaries and there's a make-netbsd
regression, but I suppose these aren't merge blockers.
2019-04-06 13:20:53 +02:00
Matthew Bauer eaa5e85b35 haskell: add more hackage mirrors, use mirrors in more places
Fixes #58971
2019-04-05 13:51:56 -04:00
Jan Tojnar cb1a20499a
Merge branch 'master' into staging 2019-04-05 11:37:15 +02:00
Jörg Thalheim 6dd7483ce1
Merge pull request #57979 from 4z3/writeNginxConfig
nixos/nginx: use nginxfmt and gixy
2019-04-04 20:23:58 +01:00
Michael Eden 53b0027fb4 writeShellScriptBin: use build-time shell in check phase 2019-04-04 13:31:51 -04:00
Pascal Bach 977d1d8413 nixos/fhsUserenv: make all locales available 2019-04-02 22:45:50 +02:00
Vladimír Čunát 2771375d6e
Merge branch 'master' into staging-next
Hydra nixpkgs: ?compare=1512490
2019-04-02 20:56:53 +02:00
John Ericson 716503d063 Merge branch 'staging' into rust-cross 2019-04-01 00:47:46 -04:00
John Ericson 4ccb74011f Merge commit '18aa59b0f26fc707e7313f8467e67159e61600c2' from master into staging
There was one conflict in the NixOS manual; I checked that it still
built after resolving it.
2019-04-01 00:40:03 -04:00
John Ericson 842b14ba98
Merge pull request #58330 from AerialX/msp430
TI MSP430 cross compiling
2019-03-29 16:11:22 -04:00
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