Your First Factory: GtkListView and the Bind/Unbind Rhythm
This is the fourth entry in A Field Guide to GTK Widgets — a series about which widget to reach for, when, and what bites you when you do. The previ…
Tech news from the best sources
This is the fourth entry in A Field Guide to GTK Widgets — a series about which widget to reach for, when, and what bites you when you do. The previ…
This is the third entry in A Field Guide to GTK Widgets — a series about which widget to reach for, when, and what bites you when you do. We're jump…
This is the first proper entry in A Field Guide to GTK Widgets — a series about which widget to reach for, when, and what bites you when you do. We…
I built a screen-capture tool for Linux in Flutter. Tray icon, global hotkey, region select, done — that was the plan. It worked, right up until thr…
This article covers two scripts that live in the same repository for the same underlying reason — getting a Linux box to behave like a Chromebook —…
This is the opening post of a series that works through GTK4 and Libadwaita together, one practical interface decision at a time. The posts are grou…
This is Part 6 of a series taking a GNOME app from an empty directory to GNOME Circle. Part 5 wired the sidebar to a real Feed GObject and a feed-se…
A lightweight, asynchronous ActiveRecord ORM designed for GJS (GNOME JavaScript) applications. Built natively on top of libgda (GNOME Data Access).…
Small improvements to desktop environment make small improvements in productivity, and they compound. Today I found that I can force any app (not on…