MiniDLNA 1.2.1 “Hacker Inside” presentation icon patch
Two nights ago I got around to finally setting up a quick uPnP/DLNA daemon so that various devices around the house would be able to access my ripped media (no, I don’t like scratching discs) without needing to use Samba/CIFS. MiniDLNA seemed to be the simplest solution to the problem, so after compiling half a dozen dependencies I got it running.
Unfortunately, there’s a special icon used for displaying the presence of a media store to the user, and in the case of MiniDLNA, it is unfortunately Tux the Linux Mascot. Unfortunately, Tux is not particularly attractive. Making matters worse is that on the Roku the icon supplied winds up being slightly wider than it is tall (despite the fact that the icon is supposed to be square) so Tux appears more pudgy than usual. There is no (normal) way to change this icon at runtime because it’s baked into one of the source files (icons.c). …and it’s in there having been converted to a very large char array, so it’s not like one can just copy-paste.
So, after hitting up https://commons.wikimedia.org/wiki/File:Hacker_Inside_Logo.svg for a copy of the logo (because I didn’t have it on the laptop), I generated blue-on-white copies in the two formats and sizes needed (PNG and JPG, 48px and 120px), and then scrounged around a bit more until I remembered what xxd
(use -i) was useful for. A quick unified diff for posterity and rebuild of the binary package and Bob’s your uncle. The only caveat is that after rebuilding/restarting minidlnad on the media server, if you’re using a Roku you’ll actually need to restart the Roku before it’ll request the presentation icon again.