Commit graph

4661 commits

Author SHA1 Message Date
Pascal Bach
1871c113f1
Merge pull request #124157 from nh2/libredirect-children
libredirect: Fix redirects not working for subprocesses
2021-09-04 13:19:08 +02:00
happysalada
c9f0c6f115 build-rust-crate: add global libiconv darwin buildInputs 2021-09-04 12:03:36 +09:00
happysalada
0585c981f1 build-rust-crate: nixpkgs-fmt 2021-09-04 12:03:36 +09:00
happysalada
0e8d59e3cb default-crate-overrides: nixpkgs-fmt 2021-09-04 12:03:36 +09:00
Pascal Bach
fc5196c2f0 libredirect: add subprocess test 2021-09-03 23:45:46 +02:00
Niklas Hambüchen
4961547d05 libredirect: Fix redirects not working for subprocesses 2021-09-03 22:26:22 +02:00
Niklas Hambüchen
0afbd6c86a libredirect: Enable debug symbols 2021-09-03 22:26:21 +02:00
Niklas Hambüchen
5ca0265505 libredirect: Add missing phase hooks 2021-09-03 22:26:20 +02:00
Matt Votava
ea4b37e679 buildFhsUserenv: inherit mounts from parent namespace 2021-09-01 18:37:54 -07:00
Bjørn Forsman
9bd51f0db9 nix-prefetch-git: add fetchLFS flag to the JSON output
Similarly to the other flags (e.g. fetchSubmodules).
2021-08-28 10:14:48 +02:00
Bjørn Forsman
f43829a1d8 nix-prefetch-git: provide fallback for $TMPDIR
$TMPDIR is not set by default in NixOS (nor Ubuntu), so without this
change nix-prefetch-git fails when using git-lfs.
2021-08-28 10:14:48 +02:00
Jörg Thalheim
eafa8276d5
Merge pull request #135642 from Mic92/writers
writers: drop writeC
2021-08-26 11:48:23 +01:00
davidak
6f42a23a0c
Merge pull request #135004 from Stunkymonkey/vm-phases
vm: deprecate phases
2021-08-26 02:24:23 +02:00
Jörg Thalheim
982f46985e writers: drop writeC
This function is fundamentally broken.
Not even the ncurses example will compile.
The interface needs to be rethought for it to work (i.e. don't
unconditionally include all pc files, set include path and ld path and
rpath).
Since it is unlikely that in the current this has any user, just drop it for now.
2021-08-25 20:16:31 +02:00
Florian Klink
14b61efa87 dockerTools.usrBinEnv: add
This provides a /usr/bin/env, for shell scripts using the
"/usr/bin/env executable" shebang.
2021-08-25 16:08:39 +02:00
Sandro
e1e367ca31
Merge pull request #134347 from Stunkymonkey/emacs-elpa-package-phases 2021-08-25 14:01:54 +02:00
Sandro
da497034d8
Merge pull request #135464 from baloo/baloo/mirror-list/2021 2021-08-24 10:39:02 +02:00
Arthur Gautier
1825aae278 mirrors: get a second mirror for metalab
Signed-off-by: Arthur Gautier <baloo@superbaloo.net>
2021-08-23 20:47:58 +00:00
Arthur Gautier
91db7bb1d0 mirrors: refresh the mirrors list
Some mirrors are gone, some migrated to http instead of ftp.

Signed-off-by: Arthur Gautier <baloo@superbaloo.net>
2021-08-23 18:56:15 +00:00
Arthur Gautier
9d143d5a3b mirrors: oldsuse mirrors have been discontinued
Signed-off-by: Arthur Gautier <baloo@superbaloo.net>
2021-08-23 18:45:15 +00:00
Gabriella Gonzalez
9a8850aea9
dhallToNix: Permit inputs referring to derivations (#134459)
Fixes https://github.com/dhall-lang/dhall-haskell/issues/2267

`pkgs.dhallToNix` currently fails when a Dhall package is
interpolated into the input source code, like this:

```nix
let
  pkgs = import <nixpkgs> { };

  f = { buildDhallPackage }: buildDhallPackage {
    name = "not";
    code = "λ(x : Bool) → x == False";
    source = true;
  };

  not = pkgs.dhallPackages.callPackage f {};

in
  pkgs.dhallToNix "${not}/source.dhall True"
```

This is because `dhallToNix` was using `builtins.toFile`, which
does not permit inputs with interpolated derivations.  However,
`pkgs.writeText` does not have this limitation, so we can switch
to using that instead.
2021-08-21 19:25:01 -07:00
Sandro
20a82c1281
Merge pull request #135007 from Stunkymonkey/fetchgx-phases
fetchgx: deprecate phases
2021-08-21 15:13:32 +02:00
Sandro
4372fb396e
Merge pull request #134416 from Stunkymonkey/nix-template-rpm-phases 2021-08-21 02:19:24 +02:00
Felix Buehler
b5c8a485c6 fetchgx: deprecate phases 2021-08-20 23:47:21 +02:00
Felix Buehler
ae9337179b vm: deprecate phases 2021-08-20 23:31:26 +02:00
Florian Klink
f8031c60b7
dockerTools.fakeNss: add /etc/nsswitch.conf (#134958)
Apparently, a non-existent nsswitch.conf causes a very misleading host
resolution, differing from the defaults people are used to.

According to
https://github.com/golang/go/issues/22846#issuecomment-346377144, glibc
says the default is "dns [!UNAVAIL=return] files".

This means, `/etc/hosts` isn't really honored, causing all sorts of
unexpected behaviour.

Let's prevent this, and first ask `/etc/hosts` before querying DNS, like
we do on NixOS too.
2021-08-20 19:44:17 +02:00
Robin Stumm
3bdfca4491 buildRustPackage: remove unused parameter 2021-08-20 12:46:05 +02:00
davidak
a614698169
Merge pull request #134356 from Stunkymonkey/replace-secret-phases
replace-secret: deprecate phases
2021-08-19 04:30:08 +02:00
Alyssa Ross
6e6c8b7338 s6-rc: fix cross builds that run s6-rc-compile
The reason for this change is explained in the long comment I added.

Here's a simple example of the problem:

	let
	  pkgs = import <nixpkgs> { crossSystem.system = "aarch64-linux"; };
	in

	pkgs.callPackage ({ stdenv, s6-rc }: stdenv.mkDerivation {
	  name = "s6-rc-compiled";

	  nativeBuildInputs = [ s6-rc ];

	  buildCommand = ''
	    mkdir in
	    s6-rc-compile $out in
	  '';
	}) {}

We're cross compiling for aarch64 here, so we'd expect the scripts
generated by this derivation to be things we could run on aarch64.
But when I build this on my x86_64 machine, without this change
applied, $out/servicedirs/s6rc-oneshot-runner/run gets generated full
of references to x86_64 non-cross store paths for execline, s6, and
s6-rc.

With this change applied, the scripts generated by the above
expression now refer to the cross-compiled aarch64 store paths for
execline, s6, and s6-rc.
2021-08-18 20:09:19 +00:00
Sandro
3f3e055bcd
Merge pull request #133905 from raboof/buf-use-testVersion-utility
buf: use testVersion utility
2021-08-18 11:59:49 +02:00
Ben Siraphob
6b7decf64b
Merge pull request #134413 from Zimmi48/package-hydra-battles 2021-08-17 08:32:21 -05:00
Théo Zimmermann
90654cce7d
coqPackages.mkCoqDerivation: fix useDune2
- Reuse build phase from the `buildDunePackage` function.
- Only install the package that was just built (useful for monorepo support).
- Introduces `opam-name` to override the default package name to build with Dune.
2021-08-17 14:38:47 +02:00
Felix Buehler
90f9565f1a nix-template-rpm: deprecate phases 2021-08-17 11:04:49 +02:00
Felix Buehler
454c6dee5e replace-secret: deprecate phases 2021-08-17 09:59:37 +02:00
Felix Buehler
829ed287f0 elpa-packages: deprecate phases 2021-08-16 21:34:58 +02:00
Dmitry Kalinkin
a57ca31b3b
Merge pull request #133350 from rasendubi/fetchzip-downloadname
fetchzip: add extension parameter
2021-08-15 13:04:32 -04:00
Robert Hensing
9feb144c8c runCommandNoCC: deprecate
It has been synonymous with runCommand ~5y.
2021-08-15 17:36:41 +02:00
Robert Hensing
a13aa64bd3 build-support/rust: remove unused runCommandNoCC 2021-08-15 17:36:41 +02:00
Robert Hensing
fbafeb7ad5 treewide: runCommandNoCC -> runCommand
This has been synonymous for ~5y.
2021-08-15 17:36:41 +02:00
sternenseemann
b4c9d6eb31 skawarePackages.buildManPages: derivation wrapper for skaware man page ports
GitHub user flexibeast has been porting the html documentation from
skarnet.org to mdoc, making them available as man pages. While the
documentation is non authorative, it is certainly useful and is also
linked from skarnet.org.

buildManPages implements the common mkDerivation machinery common to all
ported man page packages / repositories.
2021-08-15 11:43:10 +02:00
Jörg Thalheim
ec9f44e541
Merge pull request #134119 from tekeri/rust-crate-override-pamsys
rust: fix build of pam-sys package
2021-08-15 09:35:22 +01:00
Arnout Engelen
1a604de2e7
buf: use testVersion utility
`installCheckPhase` is mainly intended for checks that are part of the
upstream package, for our 'own' checks we prefer `passthru.tests`.

This loses running `buf --help`, but I'm not sure how much that adds
on top of `buf --version`?
2021-08-15 09:00:30 +02:00
tekeri
2419ea4aff rust: fix build of pam-sys package 2021-08-15 15:55:20 +09:00
Jörg Thalheim
52657498f7
Merge pull request #133588 from zhaofengli/nuget-to-nix
nuget-to-nix: init
2021-08-15 07:02:43 +01:00
Luke Granger-Brown
dbe9bf9848 dockerTools.pullImage: fix for skopeo 1.4.x
skopeo 1.4.x doesn't accept --src-tls-verify as a flag to the *program*,
only as a flag to copy; we must pass it after the "copy" verb, or it
will fail with:

> FATA[0000] unknown flag: --src-tls-verify
2021-08-14 21:21:26 +00:00
Zhaofeng Li
1ad800d919 nuget-to-nix: init
Adapted from `pkgs/games/osu-lazer/update.sh`.

Restore the packages to a directory with `--packages`, then run
`./nuget-to-nix.sh [path to packages] > deps.nix`.
2021-08-13 22:50:20 -07:00
Shea Levy
9ecfbe0c5b
mingw: Disalbe FORTIFY_SOURCE by default.
In newer versions of mingw, programs compiled with FORTIFY_SOURCE need
to link to libssp or they will have link-time errors.

gmp has been broken since @pstn updated mingw-64 in c60a0b0447
2021-08-11 05:07:42 -04:00
Alexey Shmalko
1893e2be4d
fetchzip: add extension parameter
fetchzip downloads the file from specified URL, renames it to basename
of that url, and then relies on unzip to do the unpacking.

The first consequence is that this requires URL to end with proper
extension—otherwise it will fail to unpack. This is not always the
case and input-fonts workarounds this by adding “&.zip” query
parameter (which is obviously a hack and is not guaranteed to work
with every URL).

The second consequence is that basename of the url must be a valid
filename. I’ve tried to build a custom configuration of input-fonts
and I get an error from mv that the filename is too long:

> trying https://input.djr.com/build/?fontSelection=fourStyleFamily&regular=InputMonoNarrow-Regular&italic=InputMonoNarrow-Italic&bold=InputMonoNarrow-Bold&boldItalic=InputMonoNarrow-BoldItalic&a=0&g=0&i=topserif&l=serifs_round&zero=0&asterisk=height&braces=straight&preset=default&line-height=1.2&accept=I+do&email=&.zip
>   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
>                                  Dload  Upload   Total   Spent    Left  Speed
> 100  406k  100  406k    0     0   230k      0  0:00:01  0:00:01 --:--:--  230k
> mv: failed to access '/build/?fontSelection=fourStyleFamily&regular=InputMonoNarrow-Regular&italic=InputMonoNarrow-Italic&bold=InputMonoNarrow-Bold&boldItalic=InputMonoNarrow-BoldItalic&a=0&g=0&i=topserif&l=serifs_round&zero=0&asterisk=height&braces=straight&preset=default&line-height=1.2&accept=I+do&email=&.zip': File name too long

We could use “name” parameter as the filename (that’s how it is used
in fetchurl). However, the previous attempt to do
so (fc01353703) was
reverted (24b5eb61eb) because of the
introduced regression—many fetchzip invocations use names without
extension (also the default name is just “source”).

This commit adds an optional “extension” parameter. If it is set,
fetchzip renames the downloaded file to “download.${extension}”
effectively solving both problems above without introducing a massive
regression.

This is a no-op for all existing packages.

Tested by updating my NixOS setup + the extra inputs-fonts
configuration mentioned above + tons of unstable emacs packages after
a nix-collect-garbage (3Gb downloaded) with this patch applied.
2021-08-10 19:57:08 +03:00
Sandro Jäckel
ceb417aaf1
docker: format 2021-08-10 10:32:46 +02:00
Linus Heckemann
b0fc6e8ff9 make-initrd: fix #132059 2021-08-08 07:53:59 +02:00