From 8dfa3f18d42d852ece3f2d9cf1ae117acccc0b15 Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 13 Nov 2026 21:09:17 +0000 Subject: populate: refer to flakes as git+file: only with a usable .git Writing the lock file of a git+file: flake, Nix runs Git, with the repository's configuration and hooks, which may run commands. A .git in a source's directory can come from anywhere, e.g. one planted in a materialized flake, or one a file source keeps. So drawing inputs refers to a flake as git+file: only if git_problems finds nothing wrong with its .git directory, the way git sources check their work trees, and else as path:. lock-foreign-git plants a .git in a materialized flake and in a file source that keeps it, whose configuration names an fsmonitor command. --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index 3875460..d71c57e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ - `git` sources also refuse work trees whose `.git` directory contains hooks, or in which a submodule's `.git` isn't a file naming a repository in `.git/modules`, unless `reclone` is set. +- Drawing inputs refers to a source in a Git work tree as `git+file:` only + if a `git` source would use its `.git` directory, and else as `path:`. - `git` sources with a branch or tag as `ref` follow it: populate fetches the branch or tag on every run, and resets the work tree to what it fetched. -- cgit v1.3.1