diff --git a/README.md b/README.md new file mode 100644 index 0000000..f1e5443 --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +# NixOS Configuration Files wit Flakes, Home-Manager +## Description +My NixOS configuration repository + +## Install a new host +1. Install NixOS with graphical ISO image (e.g. GNOME). During the installation the desktop environment can be choosen. +2. Reboot into NixOS +3. Edit `/etc/nixos/configuration.nix` with sudoedit + a) Change hostname + b) Enable flakes. Add the following lines: +``` +# Enable flakes + nix.settings.experimental-features = [ "nix-command" "flakes" ]; +``` + c) Install tmux, neovim, git by adding them to `environment.systemPackages = with pkgs; [` +4. Apply changes: `sudo nixos-rebuild switch` and reboot +5. Clone NixOS config repository to /home/$USER/nixos: +``` +cd +git clone https://git.plueschbit.de/jan/nixos-conf ~/nixos +``` +6. Add the new host to repository + a) Create ~/nixos/hosts/$HOSTNAME + b) `cp /etc/nixos/*.nix $HOSTNAME/.` + c) Edit `~/nixos/flake.nix` and add section for new host + d) Stage new config files: `git add flake.nix hosts/$HOSTNAME/*`. Otherwise, nixos-rebuild will refuse to work with the files. +7. Apply config: `sudo nixos-rebuild ~/nixos/$HOSTNAME` +