59 lines
1.6 KiB
Markdown
59 lines
1.6 KiB
Markdown
|
|
# Installing on a new machine
|
|
|
|
1) Install [NixOS](https://nixos.org/) from an ISO via USB
|
|
2) Reboot machine
|
|
3) Edit `/etc/nixos/configuration.nix` and add `git` to packages
|
|
4) Clone this repo
|
|
5) Create a new directory under `hosts/` for the new machine
|
|
6) Copy `/etc/nixos/hardware-configuration.nix` to `hosts/<host>/hardware.nix`
|
|
7) Register the host in `flake.nix` via `mkHost`:
|
|
```nix
|
|
nixosConfigurations.<host> = mkHost { host = "<host>"; };
|
|
```
|
|
8) `git add .`
|
|
9) Run `sudo nixos-rebuild switch --flake .#<host>`
|
|
|
|
# Building NixOS VM
|
|
`nix build .#nixosConfigurations.vm.config.system.build.vm`
|
|
|
|
or run `./build-vm.sh` (removes `./vm.qcow2` first)
|
|
|
|
https://gist.github.com/FlakM/0535b8aa7efec56906c5ab5e32580adf
|
|
|
|
# Building NixOS ISO
|
|
`nix build .#nixosConfigurations.live.config.system.build.isoImage`
|
|
|
|
or run `./build-iso.sh`
|
|
|
|
# Using Standalone Home Manager
|
|
1) Install [Nix](https://nixos.org/) via:
|
|
|
|
```
|
|
sh <(curl --proto '=https' --tlsv1.2 -L https://nixos.org/nix/install) --daemon
|
|
```
|
|
|
|
2) Create `~/.config/nix/nix.conf` file with the following contents to enable the use of flakes:
|
|
```
|
|
experimental-features = nix-command flakes
|
|
```
|
|
3) Install `git`
|
|
4) Clone this repo
|
|
5) Edit `flake.nix` variables as needed
|
|
6) `home-manager switch --flake .#josh`
|
|
|
|
# Misc
|
|
## Garbage collection
|
|
`nix-collect-garbage -d`
|
|
|
|
## Fonts
|
|
### Checking installed fonts
|
|
`fc-list`
|
|
|
|
### Debugging kitty fonts
|
|
`kitty --debug-font-fallback`
|
|
|
|
## SDDM virtual keyboard ??ZZ
|
|
- https://unix.stackexchange.com/questions/43976/list-all-valid-kbd-layouts-variants-and-toggle-options-to-use-with-setxkbmap
|
|
- https://github.com/NixOS/nixpkgs/issues/254523
|