Go to file
coolneng 6c3fa0c13d flake.lock: Update
Flake lock file updates:

• Updated input 'agenix':
    'github:ryantm/agenix/1381a759b205dff7a6818733118d02253340fd5e' (2024-04-02)
  → 'github:ryantm/agenix/24a7ea390564ccd5b39b7884f597cfc8d7f6f44e' (2024-04-26)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b500489fd3cf653eafc075f9362423ad5cdd8676' (2024-04-22)
  → 'github:NixOS/nixpkgs/383ffe076d9b633a2e97b6e4dd97fc15fcf30159' (2024-05-02)
2024-05-05 13:52:48 +02:00
modules Enable IPv6 for Matrix 2024-04-01 21:31:28 +02:00
scripts Turn on HDD fan in the enclosure 2023-12-12 14:58:06 +01:00
secrets Use postgresql as database for Matrix bridges 2023-06-12 16:54:44 +02:00
well-known/matrix
.dir-locals.el
LICENSE.md
Makefile
README.org Upgrade to NixOS 23.05 and SSD boot 2023-06-08 18:59:17 +02:00
configuration.nix Limit resource usage when performing upgrades 2024-03-25 13:41:31 +01:00
flake.lock flake.lock: Update 2024-05-05 13:52:48 +02:00
flake.nix Upgrade to Nixos 23.11 2023-12-05 10:31:43 +01:00

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

  1. Download the sdcard image
  2. Use initial config file
cp install.nix configuration.nix
  1. 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
  1. Mount the firmware partition
mount /dev/mmcblk1p1 /boot
  1. Rebuild the system using Flakes
nix-shell -p git
sudo nixos-rebuild switch --flake /home/nixos/system#zion
  1. Restore the SQL databases
gunzip -c /vault/backups/zion/databases/all.sql.gz | psql -U postgres