Commit Graph

8662 Commits

Author SHA1 Message Date
Julius Michaelis
351899cd4b Revert "rust: use lld on pkgsStatic aarch64"
This reverts commit 48a6213611.
2024-10-17 22:17:39 +02:00
github-actions[bot]
7c78a608b4
Merge master into staging-next 2024-10-17 18:04:30 +00:00
Emily
88a7f67e86
xen: make the EFI build mandatory, fix XSA 462 description (#347810) 2024-10-17 15:51:17 +01:00
K900
a7b40b71cd freetype, pixman: restore flatten include hack for now, but better 2024-10-17 15:24:31 +03:00
Johannes Kirschbauer
34b7d209bb
nodejs/importNpmLock: init source overrides option 2024-10-17 12:00:45 +02:00
github-actions[bot]
775bea0160
Merge master into staging-next 2024-10-16 18:04:52 +00:00
K900
50d782b1ff buildFHSEnv: don't include /var
This mostly prevents random junk from leaking into fhsenvs,
but also fixes Steam not having a /var anymore.
2024-10-16 19:32:21 +03:00
Randy Eckenrode
4340a5addb
bintools-wrapper: ensure Swift auto-linked libraries can be found
While the Swift wrapper should take care of this, not everything that
links these libraries goes through the wrapper.
2024-10-15 12:36:07 -04:00
github-actions[bot]
31b11f1926
Merge staging-next into staging 2024-10-15 00:14:36 +00:00
Tristan Ross
959200a01e
{clang-sierraHack{,-stdenv},tests.macOSSierraShared}: drop (#346730) 2024-10-14 11:11:56 -07:00
github-actions[bot]
55382a65b9
Merge staging-next into staging 2024-10-14 06:05:43 +00:00
Paul Meyer
7e823e977e
docs: improve go builder comments in module.nix (#341561) 2024-10-14 07:39:53 +02:00
Artturin
af98420eb3
cc-wrapper: Use getExe for expand-response-params (#341607) 2024-10-13 21:05:11 +03:00
Emily
d9bac064aa
git: fix darwin to linux cross-compilation (#348010) 2024-10-12 23:03:23 +01:00
Simon Žlender
d5bb004558 deterministic-uname: use forPlatform for FreeBSD 2024-10-12 18:42:17 +02:00
Jörg Thalheim
a808f823bb
Merge branch 'master' into docs/improve-go-builder 2024-10-12 13:16:51 +02:00
github-actions[bot]
d363932842
Merge staging-next into staging 2024-10-12 06:04:59 +00:00
github-actions[bot]
ee37a18a92
Merge master into staging-next 2024-10-12 06:04:26 +00:00
Tristan Ross
299a94a7ed
buildDartApplication: include dart SDK builder by default (#343337) 2024-10-11 20:56:17 -04:00
Gavin John
1a1a4ebd7d
tests/srcOnly: init 2024-10-11 17:55:49 -07:00
Fernando Rodrigues
aaa4953b20
xen: fix XSA 462 description formatting
The newlines break the markdown quote in the longDescription.

Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
2024-10-11 16:47:23 +00:00
Gabriel Nützi
9a6d7cc9f7
module.nix aktualisieren
Co-authored-by: Wael Nasreddine <wael.nasreddine@gmail.com>
2024-10-11 12:00:13 +02:00
Emily
5f8188ec86
libredirect: fixes for new Darwin SDK (#347012) 2024-10-11 01:57:20 +01:00
Fernando Rodrigues
cf648c09cc
xen: make the EFI build mandatory
As binutils-efi no longer exists, there's no longer any reason to have
the withEFI flag. All supported builds should also build xen.efi.

Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
2024-10-10 21:47:32 +00:00
Randy Eckenrode
826edbf719
{bintools,cc}-wrapper: fix static builds on Darwin
Without this change, all Darwin platforms mangle to the same suffix
salt. That is normally not an issue because build = host should mean a
non-cross build, but it causes issues on Darwin with static builds
because `DEVELOPER_DIR_FOR_BUILD` and `DEVELOPER_DIR` will refer to
different SDKs but mangle to the same `DEVELOPER_DIR` with suffix salt.

The fix is to mangle static builds differently from non-static ones on
Darwin, which allows building for a static Darwin target on a
same-architecture Darwin host. This fix is applied only to Dariwn
because the issue does not appear to affect other platforms.
2024-10-10 16:23:00 -04:00
Randy Eckenrode
51755b0c00
{bintools,cc}-wrapper: use a fallback SDK when DEVELOPER_DIR is not set
It is unusual to invoke a wrapped compiler without setting
`DEVELOPER_DIR`, but it can happen when a user adds a compiler to their
installed packages or when a package intentionally invokes the compiler
without an environment (such as the GHC binary packages).
2024-10-10 16:22:59 -04:00
Randy Eckenrode
97d75cb619
{bintools,cc}-wrapper: set up Darwin SDK paths
Some compilers may know to check these paths when `SDKROOT` is set, but
it’s not assumed they do. `SDKROOT` is instead derived from the
`DEVELOPER_DIR`, and `NIX_CFLAGS_COMPILE` is set up with the sysroot and
necessary framework and include search paths.
2024-10-10 16:22:59 -04:00
Randy Eckenrode
9167e4fbcd
libredirect: update for new Darwin SDK on aarch64-darwin
The location of `libSystem.tbd` depends on the SDK, making it
effectively dynamic. It must be located relative to the `SDKROOT`
instead of to `clang.libc`.
2024-10-10 01:07:26 -04:00
Randy Eckenrode
4ebdf0442f
libredirect: fix install name on aarch64-darwin
The install name should be the full path. This matches x86_64-darwin.
2024-10-10 01:07:26 -04:00
github-actions[bot]
7bcc9dd470
Merge staging-next into staging 2024-10-09 12:07:41 +00:00
github-actions[bot]
0b14a71873
Merge master into staging-next 2024-10-09 12:06:03 +00:00
r-vdp
995ee2fa2c
nuget-to-nix: add meta.mainProgram 2024-10-09 12:33:27 +02:00
binarycat
683f97e378 rustPlatform: cargo test is now called with the same environment variables as cargo build
this means that cargo dependancies will no longer be built twice.
2024-10-09 09:42:38 +02:00
github-actions[bot]
4b2bd47103
Merge staging-next into staging 2024-10-09 06:05:20 +00:00
github-actions[bot]
fc5d8c3e7d
Merge master into staging-next 2024-10-09 06:04:53 +00:00
Silvan Mosberger
c5cea342ce
lib.oldestSupportedReleaseIsAtLeast: rename from bad name (#347258) 2024-10-09 02:20:39 +02:00
github-actions[bot]
96ea2a3c2f
Merge staging-next into staging 2024-10-09 00:14:47 +00:00
K900
956f9243c0 Merge remote-tracking branch 'origin/master' into staging-next 2024-10-08 21:15:13 +03:00
Gavin John
cbabc6874d
srcOnly: Fix bug introduced by rewrite 2024-10-08 10:15:42 -07:00
Jörg Thalheim
8885a1e21a lib/systems/architectures: add sapphirerapids/emeraldrapids
For reference: https://en.wikichip.org/wiki/intel/microarchitectures/sapphire_rapids

https://www.phoronix.com/news/GCC-13-Initial-Emerald-Rapids
https://www.phoronix.com/news/LLVM-Adds-Intel-Emerald-Rapids
2024-10-08 14:19:23 +02:00
github-actions[bot]
c4edebbe05
Merge staging-next into staging 2024-10-08 12:06:06 +00:00
K900
a3ccb7f562 steam: decimate 2024-10-08 14:00:17 +03:00
K900
70cb669a2f buildFHSEnv: fix nested fhsenvs with LD_PRELOAD
I hate this, but I also kinda love this. It's very cursed. Please help.

Co-authored-by: Alyssa Ross <hi@alyssa.is>
2024-10-08 14:00:17 +03:00
K900
7014f86947 buildFHSEnv: don't set LD_LIBRARY_PATH
It's a bad hack that was originally put into place for Steam, which doesn't need it anymore,
and it confuses native binaries that run from Steam.
2024-10-08 14:00:17 +03:00
Robert Hensing
729225e355 treewide: lib.isInOldestRelease -> lib.oldestSupportedReleaseIsAtLeast 2024-10-08 11:14:24 +02:00
Philip Taron
9f186c2632
srcOnly: Some improvements (#345198) 2024-10-07 10:20:51 -07:00
github-actions[bot]
6c9d940294
Merge staging-next into staging 2024-10-07 06:05:43 +00:00
github-actions[bot]
5fa43e7396
Merge master into staging-next 2024-10-07 06:05:15 +00:00
Fernando Rodrigues
4f8f36e5ad
xen: replace binutils override with binutils-unwrapped-all-targets
Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
2024-10-07 03:02:27 +00:00
Fernando Rodrigues
9279ecc1c4
xen: nuke half of the builder
- Removes the non-slim build instructions, massively simplifying
everything in the package.

- Removes unecessary patches.

- Inherits functions from lib instead of repeating lib.* everywhere.

Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
2024-10-06 20:24:27 +00:00
Fernando Rodrigues
d2bb9a9ca5
xen: revert minSupportedVersion to the upstream value.
As the builder is generic, more people may be using it, so we should try
to keep this value as close to the upstream source of truth as possible.

Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
2024-10-06 15:55:40 -03:00
Fernando Rodrigues
1dad6fe5cb
xen: turn the generic builder into the buildXenPackage function
Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
Co-authored-by: Yaroslav Bolyukin <iam@lach.pw>
2024-10-06 15:55:40 -03:00
github-actions[bot]
480db5cf27
Merge staging-next into staging 2024-10-06 00:15:59 +00:00
github-actions[bot]
ff851b037d
Merge master into staging-next 2024-10-06 00:15:37 +00:00
Emily
b2cb2a8d44 {clang-sierraHack{,-stdenv},tests.macOSSierraShared}: drop
This is some thing introduced in 2017 to work around a problem that
no longer seems to exist. Nothing uses it except its own test, which
these days passes even with the standard `clangStdenv`.
2024-10-05 21:29:07 +01:00
euxane
ca23669cf8 writers: add writeNim and writeNimBin
This adds convenience writers for self-contained Nim programs.
Those are compiled into very small binaries.

Test with: `nix build .#pkgs.tests.writers.{bin,simple,wrapping}.nim`
2024-10-05 21:33:26 +02:00
github-actions[bot]
4005eeea1f
Merge staging-next into staging 2024-10-05 06:04:51 +00:00
github-actions[bot]
13400dc754
Merge master into staging-next 2024-10-05 06:04:21 +00:00
Philip Taron
05fef7752c
buildFHSEnvBubblewrap: extraPreBwrapCmds after variable initialisation (#344404) 2024-10-04 18:25:49 -07:00
github-actions[bot]
32379e1a0b
Merge staging-next into staging 2024-10-05 00:14:22 +00:00
github-actions[bot]
e9c8665026
Merge master into staging-next 2024-10-05 00:14:01 +00:00
lassulus
d263cdfff4
writers: add babashka (#343510) 2024-10-04 21:40:48 +01:00
lassulus
a6521dc687
writers: disable broken test (fsharp) (#343507) 2024-10-04 21:40:32 +01:00
github-actions[bot]
4a1f411e5d
Merge staging-next into staging 2024-09-30 18:05:14 +00:00
K900
b29cb6c1f9 Merge remote-tracking branch 'origin/master' into staging-next 2024-09-30 20:23:25 +03:00
Philip Taron
d590835329
fetchers: uniformly support the hash attribute (#342173) 2024-09-30 07:55:36 -07:00
Guillaume Maudoux
ced27bf29e
autoPatchelfHook: expose script as top level package (#340162) 2024-09-30 10:03:28 +02:00
github-actions[bot]
09f18b89af
Merge master into staging-next 2024-09-30 00:14:50 +00:00
Doron Behar
796699f22b
fetch-yarn-deps: handle packages that are locally linked (#342186) 2024-09-29 22:59:39 +03:00
Gavin John
28ee6e7979
(WIP) srcOnly: Add noogle-compatible documentation 2024-09-29 12:51:40 -07:00
Gavin John
1463fe69c6
srcOnly: use derivation's stdenv and default to stdenvNoCC 2024-09-29 12:51:39 -07:00
Gavin John
13f0f6e596
srcOnly: Add warning if dontUnpack is set 2024-09-29 12:51:38 -07:00
Gavin John
0b77f4ad4f
srcOnly: some readability improvements 2024-09-29 12:51:36 -07:00
Mathieu Rene
2462edca10 fetch-yarn-deps: handle packages that are locally linked 2024-09-29 14:14:45 -04:00
Peder Bergebakken Sundt
6fd3990534 trivial: make symlinkJoin support pname+version alone 2024-09-28 01:35:47 +02:00
Artturin
e791a35b58 cc-wrapper: Use getExe for expand-response-params
The binary in `expand-response-params` may have an extension like `.exe`

`expand-response-params` is `""` in bootstrapping
2024-09-26 22:54:14 +03:00
github-actions[bot]
a36c24f249
Merge master into staging-next 2024-09-26 12:05:40 +00:00
Ulrik Strid
c61754ed9b
buildDunePackage: allow overriding stdenv (#342785) 2024-09-26 10:26:05 +02:00
Jörg Thalheim
ab5bad33c6 Reapply "closure-info: switch to stdenvNoCC (#344456)"
This reverts commit 6f733a03df.
2024-09-26 09:33:42 +02:00
Jörg Thalheim
f379c3f392 Merge remote-tracking branch 'upstream/master' into HEAD 2024-09-26 09:33:20 +02:00
Jörg Thalheim
6f733a03df Revert "closure-info: switch to stdenvNoCC (#344456)"
This reverts commit 58dd4924b9, reversing
changes made to 7da9f66ccb.

This was a mass-rebuild that was not intended to be merged.
2024-09-26 09:26:11 +02:00
github-actions[bot]
a3340e0fbf
Merge master into staging-next 2024-09-26 06:04:51 +00:00
K900
b964291466
{buildFHSEnvBubblewrap,buildFHSEnvChroot}: add nativeBuildInputs (#344516) 2024-09-26 08:38:07 +03:00
Artturin
d9eb52b026
fetchurl: fixup typo on a comment (#344330) 2024-09-26 05:56:56 +03:00
github-actions[bot]
57b5c92d8e
Merge master into staging-next 2024-09-26 00:13:55 +00:00
Artturin
f7ef27a982 {buildFHSEnvBubblewrap,buildFHSEnvChroot}: add nativeBuildInputs
`makeWrapper` is often used in these with `source "${makeWrapper}/nix-support/setup-hook"`
which causes `error: makeWrapper/makeShellWrapper must be in nativeBuildInputs` on cross.
2024-09-25 22:43:00 +03:00
K900
a9128ce2f2 Merge remote-tracking branch 'origin/master' into staging-next 2024-09-25 21:07:19 +03:00
Anderson Torres
ce21e97a1f fetchurl: nixfmt-rfc-style 2024-09-25 14:51:53 -03:00
Anderson Torres
a32c7a11dd fetchurl: fixup typo on a comment 2024-09-25 14:51:53 -03:00
Jörg Thalheim
7978828566 closure-info: switch to stdenvNoCC
This doesn't need a C/C++ compiler.
2024-09-25 17:10:54 +02:00
tomberek
d4567f66e4
dockerTools: Allow separately specifying metadata and filesystem timestamps (#327579) 2024-09-25 08:17:33 -04:00
benaryorg
9bc6d23111
buildFHSEnvBubblewrap: extraPreBwrapCmds after variable initialisation
Prior to this commit it was not possible to modify e.g. the list of ignored directories at all, however given that `buildFHSEnvBubblewrap` effectively uses a sandboxing tool (*bwrap*) I feel like this is a missed opportunity.
The code in nixpkgs already covers all the knobs that are required to get *Nix* itself to run inside bubblewrap, so why not allow users to make that additional modification?
While additional `ro_mounts` and such can be *added* to the bubblewrap invocation, the already mounted directories cannot be removed, and even if shadowed by e.g. a tmpfs mount, this would still allow something inside the sandbox to potentially unmount the tmpfs and access the data.

So what this change does is moving the snippet where custom code can be injected down by four lines so that users can actually modify those variables e.g. using `ignored+=( /home /srv /mnt /boot )`.
The only cases in which this would break is:

- someone using those variable names in `extraPreBwrapCmds` already and relying on them being overwritten; I would consider that chance slim, and the fix would be easy enough
- someone using a construct like `false && \` to disable the `ignored` initialisation and effectively working around this limitation; again the chances are slim (even though I know I'd be affected), and the fix would be easy enough (as this change makes the workaround needless anyway so it's an improvement)

Signed-off-by: benaryorg <binary@benary.org>
2024-09-25 09:32:41 +00:00
github-actions[bot]
ce44139ef1
Merge master into staging-next 2024-09-25 06:04:53 +00:00
Tom Bereknyei
d0b3364822 dockerTools: set mtime to epoch by default 2024-09-25 00:31:16 -04:00
WxNzEMof
847b4732e4 dockerTools: Allow separately specifying metadata and filesystem timestamps
Setting the image creation timestamp in the image metadata to a
constant date can cause problems with self-hosted container
registries, that need to e.g. prune old images.  This timestamp is
also useful for debugging.

However, it is almost never useful to set the filesystem timestamp to
a constant value.  Doing so not only causes the image to possibly no
longer be reproducible, but also removes any possibility of
deduplicating layers with other images, causing unnecessary storage
space usage.

Therefore, this commit introduces "mtime", a new parameter to
streamLayeredImage, which allows specifying the filesystem timestamps
separately from "created".  For backwards compatibility, "mtime"
defaults to the value of "created".
2024-09-25 00:23:20 -04:00
Artturin
f0e657f3b1 Merge branch 'master' into staging-next 2024-09-25 06:05:01 +03:00
David McFarland
9bb309d5b5 buildDotnetModule: set --no-restore in check/publish/pack 2024-09-24 20:43:24 -03:00
David McFarland
00fe5f61ba buildDotnetModule: remove duplicate attribute key 2024-09-24 20:43:24 -03:00
David McFarland
2c97d67f62 dotnet: split sdk packages by platform 2024-09-24 20:43:24 -03:00
Artturin
e0464e4788 treewide: replace stdenv.is with stdenv.hostPlatform.is
In preparation for the deprecation of `stdenv.isX`.

These shorthands are not conducive to cross-compilation because they
hide the platforms.

Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way

One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059

There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.

```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
2024-09-25 00:04:37 +03:00