Prerequisites #
In order to use this repo, first fork it. Then create a nix-secrets flake
with the following outputs:
{
outputs = {...}: {
# git email and name configuration
git = {
email = "git@ed209.dev";
name = "ed209";
};
# username/home director
username = "nixos";
name = "ED-209";
homeDirectory = "/home/nixos";
ssh-keys = [
...
];
timeZone = "Etc/GMT";
};
}
Edit flake.nix to point nix-secrets to the location of your nix-secrets
flake and push it up. You'll also likely want to provide secrets.nix for
agenix, or you can modify the flake to your liking.
Installing #
With custom ISO #
Build the ISO with:
nix build git+https://tangled.org/ed209.dev/nix-config#sachiel#iso
Copy this to a USB drive or use it to build a VM.
⚠️ Note #
You must use EFI with this flake. Make sure your VM is using EFI.
Boot the ISO and simply run:
sudo disko-install --flake git+https://tangled.org/ed209.dev/nix-config#sachiel --write-efi-boot-entries --disk vda /dev/vda
It will prompt you for a disk encryption password. Once complete, reboot. If you receive a message about no EFI variables, please confirm the ISO was booted with EFI.
With standard NixOS installer #
It's also possible to install this with the standard NixOS installer.
sudo nix run 'github:nix-community/disko/latest#disko-install' -- --flake git+https://tangled.org/ed209.dev/nix-config#sachiel --write-efi-boot-entries --disk vda /dev/vda
⚠️ Note #
Building the latest version of disko inside the install tempfs environment uses a
lot of RAM. If you get errors do to the disk filling up, you can use the
version of disko in nixpkgs:
sudo nix run 'nixpkgs#disko-install' -- --flake git+https://tangled.org/ed209.dev/nix-config#sachiel --write-efi-boot-entries --disk vda /dev/vda
Using Home Manager #
This flake also provides a standalone Home Manager entrypoint.
home-manager switch --flake .#<username>
where <username> is whatever you set in your nix-secrets flake.