unrelenting.technology

Hi! You are viewing the archive of unrelenting.technology. This website is no longer updated, my current one is val.packett.cool. Check it out instead :)

Notes

I’m working on a server-side HTTP cache! It’s a Haskell WAI middleware. It’s controlled by Cache-Control / Vary. It doesn’t have real storage backends yet, but it has a test that I’m really happy with and some thoughts about using caches against DoS attacks in the README.

Oh, also it’s probably a good example of OOP-ish Haskell. Thanks to GADTs, the CacheConf constructor “eats” the backend types :D It’s like class Conf { BackendInterface backend; } in Java/C#.

A couple days ago, I saw an email from Keybase saying that someone I know started tracking me. So I typed the command to do the same and… realized I don’t remember my GPG passphrase. I’ve been using it mostly for signing git tags, but I haven’t done that in a couple months.

Brute force with rephrase and even John the Ripper didn’t help. Found the revocation certificate, printed on paper. OCR’d, fixed the text, typed it manually – “Bad signature”.

Today, I needed to actually sign a git tag. Guess what. I remembered the passphrase! :D

Repost of a post by https://petermolnar.net/about on

URL: leclan.ch/tabs/ Unfortunately, I feel I have to increasingly justify myself for preferring tabs. I do justify it, though. […] Tabs are inherently perfect for indentation. They embody the concept of indentation. […] Their size adapts to anyone’s readability needs, unlike spaces which force you to accept the project’s indentation levels. […] More perfectly in design, tabs can be replaced by spaces with sed; but such an operation only goes one way. And that is exactly why I prefer tabs as well. It’s a spe…

Modern Android problems: update to a CyanogenMod nightly which is based on a slightly newer AOSP → need to flash vendor.img from the newest factory image → WPA2 EAP-TLS Wi-Fi connection starts behaving weirdly: not connecting, then connecting and finding “no internet” after a few seconds, etc.

Last time I fixed this by issuing a new certificate and using it, now even that doesn’t seem to help. Decided “fuck it” and connected to my old WPA2 Personal network :D

I like how one of the dmesg lines on my laptop is this:

acpi_tz0: _CRT value is absurd, ignored (200.1C)

:D

The Windows install on my desktop suddenly decided to start resetting some settings every time I log in. The wallpaper, Start and taskbar pinned items, Firefox profile… Thankfully, not the Steam profile :D

Oh, by the way, recently I was reminded of one of the most infuriating Windows things. It’s 2016 and Windows is still not UTF-8 everywhere. The cmd console is whatever (CP1251 for Russian locale), Visual Studio saves by default in whatever (I’ve seen CP1251 and… UTF-8 with BOM). There’s also the \r\n newline stuff. And Windows users are convinced that Windows defaults aren’t the problem, it’s those weird Unix people who cause problems.

qt creator what are you doing

why is this draggable

Added Pushover notifications to Sweetroll. It’s a JavaScript plugin that calls an HTTP request function provided from Haskell, because why not :-)

You know the operating system chooser light blue screen that pops up when you upgrade to a new build of Windows 10?

I just saw that it can become “not responding” for a moment – complete with a white overlay and spinning circle cursor!

So there are fully blob-free desktop computers. For $3100. Based on… IBM POWER8. Wow. I didn’t even think IBM would be the one to work on the most open CPUs.

A much more realistic way to blob-free computing seems to be the open Raspberry Pi firmware. It’s not a drop-in replacement yet, but it already runs ARM code with access to the SD card and the UART console!

Oh, and the Raspberry Pi is great from the “State considered harmful” perspective — everything is loaded from the SD card. Which also makes experimenting with replacing the firmware very safe and easy.

On Android, it’s possible to take a shadertoy and (with obvious modifications) turn it into a live wallpaper, thanks to ShaderEditor! Unfortunately, looks like the live wallpaper’s render is tied to the whole UI render, so if your device can only manage around 40 fps with the shader you choose, the UI will feel slow when the wallpaper is visible.

Remember Samsung laptops bricked by Ubuntu and MSI laptops bricked by rm -rf on efivarsfs?

Turns out the “screw EFI, good old BIOS was always bulletproof” response is not entirely accurate. There was Windows malware that destroyed the BIOS!

Damn, OpenBSD already has a thing called slowcgi. I wanted to make a different thing and name it SlowCGI D:

Just got a WhatsApp notification through GmsCore and replied to it from a Pebble using Gadgetbridge. Android without Google apps works very well!

Wow, the new Pebble kickstarter is, once again, amazing. Larger screens on watches and a “tiny, unlocked Android 5.0 computer” with Wi-Fi and 3G, so… maybe the dream external modem? (As in, external modem + “smartphone” without the phone part, because embedded mobile modems are scary from a security perspective)