summary refs log tree commit diff
path: root/pkgs/build-support
Commit message (Collapse)AuthorAge
...
| | | * | | | | | | | | | | | | Merge remote-tracking branch 'upstream/master' into HEADTuomas Tynkkynen2018-04-16
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: pkgs/applications/version-management/git-and-tools/git/default.nix pkgs/top-level/all-packages.nix pkgs/top-level/unix-tools.nix
| | | * | | | | | | | | | | | | | {cc,bintools}-wrapper: fix removal of unsupported hardening flagsPiotr Bogdan2018-04-14
| | | | | | | | | | | | | | | | |
| | | * | | | | | | | | | | | | | Merge remote-tracking branch 'upstream/master' into stagingJan Tojnar2018-04-12
| | | |\ \ \ \ \ \ \ \ \ \ \ \ \ \
| | | * | | | | | | | | | | | | | | Revert "Revert "Merge pull request #28029 from cstrahan/hardening-fix""John Ericson2018-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 6c064e6b1f34a8416f990db0cc617a7195f71588, reapplying PR #28029 which was supposed to have gone to staging all along.
| * | | | | | | | | | | | | | | | | treewide: Get rid of all uses of crossConfigJohn Ericson2018-05-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The hack of using `crossConfig` to enforce stricter handling of dependencies is replaced with a dedicated `strictDeps` for that purpose. (Experience has shown that my punning was a terrible idea that made more difficult and embarrising to teach teach.) Now that is is clear, a few packages now use `strictDeps`, to fix various bugs: - bintools-wrapper and cc-wrapper
| * | | | | | | | | | | | | | | | | treewide: isArm -> isAarch32John Ericson2018-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following legacy packing conventions, `isArm` was defined just for 32-bit ARM instruction set. This is confusing to non packagers though, because Aarch64 is an ARM instruction set. The official ARM overview for ARMv8[1] is surprisingly not confusing, given the overall state of affairs for ARM naming conventions, and offers us a solution. It divides the nomenclature into three levels: ``` ISA: ARMv8 {-A, -R, -M} / \ Mode: Aarch32 Aarch64 | / \ Encoding: A64 A32 T32 ``` At the top is the overall v8 instruction set archicture. Second are the two modes, defined by bitwidth but differing in other semantics too, and buttom are the encodings, (hopefully?) isomorphic if they encode the same mode. The 32 bit encodings are mostly backwards compatible with previous non-Thumb and Thumb encodings, and if so we can pun the mode names to instead mean "sets of compatable or isomorphic encodings", and then voilà we have nice names for 32-bit and 64-bit arm instruction sets which do not use the word ARM so as to not confused either laymen or experienced ARM packages. [1]: https://developer.arm.com/products/architecture/a-profile (cherry picked from commit ba52ae50488de85a9cf60a3a04f1c9ca7122ec74)
* | | | | | | | | | | | | | | | | | tests.cc-wrapper: verify building with sanitizersBenjamin Saunders2018-05-24
| |_|_|_|_|_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | | Merge pull request #39214 from seppeljordan/add-nix-prefetch-githubJörg Thalheim2018-05-23
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | Add nix-prefetch-github
| * | | | | | | | | | | | | | | | nix-prefetch-github: init -> 1.3Sebastian Jordan2018-05-22
| | |_|_|_|_|_|_|_|_|_|/ / / / / | |/| | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | requireFile: Use stdenvNoCCJohn Ericson2018-05-21
| |_|_|_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no need for a C compiler
* | | | | | | | | | | | | | | curl-sys: fix linking against zlibP-E-Meunier2018-05-20
| | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | buildRustCrate: add extraLinkFlags parameterP-E-Meunier2018-05-20
| |_|_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is useful when build scripts do not apply linking flags
* | | | | | | | | | | | | | crate-overrides: curl-sys needs zlibMatthew Bauer2018-05-17
| | | | | | | | | | | | | |
* | | | | | | | | | | | | | rust: add more sys overridesMatthew Bauer2018-05-17
| |_|_|_|_|_|_|_|_|_|_|/ / |/| | | | | | | | | | | |
* | | | | | | | | | | | | trivial-builders.nix: support directories in requireFileAlexandre Esteves2018-05-16
|/ / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | Allow recursive hash for requireFile so it can support directories (#40568)
* | | | | | | | | | | | dockerTools.pullImage: Fix build with sandboxingaszlig2018-05-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Regression introduced in 736848723e5aefa5d24396c58dc6de603399efde. This commit most certainly hasn't been tested with sandboxing enabled and breaks not only pullImage but also the docker-tools NixOS VM test because it doesn't find it's certificate path and also relies on /var/tmp being there. Fixing the certificate path is the easiest one because it can be done via environment variable. I've used overrideAttrs for changing the hardcoded path to /tmp (which is available in sandboxed builds and even hardcoded in Nix), so that whenever someone uses Skopeo from all-packages.nix the path is still /var/tmp. The reason why this is hardcoded to /var/tmp can be seen in a comment in vendor/github.com/containers/image/storage/storage_image.go: Do not use the system default of os.TempDir(), usually /tmp, because with systemd it could be a tmpfs. With sandboxed builds this isn't the case, however for using Nix without NixOS this could turn into a problem if this indeed is the case. So in the long term this needs to have a proper solution. In addition to that, I cleaned up the expression a bit. Tested by building dockerTools.examples.nixFromDockerHub and the docker-tools NixOS VM test. Signed-off-by: aszlig <aszlig@nix.build> Cc: @nlewo, @Mic92, @Profpatsch, @globin, @LnL7
* | | | | | | | | | | | Merge pull request #39957 from enumatech/fix/nix-prefetch-git-spacesadisbladis2018-05-04
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | nix-prefetch-git: fix handling of submodules with spaces
| * | | | | | | | | | | | nix-prefetch-git: fix handling of submodules with spacesLionello Lunesu2018-05-04
| | |_|_|_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The script would parse the output of `git submodule status` but didn't handle paths with spaces in them. This would result in the following error when trying to determine the URL of the submodule: error: key does not contain a section: .url
* / | | | | | | | | | | runInLinuxVM: fix ext4 and crc32c-intel interactionsMichael Bishop2018-05-03
|/ / / / / / / / / / /
* | | | | | | | | | | fetchs3: allow to name the derivation output (#39823)zimbatm2018-05-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fetchs3: add configurable name Change the default from "foo" to the basename of the s3 URL and make it configurable. * fetchs3: fix error on missing credentials.session_token The session token should default to null instead of failing * fetchs3: make use of the region argument Set it to null if you don't want to use it * fetchs3: prefer local build Fetcher-types spend more time on network than CPU
* | | | | | | | | | | dockerTools.pullImage: Skopeo pulls images by digestAntoine Eiche2018-05-02
| |/ / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Skopeo is used to pull images from a Docker registry (instead of a Docker deamon in a VM). An image reference is specified with its name and its digest which is an immutable image identifier (unlike image name and tag). Skopeo can be used to get the digest of an image, for instance: $ skopeo inspect docker://docker.io/nixos/nix:1.11 | jq -r '.Digest'
* | | | | | | | | | buildFHSUserEnv: change to root directory after chrootLinus Heckemann2018-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #38525
* | | | | | | | | | treewide: isArm -> isAarch32John Ericson2018-04-25
| |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following legacy packing conventions, `isArm` was defined just for 32-bit ARM instruction set. This is confusing to non packagers though, because Aarch64 is an ARM instruction set. The official ARM overview for ARMv8[1] is surprisingly not confusing, given the overall state of affairs for ARM naming conventions, and offers us a solution. It divides the nomenclature into three levels: ``` ISA: ARMv8 {-A, -R, -M} / \ Mode: Aarch32 Aarch64 | / \ Encoding: A64 A32 T32 ``` At the top is the overall v8 instruction set archicture. Second are the two modes, defined by bitwidth but differing in other semantics too, and buttom are the encodings, (hopefully?) isomorphic if they encode the same mode. The 32 bit encodings are mostly backwards compatible with previous non-Thumb and Thumb encodings, and if so we can pun the mode names to instead mean "sets of compatable or isomorphic encodings", and then voilà we have nice names for 32-bit and 64-bit arm instruction sets which do not use the word ARM so as to not confused either laymen or experienced ARM packages. [1]: https://developer.arm.com/products/architecture/a-profile
* | | | | | | | | Merge pull request #38822 from matthewbauer/netbsdMatthew Justin Bauer2018-04-24
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / |/| | | | | | | | Introducing NetBSD userland
| * | | | | | | | bsd: init netbsd & openbsd userlandMatthew Bauer2018-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a couple of useful NetBSD and OpenBSD derivations. Some of these will be integrated into Nixpkgs later. Noncomprehensive list: - netbsd.getent - netbsd.getconf - netbsd.fts - openbsd.mg - netbsd.compat (can replace libbsd)
| * | | | | | | | cvs: support ssh accessMatthew Bauer2018-04-24
| | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | hacky wrapper handles ssh issues in nix builders
* / | | | | | | vmTools: update Debian 9 names and hashesHenry Till2018-04-22
|/ / / / / / /
* | | | | | | Merge pull request #39003 from P-E-Meunier/carnix-0.7Matthew Justin Bauer2018-04-19
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Carnix: 0.6 -> 0.7
| * | | | | | | disable parallel rustc (-C codegen-units=1)pe@pijul.org2018-04-16
| | | | | | | |
| * | | | | | | Update to 0.7.2pe@pijul.org2018-04-16
| | | | | | | |
| * | | | | | | Carnix 0.7pe@pijul.org2018-04-16
| | | | | | | |
* | | | | | | | dockerTools.buildImage: add /nix/store with correct permissionsJean-Philippe Braun2018-04-16
| |_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | Fixes #38835.
* | | | | | | requireFile: exit with non-zero error messageLinus Heckemann2018-04-15
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the script running is a failure condition, we should fail the build properly, not leaving it up to the missing output to determine that the build went wrong. This should partly address #38952 — nix build will print out the build log on non-zero exits.
* | | | | | Revert "buildSetupcfg: Include unzip for zip sources."Shea Levy2018-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Misunderstood the error I was seeing. This reverts commit 0d3eb701333006ce73b6abadea4d95f52d1105f3.
* | | | | | buildSetupcfg: Include unzip for zip sources.Shea Levy2018-04-14
| | | | | |
* | | | | | Merge pull request #38881 from obsidiansystems/sierra-hackJohn Ericson2018-04-13
|\| | | | | | | | | | | | | | | | | cc-wrapper: More intelligent sierra hack
| * | | | | cc-wrapper: Utilize patched cctools ld for more robust macOS Sierra hackJohn Ericson2018-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also fix numberous bugs, such as: - Not getting confused on more flags taking file arguments. - Ensuring children reexport their children, but the original binary/library doesn't. - Not spawning children when it turns out we just dynamically link under the threshold but our total number of inputs exceeeds it. - Children were always named `libunnamed-*`, when that name was supposed to be the last resort only. ld-wrapper's own RPATH check hardcodes `.so`, but darwin uses `.dylib` *and* (in practice due to lousy build systems) `.so`. We don't care however because we never inject `--rpath` like that in practice on Darwin. Hopefully someday we won't on linux either.
* | | | | | pythonPackages.buildSetupcfg: Allow disabling tests.Shea Levy2018-04-13
| | | | | |
* | | | | | kernel: Fix running kernels *with* modulesaszlig2018-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull request #38470 added support for running/building kernels without modules. This got merged in 38e04bbf29fe3b6af26b3505a42ce5871aeac17d but unfortunately while this works perfectly on kernels without modules it also makes sure that *every* kernel gets no modules. So all of our VM tests fail since that merge with something like this: machine# loading module loop... machine# modprobe: FATAL: Module loop not found in directory /lib/modules/4.14.33 machine# loading module vfat... machine# modprobe: FATAL: Module vfat not found in directory /lib/modules/4.14.33 machine# loading module nls_cp437... machine# modprobe: FATAL: Module nls_cp437 not found in directory /lib/modules/4.14.33 machine# loading module nls_iso8859-1... machine# modprobe: FATAL: Module nls_iso8859-1 not found in directory /lib/modules/4.14.33 machine# loading module fuse... machine# modprobe: FATAL: Module fuse not found in directory /lib/modules/4.14.33 machine# loading module dm_mod... machine# modprobe: FATAL: Module dm_mod not found in directory /lib/modules/4.14.33 I shortly tested this against the "misc" VM test and the test is working again. In the long term (and I currently don't have time for this) it would be better to also have a VM test which tests a kernel without modules. Signed-off-by: aszlig <aszlig@nix.build> Cc: @roberth, @7c6f434c
* | | | | | Merge pull request #38470 from roberth/linux-without-modulesMichael Raskin2018-04-12
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | linux module handling: support kernels without modules
| * | | | | linux module handling: support kernels without modulesRobert Hensing2018-04-05
| | | | | |
* | | | | | Add setupcfg2nix and supporting infrastructureShea Levy2018-04-11
| | | | | |
* | | | | | Revert "Merge pull request #28029 from cstrahan/hardening-fix"Matthew Bauer2018-04-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 0dbc0067604eb9629d1458fcf2b226a88e728f14, reversing changes made to cb7f7742652acdf3086b3d132163b5ea2c2328eb. Should go into staging.
* | | | | | Merge pull request #28029 from cstrahan/hardening-fixJohn Ericson2018-04-10
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | hardening: fix #18995
| * | | | | hardening: ReindentJohn Ericson2018-04-10
| | | | | |
| * | | | | hardening: Tiny reindentJohn Ericson2018-04-10
| | | | | |
| * | | | | hardening: line order, spacing, and pointless quoting for consistencyJohn Ericson2018-04-10
| | | | | |
| * | | | | hardenning: Rejigger ifs and explicit declare and unset -vJohn Ericson2018-04-10
| | | | | |
| * | | | | hardening: simplify reporting of disabled flagsCharles Strahan2018-04-10
| | | | | |
| * | | | | hardening: make requested fixesCharles Strahan2018-04-10
| | | | | |