tfw Mozilla goes in on crypto nonsense, and the original creators of the Firefox browser call them out on their bullshit.

The PS5 looks about 5% better than the PS4 did, but my generation will chase "realism" until the day we die.

In 30 years nursing homes will run weekly events where they update the labels on the game consoles to be twice as many bits as before, and everyone will gather and cheer.

In case you're thinking "that's all great, but the scrollbars in Firefox still look like shit as they don't respect OS settings (or their users)": The workaround in the current version of Firefox is to set widget.non-native-theme.scrollbar.size in about:config to adjust the width.

And there's an addon that lets you set the scrollbar color in Firefox to something more sensibe than "light grey on even lighter grey" (what the shit are you smoking, Mozillians):

Show thread

Since the Crux theme for Gtk has been discontinued about a hundred years ago, I had to create my own teal-ish themes..
I decided to share the current iteration for both Gtk2 and Gtk3, based on Greybird:

It also includes a theme for XFCE/xfwm4, but that's just the old Wallis theme they discontinued for some reason.
I didn't have to change anything on Wallis, it continues to work perfectly (and looks way better than any officially supported theme :-p)

Twitter has become the most depressing social network for me because scrolling through is an endless streak of outraged posts, but I only follow reasonable people so all the outrage is warranted, which makes it even worse

linux game bug report copy pasta 

38% of my bug reports come from the Linux community
My game - ΔV: Rings of Saturn (shameless plug) - is out in Early Access for two years now, and as you can expect, there are bugs. But I did find that a disproportionally big amount of these bugs was reported by players using Linux to play. I started to investigate, and my findings did surprise me.

Let’s talk numbers.
Percentages are easy to talk about, but when I read just them, I always wonder - what is the sample size? Is it small enough for the percentage to be just noise? As of today, I sold a little over 12,000 units of ΔV in total. 700 of these units were bought by Linux players. That’s 5.8%. I got 1040 bug reports in total, out of which roughly 400 are made by Linux players. That’s one report per 11.5 users on average, and one report per 1.75 Linux players. That’s right, an average Linux player will get you 650% more bug reports.

A lot of extra work for just 5.8% of extra units, right?

Wrong. Bugs exist whenever you know about them, or not.
Do you know how many of these 400 bug reports were actually platform-specific? 3. Literally only 3 things were problems that came out just on Linux. The rest of them were affecting everyone - the thing is, the Linux community is exceptionally well trained in reporting bugs. That is just the open-source way. This 5.8% of players found 38% of all the bugs that affected everyone. Just like having your own 700-person strong QA team. That was not 38% extra work for me, that was just free QA!

But that’s not all. The report quality is stellar.
I mean we have all seen bug reports like: “it crashes for me after a few hours”. Do you know what a developer can do with such a report? Feel sorry at best. You can’t really fix any bug unless you can replicate it, see it with your own eyes, peek inside and finally see that it’s fixed.

And with bug reports from Linux players is just something else. You get all the software/os versions, all the logs, you get core dumps and you get replication steps. Sometimes I got with the player over discord and we quickly iterated a few versions with progressive fixes to isolate the problem. You just don’t get that kind of engagement from anyone else.

Worth it?
Oh, yes - at least for me. Not for the extra sales - although it’s nice. It’s worth it to get the massive feedback boost and free, hundred-people strong QA team on your side. An invaluable asset for an independent game studio.

@lattera I was just reading your October 2021 Home Infra Status post, when I found this sentence:

> If any system was compromised, an attacker could theoretically pivot to other systems via carefully crafted malicious syslog messages. Would anyone do this? I doubt it.

I can tell you from experience: yes, they would. I've dealt with a case where an internal network was compromised via carefully crafted syslog messages and a bit of social engineering.


If you're red-green blind and wanna make git gui's diffs more readable, edit /usr/lib/git-core/git-gui and replace all instances of "" (in lines starting with "$ui_diff") with "blue".
Then the diff will be red vs blue instead of red vs green.

(gitk lets you configure the colors in Edit -> Preferences -> Colors, I wish git gui had color settings as well, or at least used git config's color.diff.*)

All browser prompts need a "Lie" function in addition to Allow and Block.

<Website> wants to:
* Know your location
* Use your camera
[ Allow ] [ Block ] [ Lie ]

You don't need privacy until you do, and then it is too late

Never ever ‘declaw’ your cat or any other cat for that matter. NEVER.

I reported a bug at GCC:

Which was closed because apparently the relevant flag for this is -ffp-contract which defaults to "=fast" which can apparently violate the language standard.

I'm really shocked that GCC thinks it's ok to violate the language standard in "normal" optimization levels - this is what -Ofast and -ffast-math etc are for!

Show thread

Unfortunately fmsub uses a "infinite precision intermediate result" for the multiplication, so in the end you get the difference between the multiplications in double(?) precision and in single precision, which often is not 0.
This already happens with relatively small values in the hundreds. Clang only does this with -ffast-math (which is OK).

Godbolt link:

More elaborate writeup at

Show thread

TIL that GCC miscompiles cross product calculations if the x86 FMA extension is enabled and -O2 or higher is used (*without* -ffast-math or similar).
float z = v1.x * v2.y - v1.y * v2.x should be 0.0 if both multiplications have the same result (like when v1==v2), but it isn't, because GCC tries to be clever and does a normal multiplication for v1.y*v2.x (stored as 32bit float), but then uses vfmsub132ss for v1.x * v2.y and subtracting the other result.

Listening to fitness advice from people who experience runner's high is like listening to dating advice from hot people.

Head's up: #Qualys teared the #Exim MTA literally apart. They discovered 21 #vulnerabilities: 11 local vulnerabilities, and 10 remote vulnerabilities.

If you run Exim connected to the Internet or local with untrusted users, you should either patch now or shut it down.

Show older
Mastodon for Tech Folks

This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!