about summary refs log tree commit diff
path: root/pkgs/build-support
Commit message (Collapse)AuthorAge
* Merge pull request #178717 from ShamrockLee/write-multiple-referencesSomeone2024-03-19
|\ | | | | trivial-builders: replace writeReferencesToFile with writeClosure
| * ociTools.buildContainer: writeReferencesToFile -> writeClosureYueh-Shun Li2024-03-19
| |
| * dockerTools.buildImage: writeReferencesToFile -> writeClosureYueh-Shun Li2024-03-19
| |
| * singularity-tools.buildImages: use writeClosureYueh-Shun Li2024-03-19
| |
| * referenceByPopularity: rename in comment writeReferencesToFile -> writeClosureYueh-Shun Li2024-03-19
| |
| * tests.trivial-builders.references: test writeClosureYueh-Shun Li2024-03-19
| | | | | | | | | | | | | | | | | | | | Test writeClosure instead of writeReferencesToFile. Add multiple-path test for writeReferenceClosureToFile. Rename variables: - references -> closures (passthru affected) - REFERENCES -> CLOSURES
| * writeClosure: init, replacing writeReferencesToFileYueh-Shun Li2024-03-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace writeReferencesToFile with writeClosure. Make writeClosure accept a list of paths instead of a path. Re-implement with JSON-based exportReferencesGraph interface provided by __structuredAttrs = true. Reword the documentation. Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io> Co-authored-by: Robert Hensing <roberth@users.noreply.github.com> Co-authored-by: Someone Serge <sergei.kozlukov@aalto.fi>
* | Merge pull request #296549 from TomaSajt/strip-java-archives-hookPol Dellaiera2024-03-19
|\ \ | | | | | | add stripJavaArchivesHook and use treewide
| * | stripJavaArchivesHook: rename from canonicalize-jars-hook and use ↵TomaSajt2024-03-17
| | | | | | | | | | | | strip-nondeterminism
* | | treewide: add meta.mainProgram to packages with a single binarystuebinm2024-03-19
| | | | | | | | | | | | | | | | | | The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
* | | Merge pull request #296082 from a-n-n-a-l-e-e/dont-pass-march-swifta-n-n-a-l-e-e2024-03-16
|\ \ \ | | | | | | | | swift: don't pass -march to swiftc
| * | | swift: don't pass -march to swiftcannalee2024-03-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | swiftc uses cc-wrapper which sets the -march flag on some systems which breaks the build. This change adds a flag, disableMarch, to cc-wrapper which disables using the -march flag. https://github.com/NixOS/nixpkgs/issues/295322
* | | | Merge pull request #295954 from bjornfor/revert-avrlibc-revdeps-breakageEmily Trau2024-03-16
|\ \ \ \ | | | | | | | | | | Revert "avrlibc: hook up libdir for cc-wrapper"
| * | | | Revert "avrlibc: hook up libdir for cc-wrapper"Bjørn Forsman2024-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b2844f89d10d4a2665aed231144950c354f275a6. It broke simavr: $ nix-build -A simavr [...] /nix/store/3k4djrsq23m2yg9ar4h1lkkz1ijv0ghv-avr-binutils-2.41/bin/avr-ld: /nix/store/3rpyzla18mbj690hv7j5dang0kd3c1fq-avr-libc-avr-2.1.0/avr/lib/libc.a(vfprintf_std.o): in function `.L15': vfprintf.c:(.text.avr-libc+0xd8): undefined reference to `__mulqi3' /nix/store/3k4djrsq23m2yg9ar4h1lkkz1ijv0ghv-avr-binutils-2.41/bin/avr-ld: /nix/store/3rpyzla18mbj690hv7j5dang0kd3c1fq-avr-libc-avr-2.1.0/avr/lib/libc.a(vfprintf_std.o): in function `.L18': vfprintf.c:(.text.avr-libc+0xe4): undefined reference to `__mulqi3' collect2: error: ld returned 1 exit status make[1]: *** [../Makefile.common:161: atmega644_adc_test.axf] Error 1 make[1]: Leaving directory '/build/source/tests' make: *** [Makefile:21: build-tests] Error 2 Fixes #295610.
* | | | | Merge pull request #295982 from philiptaron/remove-lib-or-usageslassulus2024-03-15
|\ \ \ \ \ | |_|/ / / |/| | | | Avoid `lib.or` in `pkgs/build-support/writers/`
| * | | | Avoid `lib.or` in pkgs/build-support/writers/Philip Taron2024-03-14
| | | | |
* | | | | build-support/php: update warnings when `composer validate` failsPol Dellaiera2024-03-14
| |/ / / |/| | |
* | | | Merge pull request #293416 from DanielSidhion/remove-makesnapSilvan Mosberger2024-03-14
|\ \ \ \ | |/ / / |/| | | snapTools: remove
| * | | snapTools: removeDS2024-03-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `snapTools.makeSnap` has produced broken snaps since at least Oct 2020, as indicated by the following issue: https://github.com/NixOS/nixpkgs/issues/100618 No person has shown interest in maintaining it, and given that there is no fix available, it's assumed that all attempts made to fix that function have not succeeded. Given that `snapTools` only contained `makeSnap`, it was removed completely.
* | | | npmHooks.npmInstallHook: ignore bundle deps when calculating files to installLily Foster2024-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This assumes that downstream users of `buildNpmPackage` would rather our own built `node_modules` be copied to the output rather than only the `bundleDependencies` specified in the `package.json` file. Having the latter behavior seems unexpected and unintuitive, and would not work as installing from an `npm pack` is intended to (since doing that would not do a `rebuild` step on those dependencies and it would skip reifying a full dependency tree).
* | | | Merge pull request #295378 from hercules-ci/makeDerivationArgumentRobert Hensing2024-03-14
|\ \ \ \ | |_|_|/ |/| | | make-derivation.nix: Factor out `makeDerivationArgument`
| * | | make-derivation.nix: Split makeDerivationArgument, mkDerivation with ↵Robert Hensing2024-03-12
| | |/ | |/| | | | | | | duplicate functionality
* | | Merge pull request #294944 from hercules-ci/docs-dedup-trivial-buildersSilvan Mosberger2024-03-12
|\ \ \ | | | | | | | | trivial-builders: Deduplicate docs
| * | | trivial-builders: Deduplicate docsRobert Hensing2024-03-11
| |/ / | | | | | | | | | | | | I didn't have the opportunity to do all work at once, so I've added TODOs to bring attention to the situation.
* | | Merge pull request #292259 from dawidd6/docker-nix-sslSilvan Mosberger2024-03-12
|\ \ \ | |/ / |/| | dockerTools: set NIX_SSL_CERT_FILE in image
| * | dockerTools: set NIX_SSL_CERT_FILE in imageDawid Dziurla2024-02-29
| | |
* | | Merge pull request #290351 from corngood/dotnet-fixesDavid McFarland2024-03-09
|\ \ \ | | | | | | | | dotnet: infrastructure cleanup
| * | | nuget-to-nix: fix error handlingDavid McFarland2024-03-06
| | | |
* | | | Merge master into staging-nextgithub-actions[bot]2024-03-08
|\ \ \ \
| * \ \ \ Merge pull request #289231 from adisbladis/fetchnpmlockadisbladis2024-03-08
| |\ \ \ \ | | | | | | | | | | | | importNpmLock: init
| | * | | | importNpmLock: initadisbladis2024-03-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an alternative to `fetchNpmDeps` that is notably different in that it uses metadata from `package.json` & `package-lock.json` instead of specifying a fixed-output hash. Notable features: - IFD free. - Only fetches a node dependency once. No massive FODs. - Support for URL, Git and path dependencies. - Uses most of the existing `npmHooks` `importNpmLock` can be used _only_ in the cases where we need to check in a `package-lock.json` in the tree. Currently this means that we have 13 packages that would be candidates to use this function, though I expect most usage to be in private repositories. This is upstreaming the builder portion of https://github.com/adisbladis/buildNodeModules into nixpkgs (different naming but the code is the same). I will archive this repository and consider nixpkgs the new upstream once it's been merged. For more explanations and rationale see https://discourse.nixos.org/t/buildnodemodules-the-dumbest-node-to-nix-packaging-tool-yet/35733 Example usage: ``` nix stdenv.mkDerivation { pname = "my-nodejs-app"; version = "0.1.0"; src = ./.; nativeBuildInputs = [ importNpmLock.hooks.npmConfigHook nodejs nodejs.passthru.python # for node-gyp npmHooks.npmBuildHook npmHooks.npmInstallHook ]; npmDeps = buildNodeModules.fetchNodeModules { npmRoot = ./.; }; } ```
* | | | | | Merge master into staging-nextgithub-actions[bot]2024-03-06
|\| | | | |
| * | | | | Merge pull request #293582 from ↵Pol Dellaiera2024-03-06
| |\ \ \ \ \ | | |_|/ / / | |/| | | | | | | | | | | | | | | | drupol/build-support/php/improve-composer-validate build-support/php: update `composer validate` steps
| | * | | | build-support/php: update `composer validate` stepsPol Dellaiera2024-03-05
| | | | | |
* | | | | | Merge master into staging-nextgithub-actions[bot]2024-03-06
|\| | | | |
| * | | | | Merge pull request #190129 from corngood/dotnet-sdkDavid McFarland2024-03-05
| |\ \ \ \ \ | | |/ / / / | |/| | | | dotnetCorePackages.dotnet_8: build from source
| | * | | | mkNugetDeps: provide default for nugetDepsDavid McFarland2024-03-03
| | | | | |
| | * | | | nuget-to-nix: skip local sourcesDavid McFarland2024-03-03
| | | | | |
| * | | | | build-support/php: move functions around (dry)Pol Dellaiera2024-03-05
| | | | | |
| * | | | | phpPackages.composer: 2.6.6 -> 2.7.1Pol Dellaiera2024-03-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Diff: https://github.com/composer/composer/compare/2.6.6..2.7.1 Changelog: https://github.com/composer/composer/releases/tag/2.7.1 Fix CVE: CVE-2024-24821
| * | | | | build-support/php/composer-local-repo-plugin: 1.0.3 -> 1.1.0Pol Dellaiera2024-03-05
| | |/ / / | |/| | |
* | | | | Merge master into staging-nextgithub-actions[bot]2024-03-04
|\| | | |
| * | | | Revert "writers: add support for wrapping"Vladimír Čunát2024-03-04
| | | | |
* | | | | Merge master into staging-nextgithub-actions[bot]2024-03-04
|\| | | |
| * | | | Merge pull request #291854 from DavHau/writers-wraplassulus2024-03-04
| |\ \ \ \ | | |/ / / | |/| | | writers: add support for wrapping
| | * | | writers: add support for wrappingDavHau2024-02-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a makeWrapperArgs argument to all script writers under pkgs.writers. This can be used to set, prefix, or suffix the PATH or other environment variables which improves the ability to generate scripts with reproducible behavior. Some of the writers (writeBash, writeDash, writeFish, writeNu) previously did not support passing an argument set, for example ``` writeBash "example" "echo hello" ``` In order to add the new capability to these writers as well, their call signature is now overloaded in order to allow the following: (The old call style from the example above remains intact) ``` writeBash "example" { makeWrapperArgs = [ "--prefix" "PATH" ":" "${pkgs.hello}/bin" ]; } '' hello '' ``` Done as well: - add tests - add more docs - fix some misleading docs - extend existing docs with more examples
* | | | | Merge pull request #292777 from alyssais/rustdoc-wrapMartin Weinelt2024-03-02
|\ \ \ \ \ | | | | | | | | | | | | wrapRustc: wrap rustdoc
| * | | | | wrapRustc: wrap rustdocAlyssa Ross2024-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to set -crt-static on musl for rustdoc as well, so let's unify the wrappers. Ideally, rather than wrapping rustdoc, we'd have rustdoc use the wrapped rustc, but that's currently only possible with an unstable option (--test-builder). The options set by the wrapper, -C target-feature and --sysroot, are supported by both rustdoc and rustc, but other flags maybe not be supported by both, so I've introduced different environment variables (the existing NIX_RUSTFLAGS and a new NIX_RUSTDOCFLAGS) to allow those to be set independently. This fixes cargo-auditable in pkgsMusl., which broke because its doctests stopped working when -crt-static was moved to the wrapper. Fixes: 79156bf13ae7 ("rustc: move crt-static default override to wrapper (#291829)")
* | | | | | Merge master into staging-nextgithub-actions[bot]2024-03-02
|\ \ \ \ \ \ | |/ / / / / |/| / / / / | |/ / / /
| * | | / macOS support for NixOS tests (#282401)Gabriella Gonzalez2024-03-02
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #193336 Closes #261694 Related to #108984 The goal here was to get the following flake to build and run on `aarch64-darwin`: ```nix { inputs.nixpkgs.url = <this branch>; outputs = { nixpkgs, ... }: { checks.aarch64-darwin.default = nixpkgs.legacyPackages.aarch64-darwin.nixosTest { name = "test"; nodes.machine = { }; testScript = ""; }; }; } ``` … and after this change it does. There's no longer a need for the user to set `nodes.*.nixpkgs.pkgs` or `nodes.*.virtualisation.host.pkgs` as the correct values are inferred from the host system.