Blog + Homelab + Life Updates
A homelab update along with a few small updates on the rest of my life
So I finally got around to fixing my blog's implementation. I started using Ghost (link) to run my blog over a year ago, but at the time it was not fully integrated into the fediverse with ActivityPub. When they did roll that out I tried a few times to add the ActivityPub integration but it became clear that I was not skilled enough, or I didn't have enough time to learn how to accomplish it.
I finally had some free time over the past week and following several hours of struggling, including an hour of anger at myself for not realizing that images need to be backup up separately from the post contents, my blog is back up and has ActivityPub now! Or at least, in theory it does – it still seems like a bit of a temperamental feature and I can find my blog on other Fediverse platforms like Mastodon but sometimes my posts don't show and sometimes they do. But it is definitely at least partially working some of the time, which is a huge step forward.
As I alluded to however, I did not realize that the "export content" feature only exports the written contents, and thumbnails of each header image, but not the actual image contents embedded in the posts. So I had to go back and manually re-find all the assets from my old posts. There are a few I was unable to track down so some posts are either missing photos altogether or have replacements that I felt were similar based off my memory of the original post.
Homelab Updates
It has been a while since I made a post on what has changed in my homelab, and part of that is due to me being busy, but the biggest reason is not much has changed. I've definitely settled into a status quo where I am focused on maintaining the services I have running instead of finding new ones to install. Below is a quick list of what I have running, what I've closed down since my last update, and a few other small notes.
Core Services
Jellyfin: Still the top used service across my family members that use the servers I've set up. I have two regular users (in addition to myself) who regularly request stuff to be added and are watching content on at least a weekly basis. Jellyfin has been almost entirely issue-free for me since day 1 and I truly don't know how I'd live without it now. (GitHub)
Radarr & Sonarr: I do not use these to their full potential; for my use case I found them overwhelming for managing torrents and too much work to maintain when issues arose. I simply use them to manually find posters and to organize my library when I add new content manually. (Radarr GitHub) (Sonarr GitHub)
MeTube: Another life-saver because I don't think I could go back to using YouTube directly. Recently MeTube added the ability to subscribe to a channel so it will watch for updates but I haven't tried that feature yet since my next service already is set up for the channels I want to watch. So this is just used for one-off videos that I want to grab and it is set up to automatically add to my Jellyfin library. Within less than 5 minutes of pasting the video link into MeTube I can watch it on Jellyfin. (GitHub)
TubeSync: This works by watching a YouTube channel or playlist for new uplaods and will download them on a defined schedule. Admittedly I've found there to be issues with it ignoring my desired timeframe of videos to grab – for example I've told it to only download and index videos from the past month but it will then spend hours indexing years of the channel's videos – but I think its likely that I am the error and simply haven't put enough time into troubleshooting it. My work around has been to just make my own YouTube unlisted playlist where I add a video to it and TubeSync watches my playlist and downloads anything new in it every hour. (GitHub)
Airsonic Advanced: Based only on my own usage of homelab services this would be my #1. I listen to music almost all my waking hours, even sometimes in the background when I'm reading or writing. I have briefly tried other more modern music streamers like Navidrome but honestly I just HATE the Google/Material UI look and I kind of love the old-school style of Airsonic. Something about seeing the raw HTML elements like the checkboxes just feels good. It lets me build playlists, it syncs to ListenBrainz (though there have been sometimes issues where it will submit a song 5+ times when I only listened once), and there are iOS and Android apps that it works with since it uses the subsonic protocol. I definitely recommend it. I use the LinuxServer.io docker implementation to run it: https://docs.linuxserver.io/images/docker-airsonic-advanced/
Immich: I haven't started fully using this because I don't have enough space in my servers yet to backup my entire photo library (I also haven't invested time or money into having a reliable backup plan for my servers if something went wrong) so at the moment I only use it to sync a few folders of photos that I want to be able to access across multiple devices, but it has worked perfectly. I also recently enabled the facial recognition and object identification features because I added a new server to my homelab and had some free compute space – they both didn't take as long as I expected to do their initial setup and it has worked great since. Immich is obviously widely known but I still think it deserves more praise than it gets. (GitHub)
DokuWiki: While my family members don't ever seem to be able to understand the concept or value of a wiki, I use it extensively to keep track of anything and everything that I do with my homelab. It is also helpful for me to make a page and send family members a direct link to that page so they can refer to it. I've never had any issues with it and it runs on an incredibly old server, so it appears to be very lightweight. (GitHub)
KitchenOwl: A few family members use this more than I do since most meals that I make for myself involve less than 3 steps from start to finish. But the service has been super reliable from day one, only a few weird quirks from time to time with how the Markdown displays in some recipes. It's definitely a great option for anyone looking to store recipes and doesn't want to deal with the fancier ones with tons of extra features. (GitHub)
Uptime Kuma: An amazing tool that I always have running in the background and linked to some notification apps in order to notify me if any of my own services go down, as well as some websites and online resources that I use on a regular basis. (GitHub)
Paperless-NGX: I don't use it that frequently because I try to keep paper copies of anything super important, and I also just don't have very many important documents to store in the first place. But I really like the tag-based storage system and the service has been reliable both using my web browser and the iOS app. (GitHub)
RustDesk: A tool that I don't use that often since it is only on an as-needed basis, but when it is needed it is a life saver. I self-host the Rust Desk server on my end and have my family members install the client to be able to remote control their computers from my own. (GitHub)
Homebox: I only included this in my list because it is technically running on my server and because I do see the value in it, I just haven't taken the time to actually start inputting all my items into it. From playing around with it when I first set it up I really enjoyed the UI/UX of it and I definitely plan to start using it to keep a record of all my belongings in case of an event where I'd need to provide a full list of stuff to an insurance company. (GitHub)
Home Assistant
I've put Home Assistant as its own category of my homelab because it is a bit of a mixed bag for me in terms of success and failure. I originally had it running as a docker container but learned that some features, like add-ons, are not available if you don't use the native OS version. So after months of delaying out of laziness, and a few failed attempts to install it as a VM, I finally set it up running as the primary OS on its own server.
That has worked fine for several weeks now, but I have been slow to make full use of the add-ons that I went through all the trouble for in the first place. My biggest desire was to move all my smart home products (just 3 smart lightbulbs, nothing exciting) into my Home Assistant server. Two of the lightbulbs are Wix-brand ones from years ago, so they worked even when I ran Home Assistant as a docker container. But I have a new IKEA-brand Matter-enabled bulb that I needed to use the Matter Hub add-on for. I didn't realize you need some specific hardware to serve as the Matter "reciever" and the ESPs you need to run this are somewhat hard to obtain. So after purchasing two ESP 32s that didn't end up meeting the requirements and then learning I'll need to order the proper one from overseas, I've put this on hold since it isn't a priority. But one say I will have a fully self-built Matter Hub to run any smart home devices I get - including the air quality and temperature ones I want to build myself with the extra ESP 32s I now have.
So I have Home Assistant running the native OS on a server, with the ESPhome and Matter Hub add-ons installed but not really in use yet.
Game Servers
My various game servers also fall into their own category for two reasons. First, I only keep them running when they are in use because I don't need them all active at once. Second, I've gone back and forth between how I run them – whether it be as docker containers or directly on the server. If the game is compatible with Linux Game Server Manager (LGSM) that has been a super reliable platform in my experience so I default to that. For some games however I've just decided to take the easy route and use a provided docker compose, like with Palworld where it is still a younger game and the dev's first language is not English so the documentation is a bit sparse.
Offline Services
Duplicati: Purely due to my own incompetence in how I've configured my VPNs and the lack of time I have into diagnosing the issues, I've had to just shut down my Duplicati server. It could never properly push / pull content between my servers due to permission errors and it was causing me so much more work than just doing manual backups of my essential data that I just gave up for the time being. The app/program itself seems great and whenever I do get around to setting up a proper backup workflow I plan to use Duplicati. (GitHub)
Formbricks: There was no real reason for me to be running this and it took up a HUGE amount of processing power on my servers so I stopped running it. (GitHub)
Glance: I loved building my dashboard but after I finished customizing it I realized weeks had gone by and I'd never actually used it. It's a great tool but I just didn't need it so I eventually just stopped running it, though I do still have the files on my server in case I ever change my mind. (GitHub)
ArchiveBox: I shut this service down because it used up a lot of resources, both storage and compute power, in the hopes I could find a more resource-friendly alternative. I haven't looked super throughly but what I have seen is that this is the most commonly recommended one, and I do want to have a running web archive service available so I may end up re-installing this some time in the near future. (GitHub)
Life Updates
In other news, I moved from a casual position at work into a full-time night shift role. I'm still doing the same job as the last two years but now working 5 days a week has been a big adjustment from working two or three 12-hour shifts per week. It feels like I have way less free time and I'm definitely more tired in what free time I do have, so sadly I haven't had as much time for my hobbies like my homelab or this blog.
On a related note, I have also been filling some of my free time with a few projects that I'm trying to take more seriously. Two are coding-related, and the other is just giving more time to my writing. The first coding project is still mainly a hobby because it is just building a set of custom programs for my homelab, but I am trying to build them in a way that they are extensible and well-documented so that I could make them available more widely if I find they are working well. Some early elements are already in use by myself and family members, like a simple program that tracks some basic health-related metrics on a daily basis and compiles them for easy review by yourself or a healthcare professional.
My goal is for these programs to work together to make a comprehensive health monitoring system that anyone could self-host on even a very basic or old computer system.
The other project relates somewhat to my job in the sense that it is healthcare related but less focused on something that would be used on a personal basis and instead used by healthcare providers or institutions. I'm still super early in the planning process so I don't want to bite off more than I can chew, but as I progress with it I plan to write about it on my blog here and maybe one day it could be a business venture of my own.
The last part of my life update is that I want to be taking more intentional time to focus on my writing. Both informal, casual writing like my blog posts where I don't worry too much about things like proofreading and structure but also more "proper" writing like some of the ideas for short stories and novels I've been playing around with for a few years. I may have already resurrected some writing accounts with online platforms to just get familiar with hearing people's opinions on my writing again, and I have been spending more of my breaks and days off writing chapters for different ideas. We'll see how much of that ever sees the light of day, but certainly as soon as I'm confident enough to attribute my name to any of it I'd be posting about it here.
That's all I've got in my brain for this post. Thanks for reading this, hope to see you for whenever the next one is.
Cheers!