| 6 Aug 2025 |
cleverca22 | infact, if i just rm -rf ~/.cache/nix/ i can get the above command to produce a different narhash&path! | 03:06:38 |
dramforever | omg i think i get it | 03:55:06 |
dramforever | nix assumed that the tarball generated from a git hash is reproducible | 03:55:29 |
dramforever | however it's not, if you generate a tarball from git+file submodules become nothing, if you grab a tarball from github submodules become empty directories | 03:55:54 |
cleverca22 | but its more crazy then that if you clone the repo, and nix build .# it fails if you edit any file, even a comment, it works if you check out anything that isnt HEAD it works if you try to bisect, every commit works except HEAD | 04:01:43 |
dramforever | try grabbing commits other than HEAD from github | 04:02:11 |
dramforever | they share the same cache afaict | 04:02:20 |
cleverca22 | nix build github:grumpycoders/pcsx-redux/1b0cbe5e4a535def2e3e3279551e6665cdc102ae will sometimes work and sometimes fail | 04:02:38 |
cleverca22 | depends on what the fetch cache happens to contain | 04:02:47 |
cleverca22 | ive yet to find a reliable way to trigger both cases | 04:03:01 |
dramforever | so according to my theory, all starting from empty fetch cache | 04:03:09 |
dramforever | if you get it from github first, it breaks | 04:03:19 |
dramforever | if you get it from git+file first it works | 04:03:26 |
cleverca22 | your right! | 04:03:55 |
cleverca22 | the secondary problem, is that the bash script within the repo, isnt liking this | 04:06:30 |
cleverca22 | cp -ru --no-preserve=all /nix/store/wpk39xy9ybc888cihcf6kiwswnvj1yp5-source source/third_party/imgui | 04:06:55 |
dramforever | just don't use github: for this for now is what i would say | 04:07:03 |
dramforever | as a workaround | 04:07:10 |
cleverca22 | if you first fetched via github, source/third_party/imgui will exist so it then copies the source to source/third_party/imgui/wpk39xy9ybc888cihcf6kiwswnvj1yp5-source | 04:07:18 |
cleverca22 | but if you first fetched via a git clone, it wont exist, so it renames as it copies to source/third_party/imgui | 04:07:37 |
cleverca22 | then everything falls apart, because the submodules are at the wrong place | 04:08:20 |
cleverca22 | nix build https://github.com/grumpycoders/pcsx-redux/archive/1b0cbe5e4a535def2e3e3279551e6665cdc102ae.tar.gz seems to work, and it will likely work as a flake input as well... | 04:09:44 |