Migrate homeserver from debian to NixOS #9

Open
opened 2025-08-29 19:21:52 +02:00 by florian.richer · 0 comments

The main goal of this project, it's to migrate to declarative Nix configuration instead of this configuration.

For the migration, the following steps are required:

Name Status Old configuration New configuration
Add hardware-configuration from the server hardware Terminated No old configuration File
Configure Docker Terminated Ansible configuration NixOS option
Configure SSH Server Terminated Ansible configuration NixOS Configuration
Migrate BORG configuration Terminated Ansible configuration NixOS configuration
Migrate Traefik docker configuration Terminated Ansible configuration NixOS Configuration
Migrate Forgejo docker configuration Terminated Ansible configuration NixOS Configuration
Migrate Home Assistant docker configuration Terminated Ansible configuration NixOS Configuration
Migrate Portfolio docker configuration Terminated Ansible configuration NixOS Configuration
Migrate Ryot docker configuration Terminated Ansible configuration NixOS Configuration
Migrate Vaulwarden docker configuration Terminated Ansible configuration NixOS Configuration
Migrate Watchtower docker configuration Terminated Ansible configuration NixOS Configuration
Migrate Whoami docker configuration Terminated Ansible configuration NixOS Configuration
Test on built vm from NixOS configuration Success
Test installation on VM with two disk to simulate the work and backup disk with real data No tested yet

WARNING

Remove 0.0.0.0/0 and ::/0 in traefik configuration before deploy

The main goal of this project, it's to migrate to declarative Nix configuration instead of [this configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration). For the migration, the following steps are required: | Name | Status | Old configuration | New configuration | |---------|---------|---------|---------| | Add hardware-configuration from the server hardware | Terminated | No old configuration | [File](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/hardware-configuration.nix) | | Configure **Docker** | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/docker) | [NixOS option](https://git.mrdev023.fr/florian.richer/nixos/src/commit/eb824e8061cfb03d05ae44e889e784b22ec4388b/modules/system/services/docker.nix#L25) | | Configure **SSH Server** | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/ssh) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/commit/461140c6081f29bbeb26ed8cbfa420ae72b64bc7/hosts/homeserver/configuration.nix#L64-L67) | | Migrate **BORG** configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/borg) | [NixOS configuration](https://git.mrdev023.fr/florian.richer/nixos/src/commit/eb824e8061cfb03d05ae44e889e784b22ec4388b/hosts/homeserver/configuration.nix#L51-L60) | | Migrate **Traefik** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/traefik) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/traefik.nix) | | Migrate **Forgejo** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/git) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/forgejo.nix) | | Migrate **Home Assistant** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/home_assistant) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/home-assistant.nix) | | Migrate **Portfolio** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/portfolio) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/portfolio.nix) | | Migrate **Ryot** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/ryot) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/ryot.nix) | | Migrate **Vaulwarden** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/vaultwarden) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/vaultwarden.nix) | | Migrate **Watchtower** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/watchtower) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/watchtower.nix) | | Migrate **Whoami** docker configuration | Terminated | [Ansible configuration](https://git.mrdev023.fr/florian.richer/myserver-configuration/src/branch/main/roles/whoami) | [NixOS Configuration](https://git.mrdev023.fr/florian.richer/nixos/src/branch/main/hosts/homeserver/containers/whoami.nix) | | Test on built vm from NixOS configuration | Success | | | | Test installation on VM with two disk to simulate the work and backup disk with real data | No tested yet | | | **WARNING** Remove 0.0.0.0/0 and ::/0 in traefik configuration before deploy
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: florian.richer/nixos#9
No description provided.