Syncing Plex Watch State to Jellyfin

I have been using Plex to manage and serve the media on my homelab for the last few years. After recent worrying trends have started to emerge on Plex I have started exploring a migration to Jellyfin instead.

In this post I'll detail how I am syncing my watch state between both Plex and Jellyfin as I decide which one to stick with.

read more  ↩︎

Configuring a Minecraft Server Using NixOS

Minecraft can be configured simply by using the provided NixOS modules. Tailscale have published a blog post showing how to utilise this and get a working server.

This setup is a bit limited when it comes to installing mods and mod toolchains declaratively. Nix-minecraft was developed for this purpose.

read more  ↩︎

Remote Deployment of NixOS Using Nixos-anywhere and Disko

Now that the use cases for my homelab are growing, I'm finding a need to separate different services into their own virtual machines. This has been a bit tedious in the past, as each time I've had to format disk and create a new NixOS configuration.

Nixos-anywhere and Disko combine together to make this simple. This post explains how to use these tools.

read more  ↩︎

Restoring Nextcloud From Backup on NixOS

Occasionally when self hosting I've found a need to backup and restore the Nextcloud database. I have a regularly scheduled Postgres backup thanks to the following nix config:

read more  ↩︎

Troubleshooting Proxmox Installation

I encountered some issues when installing Proxmox on a new homelab. One method of solving these would have been to install Debian and then Proxmox from there. I decided to try my hand at troubleshooting the issues instead.

read more  ↩︎

Useful References for Understanding Nix/NixOS

I recently used Nix to configure my M2 Macbook Air, and manage all of my dotfiles. In the process I found a lot of useful references, detailing the ins and outs of Nix and NixOS.

I'm currently building out a similar solution for my homelab, and thought to document a list of useful references here.

read more  ↩︎

Using Dev Containers to Standardise Development Environments

After running my own homelab for a while, I've become pretty familiar with using containers - mostly via Docker, though I may have to make the switch to podman after a recent announcement. One thing I wasn't aware of was the ability to run containers for the specific purpose of creating a development environment.

read more  ↩︎

Useful References for Understanding ZFS

I've been looking to upgrade my existing homelab (currently a 2012 Mac Mini which I had lying around). I plan to use ZFS when I do upgrade, as it has a lot of great features for data integrity, redundancy and backups.

I've found a number of useful references in the process, which I thought to include here:

read more  ↩︎

Encrypting Secrets in NixOS With Agenix

After playing around with NixOS and creating declarative configurations I quickly came across a need to provide encrypted secrets, rather than clear text. This is a requirement to be able to save configurations on GitHub and is recommended anyway, given that clear text secrets are made available on the world readable Nix store.

read more  ↩︎

How to Configure Nextcloud on NixOS

Nextcloud provides a very polished experience when looking for a solution to self host your personal files, and replace tooling such as Google Drive or Dropbox. In this post I run through how I configured Nextcloud for use on NixOS.

read more  ↩︎

Configuring Backup Solutions in NixOS

One of my first consideration in setting up a homelab has been about a backup strategy - it's difficult to have trust in a self-hosted instance of Nextcloud when I don't know whether data will exist after a hardware fault. One common backup strategy is the 3-2-1 approach:

read more  ↩︎

Installing NixOS on a Temporary File System

In this post I explain how to install NixOS using a temporary file system (tmpfs). This is a precursor to the post I wrote about configuring NixOS for impermanence, and walks through the installation.

read more  ↩︎

Configuring NixOS for Impermanence

After reading posts from both Graham Christensen and Elis Hirwing about the idea of impermanence in NixOS I decided to try setting it up on my homelab. The basic idea is that we configure the system to use a temporary file system, where everything is wiped after a reboot, unless specified otherwise.

read more  ↩︎

How To Configure Systemd Services and Timers in Nixos

Whilst migrating my homelab from Ubuntu to Nixos I came across the need to schedule a cron job, which I had setup to sync my media collection from a remote server. After doing a bit of research I discovered that rather than using a cron job, the preferred method is to create a systemd service and schedule it using a systemd timer. The major benefits of doing so are:

read more  ↩︎

Configure Proxmox Package Repositories

I use Proxmox to create and manage VMs on my existing homelab (2012 Mac Mini). I use a combination of both VMs and containers for running applications and services, as I don't always like to force everything to run in a container. For a deeper discussion on this topic I recommend listening to this podcast.

read more  ↩︎