Setting up Delta Chat
I have been following the Delta Chat project from the sideline for a while now. The idea is cool and rather simple: Build an end-to-end encrypted chat app on top of existing, proven technologies: E-mail protocols and PGP encryption.
It works with a regular e-mail account, which I find extremely cool. But they also developed a specialised "chatmail relay", which acts as a mailserver fine tuned for the purpose.
While I'm already a daily user of and proponent of Signal, I think Delta Chat is interesting as a decentralised alternative.
Today I tried setting up a relay, following their instructions. As I already have a mailserver running on my home IP address, I decided to spin up the cheapest VPS option from Hetzner and run it from there. Unfortunately, I hit a few bumps along the way. But I managed to get it running.
And I must say that my initial impression is good! It seems like a solid – although slightly less polished – alternative to Signal. I also tried using a regular e-mail account for it, and even then messages are just flowing across servers, almost instantly.
Now my only problem is the classic with new technology: Where are the other cool kids using this? Say hi!
Somebody has to have good taste
Adam Sjøgren shares his thoughts about code review in the era of AI:
I don't learn anything about why they made those "wrong" choices, and they don't learn why they should have done differently in the first place. And if my suggestion was bad, for some reason or another, my feedback doesn't get challenged and, perhaps, rejected. Sometimes a third solution might have emerged from our discussion.
Supporting the Python Software Foundation
More than 15 years ago, a colleague introduced me to the web framework Django (back then it was version 0.96) and the programming language Python. And I immediately fell in love with both. Some years later, Django stuff became the thing I do and am good at to the extend that I'm able to make a decent living from it.
But that's not the only thing I got from it. I came for the framework but stayed for the community around it. And for almost a decade, I have been donating money monthly to the Django Software Foundation.
With what has recently been going on in the Ruby and (especially) Rails communities, I've been thinking about how lucky I am to have ended up with Django, Python and the lovely people around it. I feel sorry for all the good people with decent values, for whom Ruby on Rails skills became their way of making a living, that increasingly see themselves alienated by leading figures in their community.
Yesterday, the Python Software Foundation announced their withdrawal of a USD 1.5 million funding proposal, as complying with the funding terms would compromise the values and mission of PSF. That's a tough call. But the right thing to do.
In a response to that, I've just signed up to be a PSF Supporting Member, which is mostly just a way to send some money their way. If you care about Python, the PSF and/or their values, you might want to consider doing the same.
My profile picture around the interwebs for the last 11 years has been of me wearing a Python t-shirt. Today I'm prouder than ever of this.
Guido van Rossum on AI
I love how generally unimpressed Guido van Rossum – the creator of the Python programming language – is with the whole AI hype in this interview, despite the value-laden questions.
But these quotes stood out to me:
I am definitely not looking forward to an AI-driven future. I’m not worried about AI wanting to kill us all, but I see too many people without ethics or morals getting enabled to do much more damage to society with less effort. The roots for that abuse have been laid by social media, though — another major computer paradigm shift that changed society but didn’t really affect the nature of software.
And:
I hope that Python’s legacy will reflect its spirit of grassroots and worldwide collaboration based on equity and respect rather than power and money, and of enabling “the little guy” to code up dream projects.
But also:
So I worry that Python’s getting too corporate, because the big corporate users can pay for new features only they need (to be clear, they don’t give us money to implement their features, but they give us developers, which comes down to the same thing).
Prevent Bluetooth headset from appearing as a media player in Gnome notifications
I recently upgraded Debian on my laptop to Trixie. Overall, it's great!
But one issue I had, was that suddenly my Bluetooth headphones would show up as a media device with previous/play/pause/next controls in the Gnome notification area. These controls didn't work or do anything. But what was even worse: They would steal the focus of media keys events from anywhere else. Which meant I was no longer able, with my keyboard, to play/pause music or video playing elsewhere.
I've had a hard time finding a way around it, but did find a solution today.
Someone on the Ubuntu forums had the same problem. Although they didn't find a solution, one of the responses there got me on the right track.
It turns out to be related to something called MPRIS: Via Bluetooth, the headset presents itself as having media control buttons (which it does) and then Gnome decides to show it as a controllable device. As such, a neat feature. But, unfortunately, useless.
On askubuntu.com I found the question Prevent MPRIS from recognizing an application. I'm out of my confort zone here, but with a tool called qdbus (on Trixie, it's called qdbus6 and can be installed with apt install qdbus-qt6), you can look for D-Bus objects. Searching for things related to "mpris", I got these items while my headphones were connected and a tab in LibreWolf was playing some music:
$ qdbus6 | grep mpris
org.mpris.MediaPlayer2.firefox.instance_1_1406
org.mpris.MediaPlayer2.Bose_QC_45
Following the directions in an answer to the askubuntu.com question, I then created the file /etc/dbus-1/session.d/disable-bose-mpris.conf with the following content:
<busconfig>
<policy context="mandatory">
<deny own_prefix="org.mpris.MediaPlayer2.Bose_QC_45"/>
</policy>
</busconfig>
After running sudo killall -s HUP dbus-daemon, per instructions, and turning my headset off and on again, the media controls for the headset have now disappeared from the Gnome notifications and whatever else is playing will receive any media key input. What a relief. And the media controls on my headset even still work.