coolneng
c1887474b8
Flake lock file updates: • Updated input 'agenix': 'github:ryantm/agenix/417caa847f9383e111d1397039c9d4337d024bf0' (2023-12-24) → 'github:ryantm/agenix/8cb01a0e717311680e0cbca06a76cbceba6f3ed6' (2024-02-13) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/809cca784b9f72a5ad4b991e0e7bcf8890f9c3a6' (2024-02-11) → 'github:NixOS/nixpkgs/01885a071465e223f8f68971f864b15829988504' (2024-02-13) |
||
---|---|---|
modules | ||
scripts | ||
secrets | ||
well-known/matrix | ||
.dir-locals.el | ||
LICENSE.md | ||
Makefile | ||
README.org | ||
configuration.nix | ||
flake.lock | ||
flake.nix |
README.org
NixOS Server
Configuration files for my personal server, powered by NixOS.
Modules
The configuration is sliced into different files, per category:
- ZFS pool configuration: hardware-configuration.nix
- Network configuration: networking.nix
- Synchronization and backup services: datasync.nix
- Web services and reverse proxy: webstack.nix
- Development tools: devops.nix
- Smartd: monitoring.nix
- Systemd services and timers: periodic.nix
- Curated articles: information.nix
All the modules are imported in configuration.nix
Installation
- Download the sdcard image
- Use initial config file
cp install.nix configuration.nix
- Move the repo to the server and the agenix key
scp -r Projects/zion zion:/home/nixos/system
scp .ssh/zion root@zion:/etc/ssh/id_ed25519
- Mount the firmware partition
mount /dev/mmcblk1p1 /boot
- Rebuild the system using Flakes
nix-shell -p git
sudo nixos-rebuild switch --flake /home/nixos/system#zion
- Restore the SQL databases
gunzip -c /vault/backups/zion/databases/all.sql.gz | psql -U postgres