After not noticing I’d been messaged until hours later, I decided to amend the userscript I use to watch for new GOG.com forum replies so it also watches other kinds of notifications (ie. private messages, friend requests, and game library updates).
GOG.com – Updated Thread Count in Title
More details on the GreasyFork page.
As you start collecting a lot of ScummVM-compatible games, it gets awkward to keep track of what you’re still looking for… so I wrote a little script which lets you check them off and have them fade out so you can easily scan what remains.
It’ll remember your list between visits and it’s on GreasyFork as Mark owned ScummVM Games if you want it.
After spending so much time on fandom-specific sites with much better search systems (like Twisting the Hellmouth), Fanfiction.net’s search system feels really constricting.
As such, I’ve started to hack together a little userscript to make up for that. As of this writing, it hides slash and stories which involve a list of fandoms I’m not interested in. (So I can formulate searches like “All Harry Potter crossovers except series X, Y, and Z”)
You can find it (and
instructions for customizing it screenshots) over on GreasyFork.
Fanfiction.net Unwanted Result Filter
UPDATE: No instructions necessary anymore. It now has a nice configuration GUI.
UPDATE 2: And I now also have another little script for setting custom default values for Fanfiction.net’s own limited result filters system.
Inspired by this post for Windows on Raymond Chen’s blog, detailing how to make a best-effort attempt to open a query in the user’s default browser and search provider, I decided to write a Linux equivalent.
Since Raymond used C# for Windows (what could be more Windows?), I decided to use Bourne shell script for the Linux version (what could be more UNIXy?). Of course, me being me, I couldn’t help but add more error handling than Raymond does for his little programs.
Could not embed GitHub Gist 894f5053afeebe57d249: API rate limit exceeded for 184.108.40.206. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)
One of the simplest ways to make a multi-monitor system look more impressive is to set a desktop background which spans across all of the monitors. Just scale the image up to the smallest size that fills all of the visible desktop space, then cut out monitor-shaped pieces to display.
Every system (even lightweight, older Linux desktops) supports this… every system except one. When KDE went from 3.5.x to 4.x, they dropped support for spanning a background across all desktops and, to this day, they still haven’t brought it back.
…and since everything more lightweight has bugs with the desktop layout I’m currently dealing with while I wait for the new monitor bracket I ordered, that’s a problem. (Even worse, there’s no API I could find to programmatically set a background either!)
The solution I settled on was to write a little Python script which uses maybe half a dozen lines of PyQt 4.x/5.x calls (before line-wrapping and boilerplate) to do what KDE should have, then spits out image files to be set as per-monitor backgrounds.
I also implemented a
--randomize option which can be used with cron to produce input for KDE’s slideshow mode. (Basically, you set each monitor background to be a single-entry slideshow that the script updates)
Just give it an image (or
--randomize and a list of files and/or folders) and an output directory. (See
--help for more details)
UPDATE: It now also gives more control over how the background is matched to the desktop’s aspect ratio via
--gravity and I included, as an example, the
.desktop file I use to integrate it with Geeqie via Zenity. (KDialog’s equivalent to
zenity --list is inferior.)
Could not embed GitHub Gist cd9dc27aa2db42e0a290: API rate limit exceeded for 220.127.116.11. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)
As I mentioned on previous occasions, I don’t take too kindly to people trying to make me pay once for a game and again for its soundtrack and, as a matter of principle, I rip my soundtracks straight from the data files I paid for rather than pirating the officially separated versions.
This time, it’s Desktop Dungeons. Unfortunately, this is a relatively recent Unity Engine game, so the only tool I’ve found which will extract the audio is Unity Assets Explorer.
Thankfully, it’ll run just fine inside Wine, so I wrote a script similar to what I did for Cave Story+.
So, here are the Linux instructions for extracting your Desktop Dungeons soundtrack from the game you bought:
- Download Unity Assets Explorer 1.2 or newer
- Use it to open
- Extract all of the
- Load them all in your music player and manually delete the ones which are sound effects. (You should be left with pairs of
- Download the following script and install the packages listed in the Requirements section
- Place the script in the same folder as your
.ogg files, run it, and wait.
Could not embed GitHub Gist 2e3748af264c70cf32c2: API rate limit exceeded for 18.104.22.168. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)
Not much to report over the last few days. I was mainly busy ripping old CDs so I could store them in the closet.
cdparanoia -B and ddrescue (instructions) are essential for damaged audio tracks and CD-Rs. However, for old DOS/Win3.1-era CD-ROM games which use Redbook audio, they don’t really produce something that DOSBox or CDEmu+Wine can mount and play.
As such, I whipped up a quick little script for generating BIN/CUE pairs based on advice for ripping Playstation games under Linux. Here it is in case anyone wants it (you’ll also want my swab.py script that works but is long overdue for a rewrite):
Could not embed GitHub Gist 4c8680be0e19f5448d9b: API rate limit exceeded for 22.214.171.124. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)