Updated README
This commit is contained in:
parent
4e010b3167
commit
d98dd03fef
1 changed files with 24 additions and 8 deletions
32
README.md
32
README.md
|
|
@ -2,17 +2,17 @@
|
||||||
## Description
|
## Description
|
||||||
My NixOS configuration repository
|
My NixOS configuration repository
|
||||||
|
|
||||||
## Install a new host
|
## Install a New Host
|
||||||
1. Install NixOS with graphical ISO image (e.g. GNOME). During the installation the desktop environment can be choosen.
|
1. Install NixOS with graphical ISO image (e.g. GNOME). During the installation the desktop environment can be choosen.
|
||||||
2. Reboot into NixOS
|
2. Reboot into NixOS
|
||||||
3. Edit `/etc/nixos/configuration.nix` with sudoedit
|
3. Edit `/etc/nixos/configuration.nix` with sudoedit
|
||||||
a) Change hostname
|
- Change hostname
|
||||||
b) Enable flakes. Add the following lines:
|
- Enable flakes. Add the following lines:
|
||||||
```
|
```
|
||||||
# Enable flakes
|
# Enable flakes
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
```
|
```
|
||||||
c) Install tmux, neovim, git by adding them to `environment.systemPackages = with pkgs; [`
|
- Install tmux, neovim, git by adding them to `environment.systemPackages = with pkgs; [`
|
||||||
4. Apply changes: `sudo nixos-rebuild switch` and reboot
|
4. Apply changes: `sudo nixos-rebuild switch` and reboot
|
||||||
5. Clone NixOS config repository to /home/$USER/nixos:
|
5. Clone NixOS config repository to /home/$USER/nixos:
|
||||||
```
|
```
|
||||||
|
|
@ -20,9 +20,25 @@ cd
|
||||||
git clone https://git.plueschbit.de/jan/nixos-conf ~/nixos
|
git clone https://git.plueschbit.de/jan/nixos-conf ~/nixos
|
||||||
```
|
```
|
||||||
6. Add the new host to repository
|
6. Add the new host to repository
|
||||||
a) Create ~/nixos/hosts/$HOSTNAME
|
- Create ~/nixos/hosts/$HOSTNAME
|
||||||
b) `cp /etc/nixos/*.nix $HOSTNAME/.`
|
- `cp /etc/nixos/*.nix $HOSTNAME/.`
|
||||||
c) Edit `~/nixos/flake.nix` and add section for new host
|
- 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.
|
- Stage new config files: `git add flake.nix hosts/$HOSTNAME/*`. Otherwise, nixos-rebuild will refuse to work with the files.
|
||||||
8. Apply config: `sudo nixos-rebuild switch --flake ~/nixos/#<host>`
|
8. Apply config: `sudo nixos-rebuild switch --flake ~/nixos/#<host>`
|
||||||
|
|
||||||
|
## Update Packages on a Host
|
||||||
|
Update of the file `flake.nix`:
|
||||||
|
```
|
||||||
|
sudo nix flake update
|
||||||
|
```
|
||||||
|
Then, perform nixos rebuild:
|
||||||
|
```
|
||||||
|
sudo nixos-rebuild switch --flake ~/nixos/#<host>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Garbage Collection
|
||||||
|
Keep e.g. the last five generations and perform garbage collection:
|
||||||
|
```
|
||||||
|
sudo nix-env --delete-generations +5
|
||||||
|
sudo nix-store --gc
|
||||||
|
```
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue