uninstaller hangs on macOS #80

Open
opened 2026-05-02 01:39:46 +00:00 by ryang-25 · 3 comments

Using the uninstaller /nix/nix-installer uninstall with the latest version of lix. It seems to consistently stop on unmounting the APFS volume (I've done this like 4-5 times)

uname -a: Darwin macbook 24.6.0 Darwin Kernel Version 24.6.0: Mon Jan 19 21:58:37 PST 2026; root:xnu-11417.140.69.708.3~1/RELEASE_ARM64_T8103 arm64

I tried to throw it in lldb but couldn't really crack it. Here's that output.

Process 2858 resuming
 INFO nix-installer v3.95.0
Lix uninstall plan (v3.95.0)

Planner: macos

Configured settings:
* nix_package_url: {"Url":"https://releases.lix.systems/lix/lix-2.95.1/lix-2.95.1-aarch64-darwin.tar.xz"}

Planned actions:
* Unconfigure Nix daemon related settings with launchctl
* Delete file `/Library/LaunchDaemons/systems.lix.nix-installer.nix-hook.plist`
* Remove the Nix configuration from zsh's non-login shells
* Unconfigure the shell profiles
* Remove the Nix configuration in `/etc/nix/nix.conf`
* Unset the default Nix profile
* Remove time machine exclusions
* Remove Nix users and group
* Remove the directory tree in `/nix`
* Remove the APFS volume `Nix Store` on `disk3`


Proceed? ([Y]es/[n]o/[e]xplain):  INFO Revert: Remove directory `/nix/temp-install-dir`
 INFO Revert: Configure Nix daemon related settings with launchctl
 INFO Revert: Create a `launchctl` plist to put Nix into your PATH
 INFO Revert: Configuring zsh to support using Nix in non-interactive shells
 INFO Revert: Configure Nix
 INFO Revert: Configure Time Machine exclusions
 INFO Revert: Create build users (UID 351-382) and group (GID 350)
 INFO Revert: Provision Nix
 INFO Revert: Create an encrypted APFS volume `Nix Store` for Nix on `disk3` and add it to `/etc/fstab` mounting on `/nix`
Process 2858 stopped
  thread #1, name = 'main', queue = 'com.apple.main-thread', stop reason = signal SIGCHLD
    frame #0: 0x000000018ce513cc libsystem_kernel.dylib`__psynch_cvwait + 8
libsystem_kernel.dylib`__psynch_cvwait:
->  0x18ce513cc <+8>:  b.lo   0x18ce513ec    ; <+40>
    0x18ce513d0 <+12>: pacibsp
    0x18ce513d4 <+16>: stp    x29, x30, [sp, #-0x10]!
    0x18ce513d8 <+20>: mov    x29, sp
* thread #2, name = 'tokio-runtime-worker', stop reason = EXC_BAD_ACCESS (code=10, address=0x1003f12f8)
    frame #0: 0x00000001003f12f8 nix-installer`rust_eh_personality + 321428
nix-installer`rust_eh_personality:
->  0x1003f12f8 <+321428>: udf    #0x0
    0x1003f12fc <+321432>: udf    #0x0
    0x1003f1300 <+321436>: udf    #0x0
    0x1003f1304 <+321440>: udf    #0x0
Target 0: (nix-installer) stopped.
(lldb) bt
* thread #2, name = 'tokio-runtime-worker', stop reason = EXC_BAD_ACCESS (code=10, address=0x1003f12f8)
  * frame #0: 0x00000001003f12f8 nix-installer`rust_eh_personality + 321428
    frame #1: 0x00000001003e95c4 nix-installer`rust_eh_personality + 289376
    frame #2: 0x00000001003df688 nix-installer`rust_eh_personality + 248612
    frame #3: 0x00000001003e9ffc nix-installer`rust_eh_personality + 291992
    frame #4: 0x00000001003e19f0 nix-installer`rust_eh_personality + 257676
    frame #5: 0x00000001003deb74 nix-installer`rust_eh_personality + 245776
    frame #6: 0x00000001003f1b44 nix-installer`rust_eh_personality + 323552
    frame #7: 0x00000001003f2114 nix-installer`rust_eh_personality + 325040
    frame #8: 0x00000001003cb818 nix-installer`rust_eh_personality + 167092
    frame #9: 0x000000018ce8fbc8 libsystem_pthread.dylib`_pthread_start + 136
Using the uninstaller `/nix/nix-installer uninstall` with the latest version of lix. It seems to consistently stop on unmounting the APFS volume (I've done this like 4-5 times) `uname -a:` `Darwin macbook 24.6.0 Darwin Kernel Version 24.6.0: Mon Jan 19 21:58:37 PST 2026; root:xnu-11417.140.69.708.3~1/RELEASE_ARM64_T8103 arm64` I tried to throw it in `lldb` but couldn't really crack it. Here's that output. ``` Process 2858 resuming INFO nix-installer v3.95.0 Lix uninstall plan (v3.95.0) Planner: macos Configured settings: * nix_package_url: {"Url":"https://releases.lix.systems/lix/lix-2.95.1/lix-2.95.1-aarch64-darwin.tar.xz"} Planned actions: * Unconfigure Nix daemon related settings with launchctl * Delete file `/Library/LaunchDaemons/systems.lix.nix-installer.nix-hook.plist` * Remove the Nix configuration from zsh's non-login shells * Unconfigure the shell profiles * Remove the Nix configuration in `/etc/nix/nix.conf` * Unset the default Nix profile * Remove time machine exclusions * Remove Nix users and group * Remove the directory tree in `/nix` * Remove the APFS volume `Nix Store` on `disk3` Proceed? ([Y]es/[n]o/[e]xplain): INFO Revert: Remove directory `/nix/temp-install-dir` INFO Revert: Configure Nix daemon related settings with launchctl INFO Revert: Create a `launchctl` plist to put Nix into your PATH INFO Revert: Configuring zsh to support using Nix in non-interactive shells INFO Revert: Configure Nix INFO Revert: Configure Time Machine exclusions INFO Revert: Create build users (UID 351-382) and group (GID 350) INFO Revert: Provision Nix INFO Revert: Create an encrypted APFS volume `Nix Store` for Nix on `disk3` and add it to `/etc/fstab` mounting on `/nix` Process 2858 stopped thread #1, name = 'main', queue = 'com.apple.main-thread', stop reason = signal SIGCHLD frame #0: 0x000000018ce513cc libsystem_kernel.dylib`__psynch_cvwait + 8 libsystem_kernel.dylib`__psynch_cvwait: -> 0x18ce513cc <+8>: b.lo 0x18ce513ec ; <+40> 0x18ce513d0 <+12>: pacibsp 0x18ce513d4 <+16>: stp x29, x30, [sp, #-0x10]! 0x18ce513d8 <+20>: mov x29, sp * thread #2, name = 'tokio-runtime-worker', stop reason = EXC_BAD_ACCESS (code=10, address=0x1003f12f8) frame #0: 0x00000001003f12f8 nix-installer`rust_eh_personality + 321428 nix-installer`rust_eh_personality: -> 0x1003f12f8 <+321428>: udf #0x0 0x1003f12fc <+321432>: udf #0x0 0x1003f1300 <+321436>: udf #0x0 0x1003f1304 <+321440>: udf #0x0 Target 0: (nix-installer) stopped. (lldb) bt * thread #2, name = 'tokio-runtime-worker', stop reason = EXC_BAD_ACCESS (code=10, address=0x1003f12f8) * frame #0: 0x00000001003f12f8 nix-installer`rust_eh_personality + 321428 frame #1: 0x00000001003e95c4 nix-installer`rust_eh_personality + 289376 frame #2: 0x00000001003df688 nix-installer`rust_eh_personality + 248612 frame #3: 0x00000001003e9ffc nix-installer`rust_eh_personality + 291992 frame #4: 0x00000001003e19f0 nix-installer`rust_eh_personality + 257676 frame #5: 0x00000001003deb74 nix-installer`rust_eh_personality + 245776 frame #6: 0x00000001003f1b44 nix-installer`rust_eh_personality + 323552 frame #7: 0x00000001003f2114 nix-installer`rust_eh_personality + 325040 frame #8: 0x00000001003cb818 nix-installer`rust_eh_personality + 167092 frame #9: 0x000000018ce8fbc8 libsystem_pthread.dylib`_pthread_start + 136 ```
Author

It seems to work if the uninstaller is copied somewhere other than /nix. I don't think it should be trying to force unmount when the installer lives on /nix.

It seems to work if the uninstaller is copied somewhere other than `/nix`. I don't think it should be trying to force unmount when the installer lives on `/nix`.
Member

Odd. Out of curiosity, is there anything special about your macOS setup (any MDM or anything?), or regarding your nix store?

Odd. Out of curiosity, is there anything special about your macOS setup (any MDM or anything?), or regarding your nix store?
Author

No, there isn't. I'm also doing this on a new lix install (so nothing else in the nix store)

No, there isn't. I'm also doing this on a new lix install (so nothing else in the nix store)
Sign in to join this conversation.
No milestone
No project
No assignees
2 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-installer#80
No description provided.