Jörg Thalheim
e7078d4de1
Merge pull request #13142 from xokdvium/gc-root-boost-regex
...
libstore: Use `boost::regex` for GC root discovery
2025-05-18 21:44:41 +02:00
Sergei Zimmerman
67535263a5
dev-shell: Drop bear dependency
...
Since the autotools-based build system has been removed
and meson already generates compile database there's no
need to have it in the devshell.
2025-05-15 21:13:13 +00:00
Robert Hensing
132c20872f
doc/manual: Render unreleased release notes on master
...
This renders the rl-next notes when `officialRelease = false`, which
corresponds to the case where we're not on a release branch.
Previously we had disabled this behavior because changelog-d is
somewhat of a heavy dependency, being the only Haskell package.
However, we now have new circumstances that topple the tradeoff.
- We render `master` docs to https://nix.dev/manual/nix/development/release-notes/rl-next.html
- `.#manual` is a separate build now, so `nix build nix/foo` is
not affected by the increased closure of build input outputs.
Because of these factors, I believe adding this functionality back
is more valuable, as we can use it to
- Previous release notes
- Showcase the upcoming release to the community
2025-05-14 23:03:33 +02:00
Sergei Zimmerman
f3090ef703
packaging/dependencies: Use boost without enableIcu
...
This reduces the closure size on master by 40MiB.
```
$ nix build github:nixos/nix/1e822bd4149a8bce1da81ee2ad9404986b07914c#nix-store --out-link closure-on-master
$ nix build .#nix-store -L --out-link closure-without-icu
$ nix path-info --closure-size -h ./closure-on-master
/nix/store/8gwr38m5h6p7245ji9jv28a2a11w1isx-nix-store-2.29.0pre 124.4 MiB
$ nix path-info --closure-size -h ./closure-without-icu
/nix/store/k0gwfykjqpnmaqbwh23nk55lhanc9g24-nix-store-2.29.0pre 86.6 MiB
```
2025-05-13 08:47:24 +00:00
silvanshade
b1783ff615
Implement memory-mapped IO for Sinks
2025-05-02 15:29:22 -06:00
Robert Hensing
b257ea94e3
Fix pkgs.nixVersions and installTests
...
... by moving our stuff out of the way from upstream's
`nixComponents` and `nixDependencies` attrsets.
(I prefer not to use overlays, but let's make it work this way
first)
2025-04-20 22:20:52 +02:00
Dean De Leo
51073607ea
S3: opt-in the STSProfileCredentialsProvider
...
The STSProfileCredentialsProviders allows to assume a specific IAM role
when accessing an S3 repository. Sometimes this is needed to obtain the
permissions to operate on the bucket.
2025-04-11 23:47:56 +02:00
Robert Hensing
e76bbe413e
Merge pull request #12877 from roberth/c-api-libflake-override-input
...
C API: Flake loading, input overriding
2025-04-08 09:01:51 +02:00
Robert Hensing
4be92e7b82
packaging/dependency: Clarify darwinMinVersion
2025-04-03 23:22:33 +02:00
Robert Hensing
5c4a4aeed7
Revert "remove obsolete stdenv darwinMinVersion override"
...
This reverts commit d91310bb32
.
> Some packages require setting a non-default deployment target
> (or minimum version) to gain access to certain APIs. You do
> that using the darwinMinVersionHook, which takes the deployment
> target version as a parameter.
-- 60b54c7aee/doc/stdenv/platform-notes.chapter.md (what-is-a-deployment-target-or-minimum-version-sec-darwin-troubleshooting-using-deployment-targets)
This will again solve error:
../nix_api_expr.cc:38:18: error: aligned allocation function of type 'void *(std::size_t, std::align_val_t)' is only available on macOS 10.13 or newer
-- https://hydra.nixos.org/build/294088946
2025-04-03 23:22:19 +02:00
Robert Hensing
33e638dc1d
Merge pull request #12863 from Mic92/libgit2
...
libgit2: use upstream version if possible
2025-04-02 22:44:42 +02:00
Robert Hensing
60bffbd41b
nix-fetchers-c: Init with settings object
...
Also make it a dependency of nix-flake-c; we'll need that.
2025-04-02 18:29:42 +02:00
Jörg Thalheim
d91310bb32
remove obsolete stdenv darwinMinVersion override
...
we are more up-to-date now:
nix-repl> stdenv.hostPlatform.darwinMinVersion
"11.3"
2025-04-01 19:20:43 +02:00
Jörg Thalheim
0b61b758fb
libgit2: use upstream version if possible
...
we don't seem to use libgit2 for fetching via ssh, hence it shouldn't
matter if it's using libssh or the ssh binary.
2025-04-01 19:09:21 +02:00
Robert Hensing
1172e49a3a
packaging: Various improvements
...
Co-authored-by: Mic92 <Mic92@users.noreply.github.com>
2025-04-01 18:51:09 +02:00
Jörg Thalheim
cfeb9404a8
remove deprecated gold linker
...
Binutils deprecated the gold linker, so do we.
For development we now use mold instead,
we can potentially also use it for release builds later.
2025-04-01 12:52:29 +02:00
silvanshade
3546e574ca
Use mold instead of GNU ld for faster builds
2025-03-31 10:38:11 -06:00
John Ericson
459fb59493
Remove boost env vars
...
https://github.com/NixOS/nixpkgs/issues/86131 is now fixed!
2025-03-28 10:45:27 -04:00
Kirens
15dfeb9182
make sure doc and manpage outputs are symlinks
...
Part of https://github.com/NixOS/nixpkgs/pull/392549
The doc and manpage fix already happend in 0ddfbc5939
2025-03-24 09:30:28 +01:00
Sergei Zimmerman
0ddfbc5939
packaging/everything.nix: Fix doc and man outputs
...
We want the $doc, $man outputs to be symlinks pointing to nix-manual and
nix-manual.man. Creating the directories first makes the `ln` command
produce symlink $doc/${nix-manual} instead.
```
$file /nix/store/q4dwlnd36gpfajgfcp6hca2xwy068wjq-nix-2.27.1-man/rwh8ky3k040wyrywl8k2v5b3csdfbdg7-nix-manual-2.27.1-man
/nix/store/q4dwlnd36gpfajgfcp6hca2xwy068wjq-nix-2.27.1-man/rwh8ky3k040wyrywl8k2v5b3csdfbdg7-nix-manual-2.27.1-man:
symbolic link to /nix/store/rwh8ky3k040wyrywl8k2v5b3csdfbdg7-nix-manual-2.27.1-man
```
This is the reason `nix-env --help` is once again broken on 2.26/2.27/master
after 4108529
.
2025-03-22 12:16:47 +00:00
Jörg Thalheim
5ba9949b82
Merge pull request #12578 from roberth/complete-hydra-build-jobs
...
packaging: Make hydraJobs.build.* complete
2025-03-19 10:11:19 +01:00
Robert Hensing
dcaea8cb1c
packaging: Typo in setVersionLayer / preConfigure
...
Apparently dead code in our use case, but good to keep nonetheless.
Credit: ztzg in https://github.com/NixOS/nix/pull/12498#pullrequestreview-2658031853
2025-03-04 17:22:24 +01:00
Robert Hensing
41085295ab
packaging/everything.nix: Use a multi-output derivation
...
This should fix a few packaging regressions.
`dev` also includes a merged `includes/`, which may be helpful until
inter-component includes are fixed properly.
2025-02-28 17:40:32 +01:00
Robert Hensing
d6139a339b
packaging: Make hydraJobs.build.* complete
2025-02-27 20:45:09 +01:00
Robert Hensing
0772c2e3ab
packaging: Use correct stdenv for x86_64-darwin
2025-02-24 16:44:12 +01:00
John Ericson
6877988515
Fix dev shell
...
There was one `inputs.nixFmt` left after 573ffac2e6
.
2025-02-20 13:01:42 -05:00
Robert Hensing
5488e29d2f
packaging: Restore libgit2 USE_SSH=exec
...
... when nixpkgs is nixos-unstable or the overlay is used.
2025-02-19 09:38:05 +01:00
Robert Hensing
f0bdb65216
packaging: Remove dead code
...
... from nixpkgs, my bad.
2025-02-19 00:10:05 +01:00
Robert Hensing
d47e3c9576
packaging: Make patch count lazier
...
This makes `nix.version` quicker to evaluate, which should speed up
package listing operations.
If you want an accurate count, use `lib.optionals` in your override
instead of `null` values.
2025-02-18 19:06:36 +01:00
Robert Hensing
0dbe28ad9d
packaging: Add patch count to version
2025-02-18 19:04:53 +01:00
Robert Hensing
48fb6fdde9
packaging: Add source overriding "methods"
2025-02-18 19:03:29 +01:00
Robert Hensing
f31d86284f
packaging: Add overrideAllMesonComponents
2025-02-18 18:57:02 +01:00
Robert Hensing
cca01407a7
packaging: Move layers from dependencies to components
...
This makes it easier to implement batch overriding for the components.
2025-02-18 18:57:02 +01:00
Robert Hensing
3556f6bf4c
Write just ./.version on all components
...
This way it's easier to get right. See previous commit.
2025-02-18 11:41:35 +01:00
Robert Hensing
b0bbb1252a
Support libgit2 1.9.0
...
For when the overlay is used with nixos-unstable.
1.9.0 has our patches.
2025-02-17 17:30:30 +01:00
Eelco Dolstra
2e20a5f822
Don't import a symlink
...
This is a workaround to avoid differing evaluation results between Nix
2.19 and >= 2.20 (#12449 ).
2025-02-11 22:42:36 +01:00
Robert Hensing
0d7418b4fe
packages.default: Add meta.mainProgram
2025-01-27 14:26:15 +01:00
Robert Hensing
96e550efc5
Format .nix files
...
... with nixfmt (rfc style)
2025-01-24 17:04:02 +01:00
Robert Hensing
ba6425a7d0
dev: Configure nixfmt (rfc style)
2025-01-24 17:02:50 +01:00
Robert Hensing
f168a6e739
Merge pull request #11799 from obsidiansystems/flake-nixpkgs-cleanup
...
Clean up packaging a bit
2025-01-22 22:40:24 +01:00
Eelco Dolstra
b09b4dc995
x86_64-darwin: Disable LTO
...
LTO on x86_64-darwin appears to break the ability to catch exceptions
correctly (maybe just for exception types defined in different
libraries). This leads to many weird test failures,
e.g. https://hydra.nixos.org/build/286312387 and
https://hydra.nixos.org/build/286312341 .
2025-01-21 18:10:12 +01:00
Eelco Dolstra
a82c63f5d8
Fix nix-everything build
...
https://hydra.nixos.org/build/286306734
2025-01-21 09:54:57 +01:00
John Ericson
0fe92067fb
Fixes for nix-everything
wrapper
...
1. Fix this eval error:
https://hydra.nixos.org/jobset/nix/master#tabs-errors
The dev package output (actually a separate derivation) needs to skip
this for cross just as the main package output does.
2. Deduplicate libs attrset and list.
3. Move `nix-functional-tests` to `checkInputs`.
With the Meson build system, we no longer need a `check` vs
`install-check` distinction, so it is simpler to just keeep
everything in one place.
2025-01-20 12:19:21 -05:00
Robert Hensing
809f157a49
maint: Disable LTO for static due to build failure
2025-01-20 16:11:48 +01:00
Robert Hensing
0c85477f8e
maint: Remove perl bindings from static build for now
2025-01-20 16:03:21 +01:00
Eelco Dolstra
d8636843b1
mingw: Don't do LTO
...
This breaks the build with "symbol wrong type (4 vs 3)".
https://stackoverflow.com/questions/28267100/dll-linking-failed-with-lto-using-mingw-w64
2025-01-20 14:52:50 +01:00
John Ericson
69fde530a6
Clean up packaging a bit
...
- Multiple choices of stdenv are handled more consistently, especially for the dev
shells which were previously not done correctly.
- Some stray nix code was moving into the `packaging` directory
2025-01-17 15:09:43 -05:00
Robert Hensing
cab347b4eb
refactor: Move ld=gold rule to mesonBuildLayer
2025-01-15 20:01:00 +01:00
Connor Baker
359a0840e2
packaging: use optimization level 3 and LTO by default
2025-01-01 21:59:37 -08:00
Jörg Thalheim
b5ad051b6c
remove upstreamed toml11 package override
2024-12-16 16:50:59 +01:00