1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-12-11 19:41:04 +01:00
Commit graph

12435 commits

Author SHA1 Message Date
Jörg Thalheim
d73ed6f310 symlink_exists: wrap exceptions into nix exception
(cherry picked from commit 779687854f)
2025-04-03 09:49:40 +02:00
Jörg Thalheim
681d7f7e57 Fix -Wsign-compare errors 2025-04-03 09:48:53 +02:00
Eelco Dolstra
a47ea7ed04 Merge remote-tracking branch 'origin/2.28-maintenance' into mergify/bp/2.28-maintenance/pr-12869 2025-04-03 09:31:09 +02:00
mergify[bot]
c4b81184e4
Merge pull request #12886 from Mic92/symlink-exists
symlink_exists: wrap exceptions into nix exception
2025-04-02 23:13:24 +00:00
mergify[bot]
1831948c20
Merge pull request #12885 from NixOS/fix-windows-build
Fix windows build
2025-04-02 22:34:41 +00:00
Jörg Thalheim
779687854f symlink_exists: wrap exceptions into nix exception 2025-04-02 23:48:16 +02:00
Jörg Thalheim
2ace512a70
Merge pull request #12896 from Mic92/no-dangling-reference
Fix -Wdangling-reference
2025-04-02 23:45:55 +02:00
Eelco Dolstra
0f723769b7 Fix -Wdangling-reference 2025-04-02 20:51:45 +00:00
Robert Hensing
ff328e1dad
Merge pull request #12876 from Mic92/connect-timeout
decrease connect-timeout to 5s
2025-04-02 22:42:36 +02:00
John Ericson
652a628d1c Fix windows build 2025-04-02 15:17:26 -04:00
Eelco Dolstra
c45f97b9f4 Make Git error messages more consistent
(cherry picked from commit f15681df26)
2025-04-02 19:15:16 +00:00
Eelco Dolstra
b4813a1b55 Tweak error message
(cherry picked from commit 277c29a64b)
2025-04-02 19:15:16 +00:00
Graham Christensen
8703e9d89e Improve and fix the error message when a file is not tracked by Git
(cherry picked from commit 62e2304891)
2025-04-02 19:15:16 +00:00
Eelco Dolstra
5f74cf9b7a Apply makeNotAllowedError to empty repos
(cherry picked from commit 67e957b636)
2025-04-02 18:33:03 +00:00
Eelco Dolstra
67e957b636 Apply makeNotAllowedError to empty repos 2025-04-02 19:57:49 +02:00
Robert Hensing
8c903e0402 nix-flake-c: Add lock flags
Going with a slightly more limited, high level API supporting the
three main use cases.
This should allow the underlying code to evolve more freely.
2025-04-02 18:29:42 +02:00
Robert Hensing
1a3789e222 fix: nix_clear_err in nix_flake_* functions 2025-04-02 18:29:42 +02:00
Robert Hensing
a0a1d00370 nix-flake-c: Add basic flakeref parsing and locking 2025-04-02 18:29: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
Robert Hensing
1061a0965a nix-flake-c: Add missing bits 2025-04-02 18:02:32 +02:00
Robert Hensing
05e5bd2140 Docs 2025-04-02 18:02:32 +02:00
Robert Hensing
02360dd65c nix-expr: Expose nix_api_expr_internal.h intentionally
This is required for other bindings like nix-flake-c to hook into
nix-expr-c appropriately.
The `_internal` part should be a sufficient deterrent normally,
and it may also be useful for bindings that migrate from the C++
interface.
2025-04-02 18:02:32 +02:00
Robert Hensing
60b4b220d8 test: Fixup test name 2025-04-02 18:02:32 +02:00
Robert Hensing
0dc9b6b7c7 libutil-tests-support: Add file/line to ctx errors 2025-04-02 18:02:32 +02:00
Jörg Thalheim
bef91a618a decrease connect-timeout to 5s
For people self-hosting caches that can be occasionally down, the
default timeout is very long. This is annoying if you are trying to
update your binary cache at the same time you are trying to update
another machine. Same if cachix has one of its rare hiccups.

We tested this value of 5s in srvos now for years and we like to travel
around the world with shitty internet, so it should be still reasonable
high.
2025-04-02 18:01:19 +02:00
mergify[bot]
70dcd738ef
Merge pull request #12870 from DeterminateSystems/improve-git-error
Git fetcher: Improve error message for untracked files
2025-04-02 15:39:35 +00:00
John Ericson
0c67777396 Expose the nix component in header include paths
For example, instead of doing

    #include "nix/store-config.hh"
    #include "nix/derived-path.hh"

Now do

    #include "nix/store/config.hh"
    #include "nix/store/derived-path.hh"

This was originally planned in the issue, and also recent requested by
Eelco.

Most of the change is purely mechanical. There is just one small
additional issue. See how, in the example above, we took this
opportunity to also turn `<comp>-config.hh` into `<comp>/config.hh`.
Well, there was already a `nix/util/config.{cc,hh}`. Even though there
is not a public configuration header for libutil (which also would be
called `nix/util/config.{cc,hh}`) that's still confusing, To avoid any
such confusion, we renamed that to `nix/util/configuration.{cc,hh}`.

Finally, note that the libflake headers already did this, so we didn't
need to do anything to them. We wouldn't want to mistakenly get
`nix/flake/flake/flake.hh`!

Progress on #7876

(cherry picked from commit cc24766fa6)
2025-04-02 11:37:17 -04:00
Jörg Thalheim
7a6570a11c
Merge pull request #12836 from NixOS/component-in-header-path
Expose the nix component in header include paths
2025-04-02 15:29:22 +02:00
Eelco Dolstra
64fb6ab435 AttrCursor::Parent: shared_ptr -> ref
(cherry picked from commit 5a35745949)
2025-04-02 13:23:39 +02:00
Eelco Dolstra
8b448c841e Throw CachedEvalError if a cached value exists but has type "failed"
Otherwise you get unhelpful errors like

  error: 'apps' is not an attribute set

Fixes #12762.

(cherry picked from commit 8b438fccb4)
2025-04-02 13:23:29 +02:00
Eelco Dolstra
f15681df26 Make Git error messages more consistent 2025-04-02 12:58:53 +02:00
Eelco Dolstra
277c29a64b Tweak error message 2025-04-02 12:58:11 +02:00
Graham Christensen
62e2304891 Improve and fix the error message when a file is not tracked by Git 2025-04-02 12:58:06 +02:00
Eelco Dolstra
fb7bcdd554 Make Git error messages more consistent 2025-04-01 22:56:14 +02:00
Eelco Dolstra
4e0346dcc1 Restore 'forbidden in restricted mode' errors 2025-04-01 20:46:26 +02:00
Robert Hensing
c908eef782 packaging: finalAttrs.doCheck -> finalAttrs.finalPackage.doCheck
This includes the logic that disables checks on cross appropriately.

Co-authored-by: Peder Bergebakken Sundt <pbsds@hotmail.com>
(cherry picked from commit 27d71b21fc)
2025-04-01 17:50:34 +00:00
Robert Hensing
27d71b21fc packaging: finalAttrs.doCheck -> finalAttrs.finalPackage.doCheck
This includes the logic that disables checks on cross appropriately.

Co-authored-by: Peder Bergebakken Sundt <pbsds@hotmail.com>
2025-04-01 18:51:09 +02:00
Robert Hensing
36f23279bf Format
clang-format: 18.1.8 -> 19.1.7
(cherry picked from commit 55297f865c)
2025-04-01 16:50:36 +00:00
Jörg Thalheim
c57e2486df
Merge pull request #12853 from roberth/flake-nixos-unstable
flake: nixpkgs: 24.11 -> nixos-unstable
2025-04-01 18:49:10 +02:00
Eelco Dolstra
1564c8f9d9 Fix missing file error messages from 'import' 2025-04-01 18:37:21 +02:00
Eelco Dolstra
5b079073c1 Add FIXME 2025-04-01 18:34:08 +02:00
Eelco Dolstra
73b1754816 Mount flake input source accessors on top of storeFS
This way, we don't need the PathDisplaySourceAccessor source accessor
hack, since error messages are produced directly by the original
source accessor.

In fact, we don't even need to copy the inputs to the store at all, so
this gets us very close to lazy trees. We just need to know the store
path so that requires hashing the entire input, which isn't lazy. But
the next step will be to use a virtual store path that gets rewritten
to the actual store path only when needed.
2025-04-01 17:49:28 +02:00
John Ericson
cc24766fa6 Expose the nix component in header include paths
For example, instead of doing

    #include "nix/store-config.hh"
    #include "nix/derived-path.hh"

Now do

    #include "nix/store/config.hh"
    #include "nix/store/derived-path.hh"

This was originally planned in the issue, and also recent requested by
Eelco.

Most of the change is purely mechanical. There is just one small
additional issue. See how, in the example above, we took this
opportunity to also turn `<comp>-config.hh` into `<comp>/config.hh`.
Well, there was already a `nix/util/config.{cc,hh}`. Even though there
is not a public configuration header for libutil (which also would be
called `nix/util/config.{cc,hh}`) that's still confusing, To avoid any
such confusion, we renamed that to `nix/util/configuration.{cc,hh}`.

Finally, note that the libflake headers already did this, so we didn't
need to do anything to them. We wouldn't want to mistakenly get
`nix/flake/flake/flake.hh`!

Progress on #7876
2025-04-01 11:40:42 -04:00
mergify[bot]
b38fee24d7
Merge pull request #12857 from NixOS/mergify/bp/2.28-maintenance/pr-12765
Add various clang tidy fixes (backport #12765)
2025-04-01 15:31:30 +00:00
Jörg Thalheim
92978dc59c libstore/daemon: make sure monitor is not considered "unused"
(cherry picked from commit 5c3682d7a1)
2025-04-01 13:38:43 +00:00
Jörg Thalheim
b3902c7bf1 git/getStringUntil: fix uninitialized stack variable
at least clang-tidy is not convinced that this initialized.
If this is not the case, the impact should be small and hopefully also
more robust if changed.

(cherry picked from commit 7e540059a3)
2025-04-01 13:38:43 +00:00
Jörg Thalheim
6681b56375 libstore/local-store: fix linting warning about unused variable
(cherry picked from commit 05082ea1c5)
2025-04-01 13:38:42 +00:00
Robert Hensing
4de73df8bf
Merge pull request #12765 from Mic92/clan-tidy-cleanups
Add various clang tidy fixes
2025-04-01 15:36:50 +02:00
Eelco Dolstra
fcddf4afe3 Apply makeNotAllowedError to empty repos 2025-04-01 15:35:01 +02:00
Robert Hensing
55297f865c Format
clang-format: 18.1.8 -> 19.1.7
2025-04-01 15:33:49 +02:00