1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-27 08:31:16 +02:00
Commit graph

12190 commits

Author SHA1 Message Date
mergify[bot]
b842103307
Merge pull request #12376 from DeterminateSystems/fetch-using-nar-hash
Allow fetching using NAR hash without --allow-dirty-locks
2025-02-02 02:10:35 +00:00
mergify[bot]
d5c00cfab1
Merge pull request #12387 from nix-windows/big-objs
Add mbig-obj flag to allow cross-compiling libexpr to mingw32
2025-02-02 01:32:15 +00:00
Steve Walker
453e8dc067 Fix flakes follow symlinks
Co-authored-by: Jan Christoph Bischko <jbischko@barracuda.com>
2025-02-02 08:30:04 +07:00
John Ericson
d949c8de7c
Merge pull request #12249 from nix-windows/stack-size
Remove broken stack size logic from Windows
2025-01-31 22:57:01 -05:00
Eelco Dolstra
9e240ecced Remove isConsideredLocked() 2025-01-31 17:03:27 +01:00
Eelco Dolstra
4113fdf2f0 Allow use of lock files with unlocked entries as long as they have a NAR hash
Fixes #12364.
2025-01-31 17:03:27 +01:00
Eelco Dolstra
5dec1dc086 fetchGit/fetchTree: Allow fetching using only a NAR hash
Fixes #12027.
2025-01-31 17:03:27 +01:00
Eelco Dolstra
5f6658b9c9 fetchTree: Distinguish between fetchGit and fetchTree consistently 2025-01-31 15:10:29 +01:00
Brian McKenna
26539a087f Add mbig-obj flag to allow cross-compiling libexpr to mingw32 2025-01-31 22:53:42 +11:00
Brian McKenna
7c8c71f8e9 Totally exclude nix::setStackSize on Windows 2025-01-31 21:11:45 +11:00
Eelco Dolstra
c8b22643ba 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'
2025-01-30 19:03:34 +01:00
Eelco Dolstra
ee9fa0d360 Git fetcher: Don't use refspec <rev>:<rev>
This causes Git to create a local ref named refs/head/<rev>, e.g.

  $ git -C ~/.cache/nix/gitv3/11irpim06vj4h6c0w8yls6kx4hvl0qd0gr1fvk47n76g6wf1s1vk ls-remote --symref .
  5c4410e3b9891c05ab40d723de78c6f0be45ad30        refs/heads/5c4410e3b9891c05ab40d723de78c6f0be45ad30
  7f6bde8a20de4cccc2256f088bc5af9dbe38881d        refs/heads/7f6bde8a20de4cccc2256f088bc5af9dbe38881d

which confuses readHead(), leading to errors like

  fatal: Refusing to point HEAD outside of refs/
  warning: could not update cached head 'd275d93aa0bb8a004939b2f1e87f559f989453be' for 'file:///tmp/repo'
2025-01-30 19:03:34 +01:00
Eelco Dolstra
9f72d5bce9 Git fetcher: Don't pass URL query parameters for file:// URLs
Git interprets them as part of the file name, so passing parameters
like 'rev' breaks. Only relevant for testing (when _NIX_FORCE_HTTP is
set) and local bare repos.
2025-01-30 19:03:34 +01:00
Eelco Dolstra
3032512425 GitExportIgnoreSourceAccessor: Don't show «unknown»
In general we should set the path display prefix on the inner
accessor, so we now pass the display prefix to getAccessor().
2025-01-30 12:41:02 +01:00
Eelco Dolstra
102d90ebf0 Fix duplicate setPathDisplay()
Fixes messages like 'copying /tmp/repo/tmp/repo to the store'. The
PosixSourceAccessor already sets the prefix. Setting the prefix twice
shouldn't be a problem, but GitRepoImpl::getAccessor() returns a
wrapped accessor so it's not actually idempotent.
2025-01-30 11:27:24 +01:00
Robert Hensing
fbe2940a08
Merge pull request #12363 from roberth/issue-12161
Issue #12161, add `meta.mainProgram`
2025-01-28 09:15:14 +01:00
Eelco Dolstra
8d744957a6
Merge pull request #12362 from roberth/refactor-realiseString
refactor: Extract EvalState::realiseString
2025-01-27 16:49:58 +01:00
Leandro Reina
6a3b4afc0a Merge remote-tracking branch 'upstream/master' into lfs 2025-01-27 14:44:41 +01:00
Eelco Dolstra
6a2198dfad
Merge pull request #12251 from nix-windows/local-store/fix-infinite-loop
local-store: fix infinite loop on Windows
2025-01-27 14:38:57 +01:00
Robert Hensing
850329dea5 packages.nix-cli: Add meta.mainProgram 2025-01-27 14:27:14 +01:00
Robert Hensing
7465fbe926 refactor: Extract EvalState::realiseString 2025-01-27 12:32:46 +01:00
Ben Millwood
4e5d1b281e Improve "illegal path references in fixed output derivation" error
The main improvement is that the new message gives an example of a path
that is referenced, which should make it easier to track down. While
there, I also clarified the wording, saying exactly why the paths in
question were illegal.
2025-01-25 20:10:43 +02:00
Robert Hensing
96e550efc5 Format .nix files
... with nixfmt (rfc style)
2025-01-24 17:04:02 +01:00
Eelco Dolstra
00d9e7e1f4 EvalState::resolveLookupPathPath(): Call resolveSymlinks() before pathExists()
Fixes #12339.
2025-01-24 12:15:07 +01:00
Robert Hensing
10c8d7988d
Merge pull request #12336 from NaN-git/fix-progress
libstore: Fix progress bars
2025-01-24 12:08:50 +01:00
Eelco Dolstra
7dfff58292 Rename InputPath -> InputAttrPath
Fixes #12098.
2025-01-23 16:34:35 +01:00
Eelco Dolstra
9060d0fe46 Fix missing format argument 2025-01-23 16:21:30 +01:00
Aiden Fox Ivey
fed3a2ce0b
Add Rosetta 2 install message 2025-01-22 23:29:39 -05:00
Philipp Otterbein
be97dc1efc libstore: fix progress bars 2025-01-23 02:18:27 +01:00
Philipp Otterbein
4f8f12f79a sinkToSource: avoid heap allocation 2025-01-23 00:57:32 +01:00
John Ericson
7f7ca3810b Fix #12295
We were simply passing in the wrong path. This went uncaught because the
TODO about deduplication hasn't happened yet.
2025-01-22 16:53:05 -05:00
Eelco Dolstra
41983dba8f GitRepo::fetch(): Ignore $GIT_DIR
Fixes #12325.
2025-01-22 17:54:19 +01:00
Eelco Dolstra
bd10b859f7 GitRepo::fetch(): Cleanup 2025-01-22 17:42:52 +01:00
Leandro Reina
23c5219f81 (Part of the) code review 2025-01-21 14:40:27 +01:00
Leandro Reina
40a3007b7c Merge remote-tracking branch 'upstream/master' into lfs 2025-01-21 14:16:42 +01:00
Eelco Dolstra
f358ab2b0c
Merge pull request #12317 from kusold/patch-1
Add unit of measurement for download-buffer-size
2025-01-20 23:42:59 +01:00
Mike Kusold
f0c209fb14
Use standardize units for megabytes
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2025-01-20 11:32:47 -07:00
Mike Kusold
6b987206ce
Add unit of measurement for download-buffer-size
I started getting these warnings `warning: download buffer is full; consider increasing the 'download-buffer-size' setting` but the documentation does not make it obvious what unit of measurement it accepts.
2025-01-20 11:04:53 -07: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
Eelco Dolstra
f12ef308f6
Merge pull request #12303 from NixOS/fix-mingw-2
More mingw build fixes
2025-01-20 17:38:48 +01:00
Eelco Dolstra
8e05ddfd84 Use fs::symlink_exists 2025-01-20 16:48:20 +01:00
Robert Hensing
dccabc8f84
Merge pull request #12294 from DeterminateSystems/fix-thread-pool-error
processGraph(): Don't throw ThreadPoolShutDown if there is an exception
2025-01-20 16:23:32 +01:00
Eelco Dolstra
2cb494f561 nix upgrade-nix: Fix build on mingw 2025-01-20 16:06:55 +01:00
Eelco Dolstra
89e5047e12 Fix libflake build on mingw 2025-01-20 15:50:04 +01:00
Eelco Dolstra
a78f55ef97 GitInputScheme: Fix mingw build
Mingw apparently is less smart about coercing std::filesystem::path into strings.
2025-01-20 15:39:14 +01:00
Eelco Dolstra
263a818bee
Merge pull request #12296 from DeterminateSystems/release-source-early
addMultipleToStore(): Move pathsToCopy
2025-01-20 15:16:59 +01:00
Eelco Dolstra
2669e4ac4f
Add comment
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2025-01-20 14:57:56 +01:00
Eelco Dolstra
c656725a15 mingw: Check for S_ISSOCK 2025-01-20 14:52:23 +01:00
Eelco Dolstra
cc838e8181 addMultipleToStore(): Move pathsToCopy
This allows RemoteStore::addMultipleToStore() to free the Source
objects early (and in particular the associated sinkToSource()
buffers). This should fix #7359. For example, memory consumption of

  nix copy --derivation --to ssh-ng://localhost?remote-store=/tmp/nix --derivation --no-check-sigs \
    /nix/store/4p9xmfgnvclqpii8pxqcwcvl9bxqy2xf-nixos-system-...drv

went from 353 MB to 74 MB.
2025-01-20 14:23:02 +01:00
Eelco Dolstra
a8c69cc907 processGraph(): Don't throw ThreadPoolShutDown if there is an exception
Fixes

  $ nix copy --derivation --to /tmp/nix /nix/store/...
  error: cannot enqueue a work item while the thread pool is shutting down

The ThreadPoolShutDown exception was hiding the reason for the thread
pool shut down, e.g.

  error: cannot add path '/nix/store/03sl46khd8gmjpsad7223m32ma965vy9-fix-static.patch' because it lacks a signature by a trusted key
2025-01-20 13:25:31 +01:00