Compare commits

..

4 commits

Author SHA1 Message Date
05a7477a8e
fix(lix): Drop fetchGit-locked patch as it is included upstream
Some checks failed
Build all the nodes / ap01 (pull_request) Successful in 1m2s
Build all the nodes / netcore01 (pull_request) Successful in 33s
Build all the nodes / netcore02 (pull_request) Successful in 43s
Build the shell / build-shell (pull_request) Successful in 40s
Build all the nodes / build01 (pull_request) Failing after 3m11s
Build all the nodes / bridge01 (pull_request) Successful in 4m59s
Build all the nodes / cof02 (pull_request) Successful in 4m57s
Build all the nodes / vault01 (pull_request) Successful in 4m5s
Build all the nodes / web02 (pull_request) Successful in 4m11s
Build all the nodes / hypervisor03 (pull_request) Successful in 4m52s
Build all the nodes / hypervisor01 (pull_request) Successful in 4m59s
Build all the nodes / rescue01 (pull_request) Successful in 4m29s
Build all the nodes / geo02 (pull_request) Successful in 5m1s
Build all the nodes / geo01 (pull_request) Successful in 5m8s
Build all the nodes / compute01 (pull_request) Successful in 5m11s
Build all the nodes / hypervisor02 (pull_request) Successful in 4m59s
Build all the nodes / web03 (pull_request) Successful in 4m10s
Build all the nodes / web01 (pull_request) Successful in 4m17s
Check workflows / check_workflows (pull_request) Successful in 26s
Build all the nodes / tower01 (pull_request) Successful in 4m18s
Check meta / check_meta (pull_request) Successful in 28s
Build all the nodes / storage01 (pull_request) Successful in 4m22s
Build all the nodes / zulip01 (pull_request) Successful in 4m10s
Build all the nodes / iso (pull_request) Successful in 4m44s
Build all the nodes / Jaccess01 (pull_request) Successful in 35s
Build all the nodes / lab-router01 (pull_request) Successful in 4m41s
Run pre-commit on all files / pre-commit (push) Successful in 40s
Build all the nodes / Jaccess04 (pull_request) Successful in 32s
Build all the nodes / krz01 (pull_request) Successful in 4m45s
Run pre-commit on all files / pre-commit (pull_request) Successful in 44s
2025-06-12 15:55:42 +02:00
DGNum [bot]
07a3435f90
lon: update lix
d169c092fc28838a253be136d17fe7de1292c728
→ ee0655240270480d7f6063dcf12ec47f04d2ded6

Last 50 commits:
  ee06552 libstore: asyncify RemoteStore::Connection::processStderr
  7a10df6 libstore: asyncify RemoteStore connection setup
  cc04a43 libstore: remove flushing from processStderr
  8b3fdbc libstore: add framed data support to sendCommand
  1a22475 libstore: encapsulate reading simple command results
  2128a2d libstore: encapsulate sending of simple commands
  ec374bc libstore: deserialize findRoots data as vector-of-tuples
  ab8f4ae libstore: add CommonProto code for bool/unsigned/uint64_t
  87fbc15 libutil: make the pool element factory a promise
  56847dc libutil: make Buffered{Sink,Source} io buffer shareable
  7d681a5 libutil: add io buffer abstraction
  cc56070 libstore: have SSH use a socketpair, not two pipes
  9c4fd3d libstore: remove unused RemoteStore::Connection::closeWrite
  bea24c8 libutil/cgroup: destroy state record at destroy time
  7bd8271 libstore/platform/linux: destroy cgroup before we release user locks
  797c6d4 libutil/file-system: make `AutoDelete` not copyable and movable
  9f9fced libstore/build/worker: clean up cgroup error messages typos
  a527bb2 libstore/build: cgroup delegation to sandbox
  1783d5b libstore/build: drop cgroups experimental feature
  21dbd77 libstore/binary-cache-store: skip NAR listings if it's not possible to serialize it
  1e71df3 doc/manual/rl-next: mention symbol value reuse
  ebc8f56 libexpr/primops: pass the underlying `Value` of symbols if possible
  5e98a21 libexpr/symbol-table: introduce `InternedSymbol`
  364e94f libexpr/value: do not depend on `Symbol`
  95ea358 libexpr/print: drop redundant constructor in emplace_back call
  ac3b742 libexpr/symbol-table: remove unused field from `SymbolTable::symbols`
  5db71cf libutil: `add` should emplace inside a `ChunkedVector`
  d8b1bb5 build: fix Meson warning about lix-clang-tidy not having meson_version
  b70bbbe misc/pre-commit: add automatic `clang-format` of changed lines
  c19a0fe devshell: add `git-clang-format`
  004a505 tests/functional2/nix: fix config serialization
  0625e69 tests/functional2: fix bad error message when merging files
  afa5b92 tests/functional2: improve type checking util
  60830ca libstore: add derivation wire generator
  4ebf79b libstore: associate wire connection states with stores
  ce9acd5 libstore: use proper connection handle for narFromPath
  2cd44d2 libstore: don't wrap&unwrap connection handles
  b33669b libutil: remove withFramedSink
  c135710 libstore: send worker options packet as one blob
  cf93814 libutil: remove unused FdSource::read
  8c30a16 libutil: remove long-dead create_coro_gc_hook
  dd31a23 libstore: add worker serializer for SubstitutablePathInfo
  fca0a30 libstore: remove pre-2.18 protocols
  019b17f tests/functional2/lang: Migrate trivial `eval-okay` tests
  9673c64 tests/functional2/lang: Migrate trivial `parse-okay` tests
  0219434 tests/functional2/lang: Migrate trivial `parse-fail` tests
  63edb9c tests/functional2/lang: Migrate trivial `eval-fail` tests
  a7e5ff0 tests/functional2: Make symlink handling less confusing
  e753fcb gc: delay throwing error until cleanup is complete
  530b40a tests/functional2: fix overly broad xfail test passing
2025-06-12 15:55:42 +02:00
DGNum [bot]
ff1920acf6 lon: update nixos-24.05
All checks were successful
Build all the nodes / web01 (pull_request) Successful in 1m23s
Build all the nodes / zulip01 (pull_request) Successful in 1m19s
Build all the nodes / storage01 (pull_request) Successful in 1m47s
Build all the nodes / Jaccess04 (push) Successful in 25s
Build all the nodes / netcore01 (push) Successful in 31s
Build all the nodes / Jaccess01 (push) Successful in 34s
Build all the nodes / netcore02 (push) Successful in 32s
Run pre-commit on all files / pre-commit (push) Successful in 43s
Build the shell / build-shell (push) Successful in 36s
Build all the nodes / ap01 (push) Successful in 52s
Build all the nodes / geo01 (push) Successful in 57s
Build all the nodes / bridge01 (push) Successful in 1m10s
Build all the nodes / cof02 (push) Successful in 1m11s
Build all the nodes / hypervisor02 (push) Successful in 1m12s
Build all the nodes / hypervisor01 (push) Successful in 1m15s
Build all the nodes / lab-router01 (push) Successful in 1m21s
Build all the nodes / hypervisor03 (push) Successful in 1m22s
Build all the nodes / web02 (push) Successful in 1m26s
Build all the nodes / geo02 (push) Successful in 1m34s
Build all the nodes / build01 (push) Successful in 1m36s
Build all the nodes / tower01 (push) Successful in 1m36s
Build all the nodes / iso (push) Successful in 1m42s
Build all the nodes / vault01 (push) Successful in 1m41s
Build all the nodes / web03 (push) Successful in 1m41s
Build all the nodes / zulip01 (push) Successful in 1m30s
Build all the nodes / compute01 (push) Successful in 1m47s
Build all the nodes / rescue01 (push) Successful in 1m47s
Build all the nodes / web01 (push) Successful in 1m50s
Build all the nodes / krz01 (push) Successful in 1m58s
Build all the nodes / storage01 (push) Successful in 2m49s
b134951a4c9f
→ b134951a4c9f3c995fd7be05f3243f8ecd65d798

Last 0 commits:
2025-06-12 15:53:25 +02:00
DGNum [bot]
3962ada269 lon: update nix-modules
All checks were successful
Build all the nodes / rescue01 (pull_request) Successful in 1m41s
Build all the nodes / web01 (pull_request) Successful in 1m43s
Build all the nodes / storage01 (pull_request) Successful in 2m31s
Build all the nodes / Jaccess04 (push) Successful in 25s
Build all the nodes / Jaccess01 (push) Successful in 29s
Build all the nodes / netcore02 (push) Successful in 27s
Build all the nodes / netcore01 (push) Successful in 30s
Run pre-commit on all files / pre-commit (push) Successful in 34s
Build all the nodes / ap01 (push) Successful in 51s
Build all the nodes / geo02 (push) Successful in 57s
Build the shell / build-shell (push) Successful in 35s
Build all the nodes / hypervisor02 (push) Successful in 1m9s
Build all the nodes / hypervisor03 (push) Successful in 1m16s
Build all the nodes / bridge01 (push) Successful in 1m32s
Build all the nodes / build01 (push) Successful in 1m32s
Build all the nodes / geo01 (push) Successful in 1m33s
Build all the nodes / cof02 (push) Successful in 1m33s
Build all the nodes / hypervisor01 (push) Successful in 1m33s
Build all the nodes / lab-router01 (push) Successful in 1m32s
Build all the nodes / tower01 (push) Successful in 1m33s
Build all the nodes / compute01 (push) Successful in 1m41s
Build all the nodes / vault01 (push) Successful in 1m39s
Build all the nodes / iso (push) Successful in 1m43s
Build all the nodes / zulip01 (push) Successful in 1m20s
Build all the nodes / rescue01 (push) Successful in 1m56s
Build all the nodes / web01 (push) Successful in 1m58s
Build all the nodes / web02 (push) Successful in 1m36s
Build all the nodes / web03 (push) Successful in 1m34s
Build all the nodes / krz01 (push) Successful in 2m8s
Build all the nodes / storage01 (push) Successful in 2m11s
0cdf222c07b9cbd49857ae046fb41ae9f651cc3f
→ 44ccf96bd73c1bbbbcc849cb0f2e0d1f5f75f934

Last 3 commits:
  44ccf96 feat(ntfy-sh): allow to manage hashed password directly
  5612e8f chore: Remove substituteAll usage
  1c4a60c fix(ntfy-sh): Write correct nix
2025-06-12 12:58:26 +00:00
3 changed files with 5 additions and 92 deletions

10
lon.lock generated
View file

@ -195,10 +195,10 @@
"type": "Git",
"fetchType": "git",
"branch": "dgnum",
"revision": "0cdf222c07b9cbd49857ae046fb41ae9f651cc3f",
"revision": "44ccf96bd73c1bbbbcc849cb0f2e0d1f5f75f934",
"url": "https://git.hubrecht.ovh/hubrecht/nix-modules",
"hash": "sha256-VHlkJny+t1AhZ61JOeyYM1rLa4cPEoEt/5+vqAqAJgA=",
"lastModified": 1746016692,
"hash": "sha256-mkrCWowrCje3/TuAG0eAJplrtlz1hYmusSFn93/Ccok=",
"lastModified": 1749629064,
"submodules": false
},
"nix-pkgs": {
@ -227,8 +227,8 @@
"owner": "NixOS",
"repo": "nixpkgs",
"branch": "nixos-24.05",
"revision": "b134951a4c9f",
"url": "https://github.com/NixOS/nixpkgs/archive/b134951a4c9f.tar.gz",
"revision": "b134951a4c9f3c995fd7be05f3243f8ecd65d798",
"url": "https://github.com/NixOS/nixpkgs/archive/b134951a4c9f3c995fd7be05f3243f8ecd65d798.tar.gz",
"hash": "sha256-OnSAY7XDSx7CtDoqNh8jwVwh4xNL/2HaJxGjryLWzX8="
},
"nixos-24.11": {

View file

@ -18,7 +18,6 @@ with {
lix = [
(local ./lix/01-disable-installChecks.patch)
(local ./lix/02-fetchGit-locked.patch)
];
lon = [

View file

@ -1,86 +0,0 @@
diff --git i/lix/libexpr/primops/fetchTree.cc w/lix/libexpr/primops/fetchTree.cc
index 93b08ecc9..6d04ce24b 100644
--- i/lix/libexpr/primops/fetchTree.cc
+++ w/lix/libexpr/primops/fetchTree.cc
@@ -168,6 +168,11 @@ static void fetchTree(
"attribute 'name' isnt supported in call to 'fetchTree'"
).atPos(pos).debugThrow();
+ // HACK: When using `fetchGit`, locking with only the hash should happen
+ // as we don't care about flake hallucinations about `lastModified`
+ if (type == "git" && attrs.contains("narHash"))
+ attrs["type"] = "git-locked";
+
input = fetchers::Input::fromAttrs(std::move(attrs));
} else {
auto url = state.coerceToString(pos, *args[0], context,
diff --git i/lix/libfetchers/builtin-fetchers.hh w/lix/libfetchers/builtin-fetchers.hh
index d3be7f7f2..d1389b8ba 100644
--- i/lix/libfetchers/builtin-fetchers.hh
+++ w/lix/libfetchers/builtin-fetchers.hh
@@ -10,6 +10,7 @@ std::unique_ptr<InputScheme> makePathInputScheme();
std::unique_ptr<InputScheme> makeFileInputScheme();
std::unique_ptr<InputScheme> makeTarballInputScheme();
std::unique_ptr<InputScheme> makeGitInputScheme();
+std::unique_ptr<InputScheme> makeGitLockedInputScheme();
std::unique_ptr<InputScheme> makeMercurialInputScheme();
std::unique_ptr<InputScheme> makeGitHubInputScheme();
std::unique_ptr<InputScheme> makeGitLabInputScheme();
diff --git i/lix/libfetchers/fetchers.cc w/lix/libfetchers/fetchers.cc
index 0dc9f5e0c..91cd9332d 100644
--- i/lix/libfetchers/fetchers.cc
+++ w/lix/libfetchers/fetchers.cc
@@ -22,6 +22,7 @@ void initLibFetchers()
registerInputScheme(makeTarballInputScheme());
registerInputScheme(makeFileInputScheme());
registerInputScheme(makeGitInputScheme());
+ registerInputScheme(makeGitLockedInputScheme());
registerInputScheme(makeMercurialInputScheme());
registerInputScheme(makeGitHubInputScheme());
registerInputScheme(makeGitLabInputScheme());
diff --git i/lix/libfetchers/git.cc w/lix/libfetchers/git.cc
index 21fa1904d..f9573eacd 100644
--- i/lix/libfetchers/git.cc
+++ w/lix/libfetchers/git.cc
@@ -812,4 +812,40 @@ std::unique_ptr<InputScheme> makeGitInputScheme()
return std::make_unique<GitInputScheme>();
}
+struct GitLockedInputScheme : GitInputScheme {
+
+ std::optional<Input> inputFromAttrs(const Attrs & attrs) const override
+ {
+ if (maybeGetStrAttr(attrs, "type") != "git-locked") return {};
+
+ for (auto & [name, value] : attrs)
+ if (name != "type" && name != "url" && name != "ref" && name != "rev" && name != "shallow" && name != "submodules" && name != "lastModified" && name != "revCount" && name != "narHash" && name != "allRefs" && name != "name" && name != "dirtyRev" && name != "dirtyShortRev")
+ throw Error("unsupported Git input attribute '%s'", name);
+
+ parseURL(getStrAttr(attrs, "url"));
+ maybeGetBoolAttr(attrs, "shallow");
+ maybeGetBoolAttr(attrs, "submodules");
+ maybeGetBoolAttr(attrs, "allRefs");
+
+ if (auto ref = maybeGetStrAttr(attrs, "ref")) {
+ if (std::regex_search(*ref, badGitRefRegex))
+ throw BadURL("invalid Git branch/tag name '%s'", *ref);
+ }
+
+ Input input;
+ input.attrs = attrs;
+ return input;
+ }
+
+ bool hasAllInfo(const Input & input) const override {
+ return true;
+ }
+
+};
+
+std::unique_ptr<InputScheme> makeGitLockedInputScheme()
+{
+ return std::make_unique<GitLockedInputScheme>();
+}
+
}