Skip to content

sumnerevans/nixos-configuration

Repository files navigation

NixOS Configuration

Deploy Latest Generation HealthCheck Status

This repository contains the NixOS configuration for my personal computers and servers.

You can find my Home Manager Config here: https://github.com/sumnerevans/home-manager-config/

Hosts

Installation Instructions

.----------------------------------------------------------------------------.
| WARNING:                                                                   |
|                                                                            |
| Don't install somebody else's NixOS configs. Use them as inspiration, but  |
| don't actually just blindly copy.                                          |
'----------------------------------------------------------------------------'

To install this configuration,

  1. Clone this repository to /etc/nixos on a NixOS system.
  2. Unlock the repo using git-crypt unlock /path/to/git-crypt/key.
  3. Create a new host configuration in the host-configurations folder.
  4. Source the host configuration from hardware-configuration.nix.
  5. Run sudo nixos-rebuild switch --upgrade.

Goals

  • Infrastructure as code
  • Immutable infrastructure (as much as possible)
  • Everything backed up to B2
  • Everything backed up to onsite location

Uptime

  • Can blow away all servers (but not data) and restore in under an hour

  • Can restore all data within one day after catastrophic failure (everything goes down, including data)

    • From local backup: 1 day
    • From B2: 2 days

Backup Strategy

I am using Restic to backup everything on my server, and all of my important documents are stored in Syncthing, which is backed up from my server.