1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-26 15:51:15 +02:00
Commit graph

19260 commits

Author SHA1 Message Date
Ivan Trubach
c69d5af105 libstore: fix expected bytes in progress bar
(cherry picked from commit eb73bfcf73)
2025-02-21 19:12:02 +00:00
Fabian Möller
cd1935468d Fix perl store bindings
When #9863 converted the `Nix::Store` free functions into member functions, the
implicit `this` argument was not accounted for when iterating over the variable
number of arguments in some functions.

(cherry picked from commit 5cf9e18167)
2025-02-21 14:47:37 +00:00
mergify[bot]
0d039d4abe
Merge pull request #12537 from NixOS/mergify/bp/2.26-maintenance/pr-12391
Only try to chmod /nix/var/nix/profiles/per-user when necessary (backport #12391)
2025-02-20 16:45:41 +00:00
Sandro Jäckel
65583ca79b Only try to chmod /nix/var/nix/profiles/per-user when necessary
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
(cherry picked from commit dcbf4dcc09)
2025-02-20 16:11:27 +00:00
mergify[bot]
514f1dea44
Merge pull request #12530 from NixOS/mergify/bp/2.26-maintenance/pr-12439
Set FD_CLOEXEC on sockets created by curl (backport #12439)
2025-02-19 20:24:14 +00:00
MaxHearnden
cd149b56c7 Set FD_CLOEXEC on sockets created by curl
Curl creates sockets without setting FD_CLOEXEC/SOCK_CLOEXEC, this can
cause connections to remain open forever when using commands like `nix
shell`

This change sets the FD_CLOEXEC flag using a CURLOPT_SOCKOPTFUNCTION
callback.

(cherry picked from commit 12d2527276)
2025-02-19 19:47:45 +00:00
mergify[bot]
029dd96b8b
Merge pull request #12523 from NixOS/mergify/bp/2.26-maintenance/pr-12518
packaging: Restore libgit2 USE_SSH=exec (backport #12518)
2025-02-19 09:14:56 +00:00
Robert Hensing
8028579060 packaging: Restore libgit2 USE_SSH=exec
... when nixpkgs is nixos-unstable or the overlay is used.

(cherry picked from commit 5488e29d2f)
2025-02-19 08:54:28 +00:00
mergify[bot]
dae4dac76e
Merge pull request #12519 from NixOS/mergify/bp/2.26-maintenance/pr-12503
Overriding the componentized build (backport #12503)
2025-02-19 00:59:46 +00:00
Robert Hensing
244735270a packaging: Remove dead code
... from nixpkgs, my bad.

(cherry picked from commit f0bdb65216)
2025-02-19 01:33:20 +01:00
Robert Hensing
dade40573e 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.

(cherry picked from commit d47e3c9576)
2025-02-19 01:33:20 +01:00
Robert Hensing
bfb6f37b37 packaging: Add patch count to version
(cherry picked from commit 0dbe28ad9d)
2025-02-19 01:33:20 +01:00
Robert Hensing
a4641be4e9 test: Ignore packaging-overriding check on darwin for now
(cherry picked from commit 03efba30da)
2025-02-19 01:33:20 +01:00
Robert Hensing
cc3fb61249 packaging: Add source overriding "methods"
(cherry picked from commit 48fb6fdde9)
2025-02-19 01:33:20 +01:00
Robert Hensing
44fb647986 packaging: Add overrideAllMesonComponents
(cherry picked from commit f31d86284f)
2025-02-19 01:32:53 +01:00
Robert Hensing
540e8cb908 packaging: Move layers from dependencies to components
This makes it easier to implement batch overriding for the components.

(cherry picked from commit cca01407a7)
2025-02-19 01:32:40 +01:00
mergify[bot]
8a2bb811ac
Merge pull request #12506 from NixOS/mergify/bp/2.26-maintenance/pr-12498
Restore detailed Nix CLI version (backport #12498)
2025-02-19 00:29:13 +00:00
Robert Hensing
fd062585ac tests: Fix installTests
(cherry picked from commit 2b5365bcf7)
2025-02-19 01:04:04 +01:00
Robert Hensing
b175e5bb6d Write just ./.version on all components
This way it's easier to get right. See previous commit.

(cherry picked from commit 3556f6bf4c)
2025-02-19 01:04:04 +01:00
Robert Hensing
21998464b7 Restore detailed Nix CLI version
... as intended.

Requirements:
- don't build fresh libraries for each git commit
- have git commit in the CLI

Bug:
- echo ${version} went into the wrong file => use the fact that it's
  a symlink, not just for reading but also for writing.

(cherry picked from commit bba4e6b061)
2025-02-19 01:04:02 +01:00
mergify[bot]
d6a66b366e
Merge pull request #12517 from NixOS/mergify/bp/2.26-maintenance/pr-12484
Support libgit2 1.9.0 (backport #12484)
2025-02-18 23:30:27 +00:00
Robert Hensing
cc3ad9bd3a Support libgit2 1.9.0
For when the overlay is used with nixos-unstable.
1.9.0 has our patches.

(cherry picked from commit b0bbb1252a)
2025-02-18 23:16:12 +00:00
John Ericson
e310c19a1a
Merge pull request #12509 from NixOS/mergify/bp/2.26-maintenance/pr-12499
startDaemon(): Detect if the daemon crashes before creating the socket (backport #12499)
2025-02-18 12:23:20 -05:00
John Ericson
6c15761b0e
Merge pull request #12505 from NixOS/mergify/bp/2.26-maintenance/pr-12497
Don't override default man search paths (backport #12497)
2025-02-18 12:17:08 -05:00
Eelco Dolstra
f02a7b880e startDaemon(): Detect if the daemon crashes before creating the socket
This avoids timeouts like those seen in
3735812034.

(cherry picked from commit 11c42cb2e1)
2025-02-18 16:39:48 +00:00
Sergei Zimmerman
a004c84e85 Don't override default man search paths
By appending a colon to MANPATH NIX_MAN_DIR gets prepended to the
final MANPATH before default search paths.
This makes man still consider default search paths, but prefers
NIX_MAN_DIR (if it exists).

It still makes sense to point NIX_MAN_DIR to a correct location
by moving man pages build from nix-manual.man to nix-cli.man, but
this should fix most common use-cases where nix is installed globally.

(cherry picked from commit 95f16a3275)
2025-02-18 16:32:42 +00:00
Eelco Dolstra
adc0f67130
Merge pull request #12502 from NixOS/mergify/bp/2.26-maintenance/pr-12492
Move code related to NIX_MAN_DIR from libstore to nix-cli (backport #12492)
2025-02-18 15:56:35 +01:00
Sergei Zimmerman
80db87bd4c Move code related to NIX_MAN_DIR from libstore to nix-cli
This is a prerequisite to properly fixing man-pages once and
for all [1]. Note that this patch leaves manpages for legacy
commands in a borked state, pending the movement of manpages from
nix-manual to nix-cli [2].

[1]: https://www.github.com/NixOS/nix/issues/12382
[2]: https://www.github.com/NixOS/nix/issues/12382#issuecomment-2663782043

(cherry picked from commit b1a38b3efe)
2025-02-18 14:37:28 +00:00
John Ericson
a13149e03e
Merge pull request #12486 from NixOS/mergify/bp/2.26-maintenance/pr-12481
resolveLookupPathPath(): Fix caching of negative lookups (backport #12481)
2025-02-17 12:32:58 -05:00
John Ericson
bcbfdc1f28
Merge pull request #12485 from NixOS/mergify/bp/2.26-maintenance/pr-10765
Add `SSHMaster::Connection::trySetBufferSize` (backport #10765)
2025-02-17 12:28:47 -05:00
Eelco Dolstra
640ce50da1 resolveLookupPathPath(): Fix caching of negative lookups
This avoids spamming in case the missing search path entry does not
exist (#12480).

(cherry picked from commit df08e1e204)
2025-02-17 17:03:40 +00:00
Eelco Dolstra
7d168db83c getDefaultNixPath(): Don't add symlinks if the target doesn't exist
(cherry picked from commit 8ac49ea5de)
2025-02-17 17:03:40 +00:00
John Ericson
fa7f0d6d07 Allow setting ssh:// pipe size
Exposed for Hydra. We could make it fancier but with (a) new store
settings (b) switch to `ssh-ng://` both in the works, it doesn't seem
worth it.

(cherry picked from commit 94a7c34b2f)
2025-02-17 16:56:35 +00:00
John Ericson
7112f8294c Add SSHMaster::Connection::trySetBufferSize
It is unused in Nix currently, but will be used in Hydra. This reflects
what Hydra does in https://github.com/NixOS/hydra/pull/1387.

We may probably to use it more widely for better SSH store performance,
but this needs to be subject to more testing before we do that.

(cherry picked from commit 0d25cc6541)
2025-02-17 16:56:35 +00:00
John Ericson
674a87462c
Merge pull request #12478 from NixOS/mergify/bp/2.26-maintenance/pr-10748
Expose a bunch of things in the Legacy SSH Store for Hydra (backport #10748)
2025-02-16 17:56:54 -05:00
John Ericson
86ccad698e Expose a bunch of things in the Legacy SSH Store for Hydra
(cherry picked from commit 5eade48252)
2025-02-16 22:38:53 +00:00
Eelco Dolstra
970942f458 Bump version 2025-02-12 21:50:20 +01:00
mergify[bot]
b3e9204833
Merge pull request #12459 from NixOS/mergify/bp/2.26-maintenance/pr-12458
lockFlake(): When refetching a locked flake, use the locked ref (backport #12458)
2025-02-12 16:09:58 +00:00
Eelco Dolstra
0ff190107f
Resolve merge conflict 2025-02-12 16:54:48 +01:00
Eelco Dolstra
dffcc184d7 lockFlake(): When refetching a locked flake, use the locked ref
Otherwise we may accidentally update a lock when we shouldn't.

Fixes #12445.

(cherry picked from commit 5c552b62fc)

# Conflicts:
#	src/libflake/flake/flake.cc
2025-02-12 15:46:52 +00:00
Eelco Dolstra
49f226e87b
Merge pull request #12457 from NixOS/mergify/bp/2.26-maintenance/pr-12450
packaging/components.nix: Don't import a symlink (backport #12450)
2025-02-12 12:56:51 +01:00
Eelco Dolstra
d308228497 Don't import a symlink
This is a workaround to avoid differing evaluation results between Nix
2.19 and >= 2.20 (#12449).

(cherry picked from commit 2e20a5f822)
2025-02-12 11:42:49 +00:00
Eelco Dolstra
dfbd030d3f
Merge pull request #12453 from NixOS/mergify/bp/2.26-maintenance/pr-12448
copyPathToStore(): Preserve symlinks (backport #12448)
2025-02-11 23:16:31 +01:00
Eelco Dolstra
83306bb841 copyPathToStore(): Preserve symlinks
E.g. in a derivation attribute `foo = ./bar`, if ./bar is a symlink,
we should copy the symlink to the store, not its target. This restores
the behaviour of Nix <= 2.19.

(cherry picked from commit 26b87e78b5)
2025-02-11 21:51:39 +00:00
mergify[bot]
4c3786dd40
Merge pull request #12436 from NixOS/mergify/bp/2.26-maintenance/pr-12373
pre-commit/check-merge-conflicts-2: fix use outside dev shell (backport #12373)
2025-02-10 15:15:29 +00:00
Robert Hensing
0531f1299c Resolve conflict 2025-02-10 16:01:13 +01:00
Robert Hensing
df8d5e61ad test: Fix shellcheck by giving git-hashing scripts shebangs
This seems to be the way to do it now, even though I can't run them
without setting at least one env var.
I'll only fix shellcheck for now. Don't shoot the messenger.

It isn't quite clear to me why the previous commit masked this problem,
but I'm glad shellcheck has an effect or more effect now.
2025-02-10 15:14:53 +01:00
Robert Hensing
30435e0559 pre-commit/check-merge-conflicts-2: fix use outside dev shell
Note that this is just a script that is meant to run outside a
derivation (but also can be called by a derivation builder).
`touch $out` does not belong in it.

`touch $out` worked accidentally in the derivation-based check,
and also in the dev shell, but if pre-commit is invoked without
the dev shell it would fail.
2025-02-10 15:14:44 +01:00
Eelco Dolstra
31bdb2a8ff
Merge pull request #12429 from NixOS/mergify/bp/2.26-maintenance/pr-12386
Git fetcher: Don't create refs when fetching by revision (backport #12386)
2025-02-06 15:24:14 +01:00
Eelco Dolstra
8e4cd2f537 readHead(): Make sure we're returning the HEAD ref line
If we previously fetched by revision, the output of "git ls-remote"
won't start with the expected line like

  ref: refs/heads/master HEAD

but will be something like

  5c4410e3b9891c05ab40d723de78c6f0be45ad30        refs/heads/5c4410e3b9891c05ab40d723de78c6f0be45ad30

This then causes Nix to treat that revision as a refname, which then
leads to warnings like

  warning: could not update cached head '5c4410e3b9891c05ab40d723de78c6f0be45ad30' for 'file:///tmp/repo'

(cherry picked from commit c8b22643ba)
2025-02-06 14:05:03 +00:00