Infrastructure as Code for our home servers
Find a file
2023-11-05 19:07:32 +01:00
ansible update README 2023-11-05 19:03:44 +01:00
.gitignore update README 2023-11-05 19:03:44 +01:00
configuration.nix init 2023-11-05 18:43:32 +01:00
flake.lock init 2023-11-05 18:43:32 +01:00
flake.nix init 2023-11-05 18:43:32 +01:00
hardware-configuration.nix init 2023-11-05 18:43:32 +01:00
README.md Update README.md 2023-11-05 19:07:32 +01:00

nixos-servers

Nix definitions to configure our physical servers. Currently, only one physical server (named jefke) is implemented.

Deployment

Prerequisites

Before a NixOS definition can be deployed, some prerequite preparational steps must be performed.

  1. Manually install NixOS on the physical machine. This could potentially be automated in the future with nixos-anywhere, but for now this is a manual process.
  2. Enable SSH and install authorized keys.
  3. Ensure Python3 is installed for Ansible.
  4. Run Ansible playbook which deploys secrets ansible-playbook deploy_secrets.yml.

NixOS deployment

Finally, the NixOS definition can be deployed as follows: nixos-rebuild switch -j auto --target-host root@jefke.hyp --flake ".#jefke".