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
Robert Hensing
96e550efc5
Format .nix files
...
... with nixfmt (rfc style)
2025-01-24 17:04:02 +01:00
Eelco Dolstra
7dfff58292
Rename InputPath -> InputAttrPath
...
Fixes #12098 .
2025-01-23 16:34:35 +01:00
Eelco Dolstra
8e05ddfd84
Use fs::symlink_exists
2025-01-20 16:48:20 +01:00
Eelco Dolstra
89e5047e12
Fix libflake build on mingw
2025-01-20 15:50:04 +01:00
Eelco Dolstra
f5548c17ed
getSourcePath(): Return std::filesystem::path
2025-01-17 13:21:53 +01:00
Eelco Dolstra
f0271090b2
Drop unused 'settings' argument
2025-01-16 23:47:57 +01:00
Eelco Dolstra
5807b5cda0
Trivial changes from lazy-trees
...
Rename allowLookup -> useRegistries, rename lockRootPath ->
followsPrefix, drop an unnecessary getFlake() variant.
2025-01-16 23:44:18 +01:00
Eelco Dolstra
043df13f72
Merge pull request #10089 from edolstra/relative-flakes
...
Improve support for relative path inputs
2025-01-16 14:21:27 +01:00
Eelco Dolstra
550fe889ee
Merge remote-tracking branch 'origin/master' into relative-flakes
2025-01-16 11:05:10 +01:00
John Ericson
0c101679b4
Merge pull request #12261 from NixOS/packaging
...
Packaging cleanups, add RossComputerGuy as `-llvm` maintainer
2025-01-15 17:25:15 -05:00
John Ericson
e02026adae
Merge pull request #12254 from DeterminateSystems/fix-relative-path-on-cli
...
Fix relative 'path:' flakerefs in the CLI
2025-01-15 15:19:56 -05:00
mergify[bot]
c45dfeeef3
Merge pull request #12220 from DeterminateSystems/allow-dirty-locks
...
Add setting 'allow-dirty-locks'
2025-01-15 20:18:28 +00:00
Robert Hensing
7ad02b62e0
refactor: Remove redundant parameters
2025-01-15 20:01:00 +01:00
Robert Hensing
cab347b4eb
refactor: Move ld=gold rule to mesonBuildLayer
2025-01-15 20:01:00 +01:00
Eelco Dolstra
ff9d886f3c
Use isAbsolute()
2025-01-14 17:42:26 +01:00
Eelco Dolstra
ff8e2fe84e
Fix relative 'path:' flakerefs in the CLI
...
And handle relative 'git+file:' flakerefs while we're at it (these
crashed with an assertion failure).
Fixes #12248 .
2025-01-14 17:30:13 +01:00
Eelco Dolstra
cd0127f957
Merge remote-tracking branch 'origin/master' into relative-flakes
2025-01-13 14:13:56 +01:00
Tristan Ross
47cf93ba80
Add LLVM to Flake
2025-01-10 18:08:27 -08:00
Eelco Dolstra
e161393299
Add setting 'allow-dirty-locks'
...
This allows writing lock files with dirty inputs, so long as they have
a NAR hash. (Currently they always have a NAR hash, but with lazy
trees that may not always be the case.)
Generally dirty locks are bad for reproducibility (we can detect if
the dirty input has changed, but we have no way to fetch it except
substitution). Hence we don't allow them by default.
Fixes #11181 .
2025-01-10 17:55:30 +01:00
Eelco Dolstra
83ff523865
parsePathFlakeRefWithFragment(): Handle query params in the non-git case
...
Backported from lazy-trees.
2025-01-09 12:17:09 +01:00
Eelco Dolstra
28caa35a97
parsePathFlakeRefWithFragment(): Handle 'path?query' without a fragment
...
Commands like `nix flake metadata '.?submodules=1'` ignored the query
part of the URL, while `nix build '.?submodules=1#foo'` did work
correctly because of the presence of the fragment part.
2025-01-08 18:38:53 +01:00
Eelco Dolstra
4077aa43a8
ParsedURL: Remove base field
2025-01-07 14:52:00 +01:00
Eelco Dolstra
f705ce7f9a
ParsedURL: Remove url field
...
This prevents a 'url' field that is out of sync with the other
fields. You can use to_string() to get the full URL.
2025-01-07 14:46:03 +01:00
Eelco Dolstra
0792152627
Rename Override -> OverrideTarget
2025-01-07 13:54:19 +01:00
Eelco Dolstra
e8c7dd9971
Rename allowRelative -> preserveRelativePaths
2025-01-07 13:44:08 +01:00
Connor Baker
359a0840e2
packaging: use optimization level 3 and LTO by default
2025-01-01 21:59:37 -08:00
Eelco Dolstra
9223d64ac6
Remove dead code
2024-12-23 16:03:13 +01:00
Eelco Dolstra
8534c4222c
Merge remote-tracking branch 'origin/master' into relative-flakes
2024-12-18 21:09:27 +01:00
Eelco Dolstra
b167e2c415
Work around clang/libc++ issue
2024-12-16 14:58:39 +01:00
Eelco Dolstra
d2e1d4916a
lookupInFlakeCache(): Fix O(n) time lookup
2024-12-16 14:58:39 +01:00
Eelco Dolstra
d1f20e3510
Make FetchedFlake a struct
2024-12-16 14:58:25 +01:00
mergify[bot]
2f32cf6d90
Merge pull request #12068 from Mic92/ignore-local-registries
...
Ignore local registries for lock file generation
2024-12-16 09:22:10 +00:00
mergify[bot]
2baab6412f
Merge pull request #12028 from DeterminateSystems/fail-on-unlocked
...
nix flake lock: Fail if there is an unlocked input
2024-12-16 08:55:40 +00:00
Eelco Dolstra
7ddf7300b5
Ignore local registries for lock file generation
...
When resolving indirect flake references like `nixpkgs` in `flake.nix`
files, Nix will no longer use the system and user flake registries. It
will only use the global flake registry and overrides given on the
command line via `--override-flake`.
2024-12-16 09:43:44 +01:00
Robert Hensing
d0b4db924a
rename: build-utils-meson -> nix-meson-build-support
...
Fix a footgun. In my case, I had a couple of build ("output")
directories sitting around.
rm -rf build-*
Was confused for a bit why a meson.build file was missing.
Probably also helps with autocompletion.
I tried meson-build-support first, but I had to add something like
a nix- prefix, in order to make meson happy. They've reserved the
meson- prefix.
2024-12-09 16:54:42 +01:00
Eelco Dolstra
8b9e0f86e4
nix flake lock: Fail if there is an unlocked input
...
Since the only purpose of `nix flake lock` is to write a new lock
file, it should be a fatal error if we can't write the lock file.
2024-12-09 14:03:12 +01:00
Eelco Dolstra
985b2f9df3
Remove FIXME
2024-11-27 15:23:56 +01:00
Eelco Dolstra
00b99b8bc0
Remove FIXME
2024-11-22 16:23:34 +01:00
Sergei Zimmerman
756758d968
chore: get rid of dead code and unused variables where appropriate
...
Looks like some cruft has been left over from previous refactorings.
This removes dead variables, which should not have side effects in their
constructors. In cases where the variable initialization has a purpose
[[maybe_unused]] is inserted to silence compiler warnings.
2024-11-22 18:05:53 +03:00
Eelco Dolstra
0b00bf7c09
Merge remote-tracking branch 'origin/master' into relative-flakes
2024-11-22 14:44:32 +01:00
Eelco Dolstra
feb46688a2
Merge pull request #11909 from DeterminateSystems/flakeref
...
Clean up flakeref parsing
2024-11-22 13:18:23 +01:00
Eelco Dolstra
ebb19cc1cd
Drop std::make_pair
...
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
2024-11-22 09:14:01 +01:00
Eelco Dolstra
965ca18db8
Merge build-utils-meson/{diagnostics,threads} into build-utils-meson/common
...
This reduces the amount of boilerplate. More importantly, it provides
a place to add compiler flags (such as -O3) without having to add it
to every subproject (and the risk of forgetting to include it).
2024-11-21 20:34:54 +01:00
Eelco Dolstra
850281908c
Clean up flakeref parsing
...
This factors out some commonality in calling fromURL() and handling
the "dir" parameter into a fromParsedURL() helper function.
2024-11-19 16:50:13 +01:00
Eelco Dolstra
a2e4a4c238
callFunction: Use std::span
...
This is a bit safer than having a separate nrArgs argument.
2024-11-12 19:26:39 +01:00
Eelco Dolstra
f29e7867a9
Revert "Merge pull request #11826 from DeterminateSystems/revert-11804"
...
This reverts commit aeffdeffc8 , reversing
changes made to 723fdeb4f1 .
2024-11-11 15:21:34 +01:00
Eelco Dolstra
4dceca51de
Don't allow __final in fetchTree
...
It's now only allowed in fetchFinalTree, which is not exposed to users
but only to call-flake.nix.
2024-11-08 19:27:54 +01:00
Eelco Dolstra
a7a0767df7
Rename final -> __final
2024-10-30 20:54:07 +01:00