# Prerequisites In order to use this repo, first fork it. Then create a `nix-secrets` flake with the following outputs: ```nix { 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: ```bash 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. ```bash 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`: ```bash 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 .# ``` where `` is whatever you set in your `nix-secrets` flake.