The initial setup is pretty simple now thanks to disko.
-
Boot the minimal disk ISO onto a computer
-
Connect to the Internet
# Enter sudo mode sudo -i # Start the service systemctl start wpa_supplicant.service # Use the CLI to connect wpa_cli > add_network 0 > set_network 0 ssid "<network name>" > set_network 0 psk "<password>" > enable_network 0 nix-shell -p disko
-
Run the
diskoutility# Add the program to the path nix-shell -p disko CONFIG_PATH="github:suasuasuasuasua/nixos-config" # or you could clone locally first NAME="penguin" # for example disko --mode disko --flake "${CONFIG_PATH}"#"${NAME}" nixos-install --no-channel-copy --no-root-password --flake "${CONFIG_PATH}"#"${NAME}"
-
Prepare the passwords and ZFS pools
# Set your password nixos-enter --root /mnt -c "passwd ${USERNAME}" # Export the zpools so that they can be used by the actual computer (not the # installer!) zpool export -a # Reboot to your new system! reboot
-
Initialize Samba (
smb) (as root)# Add a user and a password smbpasswd -a ${USERNAME} smbpasswd -e ${USERNAME} # Make the zshare owned by samba and writable chgrp -R samba /zshare chmod -R 775 /zshare
-
Make changes and rebuild the system
# Rebuild the system after any changes! just switch
The setup for darwin machines is much simpler. Make sure to connect to the
internet before beginning.
-
Install
nixon the machine from the page. You may be prompted to install developer tools (likegit,xcode, etc.), so make sure to accept and be patient. -
Install
nix-darwin# To use Nixpkgs 25.05: sudo nix run nix-darwin/nix-darwin-25.05#darwin-rebuild -- switch --flake .
-
Install the configuration from GitHub
# switch to the mbp3 device for example darwin-rebuild switch --flake github:suasuasuasuasua/nixos-config#mbp3
The setup for other Linux machines is much simpler. Make sure to connect to the internet before beginning.
-
Install
nixon the machine from the main page -
Install
home-managerand switch configurationsnix run home-manager -- switch --flake .#penguin