This makes the flow of data easier to understand. There's little downside
because the args in question are already inspected by the stdenvs.
cross-compiling in particular is simpler because we don't need to worry
about overriding the config closed over by `allPackages`.
This commit changes the dependencies of stdenv, and clean-up the stdenv
story by removing the `defaultStdenv` attribute as well as the `bootStdenv`
parameter.
Before, the final bootstrapping stage's stdenv was provided by
all-packages, which was iterating multiple times over the
top-level/default.nix expression, and non-final bootstrapping stages'
stdenvs were explicitly specified with the `bootStdenv` parameter.
Now, all stages' stdenvs are specified with the `stdenv` parameter.
For non-final bootstrapping stages, this is a small change---basically just
rename the parameter.
For the final stage, top-level/default.nix takes the chosen stdenv and
makes the final stage with it.
`allPackages` is used to make all bootstrapping stages, final and
non-final alike. It's basically the expression of `stage.nix` (along with a
few partially-applied default arguments)
Note, the make-bootstrap-tools scripts are temporarily broken
It was deprecated and removed from all modules in the tree by #18319.
The wireguard module PR (#17933) was still in the review at the time and
the deprecated usage managed to slip inside.
They're broken after all. In particular, this prevents us from
evaluating packages that are unsupported on a particular platform.
Reverts a147ddc42c.
Fixes#20817.
Deprecation warnings should not be used in Nixpkgs because they spam
innocent "nix-env -qa" users with (in this case) dozens of messages
that they can't do anything about.
This also reverts commit 2ca8833383.
We have two derivations, one that supports Cuda, and one that does not.
The names, TheanoWithCuda and TheanoWithoutCuda, now reflect that.
Furthermore, a boolean passthru.cudaSupport was added.
In the future the two derivations should be merged in one, with a
parameter `cudaSupport`.
Use the release tarball provided by the clisp maintainer.
Tested build by nix-build -A clisp -A clisp_2_44_1 -A gtk-server;
only clisp run-tested.
Of particular note is that the .so files no longer have executable
stacks. This also avoids executable stack in clisp lisp.run
Before:
$ readelf -lW $(nix-build -A clisp)/lib/clisp-2.49/base/lisp.run|grep GNU_STACK
GNU_STACK [...] RWE 0x10
After:
$ readelf -lW $(nix-build -A clisp)/lib/clisp-2.49/base/lisp.run|grep GNU_STACK
GNU_STACK [...] RW 0x10
This allows to scroll content in less, screen, nano, tmux and others
(the ones, who create so called "secondary screens"), similar to VTE-based
terminals.
Note, however, that mouse wheel won't work in `less -X`, which is used
by basic `journalctl`. Fix it with `export SYSTEMD_LESS=FRSMK`
The `groups.1.gz` collides with one from coreutils. The code to fix this
was already present in expression, but wrongly assumes that share/man/man1
directory will be copied to `man` output after `installPhase`.
It turned out, that man directory is set at configure step, so we should
remove file from `man` output.