{"repo":"wagdav/homelab","free":true,"listed":false,"github":"https://github.com/wagdav/homelab","clone":"git clone https://github.com/wagdav/homelab.git","description":"Because at home you keep devopsing","language":"Nix","stars":94,"topics":["nix","homelab","nixops"],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"Homelab The configuration of my home infrastructure. Laptop My main laptop, a Lenovo Carbon X1, runs NixOS. Its configuration is specified in x1.nix using the experimental flakes feature. Modify this file and switch to the new configuration: By default, this configuration is stored in /etc/nixos/configuration.nix . For testing purposes you can build a QEMU virtual machine from the configuration: To update the lock files: My rcfiles repository completes the configuration of my laptop. Those files live in a separate repository because I also use them on my work computer which doesn't run NixOS. A periodic job backs up my home directory. The remote connection uses an SSH key which I store in /root/keys : The backup server configuration references the public part of this key. Servers The server's configuration is in the nixosConfigurations attribute of flake.nix. Use this script, a thin wrapper around nixos-rebuild , to build and activate a server's configuration: Logs All server send their logs to Loki. To see all logs live: The query command takes a LogQL expression as an argument. Continuous deployment Each commit on the master branch is automatically deployed using Cachix Deploy. For a detailed description see this blog post. To prepare a machine for automatic deployment: 1. Add the system's derivation to the cachix-deploy package in flake.nix 1. Install cachix-agent by including this module 1. In the Cachix Deploy console follow the \"Add Agent\" steps 1. Save the generated ag","default_branch":null,"files":null,"tree":[],"storefront":"/r/wagdav","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/wagdav/homelab/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}