NixOS / nix

Nix, the purely functional package manager
https://nixos.org/
GNU Lesser General Public License v2.1
12.88k stars 1.53k forks source link

diskutil: did not recognize "disktool apfs" #8469

Open avdv opened 1 year ago

avdv commented 1 year ago

Platform

Additional information

Tried to use the cachix/install-nix-action@v21 on Github. Here

Output

Output ```log installer options: --no-channel-add --darwin-use-unencrypted-nix-store-volume --nix-extra-conf-file /var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.jsqznp7q/nix.conf --daemon --daemon-user-count 6 * Trying 151.101.2.217:443... * Connected to releases.nixos.org (151.101.2.217) port 443 (#0) * ALPN: offers h2,http/1.1 } [5 bytes data] * TLSv1.3 (OUT), TLS handshake, Client hello (1): } [512 bytes data] * TLSv1.3 (IN), TLS handshake, Server hello (2): { [106 bytes data] * TLSv1.2 (IN), TLS handshake, Certificate (11): { [2826 bytes data] * TLSv1.2 (IN), TLS handshake, Server key exchange (12): { [300 bytes data] * TLSv1.2 (IN), TLS handshake, Server finished (14): { [4 bytes data] * TLSv1.2 (OUT), TLS handshake, Client key exchange (16): } [37 bytes data] * TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1): } [1 bytes data] * TLSv1.2 (OUT), TLS handshake, Finished (20): } [16 bytes data] * TLSv1.2 (IN), TLS handshake, Finished (20): { [16 bytes data] * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256 * ALPN: server accepted h2 * Server certificate: * subject: CN=releases.nixos.org * start date: Mar 7 20:47:38 2023 GMT * expire date: Apr 7 20:47:37 2024 GMT * subjectAltName: host "releases.nixos.org" matched cert's "releases.nixos.org" * issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign Atlas R3 DV TLS CA 2023 Q1 * SSL certificate verify ok. } [5 bytes data] * using HTTP/2 * h2h3 [:method: GET] * h2h3 [:path: /nix/nix-2.15.1/install] * h2h3 [:scheme: https] * h2h3 [:authority: releases.nixos.org] * h2h3 [user-agent: curl/8.0.1] * h2h3 [accept: */*] * Using Stream ID: 1 (easy handle 0x7fe957010a00) } [5 bytes data] > GET /nix/nix-2.15.1/install HTTP/2 > Host: releases.nixos.org > user-agent: curl/8.0.1 > accept: */* > { [5 bytes data] < HTTP/2 200 < last-modified: Tue, 23 May 2023 15:11:36 GMT < etag: "fa4fff8955c318a3511ed4ee0e5f5ea5" < x-amz-server-side-encryption: AES256 < content-type: text/plain < server: AmazonS3 < via: 1.1 varnish, 1.1 varnish < access-control-allow-origin: * < accept-ranges: bytes < date: Wed, 07 Jun 2023 15:16:58 GMT < age: 22590 < x-served-by: cache-iad-kjyo7100063-IAD, cache-fty21326-FTY < x-cache: HIT, HIT < x-cache-hits: 23795, 1 < x-timer: S1686151018.153047,VS0,VE1 < content-length: 4052 < { [1084 bytes data] * Connection #0 to host releases.nixos.org left intact downloading Nix 2.15.1 binary tarball for x86_64-darwin from 'https://releases.nixos.org/nix/nix-2.15.1/nix-2.15.1-x86_64-darwin.tar.xz' to '/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/nix-binary-tarball-unpack.XXXXXXXXXX.goNwsYAI'... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 35 24.1M 35 8863k 0 0 26.3M 0 --:--:-- --:--:-- --:--:-- 26.6M 100 24.1M 100 24.1M 0 0 37.3M 0 --:--:-- --:--:-- --:--:-- 37.5M Warning: the flag --darwin-use-unencrypted-nix-store-volume is no longer needed and will be removed in the future. Switching to the Multi-user Installer Welcome to the Multi-User Nix Installation This installation tool will set up your computer with the Nix package manager. This will happen in a few stages: 1. Make sure your computer doesn't already have Nix. If it does, I will show you instructions on how to clean up your old install. 2. Show you what I am going to install and where. Then I will ask if you are ready to continue. 3. Create the system users and groups that the Nix daemon uses to run builds. 4. Perform the basic installation of the Nix files daemon. 5. Configure your shell to import special Nix Profile files, so you can use Nix. 6. Start the Nix daemon. Would you like to see a more detailed list of what I will do? No TTY, assuming you would say yes :) I will: - make sure your computer doesn't already have Nix files (if it does, I will tell you how to clean them up.) - create local users (see the list above for the users I'll make) - create a local group (nixbld) - install Nix in to /nix - create a configuration file in /etc/nix - set up the "default profile" by creating some Nix-related files in /var/root - back up /etc/bashrc to /etc/bashrc.backup-before-nix - update /etc/bashrc to include some Nix configuration - back up /etc/zshrc to /etc/zshrc.backup-before-nix - update /etc/zshrc to include some Nix configuration - create a Nix volume and a LaunchDaemon to mount it - create a LaunchDaemon (at /Library/LaunchDaemons/org.nixos.nix-daemon.plist) for nix-daemon Ready to continue? No TTY, assuming you would say yes :) ---- let's talk about sudo ----------------------------------------------------- This script is going to call sudo a lot. Normally, it would show you exactly what commands it is running and why. However, the script is run in a headless fashion, like this: $ curl -L https://nixos.org/nix/install | sh or maybe in a CI pipeline. Because of that, I'm going to skip the verbose output in the interest of brevity. If you would like to see the output, try like this: $ curl -L -o install-nix https://nixos.org/nix/install $ sh ./install-nix ~~> Fixing any leftover Nix volume state Before I try to install, I'll check for any existing Nix volume config and ask for your permission to remove it (so that the installer can start fresh). I'll also ask for permission to fix any issues I spot. ~~> Checking for artifacts of previous installs Before I try to install, I'll check for signs Nix already is or has been installed on this system. ---- Nix config report --------------------------------------------------------- Temp Dir: /var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.FMEfMbZ9 Nix Root: /nix Build Users: 6 Build Group ID: 30000 Build Group Name: nixbld build users: Username: UID _nixbld1: 301 _nixbld2: 302 _nixbld3: 303 _nixbld4: 304 _nixbld5: 305 _nixbld6: 306 Ready to continue? No TTY, assuming you would say yes :) ---- Preparing a Nix volume ---------------------------------------------------- Nix traditionally stores its data in the root directory /nix, but macOS now (starting in 10.15 Catalina) has a read-only root directory. To support Nix, I will create a volume and configure macOS to mount it at /nix. ~~> Configuring /etc/synthetic.conf to make a mount-point at /nix ~~> Creating a Nix volume diskutil: please use diskutil(8) instead of disktool diskutil: did not recognize "disktool apfs" ---- oh no! -------------------------------------------------------------------- Oh no, something went wrong. If you can take all the output and open an issue, we'd love to fix the problem so nobody else has this issue. ```

Priorities

Add :+1: to issues you find important.

avdv commented 1 year ago

Note, just re-running the job succeeded on the second attempt: https://github.com/avdv/scalals/actions/runs/5201776759/jobs/9383433810

abathur commented 1 year ago

A little surprised by this error message :)

Not sure this will be able to go anywhere without more reports (unless maybe you start experiencing this semi-regularly.)

I can reproduce the message with something like:

$ disktool apfs
diskutil: please use diskutil(8) instead of disktool
diskutil: did not recognize "disktool apfs"

But the the Nix installer doesn't use disktool anywhere--it uses /usr/sbin/diskutil. I can imagine some explanations for the message (like a symlink or alias), but I doubt either of those square with this failing on one run and running fine on another.

Unless you see this again, I imagine it'll be fallow until someone finds the missing link.