My NixOS configuration
Find a file
2022-09-04 11:43:47 +02:00
desktop fix: add wl-clipboard 2022-06-29 17:56:09 +02:00
hardware feat(hardware): change zstd compression level 2022-08-08 22:59:27 +02:00
home feat(home): add foliate 2022-09-04 11:43:47 +02:00
lib feat: improve flake structure 2021-08-08 17:48:48 +02:00
modules chore(nix): switch to stable nix package 2022-05-19 02:59:04 +02:00
pkgs/deconz feat: update deconz 2022-08-03 01:30:46 +02:00
scripts feat(scripts): add zstd compression level option 2022-08-02 20:09:27 +02:00
secrets fix(calibre-web): secure /opds 2022-09-04 11:43:47 +02:00
services feat(home): add foliate 2022-09-04 11:43:47 +02:00
system feat(vpn): automatic login 2022-08-26 21:37:12 +02:00
templates docs: update dotnet template 2021-03-04 15:11:09 +01:00
virtualisation feat(virtualisation): switch from docker to podman 2022-08-08 23:41:47 +02:00
.editorconfig style: add .editorconfig 2020-03-21 16:54:32 +01:00
.env.example chore: add restic variables to .env.example 2022-05-12 11:45:10 +02:00
.envrc chore: add restic secrets to .env 2022-05-09 12:26:12 +02:00
.gitignore chore: extend .gitignore 2022-08-08 23:00:01 +02:00
.gitlab-ci.yml build(ci): add check job & improve build 2022-08-10 12:26:39 +02:00
flake.lock chore(flake): update inputs 2022-08-26 21:38:08 +02:00
flake.nix feat(flake): add pre-commit to checks 2022-08-08 23:53:33 +02:00
home-pc.nix chore: update state version 2022-08-12 12:30:01 +02:00
home-server.nix feat(genie): disable client again 2022-08-12 17:14:16 +02:00
LICENSE add LICENSE 2020-07-03 08:48:51 +00:00
README.md docs: update README 2022-08-25 22:20:42 +02:00
work-pc.nix chore: update state version 2022-08-12 12:30:01 +02:00

felschr's NixOS configuration

Installation

Clone the configuration into /etc/nixos.

On a new machine run:

scripts/setup-partitions

Then move the resulting /mnt/etc/nixos/hardware-configuration.nix to ./hardware/<config>.nix. Update the configuration according to the script output, if necessary. Btrfs mount options likely need to be added, for example. Copy the configuration from /etc/nixos to /mnt/etc/nixos.

Reference this hardware config in a nixosConfigurations.<config> section in flake.nix.

To install run the following command where <config> matches outputs.nixosConfigurations.<config> in flake.nix:

nixos-install --flake '/mnt/etc/nixos#<config>'

After the installation finished, set a password for the user:

passwd <user>

Updating

Update all flake inputs:

nix flake update

Update a specific flake input:

nix flake lock --update-input <input>

Rebuilding the system

Rebuild the system:

sudo nixos-rebuild switch

Rebuild the system for a remote machine:

sudo nixos-rebuild switch --flake '/etc/nixos#<config>' --target-host user@hostname --use-remote-sudo