# Provision NixOS > \*NixOS was a mistake.\* Set of configs files to setup NixOS. ## Install 1. Download and install [NixOS](https://nixos.org/download/) with current GNOME ISO. 2. Boot into installed system and run the following commands: ```bash nix-shell -p vim git neovim git clone https://github.com/starr-dusT/dotfiles ~/.local/share/chezmoi ``` 3. Copy existing configuration files from another host and modify as needed. For most configs, move the installer created `configuration-hardware.nix` to dotfiles (e.g. `provision/hosts//hardware.nix`); however, role-based installs like `htpc` and `wsl` either do not require a `hardware.nix` file or the flake imports `hardware-configuration.nix` from `/etc/nixos`. 4. If required move agenix keypairs to `~/.ssh/keys/{age,age.pub}`. A new keypair may be required and agenix files will need to be rekeyed on another system. 5. Rebuild the system and initialize chezmoi dotfiles to save America: ```bash sudo nixos-rebuild switch --impure --flake .# chezmoi init && chezmoi apply ``` *Note:* if the `chezmoi.apply` option is enabled in `configuration.nix` the dotfiles should deploy automatically. The chezmoi commands then are not necessary. 6. Profit! Perform additional setup found in [additional-setup](additional-setup.md) ## Update `nixos-rebuild` command is aliased to `nu` assuming the machine's flake output is named the same at the hostname of the machine.