coolneng
ed2a425623
Flake lock file updates: • Updated input 'agenix': 'github:ryantm/agenix/49798e535ebc07fec82256b283d35be36d8c6c9a' (2023-01-29) → 'github:ryantm/agenix/b7ffcfe77f817d9ee992640ba1f270718d197f28' (2023-01-31) • Added input 'agenix/darwin': 'github:lnl7/nix-darwin/87b9d090ad39b25b2400029c64825fc2a8868943' (2023-01-09) • Added input 'agenix/darwin/nixpkgs': follows 'agenix/nixpkgs' • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/f413457e0dd7a42adefdbcea4391dd9751509025' (2023-01-30) → 'github:NixOS/nixpkgs/0218941ea68b4c625533bead7bbb94ccce52dceb' (2023-01-31) |
||
---|---|---|
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
- Connect a keyboard to the Raspberry Pi and set the password
passwd
sudo su
passwd
The default user is nixos
- 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
- Rebuild the system using Flakes
nix-shell -p git
sudo nixos-rebuild switch --flake /home/nixos/system#zion --impure
- Restore the SQL databases
psql -U postgres -f /vault/backups/zion/databases/all.sql