Failed to extract archive / Cannot extract through symlink (Darwin) #975

Closed
opened 2025-08-21 14:01:42 +00:00 by stephank · 2 comments

Describe the bug

# nix run github:NixOS/nixpkgs/master#hello
error:
       … while fetching the input 'github:NixOS/nixpkgs/master'

       error: failed to extract archive (Cannot extract through symlink /tmp/nix-6xlbk8nvp98hgacaxjff3m6csq/NixOS-nixpkgs-bbe943a)

Steps To Reproduce

  1. Maybe clear ~/.cache/nix/
  2. Run above command

Expected behavior

# nix run github:NixOS/nixpkgs/master#hello
Hello, world!

nix --version output

nix (Lix, like Nix) 2.94.0-devpre20250817_8208c6e
System type: aarch64-darwin
Additional system types: x86_64-darwin
Features: gc, signed-caches
System configuration file: /etc/nix/nix.conf
User configuration files: /Users/stephank/.config/nix/nix.conf:/Users/stephank/.nix-profile/etc/xdg/nix/nix.conf:/etc/profiles/per-user/stephank/etc/xdg/nix/nix.conf:/run/current-system/sw/etc/xdg/nix/nix.conf:/nix/var/nix/profiles/default/etc/xdg/nix/nix.conf
Store directory: /nix/store
State directory: /nix/var/nix
Data directory: /usr/local/share

Additional context

Bisect identifies 2a17164865 as the first bad commit.

## Describe the bug ``` # nix run github:NixOS/nixpkgs/master#hello error: … while fetching the input 'github:NixOS/nixpkgs/master' error: failed to extract archive (Cannot extract through symlink /tmp/nix-6xlbk8nvp98hgacaxjff3m6csq/NixOS-nixpkgs-bbe943a) ``` ## Steps To Reproduce 1. Maybe clear `~/.cache/nix/` 2. Run above command ## Expected behavior ``` # nix run github:NixOS/nixpkgs/master#hello Hello, world! ``` ## `nix --version` output ``` nix (Lix, like Nix) 2.94.0-devpre20250817_8208c6e System type: aarch64-darwin Additional system types: x86_64-darwin Features: gc, signed-caches System configuration file: /etc/nix/nix.conf User configuration files: /Users/stephank/.config/nix/nix.conf:/Users/stephank/.nix-profile/etc/xdg/nix/nix.conf:/etc/profiles/per-user/stephank/etc/xdg/nix/nix.conf:/run/current-system/sw/etc/xdg/nix/nix.conf:/nix/var/nix/profiles/default/etc/xdg/nix/nix.conf Store directory: /nix/store State directory: /nix/var/nix Data directory: /usr/local/share ``` ## Additional context Bisect identifies 2a17164865d43e5022009f7f035cd866ee775e50 as the first bad commit.
Member

This issue was mentioned on Gerrit on the following CLs:

  • commit message in cl/4029 ("Revert "tests: remove obsolete code to create custom build direc..."")
  • commit message in cl/4028 ("Revert "libstore: don’t include derivation names in build direct..."")
  • commit message in cl/4035 ("Revert "libstore: simplify makeTemp{,Sibling}Path callers"")
  • commit message in cl/4034 ("Revert "libstore: use makeTemp{,Sibling}Path more"")
  • commit message in cl/4033 ("Revert "libstore: simplify fallback build directory logic"")
  • commit message in cl/4032 ("Revert "libutil: use makeTempPath in createTempSubdir"")
  • commit message in cl/4031 ("Revert "libstore: simplify createTempDir interface"")
  • commit message in cl/4030 ("Revert "libstore: make temporary path prefixes optional"")
  • commit message in cl/4039 ("Revert "libutil: add makeTempSiblingPath helper"")
  • commit message in cl/4038 ("Revert "libstore: use makeTempSiblingPath in replaceValidPath"")
  • commit message in cl/4037 ("Revert "libutil: extract Base32 helpers from Hash"")
  • commit message in cl/4036 ("Revert "libutil: use OS‐provided entropy for temporary filenames"")
<!-- GERRIT_LINKBOT: {"cls": [{"backlink": "https://gerrit.lix.systems/c/lix/+/4029", "number": 4029, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4028", "number": 4028, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4035", "number": 4035, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4034", "number": 4034, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4033", "number": 4033, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4032", "number": 4032, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4031", "number": 4031, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4030", "number": 4030, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4039", "number": 4039, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4038", "number": 4038, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4037", "number": 4037, "kind": "commit message"}, {"backlink": "https://gerrit.lix.systems/c/lix/+/4036", "number": 4036, "kind": "commit message"}], "cl_meta": {"4029": {"change_title": "Revert \"tests: remove obsolete code to create custom build direc...\""}, "4028": {"change_title": "Revert \"libstore: don\u2019t include derivation names in build direct...\""}, "4035": {"change_title": "Revert \"libstore: simplify `makeTemp{,Sibling}Path` callers\""}, "4034": {"change_title": "Revert \"libstore: use `makeTemp{,Sibling}Path` more\""}, "4033": {"change_title": "Revert \"libstore: simplify fallback build directory logic\""}, "4032": {"change_title": "Revert \"libutil: use `makeTempPath` in `createTempSubdir`\""}, "4031": {"change_title": "Revert \"libstore: simplify `createTempDir` interface\""}, "4030": {"change_title": "Revert \"libstore: make temporary path prefixes optional\""}, "4039": {"change_title": "Revert \"libutil: add `makeTempSiblingPath` helper\""}, "4038": {"change_title": "Revert \"libstore: use `makeTempSiblingPath` in `replaceValidPath`\""}, "4037": {"change_title": "Revert \"libutil: extract Base32 helpers from `Hash`\""}, "4036": {"change_title": "Revert \"libutil: use OS\u2010provided entropy for temporary filenames\""}}} --> This issue was mentioned on Gerrit on the following CLs: * commit message in [cl/4029](https://gerrit.lix.systems/c/lix/+/4029) ("Revert "tests: remove obsolete code to create custom build direc..."") * commit message in [cl/4028](https://gerrit.lix.systems/c/lix/+/4028) ("Revert "libstore: don’t include derivation names in build direct..."") * commit message in [cl/4035](https://gerrit.lix.systems/c/lix/+/4035) ("Revert "libstore: simplify `makeTemp{,Sibling}Path` callers"") * commit message in [cl/4034](https://gerrit.lix.systems/c/lix/+/4034) ("Revert "libstore: use `makeTemp{,Sibling}Path` more"") * commit message in [cl/4033](https://gerrit.lix.systems/c/lix/+/4033) ("Revert "libstore: simplify fallback build directory logic"") * commit message in [cl/4032](https://gerrit.lix.systems/c/lix/+/4032) ("Revert "libutil: use `makeTempPath` in `createTempSubdir`"") * commit message in [cl/4031](https://gerrit.lix.systems/c/lix/+/4031) ("Revert "libstore: simplify `createTempDir` interface"") * commit message in [cl/4030](https://gerrit.lix.systems/c/lix/+/4030) ("Revert "libstore: make temporary path prefixes optional"") * commit message in [cl/4039](https://gerrit.lix.systems/c/lix/+/4039) ("Revert "libutil: add `makeTempSiblingPath` helper"") * commit message in [cl/4038](https://gerrit.lix.systems/c/lix/+/4038) ("Revert "libstore: use `makeTempSiblingPath` in `replaceValidPath`"") * commit message in [cl/4037](https://gerrit.lix.systems/c/lix/+/4037) ("Revert "libutil: extract Base32 helpers from `Hash`"") * commit message in [cl/4036](https://gerrit.lix.systems/c/lix/+/4036) ("Revert "libutil: use OS‐provided entropy for temporary filenames"")
Owner

The revert was applied, please reopen if you notice again issues, thank you!

The revert was applied, please reopen if you notice again issues, thank you!
raito closed this issue 2025-08-21 20:15:21 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lix-project/lix#975
No description provided.