Sergei Zimmerman
c847cd87f1
Merge pull request #14297 from lovesegfault/nix-s3-test-public
...
test(nixos/s3-binary-cache-store): misc improvements
2025-10-19 16:53:40 +00:00
tomberek
dbbdae926b
Merge pull request #14299 from roberth/unlocked-msg
...
Clarify unlocked input warning message
2025-10-19 16:50:16 +00:00
Eelco Dolstra
3c03050cd6
Merge pull request #14290 from NixOS/dont-write-nar-to-tty
...
nix store dump-path: Refuse to write NARs to the terminal
2025-10-19 12:41:55 +00:00
Robert Hensing
e33cd5aa38
Clarify unlocked input warning message
...
The previous message was vague about what "deprecated" meant and why
unlocked inputs with NAR hashes "may not be reproducible". It also
used "verifiable" which was confusing.
The new message makes it clear that the NAR hash provides verification
(is checked by NAR hash) and explicitly states the failure modes:
garbage collection and sharing.
2025-10-19 14:08:34 +02:00
Bernardo Meurer Costa
d9c808f8a7
refactor(tests/nixos/s3-binary-cache-store): add verify_packages_in_store helper
2025-10-19 00:21:54 +00:00
Bernardo Meurer Costa
55ea3d3476
test(tests/nixos/s3-binary-cache-store): test public bucket operations
...
Add `test_public_bucket_operations` to validate that store operations
work correctly on public S3 buckets without requiring credentials.
Tests nix store info and nix copy operations.
2025-10-19 00:04:33 +00:00
Bernardo Meurer Costa
7d0c06f921
feat(tests/nixos/s3-binary-cache-store): add public parameter to setup_s3
...
Add optional 'public' parameter to setup_s3 decorator. When set to True,
the bucket will be made publicly accessible using mc anonymous set.
2025-10-18 23:57:51 +00:00
Bernardo Meurer Costa
5b4bd5bcb8
refactor(tests/nixos/s3-binary-cache-store): inline make_http_url fn
...
Remove make_http_url helper function and inline its single usage.
2025-10-18 23:51:44 +00:00
Bernardo Meurer Costa
4ae6c65bc5
test(tests/nixos/s3-binary-cache-store): verify credential caching in concurrent fetches
...
Add assertion to test_concurrent_fetches to verify that only one
credential provider is created even with 5 concurrent fetches.
2025-10-18 23:48:55 +00:00
Bernardo Meurer Costa
4f19e63a8f
refactor(tests/nixos/s3-binary-cache-store): add --no-link to nix build commands
...
Prevent creation of result symlinks in all nix build commands by
adding the --no-link flag.
2025-10-18 23:44:13 +00:00
Bernardo Meurer Costa
f88c3055f8
refactor(tests/nixos/s3-binary-cache-store): clean client store in setup_s3
...
Add cleanup of client store in the finally block of setup_s3 decorator.
Uses `nix store delete --ignore-liveness` to properly handle GC roots
and only attempts deletion if the path exists.
2025-10-18 23:36:48 +00:00
Bernardo Meurer Costa
9058d90ab2
refactor(tests/nixos/s3-binary-cache-store): rename populate_with to populate_bucket
2025-10-18 23:27:03 +00:00
Bernardo Meurer Costa
c1a15d1a26
refactor(tests/nixos/s3-binary-cache-store): rename with_test_bucket to setup_s3
2025-10-18 23:24:30 +00:00
Bernardo Meurer Costa
22f4cccc71
refactor(tests/nixos/s3-binary-cache-store): use a PKGS dict
...
Replace individual PKG_A, PKG_B, and PKG_C variables with a PKGS
dictionary. This will enable `@with_clean_client_store` in the future.
2025-10-18 23:23:50 +00:00
John Ericson
b56e456b0d
Merge pull request #14269 from roberth/json-schema
...
Add a JSON Schema for `Derivation`
2025-10-18 18:50:39 +00:00
Robert Hensing
c92ba4b9b7
Add titles in JSON schemas
...
This way, the description isn't rendered in the tables of contents,
leading to no more formatting errors.
2025-10-17 21:53:29 +02:00
Eelco Dolstra
109f6449cc
nix store dump-path: Refuse to write NARs to the terminal
2025-10-17 20:27:10 +02:00
John Ericson
ad2360c59f
Merge pull request #14288 from lovesegfault/repl-skip-stack
...
fix(tests/functional/repl): skip test if stack size limit is insufficient
2025-10-17 17:35:52 +00:00
Bernardo Meurer Costa
20c7c551bf
fix(tests/functional/repl): skip test if stack size limit is insufficient
...
Nix attempts to set the stack size to 64 MB during initialization, which is
required for the repl tests to run successfully. Skip the tests on systems
where the hard stack limit is less than this value rather than failing.
2025-10-17 17:05:12 +00:00
John Ericson
e78e6ca4f4
Merge pull request #14281 from NixOS/dead-code
...
libutil: Drop unused SubdirSourceAccessor
2025-10-17 03:01:17 +00:00
John Ericson
e34063cf21
Merge pull request #14283 from NixOS/nar-check
...
nix {cat,ls}: Add back missing checks for file descriptors
2025-10-17 02:58:23 +00:00
Sergei Zimmerman
e457ea7688
nix {cat,ls}: Add back missing checks for file descriptors
...
I didn't catch this during the review of https://github.com/NixOS/nix/pull/14273 .
This fixes that mistake.
2025-10-17 02:26:24 +03:00
Farid Zakaria
64c55961eb
Merge pull request #14273 from fzakaria/fzakaria/issue-13944
...
Make `nix nar [cat|ls]` lazy
2025-10-17 02:16:54 +03:00
Sergei Zimmerman
bcd5a9d05c
libutil: Drop unused SubdirSourceAccessor
2025-10-17 00:56:53 +03:00
Robert Hensing
01b001d5ba
Add JSON Schema infrastructure, use for Derivation
...
For manual, and testing formats
2025-10-16 17:24:18 -04:00
John Ericson
27767a6094
Merge pull request #14276 from NixOS/fix-14193
...
libstore/registerOutputs: Don't try to optimize a non-existent actual…
2025-10-16 21:06:43 +00:00
Sergei Zimmerman
4cbcaad435
libstore/registerOutputs: Don't try to optimize a non-existent actualPath
...
Since 3c610df550 this resulted in `getting status of`
errors on paths inside the chroot if a path was already valid. Careful inspection
of the logic shows that if buildMode != bmCheck actualPath gets reassigned to
store.toRealPath(finalDestPath). The only branch that cares about actualPath is
the buildMode == bmCheck case, which doesn't lead to optimisePath anyway.
2025-10-16 23:08:30 +03:00
John Ericson
d87a06af7a
Merge pull request #14275 from NixOS/s3-cleanup
...
libstore: Miscellaneous S3 store cleanups
2025-10-16 19:36:59 +00:00
Eelco Dolstra
2dc9f2a2b7
Merge pull request #14272 from NixOS/use-store-path-serializer
...
Daemon protocol: Use the WorkerProto serializer for store paths
2025-10-16 19:35:25 +00:00
Eelco Dolstra
a7991d55cc
Merge pull request #14270 from NixOS/use-optional-storepath-serializer
...
Use serializer for std::optional<StorePath>
2025-10-16 19:07:07 +00:00
Sergei Zimmerman
e7047fde25
libstore: Remove the unnecessary 'error: ' prefix in warning message
2025-10-16 21:49:38 +03:00
Sergei Zimmerman
33e94fe19f
libstore: Make AwsAuthError more legible
...
Instead of the cryptic:
> error: Failed to resolve AWS credentials: error code 6153`
We now get more legible:
> error: AWS authentication error: 'Valid credentials could not be sourced by the IMDS provider' (6153)
2025-10-16 21:49:37 +03:00
Sergei Zimmerman
dc03c6a812
libstore: Put all the AWS credentials logic behind interface class AwsCredentialProvider
...
This makes it so we don't need to rely on global variables and hacky destructors to
clean up another global variable. Just putting it in the correct order in the class
is more than enough.
2025-10-16 21:49:36 +03:00
Sergei Zimmerman
b1d067c9bb
tests/nixos: Rename back S3 store nixos test
2025-10-16 21:49:35 +03:00
Eelco Dolstra
d782c5e586
Daemon protocol: Use the WorkerProto serializer for store paths
2025-10-16 17:34:33 +02:00
Eelco Dolstra
f84b33644c
Merge pull request #14271 from NixOS/no-check-sigs
...
Factor out `--no-check-sigs` into its own class
2025-10-16 15:07:29 +00:00
Eelco Dolstra
3bd2b76f6e
nix store sign: Use required attribute
2025-10-16 16:35:13 +02:00
Eelco Dolstra
139df77440
Factor out --no-check-sigs
2025-10-16 16:35:09 +02:00
Eelco Dolstra
a48a737517
Use serializer for std::optional<StorePath>
2025-10-16 16:32:18 +02:00
John Ericson
0503a862ef
Merge pull request #14268 from roberth/dev-doc-manual
...
doc/dev/doc: Update local build instructions for manual
2025-10-16 13:50:58 +00:00
Robert Hensing
61cb9c4832
doc/dev/doc: Update local build instructions for manual
2025-10-16 13:22:22 +02:00
John Ericson
721f5572a6
Merge pull request #14263 from NixOS/hydra-import-paths
...
Restore `ServeProto::Command::ImportPaths`
2025-10-15 22:57:50 +00:00
John Ericson
5a6864c027
Merge pull request #14264 from xokdvium/fix-splicing-test
...
tests: Fix splicing in functional tests for nix-cli
2025-10-15 22:32:45 +00:00
Sergei Zimmerman
0deb492b3d
Restore ServeProto::Command::ImportPaths
...
This partially reverts commit 5e46df973f ,
partially reversing changes made to
8c789db05b .
We do this because Hydra, while using the newer version of the protocol,
still uses this command, even though Nix (as a client) doesn't use it.
On that basis, we don't want to remove it (or consider it only part of
the older versions of the protocol) until Hydra no longer uses the
Legacy SSH Protocol.
2025-10-15 18:18:59 -04:00
Sergei Zimmerman
17b7fb383f
tests: Fix splicing in functional tests for nix-cli
...
This is necessary to fix nix-everything-llvm.
The problem here is that nix-cli is taken from the previous
stage that is built with libstdc++, but this derivation builds
plugins with libc++ and the plugin load fails miserably.
2025-10-16 01:04:50 +03:00
John Ericson
94cfba7e84
Merge pull request #14226 from obsidiansystems/unkeyed-realisation
...
Reapply #14097
2025-10-15 21:27:13 +00:00
Sergei Zimmerman
0f1cfa4d60
Merge pull request #14262 from lovesegfault/ci-cleanup-s3
...
ci: cleanup s3 tests
2025-10-15 21:19:20 +00:00
Bernardo Meurer Costa
fa0d00e668
ci: cleanup s3 tests
...
This cleans up the work done in 8c2828387 . Now that #13752 has landed,
there's no need to test configurations without AWS auth in CI.
2025-10-15 23:51:08 +03:00
Sergei Zimmerman
d2b6499154
Merge pull request #13752 from lovesegfault/curl-based-s3-v2
...
feat(libstore): curl-based s3
2025-10-15 20:01:26 +00:00
Sergei Zimmerman
e3232af558
Merge pull request #14253 from NixOS/libgit2-refname-wa
...
libfetchers/git-utils: Be more correct about validating refnames
2025-10-15 19:30:53 +00:00