28 lines
1.1 KiB
Markdown
28 lines
1.1 KiB
Markdown
# 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`
|
|
|