Goodbye Apple Music

Recently, Apple Music has been disappointing me… so I replaced it! I originally looked at Lyrion music server, but it didn’t have iOS support. So instead, I went with Navidrome. I partitioned my hard drive to have space for all my music files and spun up Navidrome, beet (which manages the library), and Deemix. Within about an hour, I had all the albums I actually listen downloaded. I also found a cool python script called re-command. It basically gives you weekly recommendations using the listenbrainz algorithm and downloads them, then deletes them if you rate them poorly. Cool system. Only issue is the original script just fully did not work. I rewrote it to use streamrip and it works fairly okay for my purposes. I set it up to run on a schedule using windows scheduler and a quick batch script. Very happy with how it’s been working thus far! I listen to a lot of weird music, so It’s nice to be able to just drag a folder into my music directory and have it just work.

There’s a little bit of jank here and there, like, for example, radio doesn’t work with feishn for… some reason? Navidrome can’t delete songs from your library either, which is a weird limitation.

With that being said, I’m going to keep exploring different things to use with Navidrome, because it seems pretty powerful. 


Navidrome is really fun, but I have since shut off the container. The usefulness of having specific versions of songs didn’t outweigh the convenience of a streaming service. I might come back to this idea though. As I said, if someone made a subsonic client that you could drag and drop files into, delete files, aggregate information from musicbrainz, download with slskd, and intergrated with listenbrainz for reccomendations, you’d be golden!

This website

I started this website as a way to teach myself HTML and some more complex networking. It’s honestly taught me a lot and I encourage whoever is reading this to go onto github pages and make a simple Jekyll site. 

I started out by trying to use Neocities because it was a free hosting service, but quickly realized that the workflow of adding content to that site by writing html line by line just wasen’t going to work for me. 

I then learned about github pages, and built myself a website using Strapi as my CMS (with CKEDITOR as my WYSIWYG editor, and a plugin to make it work with Jekyll), Jekyll as my SSG, and Jenkins as my CI/CD. All of this is running in docker containers on my home server. It took some time to get everything intergrated, but works fairly well. I like the fact that this method seperates my home network from all the actual hosting with an airgap, while still allowing me to easily add new content.

I chose to make my own website sort of from scratch because I wanted the control to choose how each page looked. Building it from scratch also gave me an opportunity to add some fun back to website design with Javasript snippets like Steve the cat on the homepage. 

I feel like modern web design standards expects everything to look clean and steril, and in doing so, the web has become too boring.  Its a shame to me that html lost marquee and blink, because they were fun. They were tools for people to make a fun little website for themselves. 

When designing this website I took a lot of inspiration from archived Geocities pages and gifcities from the internet archive.


10/17/25

As my abilities for networking and computer wizardry have grown, I too had outgrown my old website. I have since drastically changed how this website works. I have moved it to an lxc container running under proxmox running wordpress. I hate to be a conformist but wordpress is just significantly easier to use than the weird jekyll strapi thing I had going before. WordPress definitely has its own quirks, but it’s more of a “just works” experience. I have also bought a proper domain name etc. Currently I have an lxc container running under proxmox (specifically: https://www.turnkeylinux.org/wordpress), with cloudflare tunnel connecting it to the internet. So far its worked quite well, my only annoyance being spending an hour trying to debug, only to realize I had to disable the apache mod evasive to allow access to the admin panel.