With the release of the 2026 edition of the LTT Linux Challenge , comes the usual fuss about which distro they should or shouldn't have chosen, I decided to throw my hat into the ring and give you my final and definitive recommendation on what Linux distro you should use in 2026 . Let me tell you a little about myself first, in case you're new here: I'm a software engineer and I've been using…
It seems like some modern motherboards use fan control systems are not fully compatible out of the box with Linux (what a surprise). In particular this relates to my recently acquired MSI MAG X870E TOMAHAWK WIFI motherboard, but as I understand this same problem also happens on other MSI and ASUS motherboards. More specifically, this is an issue with the Nuvoton NCT6687-R fan control chipset and…
Disclaimer: I didn't invent anything new here, this is just a case of scattered information that's annoying to put together. All sources are linked throughout the article. Another disclaimer: I'm not a security expert and I don't claim to be. This is just a solution that I'm using, if following anything that I write causes any problems including but not limited to data loss or theft, I don't take…
Alright, let me give you the magic string right away: gamescope -- mangoapp - w 2560 - h 1440 - W 2560 - H 1440 -- fullscreen -- force-grab-cursor -- adaptive-sync -- backend = wayland -- env ENABLE_LAYER_MESA_ANTI_LAG=1 % command % Put this in your Steam game launch options, adjusting the resolution and you should be good to go. Just a couple more things: Don't use the "stable" version of…
I've been using Relm4 for a project and it's been pretty great. Relm4 is basically a wrapper around the GTK API that offers a more declarative layer of abstraction for building applications. The only problem I find is that the project seems a little bit niche. Don't get me wrong, it seems very polished and so far I haven't found any bugs, so that's exceptional considering the scope of the project.…
I've recently upgraded my GPU from a 5700XT to a 7800XT, and of course using a new GPU close to launch on Linux would reveal some paper cuts. Turns out my GPU fans weren't spinning, even under load. It helps that it's winter and I have some very effective case fans, but it didn't really make sense that at 88°C junction temperature the fans wouldn't spin. First, you might think of reaching for…
I've been using neovim for a while now, and for me, it's the single best text editor out there. But it's got a big problem: it's a bit of a hassle, and you have to know what you're doing. There's a wide ecosystem of plugins that integrate into each other, most of them requiring custom configuration code to work. It took a while, but I managed to put together a pretty good config. Over time this…
Between one thing and the other, I found myself in need for a palette manager: something to let me categorize different palettes and easily pick and name colors depending on their use. I had a look at some already available options, but nothing seemed to fit the bill, so (as it's often the case) I decided to make my own. I want to make a quick tangent on how easy it has become for me to quickly…
One of the most requested features (and for a good reason) in Feeds has always been ad blocking. I never came around to implement it, mostly because I couldn't find a guide or any similar resource, except for GNOME Web's source code , and that's not exactly easy to navigate. At least, it isn't for me. Today I decided to come back to it, and I found that it's actually a rather easy task! That's why…
So, something big is coming for my news reader app Feeds . Most of this year, as far as personal projects go, I spent at close contact with Gtk4, libadwaita and the awesome people over at the various matrix chat rooms. I've spent this time porting What IP , HydraPaper and Giara to Gtk4+libadwaita. I'm really happy of the results, and I'm even happier with how this new stack is shaping up. The…
I've been using Commento for a while for comments (without much adoption to be honest), and while I really love the project, and the simplicity of its approach, there's always been one unavoidable thing I never really liked too much: if you want to comment, you have to register to my commento instance. That's less than ideal, considering that if I did have lots of people who wanted to comment,…
I'm playing around with the new Raspberry Pi Pico , and I quickly realized that I'd really love to have a quick pinout reference in my terminal. I thought of making a man page, but I would have lost the color (I don't know how to use arbitrary colors in groff), so I just created a simple text file with ascii escape sequences for colors and called it a day. It works, and it's pretty! I'm uploading…
I learned most of this stuff from this awesome series of articles by Larry Price . Give it a read, it's worth it. Why D-Bus daemons are quite useful tools. What would you need them for? Well, I decided to add one to HydraPaper to do two jobs: change the wallpaper periodically listen for monitor configuration changes and adapt to it, so that when you plug or unplug a monitor, the wallpaper doesn't…
I am a quite avid reddit user. Like it or not, reddit is a very central place where communities for stuff that I care about tend to aggregate. For the longest time, I have felt the need for a reddit app on my Linux desktop, and I waited and kept waiting for one that would finally allow me to break free of using the web version. Some honorable mentions are due to projects like the now seemingly…
The back and forward buttons on your mouse are incredibly useful, at least for me. I use them all the time! I couldn't find a proper way to map it on my app until I asked on the GTK Matrix chatroom, there baedert sent me a couple of links to how he did it in his app corebird. I translated the code to Python and decided to make a blog post to archive the procedure. First, here's a function that…
One of the most common things you might wanna do with images, that is making them automatically resize to adapt to the available space they have, is not possible with Gtk.Image . So after some hacking, I seem to have found a solution that works: from gi . repository import Gtk , GdkPixbuf , Gdk class PictureView ( Gtk . DrawingArea ): def __init__ ( self , path , * args , ** kwargs ): super ().…
Man pages are awesome. They genuinely are. In any *nix system you can just get documentation on your programs or even some programming things (namely a lot of C stuff, this was very useful in University) offline by just using a tiny simple command. Of course writing man pages is a different thing. They are written in groff . I am not a fan of it, although I know people who do enjoy using it.…
As you can see, this website is kinda different. I remade it, just because why not. I was previously using Hexo with a nice theme called cactus (properly altered to match my preference), but at some point I got tired of that as well. I wanted to create something simple and straight forward. This is the kind of website without too many bells and whistles. Just a blog, period. The initial idea of…
Alright, I started writing some unit tests for Feeds and I wanted to integrate them into meson, so that I can just run meson test or ninja test during build and have them run automagically. As an added bonus, they should also run when creating a flatpak package, so that I don't accidentally push a broken built to users. Here's the very simplistic way I accomplished this task: have your tests in a…
It finally happened, Feeds is now part of the World group! Here's the new repository ! But don't worry, I'll keep up with the existing GitLab mirror. This doesn't change too much in terms of development, but it surely makes the app more discoverable. It also provides this very nice new URL for Feeds' website which is under gnome's domain name (that's pretty cool, uh?). As for Feeds' development,…
Feeds version 0.8 is coming . This release have been a little overdue, since I finally decided to change the name of the app from gnome-feeds to just gfeeds . This has to do with the use of the GNOME name, and besides even GNOME apps don't use the GNOME prefix in their names. Someone criticized the name gfeeds , because it's kind of dumb to have GNOME/GTK app names to start with a g , similarly to…
Thanks to this document , and a quick look at nautilus's git repo I was able to automatically generate fresh flatpaks directly from GitLab by using the integrated CI/CD system. My current setup isn't perfect but it manages to automate flatpak builds. This is incredibly useful, as when people open issues and I try to fix them, I can just tell them to install the lastest flatpak from the CI/CD and…
So I recently got myself a shiny new AMD Radeon RX 5700 XT GPU (that's a mouthful). Let's see how it does on Linux. Installation First, I use Arch (btw) and that makes things a lot easier, at least for now. As of writing this, Navi support is still not in the mainline kernel, but it should come with Linux 5.3. Because of the AUR and many other fun things, this isn't much of a problem in Arch.…
Feeds version 0.7 should be out soon with all the features detailed in this post . The code starts to feel a little more complex, and it would probably use another small refactoring, but that's not too important right now. Let's lay out a new roadmap, with the features I implemented, and some new ones I want to add: [x] Read and unread articles [ ] Keeping history of older articles locally (still…
Recap In a previous post I layed out a roadmap for my feed reader application Feeds . Here's a little update on how things are going. Alright, first I want to thank @Etamuk again. He's being very active with the German translation, and any time I make a commit, soon after I already see he has opened a merge request with the updated translation. That's just impressive, and I'm truly greatful for…
This blog is fairly new, and so I still have to set up everything. Comments are obviously a very important part of a blog, especially if you want any kind of feedback on the stuff you're doing. The lazy solution is pretty obvious: Disqus the privacy nightmare . I like the wild idea of respecting my readers' privacy, and so I started looking for alternative solutions. The one solution I chose to…
Feeds version 0.6 is out with two important changes: German translation thanks to @Etamuk Concurrent feeds refresh About the translation, I know when a project starts becoming interesting, people want to contribute. And translations are in my experience one of the indication of people really getting passionate. I am really flattered by this contribution and it really means a lot to see this…
My new web home Hey people. I finally got around at creating a static blog. After using Hugo for a while, and initially deciding to try out Pelican , just to realize it's in a sad, outdated state right now, I settled on Hexo . It's not like I'm crazy for JavaScript, quite the contrary. But I do realize it has its place sometimes. Using npm to install plugins is pretty clever, and besides at the…