-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
Describe the bug
I am a new Nix user. After discovering that files that are untracked by git are not included in Nix flakes, I found a suggested workaround to use a path: input: https://hackmd.io/@nix-ux/Hkvf16Xw5?print-pdf#/
Unfortunately, neither of these result in the untracked file(s) being included:
inputs = {
local-src = "path:";
};inputs = {
local-src = {
url = "path:";
flake = false;
};
};However, if I use --override-input local-src "path:" it does work (even though as far as I can tell I am overriding the value with the exact same value).
Without override (untracked files are not included):
> nix build .#buildApp
error: builder for '/nix/store/qlc9344v6qm1cz7gnimxly73csvbzqn0-foo.drv' failed with exit code 1;
last 17 log lines:
# ... edited for brevity ...
> Running phase: installPhase
> No ignore.txt
With override (untracked files are included):
> nix build .#buildApp --override-input local-src "path:"
• Updated input 'local-src':
'path:?lastModified=0&narHash=sha256-V416LmrnNZ55aFRBeYrKsdW%2BCJmkEmPnS5W6pa1q0rs%3D' (1970-01-01)
→ 'path:?lastModified=1732159360&narHash=sha256-jNUXrWnLZid%2BPehmOvk8/pDM%2BaIG1AUPugxO3%2BUv4PQ%3D' (2024-11-21)
Steps To Reproduce
I have created a minimal reproduction repo here: https://github.com/cecchi/nix-path-input-bug-repro
Expected behavior
- There should be a clear and documented way to include files that are not tracked by git (Add option to include untracked files in git and mercurial fetchers #9352)
- The
--override-inputargument should not change the behavior when setting the same value
nix-env --version output
nix-env (Nix) 2.25.0
Priorities
Add 👍 to issues you find important.