| Commit message (Expand) | Author | Age | Files | Lines |
| * | treewide: fix nix-env eval in cross | David McFarland | 2025-12-04 | 1 | -0/+4 |
| * | fetchurl: Allow hashed mirror overriding with config.hashedMirrors•••Allows having alternate hashed mirrors as fallbacks. Useful in case the
default hashed mirror is not accessible or doesn't have everything
needed.
Co-authored-by: Johan Herland <johan.herland@tweag.io>
Co-authored-by: Yuriy Taraday <yuriy.taraday@tweag.io>
Co-authored-by: Alexander Bantyev <balsoft@balsoft.ru>
| Silvan Mosberger | 2025-10-06 | 1 | -1/+1 |
| * | stdenv: Pass rewriteURL to freebsd and native stdenvs•••Was missing from abda866f172173b6fd16ccec9b15fb1cbb649cb2
While the native stdenv's eval seems to be broken anyways,
the freebsd one at least evaluates again with this
| Silvan Mosberger | 2025-10-06 | 1 | -0/+1 |
| * | treewide: run nixfmt 1.0.0 | Wolfgang Walther | 2025-07-24 | 1 | -17/+16 |
| * | treewide: format all inactive Nix files•••After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.
Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.
A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.
This commit was automatically created and can be verified using
nix-build https://github.com/infinisil/treewide-nixpkgs-reformat-script/archive/a08b3a4d199c6124ac5b36a889d9099b4383463f.tar.gz \
--argstr baseRev b32a0943687d2a5094a6d92f25a4b6e16a76b5b7
result/bin/apply-formatting $NIXPKGS_PATH
| Silvan Mosberger | 2024-12-10 | 1 | -68/+121 |
| * | stdenv: consistently use `self: super: …` for bootstrapping overlays•••As of late, `final: prev: …` for overlays has become more prevalent in
newer code. This is also exhibited in some code (presumably added
recently) in stdenv. This change is not about any merits or demerits of
any naming convention, but rather aims to make the nomenclature in
stdenv bootstrapping consistent to lessen confusion.
I've chosen to stick to `self: super: …` convention because:
1. It is more common in the code as it stands.
2. Using `final: prev: …` makes the code more confusing, als it causes
`prev` to be in scope alongside `prevStage`. `prevStage` actually
bears no relation to `prev` even though their naming suggests it,
making it easy to confuse them (the former is the (final) package set
of the previous stage while the latter is just the `prev`/`super` of
the overlay “chaining” on a completely fresh package set, i.e. `prev`
doesn't even relate to the previous stage's `overrides` argument).
This change also corrects a naming error in stdenv/native which had no
effect, as the variables were unused.
| sternenseemann | 2024-04-15 | 1 | -1/+1 |
| * | stdenv: fix stagesNative | uri | 2023-07-02 | 1 | -2/+5 |
| * | treewide: use lib.optionals | Felix Buehler | 2023-02-14 | 1 | -3/+3 |
| * | stdenv/native: fix bintools import | Jonathan Ringer | 2021-06-07 | 1 | -1/+1 |
| * | stdenv/{native,nix}: add lib to cc-wrapper args | Taeer Bar-Yam | 2021-04-21 | 1 | -1/+1 |
| * | stdenv/native: provide patchelf on linux•••This provides consistency with the pure stdenv, which provides
patchelf this way. Native stdenv can always just manually install
patchelf on their system, but like xz, it’s unlikely to be provided in
/usr/bin/. In addition, it’s not even in the RHEL7 repos.
| Matthew Bauer | 2020-08-25 | 1 | -4/+5 |
| * | treewide: remove redundant quotes | volth | 2019-08-26 | 1 | -2/+2 |
| * | stdenv/native: add missing argument | Andrew Dunham | 2019-01-02 | 1 | -1/+1 |
| * | stdenv: implement crossOverlays•••crossOverlays only apply to the packages being built, not the build
packages. It is useful when you don’t care what is used to build your
packages, just what is being built. The idea relies heavily on the
cross compiling infrastructure. Using this implies that we need to
create a cross stdenv.
| Matthew Bauer | 2018-12-04 | 1 | -1/+1 |
| * | [bot] treewide: remove unused 'inherit' in let blocks | volth | 2018-07-20 | 1 | -1/+1 |
| * | Fix stdenv-native by creating a bintools wrapper with similar settings | Sander van der Burg | 2018-04-14 | 1 | -4/+13 |
| * | fetchurl: cleanup, better errors•••Also fix what seems like bugs in uncommon `stdenv`s.
| Jan Malakhovski | 2018-02-18 | 1 | -1/+1 |
| * | cc-wrapper: Use stdenvNoCC to build•••cc-wrapper may wrap a cc-compiler, but it doesn't need one to build
itself. (c.f. expand-response-params is a separate derivation.) This
helps avoid cycles on the cross stuff, in addition to removing a
useless dependency edge.
I could have been super careful with overrides in the stdenv to avoid
the mass rebuild, but I don't think it's worth it.
| John Ericson | 2017-09-26 | 1 | -1/+2 |
| * | stdenvs: Distinguish between `extraBuildInputs` and `extraNativeBuildInputs`•••This version continues to use bash + stdenv/setup for the default
inputs.
| John Ericson | 2017-08-18 | 1 | -4/+4 |
| * | Revert "stdenvs: Distinguish between `extraBuildInputs` and `extraNativeBuild...•••This reverts commit eeabf85780e7fccc0289b4015b695e28ef166ab7.
This change suddenly makes tons of stdenv internals visible in
nativeBuildInputs of every derivation, which doesn't seem desirable.
E.g:
````
nix-repl> hello.nativeBuildInputs
[ «derivation /nix/store/bcfkyf6bhssxd2vzwgzmsbn7b5b9rpxc-patchelf-0.9.drv»
«derivation /nix/store/4wnshnz9wwanpfzcrdd76rri7pyqn9sk-paxctl-0.9.drv»
<< snip 10+ lines >>
«derivation /nix/store/d35pgh1lcg5nm0x28d899pxj30b8c9b2-gcc-wrapper-6.4.0.drv»
]
````
| Tuomas Tynkkynen | 2017-08-18 | 1 | -4/+4 |
| * | stdenvs: Distinguish between `extraBuildInputs` and `extraNativeBuildInputs`•••Additionally, instead of pulling them from `setup.sh`, route them via
Nix. This gets us one step closer to making stdenv be a plain attribute
set instead of a derivation.
| John Ericson | 2017-08-15 | 1 | -4/+4 |
| * | top-level: {build,host,target}Platform are defined in the stdenv instead•••See #27069 for a discussion of this
| John Ericson | 2017-07-07 | 1 | -8/+1 |
| * | stdenv: remove leftover 'system' reference•••the rest were removed in 1dc6f15de995da2d0351b34c40215336e219cf82
| David McFarland | 2017-06-26 | 1 | -1/+1 |
| * | cc-wrapper: Learn about target prefixes•••This is first step towards getting rid of gcc-wrapper-cross
| John Ericson | 2017-06-22 | 1 | -0/+1 |
| * | cc-wrapper: Remove `stdenv.is*` for `targetPlatform.is*`•••Modify bootstrapping stdenvs to make sure `targetPlatform` also passed.
| John Ericson | 2017-06-22 | 1 | -0/+1 |
| * | stdenv: define is* predicates with hostPlatform.is*•••This is a saner default until stdenv's are removed altogether
| John Ericson | 2017-05-22 | 1 | -0/+3 |
| * | top-level: Lay the groundwork for `{build,host,target}Platform`•••The long term goal is a big replace:
{ inherit system platform; } => buildPlatform
crossSystem => hostPlatform
stdenv.cross => targetPlatform
And additionally making sure each is defined even when not cross compiling.
This commit refactors the bootstrapping code along that vision, but leaves
the old identifiers with their null semantics in place so packages can be
modernized incrementally.
| John Ericson | 2017-01-24 | 1 | -3/+10 |
| * | Add overlays mechanism to Nixpkgs.•••This patch add a new argument to Nixpkgs default expression named "overlays".
By default, the value of the argument is either taken from the environment variable `NIXPKGS_OVERLAYS`,
or from the directory `~/.nixpkgs/overlays/`. If the environment variable does not name a valid directory
then this mechanism would fallback on the home directory. If the home directory does not exists it will
fallback on an empty list of overlays.
The overlays directory should contain the list of extra Nixpkgs stages which would be used to extend the
content of Nixpkgs, with additional set of packages. The overlays, i-e directory, files, symbolic links
are used in alphabetical order.
The simplest overlay which extends Nixpkgs with nothing looks like:
```nix
self: super: {
}
```
More refined overlays can use `super` as the basis for building new packages, and `self` as a way to query
the final result of the fix-point.
An example of overlay which extends Nixpkgs with a small set of packages can be found at:
https://github.com/nbp/nixpkgs-mozilla/blob/nixpkgs-overlay/moz-overlay.nix
To use this file, checkout the repository and add a symbolic link to
the `moz-overlay.nix` file in `~/.nixpkgs/overlays` directory.
| Nicolas B. Pierron | 2017-01-16 | 1 | -3/+3 |
| * | top-level: Normalize stdenv booting•••Introduce new abstraction, `stdenv/booter.nix` for composing bootstraping
stages, and use it everywhere for consistency. See that file for more doc.
Stdenvs besides Linux and Darwin are completely refactored to utilize this.
Those two, due to their size and complexity, are minimally edited for
easier reviewing.
No hashes should be changed.
| John Ericson | 2017-01-13 | 1 | -39/+43 |
| * | top-level: Modernize stdenv.overrides giving it self and super•••Document breaking change in 17.03 release notes
| John Ericson | 2017-01-13 | 1 | -2/+2 |
| * | top-level: turn the screw••• - Non-cross stdenvs are honest and assert that `crossSystem` is null
- `crossSystem` is a mandatory argument to top-level/stage.nix, just like
`system` and `platform`
- Broken default arguments on stdenvs for testing are gone.
- All stdenvs (but little-used stdenvNix) take the same arguments for easy
testing.
| John Ericson | 2016-12-01 | 1 | -2/+6 |
| * | top-level: Close over fewer arguments for stdenv stages•••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`.
| John Ericson | 2016-11-30 | 1 | -1/+1 |
| * | top-level: Remove cycles: stdenv calls in top-level but not vice versa•••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
| John Ericson | 2016-11-30 | 1 | -1/+2 |
| * | top-level: Make `stdenv/default.nix` more concise with `inherit (expr) id;` s... | John Ericson | 2016-10-27 | 1 | -1/+1 |
| * | cc-wrapper: add option to skip flags for native optimizations | Nikolay Amiantov | 2016-03-24 | 1 | -0/+1 |
| * | Don't include /no-such-path in buildInputs | Eelco Dolstra | 2015-06-15 | 1 | -1/+1 |
| * | cygwin: stdenv | Florian Friesdorf | 2015-05-28 | 1 | -5/+18 |
| * | Remove unused file | Eelco Dolstra | 2015-03-23 | 1 | -8/+0 |
| * | rename gcc-wrapper to cc-wrapper.•••also makes cc-wrapper compatible with clang in the darwin fork.
| Eric Seidel | 2015-01-14 | 1 | -2/+2 |
| * | I think this should fix the evaluation errors in hydra | Daniel Peebles | 2014-12-27 | 1 | -6/+6 |
| * | Set SDKROOT etc. in stdenvNative•••Fixes a build failure in gawk with Xcode 6.1 on 10.9.
| Eelco Dolstra | 2014-11-04 | 1 | -3/+1 |
| * | gcc-wrapper: Remove NIX_GCC_NEEDS_GREP•••This is not needed on any currently supported platform.
| Eelco Dolstra | 2014-09-23 | 1 | -9/+0 |
| * | Add SmartOS native GCC path. | Danny Wilson | 2013-02-28 | 1 | -1/+1 |
| * | Attempt at getting GCC 4.7 compiled on Illumos...•••No success yet :-(
| Danny Wilson | 2013-02-28 | 1 | -0/+1 |
| * | Add an option ‘stdenv.userHook’ to set a global stdenv setup hook•••This allows various applications. It allows users to set global
optimisation flags, e.g.
stdenv.userHook = ''NIX_CFLAGS_COMPILE+=" -funroll-loops"'';
But the impetus is as an alternative to issue #229, allowing impure
stdenv setup for people who want to use distcc:
stdenv.userHook = "source /my/impure/setup-script.sh";
This is probably a bad idea, but at least now it's a bad idea in
people's configuration and not in Nixpkgs. :-)
| Eelco Dolstra | 2012-12-28 | 1 | -2/+2 |
| * | Remove support for the obsolete powerpc-darwin and i686-darwin platforms | Eelco Dolstra | 2012-11-29 | 1 | -16/+16 |
| * | * Call all the stdenvs "stdenv" (rather than e.g. "stdenv-linux")••• so that "nix-env -i stdenv" does the expected.
svn path=/nixpkgs/branches/stdenv-updates/; revision=31742
| Eelco Dolstra | 2012-01-20 | 1 | -2/+0 |
| * | * Build ‘xz’ during the stdenvNative bootstrap, since we really can't••• rely on it being present.
svn path=/nixpkgs/branches/stdenv-updates/; revision=31707
| Eelco Dolstra | 2012-01-19 | 1 | -6/+7 |
| * | * Prepend the "prehook" rather than sourcing it.•••* Don't call xargs with the -r flag in the Darwin bootstrap.
svn path=/nixpkgs/branches/stdenv-updates/; revision=31703
| Eelco Dolstra | 2012-01-19 | 1 | -11/+12 |
| * | * Sync with the trunk.•••svn path=/nixpkgs/branches/stdenv-updates/; revision=30852
| Eelco Dolstra | 2011-12-12 | 1 | -4/+8 |
| |\ |
|