Commit graph

7769 commits

Author SHA1 Message Date
Melvyn d0a99254bf
build-fhs-user-env: add compatibility for pipewire alsa emulation 2024-02-02 22:38:49 -08:00
github-actions[bot] 0675b4b947
Merge staging-next into staging 2024-02-02 12:01:43 +00:00
h7x4 0e08f348b7
Merge pull request #284985 from wegank/fetchzip-nix-prefetch
fetchFromGitHub: fix compatibility issue with nix-prefetch
2024-02-02 09:54:55 +01:00
github-actions[bot] 3a8e4cc2aa
Merge staging-next into staging 2024-02-02 06:01:42 +00:00
Rebecca Turner 88ce0b0019
writeShellApplication: Expand test suite 2024-02-01 16:02:34 -08:00
Rebecca Turner 63f7c9b415
writeShellApplication: Document arguments 2024-02-01 16:02:33 -08:00
Rebecca Turner 863786b98b
writeTextFile,writeShellApplication: Allow setting extra arguments 2024-02-01 16:02:33 -08:00
Rebecca Turner a64766913f
writeShellApplication: Add runtimeEnv argument 2024-02-01 16:02:33 -08:00
Rebecca Turner ac20bcf449
writeShellApplication: Add bashOptions argument 2024-02-01 16:02:32 -08:00
Martin Weinelt 27fa02d0f1
Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts:
-	pkgs/development/compilers/llvm/10/clang/default.nix
- pkgs/development/compilers/llvm/8/clang/default.nix
2024-02-01 12:25:11 +01:00
DS 0445c39047 doc: update environment helpers in dockerTools docs, add fakeNss section
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-02-01 01:37:31 -08:00
Nick Cao 1b391ffbd5 testers.hasPkgConfigModules: use PKG_CONFIG envvar instead of hardcoding
fixes cross compilation
2024-01-31 19:50:05 +01:00
Weijia Wang a2fa54fa67 fetchFromGitHub: fix compatibility issue with nix-prefetch 2024-01-30 12:21:13 +01:00
Tulili 1e7dc0e1b8 pkgs.writers: fix type in description for writeHaskellBin 2024-01-30 06:48:51 +01:00
Tulili 703a085c0a pkgs.writers: tests for lua ruby, and remove failed tests because of external package errors 2024-01-30 06:48:43 +01:00
Tulili f6e0ee5545 pkgs.writers: remove tests that dont work anymore and add comments tracking issues 2024-01-30 06:48:35 +01:00
Tulili 05ad04bdd3 pkgs.writers add snu, lua and ruby 2024-01-30 06:48:15 +01:00
github-actions[bot] 6a27b0be74
Merge staging-next into staging 2024-01-29 18:01:37 +00:00
Ryan Lahfa ec84d47ff6
Merge pull request #274440 from bouk/missing-build-rust-env
build-rust-crate: add missing CARGO_PKG env variables
2024-01-29 17:31:54 +01:00
John Ericson b5a8242f93
Merge pull request #279039 from wegank/mingw-w64-bump
windows.mingw_w64: 10.0.0 -> 11.0.1
2024-01-29 08:15:02 -05:00
Sergei Trofimovich c1d3b6b7ba build-support/testers: don't fail the test on empty list of pkg-config modules
Without the change tests like `xorg.imake.tests.pkg-config` fail as:

    $ nix build --no-link -f. -L xorg.imake.tests.pkg-config
    error: builder for '/nix/store/i3zb1ykjzm0622497cn4dvifk36sx00r-check-pkg-config-.drv' failed to produce output path for output 'out' at '/nix/store/i3zb1ykjzm0622497cn4dvifk36sx00r-check-pkg-config-.drv.chroot/nix/store/63y92rvkp7gzzp0hlcjyj92srzjwndrq-check-pkg-config-'
    error: 1 dependencies of derivation '/nix/store/8qycf49a4h9jj2662d9cf4d56aq6djjj-check-meta-pkg-config-modules-for-imake-1.0.9.drv' failed to build

Let's always produce empty output for zero-modules tests.
2024-01-29 10:26:20 +00:00
Bouke van der Bijl 34ad6be1cd build-rust-crate: add missing CARGO_PKG env variables
See https://doc.rust-lang.org/cargo/reference/environment-variables.html
for supported variables
2024-01-28 18:59:53 +01:00
github-actions[bot] 5e17795097
Merge staging-next into staging 2024-01-28 12:01:36 +00:00
Alyssa Ross 59fca7cb67
compressFirmwareXz: don't allow references 2024-01-28 11:57:38 +01:00
Alyssa Ross 24bb06069f
compressFirmwareXz: fail on broken symlinks
This would have caught the last two issues we had with compression.
2024-01-28 11:57:37 +01:00
Alyssa Ross a136def4f7
compressFirmwareXz: fix symlink type check
The previous version didn't work in the case of relative symlinks in
subdirectories.  If "foo/bar" was a link to "baz", it would check for
a link to "baz" in the root, rather than under "foo".

We don't need to dereference the symlink ourselves for [ anyway, as it
dereferences its arguments itself, so all we need to do to fix this is
to pass it the link.

Fixes: 14f83d5c6f ("compressFirmwareXz: fix links to directories")
2024-01-28 11:57:30 +01:00
Ryan Lahfa c34dd88211
Merge pull request #284307 from alyssais/rustc-sysroot=
wrapRustc: handle --sysroot=
2024-01-28 00:30:51 +01:00
Alyssa Ross 42b05f1c6d
wrapRustc: handle --sysroot=
This form is used by Linux 6.8.
2024-01-27 19:01:40 +01:00
Weijia Wang 4354538139 Merge branch 'staging-next' into staging 2024-01-27 04:17:36 +01:00
Franz Pletz 0dfe2e933f
Merge pull request #283110 from fpletz/pkgs/compress-firmware-xz-ln-filesuffix 2024-01-26 22:54:35 +01:00
Thiago Kenji Okada 1fee681897 buildGraalvmNativeImage: fix UTF-8 encoding issue for JVM dependencies
Now that we can pass build arguments for the GraalVM builder again (see
https://github.com/NixOS/nixpkgs/pull/282901), this should work again.

Fix issue: https://github.com/NixOS/nixpkgs/issues/283953
2024-01-26 11:12:54 +00:00
Jörg Thalheim c8758686ec
Merge pull request #283239 from alyssais/rust-lld
rust.envVars: use wrapped LLD for aarch64 musl
2024-01-25 16:16:48 +01:00
R. Ryantm d4e775bd1a makeInitrdNGTool: 0.1.0 -> 0.1.0 2024-01-25 13:37:20 +00:00
github-actions[bot] 9bf128cad3
Merge staging-next into staging 2024-01-24 00:02:51 +00:00
github-actions[bot] 6a4e9dff73
Merge master into staging-next 2024-01-24 00:02:25 +00:00
Sergei Trofimovich 8ffff1e699 buildFHSEnv: don't export multiPaths attribute
`multiPaths` is defined via invalid operation on `null` value for
non-multilib environments. Noticed on `notesnook` evan failure as:

    nix-repl> notesnook.fhsenv.multiPaths
              253|   passthru = {
              254|     inherit args baseTargetPaths targetPaths baseMultiPaths multiPaths ldconfig;
                 |            ^
              255|   };
           error: attempt to call something which is not a function but null

The change makes `multiPaths` a private variable.
2024-01-23 20:24:17 +00:00
Matthew Planchard d538fefb62
Use fakeroot for proot cmd in streamLayeredImage
Resolves #275705
2024-01-23 14:55:08 -05:00
Alyssa Ross 3bf20e5bf8
rust.envVars: use wrapped LLD for aarch64 musl
The unwrapped version doesn't know where to look for libraries, so
this is required to e.g. build anything that uses openssl-sys with
OPENSSL_NO_VENDOR.  A randomly chosen example package that's fixed by
this change is pkgsStatic.gitoxide.
2024-01-23 17:25:50 +01:00
Alyssa Ross f3a07da669
rust: use pkgsBuildHost/pkgsTargetTarget
We're already using pkgsBuildBuild, and we'll soon be using
pkgsBuildTarget, so for consistency, change buildPackages and
targetPackages to their corresponding two-component names.
2024-01-23 17:25:23 +01:00
Franz Pletz 14f83d5c6f
compressFirmwareXz: fix links to directories
Only add the `.xz` suffix to links if link target is a regular file.
This breaks if the target is a directory.

Fixes #283005.
2024-01-23 07:16:59 +01:00
github-actions[bot] 0c0f70ab25
Merge staging-next into staging 2024-01-22 18:01:24 +00:00
github-actions[bot] 3c7375b75c
Merge master into staging-next 2024-01-22 18:00:55 +00:00
sohalt 9d353905ea build-graalvm-native-image: pass whole environment
Pass the whole environment to the native-image build process by
generating a -E option for every environment variable.

This has the same effect as setting
NATIVE_IMAGE_DEPRECATED_BUILDER_SANITATION=true
but is compatible with packages providing -E options themselves
2024-01-22 18:11:14 +01:00
sohalt 2f6981d6e1 build-graalvm-native-image: do not use NATIVE_IMAGE_DEPRECATED_BUILDER_SANITATION
Packages that require access to environment variables in the build
should specify these using `-E` arguments in `nativeImageBuildArgs` or
using a `native-image.properties` as described here:
https://www.graalvm.org/22.1/reference-manual/native-image/BuildConfiguration/#embedding-a-configuration-file

Specifying NATIVE_IMAGE_DEPRECATED_BUILDER_SANITATION=true breaks with
packages that list their environment variables explicitly in `native-image.properties`.
2024-01-22 12:44:31 +01:00
Mario Rodas 70b51d8d17 postgresqlTestHook: add postgresqlExtraSettings variable
Add `postgresqlExtraSettings` to allow to setup the `postgresql.conf`.
This would be useful in cases where we need to set
`shared_preload_libraries`.
2024-01-22 04:20:00 +00:00
Robert Scott 506ec38e7f cc-wrapper, clang: use new mechanism to selectively unsupport zerocallusedregs
this allows a compiler derivation to provide a
hardeningUnsupportedFlagsByTargetPlatform passthru attr
that will be called with the targetPlatform to determine
the unsupported hardening flags for that platform.

we can do this because even though a clang compiler is
multi-target by nature, cc-wrapper effectively fixes the
target platform at wrapping time. otherwise we'd have to
sniff the intended target at runtime, which wouldn't
be fun at all.

the advantage of using a new attribute instead of
allowing hardeningUnsupportedFlags to optionally be a
function is that hardeningUnsupportedFlags retains its
simple overriding pattern for simple cases (i.e.
  `(prev.hardeningUnsupportedFlags or []) ++ [ "foo" ]`
) which will continue to work as long as the bottom-most
function of hardeningUnsupportedFlagsByTargetPlatform
falls back to hardeningUnsupportedFlags.
2024-01-21 11:16:07 +00:00
Robert Scott 40868719b0 cc-wrapper: add zerocallusedregs hardening flag
this uses the value `used-gpr` which seems to be a commonly
chosen value for general use
2024-01-20 13:48:33 +00:00
github-actions[bot] 0cd628f6d5
Merge master into staging-next 2024-01-20 06:01:03 +00:00
Adam Joseph 86c28ee650 cc-wrapper: relocate proprietary-compiler-specific material
PR #275947, which was self-merged without approvals, inserted
functionality specific to a propriteary closed-source compiler
(CUDA) into cc-wrapper.

This commit relocates this CUDA-specific functionality into the
appropritate place: `cuda-modules`.

It is unclear to me exactly what this function is supposed to be
doing; much of it (like the `.kind` attributes) do not appear to be
used *anywhere* in nixpkgs.  Making sure we don't insert unexplained
deadcode like this is one of the important functions of the review
process.
2024-01-20 05:46:57 +00:00
Adam Joseph d07ab95104 cc-wrapper: revert speculative commentary
This commit deletes speculative comments which were self-merged with
no approvals in PR #275947.

If you think that "The above 'fix' may be incorrect" the correct
response is to submit a PR which removes the 'fix' and get it reviewed.

Likewise, if you think that "For clang it's not necessary" you
should submit a PR which wraps it in `if !isClang`.

`cc-wrapper` is full of too much junk as it is, let's not make
things worse.
2024-01-20 05:46:41 +00:00
Weijia Wang 1fcb965033
Merge pull request #273499 from raphaelr/fix/tests.writers.simple.fsharp
tests.writers.simple.fsharp: Add missing dependency
2024-01-20 06:12:22 +01:00
github-actions[bot] 650e10b010
Merge master into staging-next 2024-01-20 00:02:16 +00:00
Maciej Krüger 45308f5528
Merge pull request #281662 from hacker1024/feature/flutter-build-web
Support Web builds in buildFlutterApplication
2024-01-19 23:56:52 +01:00
hacker1024 64f9fa0d2c buildFlutterApplication: Change flutterHostPlatform to targetFlutterPlatform 2024-01-19 11:07:33 +11:00
K900 967d49b8a8 Merge remote-tracking branch 'origin/staging-next' into staging 2024-01-18 19:15:32 +03:00
Adam Joseph 0c3d9f28c6 cc-wrapper: drop no-longer-necessary hack
The commit prior to this one, "gcc: fix c++ headers when same
triplet cross compiling" causes gcc's c++ headers to be in the same
outpath subdirectory regardless of whether the gcc build is a
host==target or host!=target compiler.

As a result of that change, the hack in cc-wrapper which adapted to
the different paths is no longer needed.  And, in fact, it must be
removed, since if it is left in place builds such as
pkgsCross.aarch64-multiplatform.firefox will fail as shown below.

```
firefox-unwrapped>  0:02.01(B checking the host C compiler works... yes(B(B
firefox-unwrapped>  0:02.01(B checking for the host C++ compiler... /nix/store/1asqji9djmdlapzs70q7jw2j308ry7cn-clang-wrapper-16.0.6/bin/c++(B(B
firefox-unwrapped>  0:02.14(B checking whether the host C++ compiler can be used... yes(B(B
firefox-unwrapped>  0:02.14(B checking the host C++ compiler version... 16.0.6(B(B
firefox-unwrapped>  0:02.21(B checking the host C++ compiler works... yes(B(B
firefox-unwrapped>  0:02.40(B checking for target linker... lld(B(B
firefox-unwrapped>  0:02.51(B checking for host linker... lld(B(B
firefox-unwrapped>  0:02.60(B checking for 64-bit OS... yes(B(B
firefox-unwrapped>  0:02.67(B checking for new enough STL headers from libstdc++...(B(B
firefox-unwrapped>  0:02.67(B DEBUG: <truncated - see config.log for full output>(B(B
firefox-unwrapped>  0:02.67(B DEBUG: |                 #if defined(__GLIBCXX__) && !defined(_GLIBCXX_RELEASE)(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #  error libstdc++ not new enough(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #endif(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #if defined(_GLIBCXX_RELEASE)(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #  if _GLIBCXX_RELEASE < 8(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #    error libstdc++ not new enough(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #  else(B(B
firefox-unwrapped>  0:02.67(B DEBUG: |      (void) 0(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #  endif(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #endif(B(B
firefox-unwrapped>  0:02.67(B DEBUG: |                   ;(B(B
firefox-unwrapped>  0:02.67(B DEBUG: |                   return 0;(B(B
firefox-unwrapped>  0:02.67(B DEBUG: |                 }(B(B
firefox-unwrapped>  0:02.67(B DEBUG: Executing: `/nix/store/7v4bi4q334yircaznwm353h1l5i7k98f-aarch64-unknown-linux-gnu-clang-wrapper-16.0.6/bin/aarch64-unknown-linux-gnu-clang++ /build/conftest.qvbo58dv.cpp -c`(B(B
firefox-unwrapped>  0:02.67(B DEBUG: The command returned non-zero exit status 1.(B(B
firefox-unwrapped>  0:02.67(B DEBUG: Its error output was:(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | /build/conftest.qvbo58dv.cpp:1:10: fatal error: 'cstddef' file not found(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | #include <cstddef>(B(B
firefox-unwrapped>  0:02.67(B DEBUG: |          ^~~~~~~~~(B(B
firefox-unwrapped>  0:02.67(B DEBUG: | 1 error generated.(B(B
firefox-unwrapped>  0:02.67(B ERROR: The libstdc++ in use is not new enough.  Please run ./mach bootstrap to update your compiler, or update your system libstdc++ installation.(B(B
firefox-unwrapped> *** Fix above errors and then restart with "./mach build"
error: build of '/nix/store/5in7xkji5hzqkl14ygwq3vxnni54lykk-firefox-unwrapped-aarch64-unknown-linux-gnu-119.0.1.drv' on 'ssh://root@192.168.22.103' failed: builder for '/nix/store/5in7xkji5hzqkl14ygwq3vxnni54lykk-firefox-unwrapped-aarch64-unknown-linux-gnu-119.0.1.drv' failed with exit code 1
error: builder for '/nix/store/5in7xkji5hzqkl14ygwq3vxnni54lykk-firefox-unwrapped-aarch64-unknown-linux-gnu-119.0.1.drv' failed with exit code 1;
```
2024-01-18 09:01:04 +00:00
Weijia Wang b0fb3f62d0
Merge pull request #278242 from raphaelr/mknugetsource-remove-ifd
mkNugetSource: Remove meta.licenses attribute
2024-01-18 09:22:38 +01:00
hacker1024 3b33435d02 flutter.buildFlutterApplication: Add multiShell attribute 2024-01-18 14:20:03 +11:00
hacker1024 e3b2edadef dartHooks.dartInstallHook: Add trailing newline 2024-01-18 12:17:43 +11:00
hacker1024 046da09ddd flutter.buildFlutterApplication: Properly throw unsupported host platform error 2024-01-18 11:59:38 +11:00
hacker1024 f51a0b053d flutter.buildFlutterApplication: Allow building for the Web 2024-01-18 10:27:32 +11:00
hacker1024 b43ee05f4e dartHooks.dartInstallHook: Allow disabling cache installation independently 2024-01-18 10:15:35 +11:00
hacker1024 196a0a5b2d buildDartApplication: Add custom outputs to the end of the list 2024-01-18 10:13:57 +11:00
Robert Hensing 1f9e86f314 nixosTests.docker-tools: Use both code paths in includeStorePath test 2024-01-17 13:50:01 +01:00
github-actions[bot] 7e5906aca4
Merge staging-next into staging 2024-01-16 12:01:24 +00:00
Valentin Gagarin 675aa305a1
Merge pull request #281227 from fricklerhandwerk/fix-backticks 2024-01-16 08:19:26 +01:00
github-actions[bot] 4c8ce132ff
Merge staging-next into staging 2024-01-16 06:01:25 +00:00
Vladimír Čunát 141a1ec41d
Merge #279934: fetchFromGitHub: drop unzip 2024-01-16 05:52:01 +01:00
Maciej Krüger 60e27c9596
Merge pull request #280875 from hacker1024/fix/dart-language-version-regex
pub2nix: Fix language version RegEx on Darwin
2024-01-16 02:17:34 +01:00
github-actions[bot] 35f426a31b
Merge staging-next into staging 2024-01-16 00:02:37 +00:00
Valentin Gagarin eaebe13ebd doc: use markdown backticks for code tokens 2024-01-15 23:03:14 +01:00
Valentin Gagarin 2392daed23
Merge pull request #277534 from mcdonc/doc-trivial-builders-writetext
* doc: improve documentation for trivial text writing functions

Co-authored-by: Brian Merchant <bzm3r@proton.me>
Co-authored-by: Robert Hensing <robert@roberthensing.nl>
Co-authored-by: Alexander Groleau <alex@proof.construction>
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2024-01-15 22:34:40 +01:00
Yureka 0eed8836c5 buildRustPackage: disable cargo-auditable on pkgsStatic aarch64 2024-01-15 22:34:02 +01:00
Yureka 48a6213611 rust: use lld on pkgsStatic aarch64 2024-01-15 22:34:02 +01:00
Yureka b8076b893e rust: allow linker to be different from compiler 2024-01-15 22:34:02 +01:00
Robert Hensing 559d06bbb2 trivial-builders: Remove redundant docs - link instead 2024-01-15 09:02:45 +01:00
Jörg Thalheim a292058564
Merge pull request #276685 from katexochen/buildGoModule/buildid
buildGoModule: always set `-buildid=` as ldflag
2024-01-14 14:13:16 +01:00
hacker1024 ee18b58cf4 pub2nix: Fix language version regex on Darwin 2024-01-14 17:21:51 +11:00
Will Fancher 9e9a77c512
Merge pull request #279329 from r-ryantm/auto-update/makeInitrdNGTool
makeInitrdNGTool: 0.1.0 -> 0.1.0
2024-01-13 19:02:08 -05:00
Valentin Gagarin fd78de6eeb
Merge pull request #267285 from fricklerhandwerk/code-comment 2024-01-13 20:51:37 +01:00
Ryan Lahfa 41aa423726
Merge pull request #236370 from amarshall/applypatches-nopatches
applyPatches: skip creating additional drv when no patches
2024-01-13 16:50:34 +01:00
Someone bc5ed95a04
Merge pull request #275947 from SomeoneSerge/fix/cuda-cc-wrapper
cudaPackages.backendStdenv.cc: gccForLibs
2024-01-13 09:36:02 +00:00
Mario Rodas 19ce690703
Merge pull request #277899 from trofi/build-support-fetchgithub-fix-metadata-eval
build-support/fetchgithub: fix metadata eval for arguments without lo…
2024-01-12 17:56:46 -05:00
Weijia Wang fda4c4e299 bintools: disable relro/bindnow hardening on windows 2024-01-12 22:11:17 +01:00
Andrew Marshall 52c27352ce applyPatches: skip creating additional drv when no patches
If there are no `patches` or `postPatch`, then this will just do work to
make something equivalent to `src`. Instead, just return `src` in that
case.
2024-01-12 15:49:24 -05:00
Weijia Wang 71a024e1f6 fetchFromGitHub: drop unzip 2024-01-12 20:26:20 +01:00
Weijia Wang c28c56f379 fetchzip: allow dropping unzip 2024-01-12 20:26:16 +01:00
Ryan Lahfa d74aefe80e
Merge pull request #251267 from lilyinstarlight/fix/dotnet-installPath
buildDotnetModule: actually use installPath
2024-01-12 19:30:12 +01:00
Someone Serge 8eda4c36a5
cc-wrapper: cxxStdlib: expose solib and package separately 2024-01-12 17:38:00 +00:00
Rahul Butani 290ea23649
cc-wrapper: expose the c++ std library being used
(cherry picked from commit dc6a8f9f7912363577e11520bafa040c0db14359)
2024-01-12 17:38:00 +00:00
github-actions[bot] 5ee7600250
Merge master into staging-next 2024-01-11 12:01:18 +00:00
Maciej Krüger f3f4f93651
Merge pull request #280003 from hacker1024/feature/dart-auto-pubspec-lock
buildDartApplication: Allow reading pubspec.lock with IFD
2024-01-11 09:21:59 +01:00
github-actions[bot] 28d4a2210a
Merge master into staging-next 2024-01-11 06:01:20 +00:00
John Ericson 3eb8277236
Merge pull request #278679 from kolloch/feature/build-rust-crate-without-sharedLibrary-extension
build-rust-crate: Allow missing `hostPlatform.extensions.sharedLibrary`
2024-01-10 21:50:54 -05:00
Weijia Wang 2f9e98ccf3 Merge branch 'master' into staging-next 2024-01-10 23:12:44 +01:00
Pascal Bach f709ab9d6a
Merge pull request #277154 from aib/ocitools-fix-invalid-cgroup-mount-option
ociTools: Fix invalid cgroup mount option
2024-01-10 23:06:54 +01:00
hacker1024 778cefd464 buildDartApplication: Allow reading pubspec.lock with IFD 2024-01-10 20:29:53 +11:00
github-actions[bot] 122355be99
Merge master into staging-next 2024-01-10 00:02:18 +00:00
Robert Hensing 098ffee102
Merge pull request #279487 from bryango/checkpoint-build-polish
checkpointBuildTools: mkCheckpointedBuild -> mkCheckpointBuild
2024-01-09 22:30:22 +01:00
K900 838aefefc3 Merge remote-tracking branch 'origin/master' into staging-next 2024-01-09 22:42:37 +03:00
Jeff Huffman a6671578ff
buildFHSEnv: bind dbus session bus into place when privateTmp enabled (#278917) 2024-01-09 18:29:53 +01:00
K900 bff9ee8862 Merge remote-tracking branch 'origin/master' into staging-next 2024-01-09 13:03:34 +03:00
Jörg Thalheim 99d3b3d7bf
Merge pull request #279486 from r-burns/exec-format-cleanup
treewide: simplify exec format conditionals
2024-01-09 09:44:34 +01:00
Bryan Lai d7253bea6d doc: polish the docs of checkpointBuildTools
... following suggestions from @phip1611 and @infinisil.
2024-01-09 01:34:21 +08:00
Bryan Lai 5f3aad00ff checkpointBuildTools: minor refactor
Add some minor improvements of the package, and use temp files for the
source difference patch, such that it is more reliable. This follows
from the suggestions of @infinisil.

Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-01-09 01:14:48 +08:00
Martin Weinelt ef1898454c
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
-	pkgs/development/python-modules/aiohappyeyeballs/default.nix
2024-01-08 16:34:52 +01:00
Bryan Lai df62c3c87f checkpointBuildTools: mkCheckpointedBuild -> mkCheckpointBuild
All other functions are in the form of `*{c,C}heckpointBuild*`, so we
deprecate the `mkCheckpointedBuild` function in favor of `mkCheckpointBuild`.

Also address some inconsistencies in the docs: some `buildOutput` should
actually be `incrementalBuildArtifacts`.
2024-01-08 19:42:16 +08:00
Valentin Gagarin 25c0077a31 doc: add note on which variables are effective
The build log of the following won't output `foo` as one might expect, but the
`$PATH` set by stdenv.

```nix
with import <nixpkgs> {};
runCommand "foo" { PATH = "foo"; } "echo $PATH; touch $out"
```
2024-01-08 12:16:19 +01:00
Valentin Gagarin 7ae1fdc9a7 doc: reformat 2024-01-08 12:16:03 +01:00
Ryan Burns c324705cc3 treewide: simplify exec format conditionals 2024-01-07 17:43:33 -08:00
github-actions[bot] 2984c5a0a5
Merge master into staging-next 2024-01-08 00:02:22 +00:00
R. Ryantm 19b4bac3d0 makeInitrdNGTool: 0.1.0 -> 0.1.0 2024-01-07 10:39:28 +00:00
K900 790cc209ea bintools-wrapper: fix static check platform
This was moved in 1a5bd697ad,
the preceding check was updated from hostPlatform to targetPlatform, but these got missed.
2024-01-06 10:32:08 +03:00
Adam Stephens b4c0220a22
nuke-references: add meta.mainProgram 2024-01-05 15:04:14 -05:00
github-actions[bot] 76201c62e0
Merge master into staging-next 2024-01-05 18:00:58 +00:00
Maciej Krüger 349e0c2870
Merge pull request #263345 from hacker1024/feature/pub2nix
dart: Use Nix instead of Pub
2024-01-05 16:34:07 +01:00
github-actions[bot] 1e290d634f
Merge master into staging-next 2024-01-05 00:02:27 +00:00
Peder Bergebakken Sundt 73148fa5a8
Merge pull request #272520 from nrabulinski/fix-fetchpijul
build-support/fetchpijul: Add cacert dependency, set impureEnvVars, and enable strictDeps
2024-01-05 00:51:05 +01:00
Vladimír Čunát 8a839514de
Merge branch 'master' into staging-next 2024-01-04 15:07:44 +01:00
Peter Kolloch 597f3d31d8 build-rust-crate: Allow missing hostPlatform.extensions.sharedLibrary
If you cross-build, sharedLibrary might not be set. E.g. for this
nixpkgs instance:

```nix
pkgs = import <nixpkgs> {
    config = { };
    crossSystem = {
        config = "riscv32-unknown-none-elf";
        rustc = {
            config = "riscv32i-unknown-none-elf";
        };
    };
}
```
2024-01-04 12:15:32 +01:00
adisbladis dbc85690de
Merge pull request #277335 from adisbladis/buildenv-hoist-instantiation
build-support/buildenv: Hoist builder instantiation
2024-01-04 12:32:40 +13:00
Raphael Robatsch 928d66083e mkNugetSource: Allow passing arbitrary stdenv.mkDerivation attrs
This allows things such as

    mkNugetSource {
        name = "foo-nuget-source";
        deps = [ ... ];
        meta = {
            hydraPlatforms = [ ];
        };
    }
2024-01-02 20:27:20 +01:00
Raphael Robatsch 5fb3301dad mkNugetSource: Remove meta.licenses attribute
- It's useless. The correct attribute name would be `license` and not
  `licenses`. Meaning setting this never did anything useful.
- It used IFD in its implementation, meaning to know what the licenses
  of a nuget source are, you first had to build that nuget source. This
  defeats the point of having license checks in the first place.
- IFD is not allowed by the nixpkgs CI and build farm anyway.
2024-01-02 11:21:19 +01:00
K900 887e96e875 Merge remote-tracking branch 'origin/master' into staging-next 2024-01-02 10:55:23 +03:00
Will Fancher 1570f54b75
Merge pull request #278128 from r-ryantm/auto-update/makeInitrdNGTool
makeInitrdNGTool: 0.1.0 -> 0.1.0
2024-01-01 18:14:05 -05:00
R. Ryantm 5ff7811393 makeInitrdNGTool: 0.1.0 -> 0.1.0 2024-01-01 20:10:05 +00:00
K900 6cbe5542b8
Merge pull request #276072 from lilyinstarlight/fix/cargo-workspace-root-fixup-pls
rustPlatform.importCargoLock: fix workspace_root detection
2024-01-01 18:42:49 +03:00
Sergei Trofimovich 6104083817 build-support/fetchgithub: fix metadata eval for arguments without locations
Without the change metadata evaluation fails on package like
`zammad.src` where no fields are defined in `.nix `files:

    src = fetchFromGitHub (lib.importJSON ./source.json);

There evaluation fails as:

    $ nix-instantiate --strict --eval --expr 'with import ./. {}; zammad.src.meta'
    error:
           23|     # to indicate where derivation originates, similar to make-derivation.nix's mkDerivation
           24|     position = "${position.file}:${toString position.line}";
             |     ^
           25|   };
       error: value is null while a set was expected

After the change evaluation succeeds as:

    $ nix-instantiate --strict --eval --expr 'with import ./. {}; zammad.src.meta'
    { homepage = "https://github.com/zammad/zammad"; }
2023-12-31 11:44:22 +00:00
github-actions[bot] a9cb88c7ae
Merge staging-next into staging 2023-12-31 06:01:28 +00:00
Jan Tojnar 80020c7db4 Merge branch 'master' into staging-next
; Conflicts:
;	pkgs/development/lua-modules/generated-packages.nix
;	pkgs/development/lua-modules/overrides.nix
2023-12-31 02:31:32 +01:00
Sergei Trofimovich a1422a7f8f build-support/go: fix eval of vendorSha256 accesses
Before the change there was no way to poll for presence of
`vendorSha256` attribute:

    $ nix-instantiate --strict --eval --expr 'with import ./. {}; _3mux.vendorSha256 or "no hash"'
       error: attribute 'vendorSha256' missing
          292|     passthru = passthru // { inherit go goModules vendorHash; } // { inherit (args') vendorSha256; };
             |                                                                     ^

After the change the poll happens as expected:

    $ nix-instantiate --strict --eval --expr 'with import ./. {}; _3mux.vendorSha256 or "no hash"'
    "no hash"
2023-12-30 12:03:28 +10:00
adisbladis 21d3b6284c
Merge pull request #277327 from adisbladis/emacs-build-support
build-support/emacs: refactor
2023-12-30 13:46:03 +13:00
Vladimír Čunát 895cd4b126
ReApply PR #276943: "melpa2nix: update to work with Emacs HEAD"
This reverts commit 7b623c3388 (PR #277535),
reversing changes made to 0aa7301173.
2023-12-29 14:00:46 +01:00
Vladimír Čunát de84adb292
Merge branch 'master' into staging-next 2023-12-29 14:00:30 +01:00
Vladimír Čunát 915c004e36
Revert "melpa2nix: update to work with Emacs HEAD" 2023-12-29 13:58:55 +01:00
adisbladis dda7578745 build-support/buildenv: Hoist builder instantiation 2023-12-29 03:04:46 +13:00
adisbladis 3618d1d247 build-support/emacs: refactor
- Remove superflous `let` with `defaultMeta`

These can just be assigned to meta directly instead.

- Hoist internal intermediate derivation

- Remove top-level `with lib`

- Inherit `lib`/`builtins` into scopes
2023-12-29 02:38:57 +13:00
Paul Meyer 891a634876 buildGoModule: always set -buildid= as ldflag
Signed-off-by: Paul Meyer <49727155+katexochen@users.noreply.github.com>
2023-12-28 09:59:34 +01:00
github-actions[bot] 1528aeb0b6
Merge staging-next into staging 2023-12-28 06:01:31 +00:00
github-actions[bot] f4041e23e9
Merge master into staging-next 2023-12-28 06:01:05 +00:00
Orhan "aib" Kavrakoglu a8c6febd15 ociTools: Fix invalid cgroup mount option 2023-12-27 19:41:07 +01:00
FlafyDev 5a5db92870 buildDartApplication: remove customSourceBuilders from baseDerivation 2023-12-26 21:57:46 +02:00
FlafyDev 65b0c270c2 pub2nix: Add disclaimer why not to use fetchTarball 2023-12-26 21:54:30 +02:00
FlafyDev b0a2d432da buildDartApplication: fix note about fixed-output derivation 2023-12-26 21:50:50 +02:00
FlafyDev e827619c11 buildDartApplication: remove unused pubGetScript and generatePubspecLock 2023-12-26 21:49:22 +02:00
Steve Purcell 4f12789c35 melpa2nix: update to work with Emacs HEAD
We now use a newer version of package-build, since
previously-necessary functions have been moved/removed from package.el
Emacs 30. See https://github.com/melpa/package-build/pull/87

Consequently, some changes are necessary to the corresponding patch
and to melpa2nix.el, which this commit also contains.
2023-12-26 16:55:28 +00:00
hacker1024 81a99463d8 buildDartApplication: Pass customSourceBuilders through to pub2nix 2023-12-26 18:48:12 +02:00
hacker1024 23952fb641 buildDartApplication: Remove depsListFile
We get a dependency list with pub2nix now. We can no longer easily distinguish between development dependency dependencies and regular dependency dependencies, but we weren't doing this anyway.
2023-12-26 18:48:12 +02:00
hacker1024 2bd3e5d779 buildDartApplication: Use package source builders and setup hooks instead of package overrides 2023-12-26 18:48:08 +02:00
hacker1024 cf55bc7300 buildDartApplication: Generate LD_LIBRARY_PATH at build time
This allows setup hooks to add runtime dependencies.
2023-12-26 17:08:51 +02:00
hacker1024 1ae96d0704 buildDartApplication: Move package sources to nativeBuildInputs
They are only needed at build time, after all.
2023-12-26 17:08:51 +02:00
hacker1024 8494ee610b flutter.buildFlutterApplication: Add pkg-config to nativeBuildInputs 2023-12-26 17:08:51 +02:00
hacker1024 f057034d6a flutter.buildFlutterApplication: Don't assume jq and yq are available in extraPackageConfigSetup 2023-12-26 17:08:51 +02:00
hacker1024 53a3485bfc flutter.buildFlutterApplication: Remove unneeded nativeBuildInputs 2023-12-26 17:08:51 +02:00
hacker1024 48bf6da955 buildDartApplication: Declare dependency sources as build inputs 2023-12-26 17:08:51 +02:00
hacker1024 18d9cd0c50 pub2nix.readPubspecLock: Add package versions to passthru 2023-12-26 17:08:51 +02:00
hacker1024 4e4c4c2ad0 buildDartApplication: Use overrides for dev dependencies as well 2023-12-26 17:08:51 +02:00
hacker1024 65d2cc04a3 dartHooks.dartConfigHook: Simplify packageRun function 2023-12-26 17:08:51 +02:00
hacker1024 d41348a68a dartHooks.dartConfigHook: Add packageRun utility 2023-12-26 17:08:51 +02:00
hacker1024 bea71b1fe3 pub2nix.readPubspecLock: Add packagePath convenience attribute 2023-12-26 17:08:50 +02:00
hacker1024 af6e82b47a flutter.buildFlutterApplication: Use extraPackageConfigSetup 2023-12-26 17:06:18 +02:00
hacker1024 7e043f5f28 buildDartApplication: Accept additional package_config.json setup commands 2023-12-26 17:06:18 +02:00
hacker1024 4eb35ef711 buildDartApplication: Link the package_config.json in a separate derivation 2023-12-26 17:06:18 +02:00
hacker1024 4f623fa0a1 buildDartApplication: Refactor autoDepsList logic 2023-12-26 17:06:18 +02:00
hacker1024 34ce9c64c9 pub2nix.readPubspecLock: Include entire source in package derivations
This allows references to paths above the package being built, e.g.  bc5d988f32/packages/libtokyo_flutter/pubspec.yaml (L42)
2023-12-26 17:05:28 +02:00
hacker1024 3081228cc4 dart: Use Nix instead of Pub 2023-12-26 17:05:20 +02:00
github-actions[bot] aa8844a8a9
Merge staging-next into staging 2023-12-25 18:01:25 +00:00
Jan Tojnar 2ac16accc0 Merge branch 'master' into staging-next
Conflicts:
	pkgs/development/python-modules/hahomematic/default.nix
2023-12-25 16:54:44 +01:00
Maciej Krüger 2e3a121acf
Merge pull request #276414 from linsui/dart
dart: fix fetchDartDeps
2023-12-25 10:21:21 +01:00
linsui 676ef2b4b2 dart: fix fetchDartDeps 2023-12-25 14:58:02 +08:00
github-actions[bot] 5d5f55c28d
Merge staging-next into staging 2023-12-25 00:02:44 +00:00
github-actions[bot] 88b151ed65
Merge master into staging-next 2023-12-25 00:02:15 +00:00
Lily Foster 8999c9d930 npmHooks.npmInstallHook: ignore rather than error for missing bin/man keys in package.json 2023-12-24 22:58:32 +01:00
github-actions[bot] 03901858de
Merge staging-next into staging 2023-12-24 18:01:44 +00:00
Jan Tojnar 8fcbb0c6ed Merge branch 'master' into staging-next
Conflicts:
- pkgs/development/python-modules/boto3-stubs/default.nix
- pkgs/development/python-modules/openllm-core/default.nix
  Between 0.4.22 → 0.4.34 (a82245bd3d)
  and 0.4.22 -> 0.4.41 (72c55ce6a6)
  Does not build, not pre-merge either.
2023-12-24 14:33:18 +01:00
Atemu d7b70652ef
Merge pull request #272125 from yaxitech/reproducible-initrd
make-initrd-ng: fix reproducibility problems
2023-12-24 11:53:33 +01:00
github-actions[bot] 3d36e72396
Merge staging-next into staging 2023-12-24 06:01:29 +00:00
Martin Weinelt a3e53d17b6 Merge remote-tracking branch 'origin/master' into staging-next 2023-12-24 02:39:15 +01:00
David McFarland a185ed85be nuget-to-nix: handle packages with mismatched nuspec case
e.g. cake.tool 3.0.0 which uses Cake.Tool.nuspec.
2023-12-22 12:06:02 +01:00
Lily Foster 5a8c65e118
rustPlatform.importCargoLock: fix workspace_root detection
Prior to this change, the `importCargoLock` git dependency builder
assumed that the workspace root that needed to be passed to
`replace-workspace-values` will always be the root directory of the git
repository.

This is not always the case as independent workspace roots may be used
from subdirectories, and packages be referenced via paths. An example of
this is [1], where the `iced` subdirectory is its own independent
workspace, and workspace values for packages within it should be pulled
from the `iced` subdirectory as the workspace root, not from the
top-level of the fetched repository.

[1]: b8f1a366dd/Cargo.toml
2023-12-21 19:40:43 -05:00
Connor Baker dd4723bad7
Merge pull request #272752 from ConnorBaker/feat/autoPatchelf-support-structuredAttrs
auto-patchelf: add support for __structuredAttrs
2023-12-21 19:09:56 -05:00
github-actions[bot] 63fbe1a992
Merge master into staging-next 2023-12-21 18:00:56 +00:00
K900 d387afbd96
Merge pull request #275857 from tejing1/steam-fix-sddm
buildFHSEnv, steam: fix privateTmp for sddm, make privateTmp overrideable
2023-12-21 20:37:24 +03:00
Jeff Huffman aa070a5d9a
buildFHSEnv: fix privateTmp for sddm 2023-12-21 12:11:35 -05:00
hacker1024 145c291ca6
fetchDartDeps: Use add milliseconds to date in package_config.json
This in compliance with the format specification.
https://github.com/dart-lang/language/blob/main/accepted/2.8/language-versioning/package-config-file-v2.md
2023-12-21 11:46:18 +01:00
hacker1024 0d82a3864a
fetchDartDeps: Add a package_config.json derivation 2023-12-21 11:46:13 +01:00
hacker1024 e99f59010c
fetchDartDeps: Pass through the dependency cache 2023-12-21 11:46:12 +01:00
hacker1024 623ac19416
fetchDartDeps: Generalise dependency derivation logic 2023-12-21 11:46:12 +01:00
hacker1024 75b809c7c6
buildDartApplication: Add entire Dart derivation to nativeBuildInputs 2023-12-21 11:46:11 +01:00
hacker1024 d331e2d68c
fetchDartDeps: Use given setup and Pub get script in dependency list derivation 2023-12-21 11:44:15 +01:00
hacker1024 98e4fb2d07
flutter: Pass pubGetScript through to buildDartApplication 2023-12-21 11:44:14 +01:00
Martin Weinelt 8742c0cd2e
maturinBuildHook: use dist dir relative to cargoRoot
With `cargoRoot` set to a subdirectory of the source, where the
Cargo.{lock,toml} are found, the final mv would previously fail, since
the build results appear relative to cargoRoot, not to the original
build directory.
2023-12-20 20:46:08 +01:00
github-actions[bot] 782f18b6fe
Merge staging-next into staging 2023-12-19 12:01:35 +00:00
Janne Heß 5eed5416ff
Merge pull request #167670 from messemar/incremental-builds
incremental builds: add derivation override functions
2023-12-19 11:37:15 +01:00
Alyssa Ross ca8a6d8c19 wrapRustcWith: allow --sysroot to be overridden
It turns out that unlike a normal Unix program, if the --sysroot
option is given more than once, rustc will error rather than using the
last value given.  Therefore, we need to ensure we only add our
default --sysroot argument if one hasn't been given explicitly on the
wrapper's command line.

This fixes cross compilation of rustc.

Closes: https://github.com/NixOS/nixpkgs/issues/271736
Fixes: 8b51cdd3be ("rustc: add a compiler wrapper")
2023-12-19 11:34:02 +01:00
github-actions[bot] 1f30be411f
Merge staging-next into staging 2023-12-19 06:01:17 +00:00
Will Fancher 42b9f21c69
Merge pull request #274743 from r-ryantm/auto-update/makeInitrdNGTool
makeInitrdNGTool: 0.1.0 -> 0.1.0
2023-12-19 00:46:24 -05:00
github-actions[bot] 01cb3d14eb
Merge staging-next into staging 2023-12-17 06:01:23 +00:00
Peder Bergebakken Sundt adc2612d49
Merge pull request #268304 from panicgh/fetchgitlab-sparse-forcegit
fetchgitlab: add sparseCheckout and forceFetchGit args
2023-12-17 03:34:52 +01:00
github-actions[bot] cacb3248e1
Merge staging-next into staging 2023-12-17 00:02:54 +00:00