Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to install nix-darwin on aarch64-darwin, following the flake instructions #644

Open
1 task done
bryanhonof opened this issue May 1, 2023 · 3 comments
Open
1 task done

Comments

@bryanhonof
Copy link

bryanhonof commented May 1, 2023

After running ./result/sw/bin/darwin-rebuild switch --flake . I get the following output.

bryanhonof@Bryans-MBP meta % ./result/sw/bin/darwin-rebuild switch --flake .
warning: unknown setting 'bash-prompt-prefix'
warning: Git tree '/Users/bryanhonof/Desktop/meta' is dirty
building the system configuration...
warning: unknown setting 'bash-prompt-prefix'
warning: Git tree '/Users/bryanhonof/Desktop/meta' is dirty
warning: unknown setting 'bash-prompt-prefix'
user defaults...
setting up user launchd services...
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
setting up /Applications/Nix Apps...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
setting up pam...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
applying patches...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
setting up /etc...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
error: not linking environment.etc."bashrc" because /etc/bashrc already exists, skipping...
existing file has unknown content 6757a6969501994e2bf161ffa39a934f27f85664c901cdc0c4fcd8b2be7dba23, move and activate again to apply
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
error: not linking environment.etc."nix/nix.conf" because /etc/nix/nix.conf already exists, skipping...
existing file has unknown content f83c4a7e56c00dc9be977b00ee051432b37d179b2247bb742ee3423159d99353, move and activate again to apply
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
system defaults...
setting up launchd services...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
reloading service org.nixos.nix-daemon
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
reloading nix-daemon...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
waiting for nix-daemon
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
waiting for nix-daemon
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
configuring networking...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted

For some reason, this also completely messes with the permissions of /home, I'll get permission denied on simple operations like ls ~, whilst the permission still seems to be correct. This is fixed by simply logging out and back in, though.

Expected outcome

Additional information

At first, I thought it might have to do with my choice of installation method for Nix. First trying out Flox's installer, and then Determinate's one. However, both showed the same behavior. I'll post my Nix files below, but I don't think I can get much simpler than this.

# flake.nix
{
  description = "John's darwin system";

  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-22.05-darwin";
    darwin.url = "github:lnl7/nix-darwin/master";
    darwin.inputs.nixpkgs.follows = "nixpkgs";
  };

  outputs = { self, darwin, nixpkgs }: {
    darwinConfigurations."Bryans-MBP" = darwin.lib.darwinSystem {
      system = "aarch64-darwin";
      modules = [ ./configuration.nix ];
    };
  };
}
# configuration.nix
{
  services.nix-daemon.enable = true;
}
@bryanhonof
Copy link
Author

Running with sudo !! I get the following.

bryanhonof@Bryans-MBP meta % sudo ./result/sw/bin/darwin-rebuild switch --flake .
warning: unknown setting 'bash-prompt-prefix'
warning: Git tree '/Users/bryanhonof/Desktop/meta' is dirty
building the system configuration...
warning: unknown setting 'bash-prompt-prefix'
warning: Git tree '/Users/bryanhonof/Desktop/meta' is dirty
warning: unknown setting 'bash-prompt-prefix'
user defaults...
setting up user launchd services...
setting up /Applications/Nix Apps...
setting up pam...
applying patches...
setting up /etc...
error: not linking environment.etc."bashrc" because /etc/bashrc already exists, skipping...
existing file has unknown content 6757a6969501994e2bf161ffa39a934f27f85664c901cdc0c4fcd8b2be7dba23, move and activate again to apply
error: not linking environment.etc."nix/nix.conf" because /etc/nix/nix.conf already exists, skipping...
existing file has unknown content f83c4a7e56c00dc9be977b00ee051432b37d179b2247bb742ee3423159d99353, move and activate again to apply
system defaults...
setting up launchd services...
reloading nix-daemon...
waiting for nix-daemon
configuring networking...

@bryanhonof
Copy link
Author

Ok, I just had to run as sudo… my apologies for the spam. 🙃

@Enzime
Copy link
Collaborator

Enzime commented Jul 11, 2023

@bryanhonof Before you ran darwin-rebuild switch, did you run the installer?

nix-build https://github.com/LnL7/nix-darwin/archive/master.tar.gz -A installer
./result/bin/darwin-installer

From https://github.com/LnL7/nix-darwin/blob/f9724c4543035d6190c00168ebfa93f0b2e927d0/README.md#install

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants