No description
modules/nixos | ||
systems/x86_64-linux/mow0m | ||
.gitignore | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.md |
Serverraum-mit-Matratze Infrastructure
This is the Infrastructure Code for the "Serverraum mit Matratze" shared apartment.
Table of Contents
Dependencies
To remotely Deploy Nix-Servers with Native Tools, you will need Access to the nixos-rebuild command.
You can either use a NixOS System.
Or you can Install the Nix Package Manager and open a Nix-Shell with the Command available:
nix-shell -p '(nixos{}).nixos-rebuild'
Updating Configuration
So, you updated the Configuration on your Computer, how can you apply the Updated Config to the Server?
You'll need SSH-Access to the Server, with a User which can run Nix-Commands, and can escalate Privileges using sudo.
- Don't forget to Configure your ssh Config! (See Hosts)
- Stage the Changes if you created or deleted Files
git add .
(They will be ignored if you miss this step!) - Build and Switch the Config on the Target Server! (Example mow0m
nixos-rebuild switch --flake .#mow0m --target-host master@mow0m --build-host master@mow0m --use-remote-sudo
You want to keep the Build-Host the Same as the Target-Host, because the Target will only accept Binarys with a trusted Signature. It is way easier, to just run the Build on the Same Machine then.
Hosts
mow0m
User | master@mow0m |
Cpu | Intel(R) Core(TM) i5-6400 (4) @ 3.30 GHz |
Ram | 32GB |
Build | nixos-rebuild switch --flake .#mow0m --target-host master@mow0m --build-host master@mow0m --use-remote-sudo |
SSH Config | Host mow0m
HostName mow0m.lan
User master
Port 9553
IdentityFile ~/.ssh/master@mow0m Host remoteunlock-mow0m
HostName mow0m.lan
User root
Port 2550
IdentityFile /home/kb/.ssh/remoteunlock-mow0m |