aboutsummaryrefslogtreecommitdiff
path: root/pkgs/stdenv (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge master into staging-nextgithub-actions[bot]2020-12-031-0/+12
|\
| * makeBootstrapTools: set schedulingPriorityFrederik Rietdijk2020-12-021-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Increase schedulingPriority of the bootstrap tools to unblock the nixpkgs-unstable channel. The channel is repeatedly blocked by the makeBootstrapTools job for aarch64. The cause is lack of resources. By increasing the priority, it should become the first job Hydra would build, allowing the channel to advance quicker. Of course, it does mean that while the channel advances, nothing else has been built. This should be a temporary solution until we have more capacity for aarch64.
| * Merge master into staging-nextFrederik Rietdijk2020-11-292-11/+31
| |\
* | \ Merge remote-tracking branch 'upstream/master' into stagingJohn Ericson2020-11-282-11/+31
|\ \ \ | | |/ | |/|
| * | Merge pull request #85545 from LnL7/meta-available-flagsDaiderd Jordan2020-11-282-11/+31
| |\ \ | | | | | | | | meta: expose availability flags in derivation metadata
| | * | meta: expose availability flags in derivation metadataDaiderd Jordan2020-04-192-11/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently it's not possible to determine the reason why a package is unavailable without evaluating nixpkgs multiple times with different settings. eg. nix-repl> :p android-studio.meta { available = false; broken = false; unfree = true; unsupported = true; ... } The following snippet is an example that uses this information to query the availability information of all packages in nixpkgs, giving an overview of all the packages currently marked as broken, etc. { pkgs }: with import <nixpkgs/lib>; let mapPkgs = let mapPkgs' = path: f: mapAttrs (n: v: let result = builtins.tryEval (v ? meta); in if !result.success then {} else if isDerivation v then f (path ++ [n]) v else if isAttrs v && v.recurseForDerivations or false then mapPkgs' (path ++ [n]) f v else {} ); in mapPkgs' []; getMeta = path: drv: if drv.meta ? available then let meta = { pkg = concatStringsSep "." path; inherit (drv.meta) broken unfree unsupported insecure; }; in builtins.trace meta.pkg meta else {}; metaToList = attrs: flatten (map (v: if v ? pkg then v else metaToList v) (attrValues attrs)); in metaToList (mapPkgs getMeta pkgs)
* | | | setup.sh: export XDG_DATA_DIRS for consistencyRobert Hensing2020-11-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | By exporting it, we always make the new directories available to subprocesses, regardless of whether the environment variable existed before `nix-shell` was invoked.
* | | | setup.sh: Only load XDG_DATA_DIRS for executable inputsRobert Hensing2020-11-251-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids the scenario where strictDeps is off and cross-compiled XDG_DATA_DIRS content is brought into the environment. While probably harmless for data like manpages and completion scripts, this would cause issues when XDG_DATA_DIRS is used to find executables or plugins. The Qt framework is known to behave like this and might have run into incompatibilities.
* | | | setup.sh: Support XDG_DATA_DIRSRobert Hensing2020-11-251-1/+5
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | XDG_DATA_DIRS is to /share as PATH is to /bin. It was defined as part of the XDG basedir specification. https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html While it originated from the X Desktop Group, it is not limited to the X11 ecosystem, as evidenced by its use in bash-completion. The removal of ` && -d "$pkg/bin"` is ok, because this optimization is already performed by `addToSearchPath`.
* | | Merge pull request #102251 from andir/random-seedAndreas Rammhold2020-11-191-0/+1
|\ \ \ | |/ / |/| | stdenv: introduce -frandom-seed
| * | stdenv: add -frandom-seed to NIX_CFLAGS_COMPILE for reproducibilityAndreas Rammhold2020-11-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds -frandom-seed to each compiler invocation in stdenv. The object here is to make the compierl invocations produce the same output every time they are called (for the same derivation). When the -frandom-seed option is not set the compiler will use a combination of random numbers (in GCC's case from /dev/urandom) and the durrent time to produce a "random" input per file. This can (among other things) lead to different ordering of symbols in the produced object files. For reason of reproducibility we prefer having the same derivation produce the exact same outputs. This is not a silver bullet but one way to tame the compiler.
* | | gcc: update to isl 0.20.0 for bootstrapping and recent versions (#103311)Arnout Engelen2020-11-172-3/+3
| | |
* | | Merge pull request #98541 from thefloweringash/darwin-tapi-stdenvDaiderd Jordan2020-11-132-80/+143
|\ \ \ | | | | | | | | darwin (Big Sur): tbd based stdenv
| * | | darwin/make-bootstrap-tools: remove references to old libSystemAndrew Childs2020-11-121-38/+15
| | | |
| * | | darwin/darwin-stubs: initAndrew Childs2020-11-121-4/+6
| | | |
| * | | darwin/stdenv: refactoringAndrew Childs2020-11-091-43/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Build the llvm support libraries (libcxx, libcxxabi) from scratch without using the existing llvm libraries. This is the same spirit and similar implementation as the "useLLVM" bootstrap in llvm package sets. Critically it avoids having libcxxabi provided by the cc-wrapper when building libcxx, which otherwise results in two libcxxabi instances. $ otool -L /nix/store/vd4vvgs9xngqbjzpg3qc41wl6jh42s9i-libc++-7.1.0/lib/libc++.dylib /nix/store/vd4vvgs9xngqbjzpg3qc41wl6jh42s9i-libc++-7.1.0/lib/libc++.dylib: /nix/store/vd4vvgs9xngqbjzpg3qc41wl6jh42s9i-libc++-7.1.0/lib/libc++.1.0.dylib (compatibility version 1.0.0, current version 1.0.0) /nix/store/gmpwk5fyp3iasppqrrdpswxvid6kcp8r-libc++abi-7.1.0/lib/libc++abi.dylib (compatibility version 1.0.0, current version 1.0.0) /nix/store/3hn7azynqgp2pm5gpdg45gpq0ia72skg-libc++abi-7.1.0/lib/libc++abi.dylib (compatibility version 1.0.0, current version 1.0.0) /nix/store/1nq94scbxs6bk7pimqhvz76q6cfmbv97-Libsystem-osx-10.12.6/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1) Additionally move some utilities (clang, binutils, coreutils, gnugrep) to the stage layers so they can be replaced before the final stdenv. This should cause most of stage4 to be built from the toolchain assembled as of stage3 instead of the bootstrap toolchain.
| * | | darwin/stdenv: assemble full clang toolchainAndrew Childs2020-11-091-6/+42
| | | | | | | | | | | | | | | | Adapted from main expression for clang 7.
| * | | stdenv/darwin: bump bootstrap toolsDaiderd Jordan2020-11-091-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This new version has tapi support, which is needed to build the new stubs based libSystem, etc. and Big Sur support. You can verify the provenance of these yourself by checking Hydra here: https://hydra.nixos.org/build/128192471
* | | | Merge staging-next into stagingFrederik Rietdijk2020-11-111-5/+15
|\ \ \ \
| * | | | Promote allowUnfreePredicate in remediation messageArnout Engelen2020-11-091-5/+15
| | | | |
* | | | | Merge staging-next into stagingFrederik Rietdijk2020-11-091-2/+17
|\| | | | | |/ / / |/| | |
| * | | Merge pull request #101833 from wamserma/allow-via-envKevin Cox2020-11-051-2/+17
| |\ \ \ | | |/ / | |/| | stdenv/check-meta: add hint to NIXPKGS_ALLOW_* for unfree/broken/…
| | * | stdenv/check-meta: add hint to NIXPKGS_ALLOW_* for unfree/broken/unsupported ↵Markus S. Wamser2020-10-271-2/+17
| | | | | | | | | | | | | | | | system
* | | | stdenv: Fix error message when checkPhase is missingJoachim Breitner2020-11-071-2/+2
|/ / /
* | | Merge branch 'master' into staging-nextVladimír Čunát2020-10-311-4/+5
|\ \ \
| * \ \ Merge pull request #96318 from matthewbauer/provide-patchelf-in-native-stdenvMatthew Bauer2020-10-301-4/+5
| |\ \ \ | | |/ / | |/| | stdenv/native: provide patchelf on linux
| | * | stdenv/native: provide patchelf on linuxMatthew Bauer2020-08-251-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Recover the complicated situation after my bad mergeVladimír Čunát2020-10-261-4/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I made a mistake merge. Reverting it in c778945806b undid the state on master, but now I realize it crippled the git merge mechanism. As the merge contained a mix of commits from `master..staging-next` and other commits from `staging-next..staging`, it got the `staging-next` branch into a state that was difficult to recover. I reconstructed the "desired" state of staging-next tree by: - checking out the last commit of the problematic range: 4effe769e2b - `git rebase -i --preserve-merges a8a018ddc0` - dropping the mistaken merge commit and its revert from that range (while keeping reapplication from 4effe769e2) - merging the last unaffected staging-next commit (803ca85c209) - fortunately no other commits have been pushed to staging-next yet - applying a diff on staging-next to get it into that state
* | | Revert "Merge #101508: libraw: 0.20.0 -> 0.20.2"Vladimír Čunát2020-10-251-1/+4
| | | | | | | | | | | | | | | | | | | | | I'm sorry; I didn't notice it contained staging commits. This reverts commit 17f5305b6c20df795c365368d2d868266519599e, reversing changes made to a8a018ddc0a8b5c3d4fa94c94b672c37356bc075.
* | | Merge pull request #99401 from Ericson2314/cmake-optional-opensslJohn Ericson2020-10-131-4/+1
|\ \ \ | | | | | | | | cmake: Tighten deps
| * | | darwin bootstrapping: Dedup code a bitJohn Ericson2020-10-131-4/+1
| | | |
* | | | Merge staging-next into stagingFrederik Rietdijk2020-10-062-2/+4
|\ \ \ \
| * \ \ \ Merge pull request #86223 from pikajude/darwin-static-evalSilvan Mosberger2020-09-302-2/+4
| |\ \ \ \ | | |/ / / | |/| | | pkgsStatic: use clang for C compiler on Darwin
| | * | | pkgsStatic: fix eval on DarwinJude Taylor2020-04-282-2/+4
| | | | |
* | | | | Merge pull request #97000 from danieldk/stdenv-darwin-unset-sdkrootDaniël de Kok2020-09-141-1/+1
|\ \ \ \ \ | | | | | | | | | | | | stdenv: unset SDKROOT on Darwin
| * | | | | stdenv: unset SDKROOT on DarwinDaniël de Kok2020-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Rust `cc` crate started running `xcrun` when SDKROOT is defined: https://github.com/alexcrichton/cc-rs/commit/a970b0ab0beecec1d9c589d2e6aa5f3ad1bd3f9b Consequently, building crates that use newer versions of the `cc` crate fail, because xcrun is not available in pure build environments.
* | | | | | hooks: add moveSystemdUserUnitsHookRobert Helgesson2020-09-121-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This hook moves systemd user service file from `lib/systemd/user` to `share/systemd/user`. This is to allow systemd to find the user services when installed into a user profile. The `lib/systemd/user` path does not work since `lib` is not in `XDG_DATA_DIRS`.
* | | | | | Merge pull request #93912 from thefloweringash/cctools-tapiMatthew Bauer2020-09-102-9/+4
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | stdenv/darwin: enable tapi support in cctools
| * | | | | stdenv/darwin: enable tapi support in cctoolsAndrew Childs2020-08-212-9/+4
| | | | | |
* | | | | | Merge pull request #76794 from ↵Silvan Mosberger2020-09-051-2/+6
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | dudebout/document-nix-env-multiple-output-install-bug document nix-env bug relating to multiple output installation
| * | | | | document nix-env bug relating to multiple output installationNicolas Dudebout2020-09-051-2/+6
| | | | | |
* | | | | | Merge pull request #95536 from Infinisil/inputDerivationSilvan Mosberger2020-08-311-0/+26
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | mkDerivation: Introduce .inputDerivation for shell.nix build convenience
| * | | | | mkDerivation: Introduce .inputDerivation for shell.nix build convenienceSilvan Mosberger2020-08-161-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces the .inputDerivation attribute on all derivations created with mkDerivation. This is another derivation that can always build successfully and whose runtime dependencies are the build time dependencies of the original derivation. This allows easy building and distributing of all derivations needed to enter a nix-shell with nix-build shell.nix -A inputDerivation
* | | | | | Merge pull request #95129 from aaronjanse/aj-fix-llvm-for-redoxMatthew Bauer2020-08-191-1/+2
|\ \ \ \ \ \ | |/ / / / / |/| | | | | mkDerivation: use `Generic` as system name for Redox in cmakeFlags
| * | | | | mkDerivation: handle Redox in cmakeFlagsAaron Janse2020-08-101-1/+2
| | |/ / / | |/| | |
* | | | | gnu-config: 2019-04-15 -> 2020-05-04Emery Hemingway2020-08-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update gnu-config (config.sub, config.guess) to suport the Genode platform and apply the updateAutotoolsGnuConfigScriptsHook to Genode cross-compilation.
* | | | | Merge pull request #89794 from Mic92/source-date-epochJörg Thalheim2020-08-011-5/+6
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | stdenv: set SOURCE_DATE_EPOCH to a value python supportsJörg Thalheim2020-06-081-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | in nix-shell this value breaks the build because python's packaging refuses to build timestamps that date before 1980.
* | | | | redox: add as targetAaron Janse2020-07-211-2/+2
| | | | |
* | | | | Merge branch 'staging-next' (PR #91090)Vladimír Čunát2020-07-131-4/+5
|\ \ \ \ \