The One with the Thoughts of Frans

I Broke Another Nutcracker

Unlike the last one, this one didn’t come for free with some nuts.

Probably the result of continued shear forces at work.

Now what to replace it with… although I like it, a known failure every year or two probably isn’t worth the hassle.


2017 in movies

I started logging the movies I watched in Letterboxd after IMDb broke the final straw. IMDb, the only website I’ve regularly visited for twenty years, had been getting more annoying for years anyway. Letterboxd sent me a clever little overview e-mail in commemoration.

Yep, I like Vin Diesel. Sue me.

I have no idea why it opted for those three specifically when I gave Wonder Woman and Léon the same rating, plus I explicitly marked the Disney movie as a rewatch. Basic Instinct never appealed to me for whatever reason, but last year I found out that it was directed by Paul Verhoeven, one of my favorite directors. He didn’t disappoint.


Aggressive Doubling

I bought Mini Metro when in a GOG sale recently. It’s more challenging than it looks. My most effective Mini Metro strategy yet consisted of aggressive line doubling.

The tutorial is lackluster at best. It shows you how to connect two cities and how to add trains to lines, even though these are pretty much the only truly intuitive things about the game. It doesn’t tell you that there are little symbols like squares, circles and triangles in the carriages that indicate where the passengers want to go. It also doesn’t tell you that you have to drag the track over a city to undo it, or that the top right features a clock with the day of the week as well as the ability to increase speed (very important) and to pause.

If the game manages to captivate me for another few hours I might look up what strategies people have come up with. The one shown in the screenshot is the first I tried that got me to 1500 passengers with ease, whereas I was stuck at around a 1000 before then.

The game doesn’t seem to tell you your total playtime, but by counting up the individual levels I can see that I already spent 134 minutes playing it in the past three days. Washinton DC is the 14th level.

It doesn’t have quite the charm of a Railroad Tycoon, but there’s something oddly satisfying about the game. Mini Metro might be worth a try if the idea of a simpler Railroad Tycoon sounds appealing.


Disable Firefox Fullscreen Animation

Go to about:config, as ever. Then disable browser.fullscreen.animate.


Remove dns-prefetch from WordPress 4.9

Most people seem to have switched to statically generated blogs like Hugo by now, but I’ve been using WordPress for some 13 years and combined with WP-Super-Cache it’s been static for pretty much that entire time. There’s little point to putting in extra time and effort just for some extra nerd cred.

On the downside, every new 4.0+ release seems to add more cruft to the header. My functions.php consists of an ever-growing list of remove_action incantations. Here’s the latest addition, necessitated by WordPress 4.9.

// remove WP 4.9+ dns-prefetch nonsense
remove_action( 'wp_head', 'wp_resource_hints', 2 );

For those interested, here’s my full messy collection, including a few hints I commented out.

add_post_type_support( 'page', 'excerpt' );// See
remove_action('wp_head', 'rsd_link');// Windows Live Writer? Ew!
remove_action('wp_head', 'wlwmanifest_link');// Windows Live Writer? Ew!
remove_action('wp_head', 'wp_generator');// No need to know my WP version quite that easily

// remove WP 4.2+ emoji nonsense
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );

// remove WP 4.9+ dns-prefetch nonsense
remove_action( 'wp_head', 'wp_resource_hints', 2 );

// disable embeds nonsense; not even sure what it does
// Remove the REST API endpoint.
remove_action('rest_api_init', 'wp_oembed_register_route');
// Turn off oEmbed auto discovery.
// Don't filter oEmbed results.
remove_filter('oembed_dataparse', 'wp_filter_oembed_result', 10);
// Remove oEmbed discovery links.
remove_action('wp_head', 'wp_oembed_add_discovery_links');
// Remove oEmbed-specific JavaScript from the front-end and back-end.
remove_action('wp_head', 'wp_oembed_add_host_js');

// Jetpack
//remove_action('wp_head', 'shortlink_wp_head'); // Don't need shortlinks
// No jQuery! (als Jetpack
//if( !is_admin()){
	//wp_register_script('jquery', (""), false, '1.3.2');

// remove OneAll Social script from regular page
remove_action ('wp_head', 'oa_social_login_add_javascripts');


Why Windows Is Better Than PulseAudio

Wait, what? You heard me. On Windows you can set sample rates per sound card. It looks like this.

Setting one soundcard to 24 bit, 96 kHz in Windows. Windows refers to this as “Studio Quality.”

In PulseAudio you’re limited to a primary and secondary sample rate. I’ve actually been using pasuspender more, also because its AC3 passthrough never seemed to work.

CommentsTags: ,

Is My Firefox Out of Date?

When I logged in, WordPress tried to inform me that the particular browser I was using was out of date.

WordPress’ “Your browser is out of date” greeting.

So, is it?

Well, we can take a look at the Firefox ESR download page to find out.

The current version of Firefox ESR is 52.4.1, releasenotes here.

Nope. Still Firefox 52, which will remain supported until Firefox 60.

The Firefox support window. Source:

Always fun, these automated checks. 🙂


Fix Minuscule Zoom Limit in Evince

I have plenty of RAM and a UHD monitor, but Evince sees it fit to limit zoom to under 200% in many a newspaper-sized document.

# get current cache size (defaults to 50?)
$ gsettings get org.gnome.Evince page-cache-size
uint32 50
# set it to something more reasonable like 500
$ gsettings set org.gnome.Evince page-cache-size 500

In smaller documents this makes pretty much the entire document exist in RAM, which eliminates loading nonsense while going back and forth in a document. Overall, a much smoother experience.

I understand the reason for the hard-coded default limit, but I have to wonder if there isn’t a more dynamic way of handling this. Say, either 50 MB or 2% of total memory.

Comments (1)

Adding “Search in Folder” to Thunar Custom Actions

Thunar is one of the best graphical file managers I’ve used, and I say that even while I own a Directory Opus license for Windows. I have some minor quibbles like very sparsely populated default actions on files and folders, but the biggest flaw is doubtless that the breadcrumb navigation doesn’t feature all of the regular folder interactions. In any case, in this blog post I intend to show how I improve on both Thunar and GNOME Search in one fell swoop.

I’ll start with a screenshot of the desired end result. You right click on a folder, and you’re presented with the option to search for files in it.

My context menu with Search for files.

In order to add this custom action, you’ll have to configure custom actions.

Edit → Configure custom actions.

Then you click + to add a new one, or you can edit an existing action.

Choose whether to add or edit a custom action.

You can type the name that will show up in the context menu, a little description for yourself, choose a fancy icon, and under appearance conditions you can choose whether this custom action applies to a specific type of files or folders. Unfortunately this dialog can’t be resized, but since you can copy and paste it’s not too bad.

gnome-search-tool --path=%f --contains=
The Edit Action dialog.

Finally, here is the result. Note that since I started gnome-search-tool with --contains=, the option to search for files containing specific text will show by default.

GNOME Search for Files (gnome-search-tool) with Contains the text expanded by default.

You can perform similar tricks with any of these other options.

$ gnome-search-tool --help
  gnome-search-tool [OPTION...] - the GNOME Search Tool

Help Options:
  -h, --help                      Show help options
  --help-all                      Show all help options
  --help-gtk                      Show GTK+ Options
  --help-sm-client                Show session management options

Application Options:
  --version                       Show version of the application
  --named=STRING                  Set the text of "Name contains" search option
  --path=PATH                     Set the tet of "Look in folder" search option
  --sortby=VALUE                  Sort files by one of the following: name, folder, size, type, or date
  --descending                    Set sort order to descending, the default is ascending
  --start                         Automatically start a search
  --contains=STRING               Select and set the "Contains the text" search option
  --mtimeless=DAYS                Select and set the "Date modified less than" search option
  --mtimemore=DAYS                Select and set the "Date modified more than" search option
  --sizemore=KILOBYTES            Select and set the "Size at least" search option
  --sizeless=KILOBYTES            Select and set the "Size at most" search option
  --empty                         Select the "File is empty" search option
  --user=USER                     Select and set the "Owned by user" search option
  --group=GROUP                   Select and set the "Owned by group" search option
  --nouser                        Select the "Owner is unrecognized" search option
  --notnamed=STRING               Select and set the "Name does not contain" search option
  --regex=PATTERN                 Select and set the "Name matches regular expression" search option
  --hidden                        Select the "Show hidden and backup files" search option
  --follow                        Select the "Follow symbolic links" search option
  --mounts                        Select the "Exclude other filesystems" search option
  --display=DISPLAY               X display to use

Also see Finding Files on the Ubuntu wiki.

CommentsTags: ,

Lossless Cut with ffmpeg

As another addendum to my notes on image optimization, here is how to cut a piece of audio or video as losslessly as possible with just ffmpeg on the commandline.

In this example we want the piece of audio from 1:30 to 2:00.

fmpeg -ss "1:30" -i audio-full.m4a -c copy -t "2:00" audio-cut.m4a


Older Entries »