Jae's Blog

Yet another reason you should use Signal

If you haven’t left Telegram behind yet, time to do so.

The CEO of the company, Pavel Durov, posted the following today (archive link with full message):

This summer, Telegram users will gain access to the best AI technology on the market. Elon Musk and I have agreed to a 1-year partnership to bring xAI’s chatbot Grok to our billion+ users and integrate it across all Telegram apps

This time, it’s not a hoax, this is really happening.

At this point, Telegram is on a race to the bottom. Use Signal instead, it doesn’t suck like Telegram.


Edit: if you want to come to the comments to:

  1. Complain that Signal isn’t your use case
  2. Complain about how “bad” Signal is
  3. Try to chip in with suggestions of random messengers
  4. Look for some kind of debate on messengers

Think really hard about it and skip it, it’ll make everybody’s day (including yours) better.

Solokeys is still dead

Almost one year after hinting to a return, Solokeys is still dead, as shown by their repos, issues, and discussions never being answered.

Funnily enough, they are still selling those on their website, but that goes without saying you shouldn’t even touch those given the great lack of care they’ve shown in the project.

A guide for ARM Resonite session servers

You might be familiar with my set of libraries that allows people to run the Resonite Headless Server Software on ARM-based machines.

Well just fresh out of the oven, created yesterday, we now have a guide on how to exactly run a headless on ARM on the Resonite wiki.

While this is not supported officially, there has been a lot of success in getting this working, the last annoying component being SteamWorks.NET.

If you have any improvements for the page, don’t hesitate to put them on the talk page or to edit the page directly!

The best way to edit wikis

I’m a frequent editor on the Resonite wiki, meaning I spend quite a lot of time editing pages (duh).

Recently, I’ve discovered the best way of editing the wiki so far, all from my favourite code editor, Sublime Text.

For this, you’re going to need to set up packagecontrol and install the Mediawiker extension.

Once you have the extension installed, head to “Preferences” → “Package settings” → “Mediawiker” → “Settings”.

Copy the default configuration on the left to the right pane, and within the copy, add the following configuration (note that this is mine, so feel free to modify it to fit your needs):

"site":
{
    "Resonite Wiki": {
        "authorization_type": "cookies",
        "host": "wiki.resonite.com",
        "path": "/",
        "pagepath": "/",
        "username": "",
        "password": "",
        "domain": "",
        "https": true,
        "is_ssl_cert_verify": true,
        "proxy_host": "",
        "use_http_auth": false,
        "http_auth_login": "",
        "http_auth_password": "",
        "oauth_access_secret": "",
        "oauth_access_token": "",
        "oauth_consumer_secret": "",
        "oauth_consumer_token": "",
        "cookies_browser": "firefox",
        "preview_custom_head": [],
        "retry_timeout": 30,
        "is_wikia": false,
        "show_red_links": false,
        "preview_sandbox": "",
        "search_namespaces": "",
        "summary_fail_buf": "",
    },
},Code language: JavaScript (javascript)

Now to use this, make sure you’re logged into the wiki using Firefox, do CTRL+SHIFT+P, then “Mediawiker: Open Page”, type a page name (for instance User:J4 in my case), and voilà, you can now edit the wiki from the comfort of Sublime Text.

Screenshot of Sublime Text showing the user page of the user J4, highlighting wikitext syntax.

When you save the file, it will ask you to enter a change set description and will sync your changes to the wiki.

Have fun editing!

The Telemessage fiasco keeps getting better

If you haven’t been keeping up with the news lately, after the whole Signal fiasco, it appeared that USA government officials are using some fork called “Telemessage”.

That app claims to offer backup solutions for popular messengers including Signal, to comply with government directives. Funnily enough, their website got completely wiped, a large change from what it was a few months ago.

Putting aside all the issues that using a Signal fork exposes you to, it appears that despite their marketing, they could access plaintext messages.

Even better, according to 404 Media, the entire thing is now under investigation thanks to their reporting on the matter.

Edit: a senator asked for an investigation, my bad.

If you’re interested, I’ve archived the source code of both the Android and iOS apps on my GitLab instance (tho those aren’t rare):

Overall, it’s quite fun to look at this from the outside, but also a bit worrying.

And remember, if you switch to Signal, use the official version and don’t add random journalists to your convos.

Setting up NetNewsWire with Miniflux

As I previously mentioned, I use Miniflux to sync all my RSS feeds around.

Today, I discovered NetNewsWire, a free and Open-Source app allowing you to read, and sync, RSS feeds on iOS. One issue: when opening the app, going in the settings, and trying to add an account, Miniflux is nowhere to be seen.

It’s actually really easy to sync your feeds there. For that, you want first to log into your Miniflux account and head to the settings.

Head to “Integrations” and scroll down until you see the “Google Reader” section. There, enable it, then set a username and password. Don’t forget to click “update” when this is done.

Screenshot showing the "Google Reader" section with an username and password fields.

When this is done, open NetNewsWire on your iPhone, go in the settings and in the “Accounts” section, click on “Add account”. In the list that opens, select “FreshRSS”.

There, put the username and password you set, and as the URL, https://reader.miniflux.app.

Screenshot of the setup screen in the app showing the username, password and URL.

Once this is done, just hit “Add Account” and you should be all set.

As an additional step, I can recommend turning off “On my iPhone” in the accounts section to avoid the clutter of the default feeds being added.

You now have all your feeds synced to your phone.

Screenshot of NetNewsWire showing the 404 Media news feed.
For instance, the app showing the synced 404 Media feed.
Your own local copy of Wikipedia

Recently, Wikipedia has come under a lot of attacks from malicious political entities. Unlike the Wikimedia Foundation, they have much more resources to harass projects such as this one into oblivion.

This is why it is more important than ever to get your own copy of Wikipedia (or any wiki, really) at home.

For this quick HOWTO, we’re gonna need a few things:

  • A computer
  • About 100Gb of space free on your hard drive
  • Some time on your hands (depending on how good your internet is)

My software of choice to have my own Wikipedia copy is Kiwix. It is Free and Open-Source, and has a built-in downloader, allowing you to easily select a language and wiki to download.

My recommended way to download Kiwix is through Flatpak, which makes the process easier. If like me, you want the articles to be downloaded somewhere else, use FlatSeal to allow the application to write in a specific location, a second hard drive for instance.

If you don’t want to use Flatpak, see the options listed on Kiwix’s website, there is probably one that will fit your use case.

When launching the software for the first time, you can change the download location by going in the three buttons on the top right, then “Settings” and finally change the “Download directory”.

Once this is done, time to download some wikis. If it’s not already done, on the left of the main page, select “Online Files”, then select your languages and content types.

UI showing the selection of languages and content types, showing French and English being selected as well as “images” and “full article”.
How I download stuff

Do note that downloading Wikipedia with pictures takes around 100Gb while without it will only take 53Gb (for the English version, being the largest to this day).

Once the downloads are finished, click on “Clear” to remove all your filters, and swap to the “Local files” tab.

From there, you can open a specific wiki, search it and basically use it as it were online.

Screenshot of Kiwix showing the French Wikipedia page for the city of Annecy.

And this is how you can still access Wikipedia in case your internet randomly decides to stop, or if something worse would happen.

The best watch I’ve ever had

At the start of this year, I started looking at replacements for my Apple Watch Series 6.

Smartwatches offer lots of features, for instance, I loved being able to pay with my watch and receive notifications directly, however, one thing was very annoying for me: battery.

I hate things with batteries, I forget to charge them all the time, that’s why all my workstation setup is wired. But hey, can’t really escape that with mobile devices, especially phones and watches.

Enters the Pebble announcement. Pebble is a brand of smartwatches using e-ink screens, and boasting a really long battery life for the features.

The whole thing failed back in 2016, but has been doing a comeback since the start of the year, with the announcement directly falling when I needed a new watch. The older models boasted a battery life of around a week, while the newer ones (still not shipped tho) boast about around a month.

This is already better than the meagre “less than one day” the Apple Watch is capable of.

However, this is not a post about Pebble. Out there, there is an option that is even cheaper than an Apple Watch or Pebble, and that will last far, far longer. I’m talking about dumb Casio watches.

Right around that moment of the year, enters a friend with which I started talking about watches. He promptly recommended I check out Casio watches, and more particularly the Casio AE-1200.

Curious about it, I went to a store the next day to pick one up, the final price being around €50 (VAT included).

The configuring the time and everything was fairly easy, as well, just holding the “adjust” button, and going through all the things one by one.

It might not look like much, but the AE-1200 probably has the most features for the price, including (but not limited to):

  • Timezones: if you can literally change on the fly which timezone you are in, meaning you don’t need to adjust the watch manually when you move around
  • Daylight savings: you can also change DST settings super easily, once again, avoiding you having to reconfigure the whole thing when that changes
  • 10 years of battery!!!
  • Stopwatch/Timer
  • Auto calendar (with leap years)
  • 5 different alarms

The one drawback is the lack of syncing making the watch slowly drift. I usually resync the time every week to make sure it’s exact. If you don’t care about this, the drift is minimal, about a second a week.

Overall, the setup has been working well, because… it just works. I may can’t pay or receive notifications with it, but it shows the correct time when I need it and doesn’t need to be charged at all.

Looking at the pricing of new Pebble watches as well, I’ll stay with my cheap one.

Debugging SSL in GitLab Pages

Debugging GitLab Pages on a self-managed instance can be a hassle, especially if you’re only getting nebulous messages without any further information.

Do note, for this to work, you’ll need to have an admin access to the machine hosting the main Rails app.

To find out exactly why Let’s Encrypt is failing to get a certificate, use the following command:

docker compose exec gitlab gitlab-ctl tail gitlab-rails --follow | grep -i "encrypt\|acme\|certificate"Code language: JavaScript (javascript)

It should output the exact log of Let’s Encrypt and tell you if it’s hurting a wall somewhere. If you have a bare-metal instance, just remove the docker part of the command, and only use gitlab-ctl.

AI still banned at Servo

About half an hour ago, Servo re-affirmed their ban of LLM tools laid out in their contribution policies:

Contributions must not include content generated by large language models or other probabilistic tools, including but not limited to Copilot or ChatGPT. This policy covers code, documentation, pull requests, issues, comments, and any other contributions to the Servo project.

This is honestly great to hear, as it cements the longevity of the project, avoiding the many headaches associated with AI code generation amongst others.

Older Posts
Jae 2012-2025, CC BY-SA 4.0 unless stated otherwise.