Selasa, 04 Agustus 2026

Linux's Favorite Music Player Rhythmbox 3.5 Lands After Nearly a Decade in the 3.4 Series

against a green background with the rhythmbox logo strewn about is a screenshot of rhythmbox 3.5.0's about dialog and interface

Rhythmbox is one of those applications that you will find lurking on a GNOME-equipped desktop. If you are someone who has fully moved on to streaming music/podcasts online, then it doesn't have much purpose for you.

Even with the rise of streaming, many people do prefer hosting media locally, and that is partly why the GStreamer-powered music player refuses to die.

The GNOME project just pushed out Rhythmbox 3.5.0, the newest release in about nine months. The last one, 3.4.9, mostly patched up plugin loading and swapped in a new playback backend. This time around, the changes are more visible.

The new bits

the unofficial flatpak build of rhythmbox 3.5.0 playing a song

Buried in the changelog is a fix for the year 2038 problem, the one where systems counting time as a 32-bit number run out of room and start thinking it's 1901 again. Rhythmbox has swapped the deprecated GTime type for time_t to stay ahead of it.

Then there's the podcasts page, which has gotten the most visible upgrade in this release.

Episode lists now mark which ones you have already played; notifications for updates and downloads have been reworked; and a new plugin allows you to sync your feeds and episodes through the gPodder.net API.

Lyrics support has also been expanded, where Rhythmbox can now pull lyrics from lrclib.net, read them from sidecar .lrc files sitting next to your audio, and grab lyrics embedded directly inside Ogg Vorbis, Opus, and FLAC files, using a tag that GStreamer recently added.

We round out this release with a couple of smaller fixes that are worth knowing.

The new playback backend, introduced back in 3.4.9 to replace the old crossfading system, is now switched on by default, and a bug that broke playback entirely whenever the crossfade duration was set to zero has been fixed.

The music player also dropped its old appdata.xml file in favor of metainfo.xml, bringing it in line with other GNOME projects.

Download this release

While it doesn't look like much on paper, Rhythmbox 3.5.0 manages to introduce some important quality-of-life upgrades that will go a long way in keeping the experience clean and the music player relevant.

Seeing that it just landed, most distributions haven't caught up yet. If you want to install it quickly, there's an unofficial Flatpak on Flathub.

But building it from source is the recommended way. The repo has all the required instructions and files for you to get it installed on your computer. If that's too much of an ask, then you could just wait for your distro's repositories to catch up with the new release.


Suggested Read 📖: AI Slop Keeps Flooding GNOME Extensions



from It's FOSS https://ift.tt/pZY691i
via IFTTT

Escape the Algorithm: 10 RSS Feed Readers You Can Self Host in Your Homelab

RSS feed reader

I have argued this in the past as well. RSS feeds are the simplest way to get out of the algorithm's web.

Every platform wants to decide what they think you should read. RSS feed is the resistance. You have a list of your own favorite websites that you trust (like It's FOSS), you add these sources in the feed reader and you get to see all the newly published articles from the sources you want.

There are several feed readers for Linux desktop. Even email clients allow you to read from RSS feeds.

But they are confined with a single machine. Since self-hosting is increasingly (and rightly) being popular these days, you can try self-hosting feed readers in your homelab. This should allow you to access your feeds on all the compatible devices on the home network.

And if you want to go the self hosting way, I have a bunch of suggestions for you to explore.

For this list, I looked at how easy each tool is to actually self-host with Docker, whether it can be used with mobile apps (through the Fever or Google Reader API), whether it can generate a feed for a site that doesn't provide an RSS feed on its own, and whether there's a real hosted option if you'd rather not run the server yourself and yet pay for an open source software service.

1. Yarr

Yarr (short for "yet another rss reader") is a single Go binary with an embedded SQLite database. No separate database server, no multi-container setup, just one file you run.

Yarr self hostable RSS reader

You can run it as a desktop app with a system tray icon on Linux (and Windows and macOS), or point the same binary at a server and use it headlessly over the browser. It picked up Fever API support a while back, so it now works with Fever-compatible mobile clients like Reeder and Unread, something it didn't have for most of its life.

It's built for single person use. There's no multi-user support and OPML handling is basic compared to FreshRSS or Miniflux, so double check your import works before you commit to it.

Yarr is open source under the MIT license and self-hosted only. There's no official paid hosting.

💡
Use it if you want a dead-simple, single-user reader with nothing to maintain but one binary.

2. Fusion

Fusion is a newer, lightweight reader built with Go and TypeScript. It's pretty much like Yarr.

Fusion RSS reader

It ships as a single binary with SQLite, has a proper PWA you can add to your phone's home screen, and supports the Fever API for third-party clients like Reeder, Unread, and FeedMe.

The official Docker image is here, and there's a docker-compose example in the README if you want to get it running fast. It deliberately skips AI features, which the project states outright as a design choice rather than an oversight.

There's no official first-party hosted version yet, though the community has put together one-click templates for Fly.io and Railway if you don't want to manage a server yourself. It is also available on PikaPods.

💡
Use it if you want something built on a modern stack with zero AI clutter bolted on.

3. CommaFeed

CommaFeed is a Java and React reader built to feel like the old Google Reader. I am not sure if that's a positive thing or not.

CommaFeed feed reader

It supports the Fever API and push notifications for new articles, plus a browser extension for quick access. The official Docker image is on Docker Hub, and native binaries are also published if you'd rather skip containers. OPML import and export both work as expected.

If you don't want to host it yourself, there's a free public instance at commafeed.com funded by donations, or you can use PikaPods for one-click hosting starting around $1 a month with a $5 welcome credit. PikaPods shares 20% of that revenue back to the CommaFeed project.

💡
Use it if you want the feel of old Google Reader without FreshRSS's plugin and theme sprawl.

4. Stringer

Stringer bills itself as a self-hosted, "anti-social" RSS reader, meaning no sharing features, no social layer, just a clean list of articles.

Stringer RSS reader

It implements a Fever API clone, so it does work with Fever-compatible mobile apps, even though its client ecosystem is smaller and less talked about than Miniflux's or FreshRSS's.

Docker is the common way to deploy it, going back to the original mdswanson/stringer image and continuing under the current stringer-rss organization on GitHub. Feed import has historically been a little clunky, closer to adding one URL at a time than a smooth bulk OPML migration, so test that step before you commit your existing subscriptions.

Stringer is open source under the MIT license and self-hosted only, with no official paid hosting.

💡
Use it if you want a minimal reader with zero social features baked in.

5. Miniflux

Miniflux is the reader for people who just want to read their feeds and nothing else. It's deliberately opinionated about staying small, and plain looking. You can understand why there is a 'mini' in its name.

Miniflux reader

It's a single Go binary that only works with PostgreSQL, no MySQL or SQLite option here. It supports both the Fever and Google Reader APIs, so it plugs into most mobile RSS clients without a dedicated app of its own.

Docker images are published to Docker Hub, GHCR, and Quay with ARM and RISC-V support, alongside Debian and RPM packages if you'd rather skip containers entirely. OPML import and export both work, including URL-based imports.

For saving articles, Miniflux integrates with more than 25 third-party services including Wallabag, Pinboard, Instapaper, and Linkding, and it can auto-send bookmarked entries to whichever one you use.

If you don't want to run it yourself, the official hosted version costs $15 a year with a 15-day free trial, and it runs the exact same open-source code as the self-hosted version.

💡
Use it if you want the smallest possible footprint and don't mind a plain interface. Third-party integration is definitely a plus.

6. FreshRSS

FreshRSS is the other half of the decision everyone ends up making. Where Miniflux stays deliberately small, FreshRSS goes the other way: multi-user, extension-friendly, and closer to a full Feedly replacement.

FreshRSS

It supports SQLite, MySQL, and PostgreSQL, so you can start tiny and grow into a bigger database later without switching tools.

It's multi-user, with an anonymous read-only mode if you want to share a public instance. Thanks to WebSub, it can receive instant push updates from compatible sources instead of waiting on a polling interval.

It also has built-in web scraping, so it can generate feeds for sites that don't publish RSS at all, no separate bridge tool required for basic cases.

Official Docker image is available for easy deployment. Extensions and themes fill in most of the gaps in the default interface.

💡
Use it if you want a full-featured, multi-user reader.

7. Tiny Tiny RSS

Tiny Tiny RSS has been around since 2005. In 2025, the original developer quit the project and a long-time contributor forked the project to GitHub the same month and has kept development going since.

Tiny Tiny RSS

Its plugin system exposes Fever, FreshRSS, and Google Reader compatible APIs for other mobile clients. Docker is the recommended install path, though it seems a bit heavier, more multi-container setup than Miniflux or FreshRSS.

OPML import and export both work, and its plugin ecosystem covers full-content scraping similar to a built-in readability tool.

💡
Use it if you want a deep, plugin-driven reader and don't mind a heavier Docker setup.

8. NewsBlur

NewsBlur is both a hosted SaaS product and a fully self-hostable open-source reader.

News Blue rss reader that can be self hosted if you want

It has native apps for iPhone, iPad, Android, and Mac, and it syncs with third-party clients like Reeder and NetNewsWire too. OPML import pulls in feeds and folders from Google Reader, Feedly, or Inoreader exports.

Its standout feature is "Web Feeds," which can follow a website for updates even if it has no RSS feed at all, by watching the page for changes instead of relying on a bridge tool (mentioned later).

It also supports saved stories with an "intelligence" training system that learns what you want to see more or less of. There are a few more AI features here to explore.

Self-hosting is the heaviest lift on this list. The stack includes PostgreSQL, MongoDB, Redis, and Elasticsearch, run through make nb with Docker Compose. All this realistically needs a few gigs of RAM to run comfortably.

The hosted version has a free tier limited to 64 sites, with Premium at $36 a year (a 30-day free trial) unlocking unlimited feeds, full-text search, and notifications.

💡
Use it if you want to try the hosted version first and keep self-hosting as an option later, not the other way around. AI features are also a decisive criteria.

9. Feedbin

Feedbin has one of the more polished reading experiences on this list but you should know that the maintainer doesn't recommend self-hosting it, even though you can.

Feedbin

Feedbin's own documentation says its goal is to be a great web-based service, and that this is "at odds with being a great self-hosted RSS reader."

It doesn't recommend running it in production unless you have real time to configure it, and instead points people toward community Docker projects like feedbin-docker if they want to try anyway.

That's a starkly different stance from Miniflux or FreshRSS, which are built with self-hosting as the primary use case.

If you do use it, the syncing story is strong. It works with Reeder, NetNewsWire, Unread, and ReadKit through its API, and it turns newsletters into feeds by giving you a unique subscription email address. It also does full-content extraction for partial feeds and supports podcast playback with resume.

The hosted version costs $7 a month or $70 a year, with a 30-day free trial.

💡
Use it if you want Feedbin's reading experience and are fine paying for the hosted version or not afraid of self-hosting it despite the warning from the developer.

10. Glance

Glance is the odd one out to close on. It's not an RSS reader, it's a self-hosted dashboard that happens to fetch RSS feed from websites alongside Reddit, YouTube, weather, and server stats. Remember Google homepage from twenty years ago?

glance feed

If you've ever wanted your feeds sitting on the same page as your homelab status and the weather instead of in their own dedicated app, this is that.

Configuration is a single YAML file rather than anything OPML-based, so backing it up is just copying that file. There is an official docker image and it also ships as a single binary under 20MB for Linux, macOS, Windows, FreeBSD, and OpenBSD.

It's picked up a lot of attention fast, with more than 36,000 GitHub stars and still climbing. It's not going to replace a dedicated reader if you follow hundreds of feeds seriously, but as a "everything I check every morning" page, it's difficult to be ignored.

💡
Use it if you want your RSS feeds sitting on the same page as the rest of your homelab, not in a separate app.

Bonus: RSS-feed generator apps

What I discussed so far are the self-hostable RSS feed readers. There are a couple of additional tools that help you generate or find RSS feeds.

For example, RSS-Bridge is a companion tool that generates RSS and Atom feeds for sites that don't publish one, and it's meant to sit in front of whichever reader from this list you actually pick.

Similarly, RSSHub is the bigger sibling to RSS-Bridge, another feed generator rather than a reader, built on Node and TypeScript with a much larger route library.

Easily Start Your Homelab with ZimaBoard 2

If you want to start your own homelab but not sure if you can manage all the technical things, try ZimaBoard. Zima devices come with ZimaOS, a very friendly operating system that easily allow deploying containerized self-hostable apps. This is how I started my homelab journey.

Explore ZimaBoard 2

So, which self-hosted RSS reader should you actually use?

I have not included some older, once-popular tools like Winds, Leed, FeedHQ etc in this list because they're no longer actively maintained.

As for what to actually run: if you want the smallest possible footprint, go with Miniflux. If you want more features and don't mind a bit more setup, FreshRSS is the safer multi-user pick. If your want all things at a glance, go with Glance. NewsBlur is a good option if you don't mind paying.

But at the end, the decision is totally yours. You can go through individual projects, see their features, try deploying them on your own and make a decision accordingly.

What are you using to read your feeds these days? Let me know in the comments, and if you've found something newer than what's on this list, I'd love to hear about it.



from It's FOSS https://ift.tt/Y6lCU4W
via IFTTT

GNOME Boxes Won't Look Ancient Anymore Thanks to a Glow-Up

a curious penguin looks over to a screenshot of gnome boxes (the beta version of revamp) on its right

The lone developer behind GNOME Boxes, Felipe Borges, has shown off a complete rewrite of the app as a Flatpak-only beta, featuring a modern interface foundation.

Balancing his day job at Red Hat and his usual GNOME Settings maintenance duties, Felipe says that he has been working on this by himself for the past two years, talking about his efforts at community events.

The first design call was going Flatpak-only. Boxes is a front end for libvirt and QEMU, so a lot of its behavior depends on what the host distro ships. Maintaining separate code paths for every distro isn't realistic for a single maintainer, so the new build bundles the entire virtualization stack itself instead of leaning on the host.

The second call is the one you will notice first. Boxes has moved to GTK4 and Libadwaita, dropping the old GTK3-based SPICE widget for a new display widget called Libmks. This is where the dated visual style finally goes away.

The third one was to fix Windows 11, where the rewritten Boxes can now successfully install it without requiring any manual workarounds or other kind of sorcery since it configures Secure Boot and a virtual TPM device on its own.

Moreover, a new VSOCK device gets around Flatpak sandboxing limits and lets you SSH straight into a guest, as long as it runs systemd v256 or newer. Early port forwarding support is also in, currently covering SSH and HTTP.

What's different?

Everywhere you see in the revamped Boxes is the result of the new interface components. Despite that, the app felt familiar right from the first look. Being a regular Boxes user, I just knew where to click.

The new virtual machine (VM) creation flow backed that up beautifully. I began installing Windows 11, and Boxes just pre-filled the memory and storage values on its own and set UEFI as the preferred boot method without me touching anything.

The installation itself went through without a hitch, but Windows then insisted on a Microsoft account before letting me anywhere near the desktop, so that's where I had to stop.

Still, the three-dot menu in the top-right of the VM window gave me plenty to work with before that point. I could take screenshots, send key combinations, and open a full Properties page.

None of it looks like what current Boxes offers today, btw. 🤓

The video above walks through that new Properties dialog. What used to be part of a single window with a header menu is now a dialog with a sidebar that houses seven sections.

General, Resources, Network, Devices, Snapshots, Logs, and Configuration.

Resources lets you adjust RAM and resize storage; Devices handles the boot order and removable media; Logs shows the actual commands Boxes is running under the hood; and Configuration hands over the raw Libvirt Domain XML to edit directly.

Similarly, the Network page lets you forward ports from the host into the VM, with toggles for SSH and HTTP. The Snapshots page lets you capture the VM's exact state at a point in time, then revert to it or delete it later.

the virtual machine properties dialog on gnome boxes

Compare that to what current Boxes offers (shown above). The classic Properties window packs Resources, Devices & Shares, and Snapshots into just three tabs that are functional but very clunky.

Though there was a major snafu. The Windows 11 VM crashed soon after I created that snapshot. I couldn't pin down the exact cause, though me ejecting the ISO around the same time is a likely culprit.

Before all this, I had also tried installing EndeavourOS but kept running into an unsupported configuration error no matter what I tried. Switching the OS type between Generic Linux and Arch Linux and the firmware between UEFI and Legacy BIOS, none of it fixed the issue.

A couple of smaller things changed too. Getting out of a VM window now takes Super+Escape instead of the Ctrl+Alt combo current Boxes uses. There's also no dedicated fullscreen button, and F11 doesn't do anything either.

See for yourself

If you're on Ubuntu or another Debian-based distro, getting the beta running only takes a few terminal commands. You'll need to set up Flatpak first.

Our guide covers the whole process if you don't already have it installed. Once that's done, add the GNOME Nightly repo:

flatpak remote-add --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo

You can then check what's actually in that repo before installing anything:

flatpak remote-ls --app gnome-nightly

Once you spot org.gnome.Boxes.Devel in that list, install it with:

flatpak install gnome-nightly org.gnome.Boxes.Devel

This is still beta software, so back up any VMs you care about before testing it, and don't be surprised if you run into some of the rough edges mentioned above.

You can stay in sync with its development by keeping an eye on its code repository.



from It's FOSS https://ift.tt/dVHNyjh
via IFTTT

Senin, 03 Agustus 2026

AI Slop Keeps Flooding GNOME Extensions, So They Wrote a Manual for Bots Instead

gnome logo on left, a floating robot on right reading a manual

GNOME Shell Extensions are usually sourced from extensions.gnome.org, or "EGO" as the GNOME folks call it. Every submission on this portal is manually reviewed, and that review process has been under strain for months now.

We covered this back in December when GNOME added a rule to its EGO review guidelines rejecting AI-generated slop.

They did allow the use of AI for learning and code completion purposes, but generating the entire extension where the developer can't explain or debug it convincingly was explicitly forbidden.

Months later, and the deluge of AI slop hasn't slowed.

So last week, Javad Rahmatzadeh, the same developer behind that original rule, tried a different approach. Instead of just rejecting bad submissions after the fact, he wrote instructions aimed directly at the AI models generating them.

Making the clankers understand

a cropped bit from a this week in gnome post (#260) that lays out a new instruction for gnome shell extensions

Given that the review queue is still flooded with AI-generated extensions, and most of them repeat the exact same mistakes (bad practices, as he puts it), Javad's new approach skips the reject-and-explain method entirely.

Most of the guidance is about cleanup. Extensions need to remove timeouts, disconnect signals, and destroy widgets in a specific order inside destroy(). Javad also calls out AI models for adding boolean flags like _destroyed to guard against improper calls, when the instance should just be nulled out and never referenced again after destroy() runs.

Then there's the overengineering. AI models tend to wrap safe function calls in unnecessary error handling and add checks for methods that are guaranteed to exist. Javad traces this back to models trying to write code that works across several GNOME Shell versions at once, and his fix is simple.

Just target one version instead of covering every possible one.

The rest is about keeping code organized. Split logic across multiple files instead of one bloated entry point, keep related functions close together so cleanup is easy to check, and don't submit placeholder code with empty functions just to have something to show for it.

There's a separate rule aimed at the AI models themselves. Any AI-generated extension meant only for personal use has to ship with a comment saying so, telling the person not to upload it to EGO unless they actually understand the code well enough to maintain it. 👇

// Generated with AI for personal use.
// Do NOT upload to extensions.gnome.org (EGO) unless you understand JavaScript
// and can maintain this code.

Some thoughts

Clankers overwhelming open source contributors is not new news. We've seen more than enough by now to conclude that these bots will take the open source ecosystem down if not moderated with a strong hand.

What GNOME's Javad has done here is damage control. He and the other EGO reviewers have an important job. If they get inundated with AI slop that literally doesn't make sense, then that is a big loss for us, the GNOME users who install extensions to improve our desktop experience.



from It's FOSS https://ift.tt/7mS3Oho
via IFTTT

Jumat, 31 Juli 2026

Exploring Kittens With Kitty Terminal Emulator

Kitten Kitty terminal

Kitty is a popular terminal emulator that supports many modern features. Focused on power users, it offers a wide range of customization that other terminals often lack.

For example, it includes a functional image display protocol and smooth cursor animations.

I have shown Kitty tweaking in the past, and in the regards, I would like to discuss Kittens today.

Kittens are functional units that extend the features of the Kitty terminal or work as standalone programs. They have direct access to the running Kitty instance.

Kitty comes bundled with several of these kittens, written in Go, which we will explore in detail later. You even have the option to create your own custom Kittens in Python, if you find a specific need that hasn't been solved yet.

Some Cool Default Kittens

🚧
In my opinion, it is important to remember that many kittens are Kitty terminal exclusive. Before you build muscle memory around it, make sure you aren't planning to switch to a different terminal emulator anytime soon.

Themes

Let's start with the most popular tool first. If you use Kitty daily, you have likely come across this utility at some point.

Themes is a kitten that allows you to change your terminal color scheme interactively without editing any configuration files. Kitty includes a wide variety of preset themes that you can access by running a simple command:

kitten themes

Apply themes in Kitty

In the overlay window, you can easily scroll through both dark and light themes to see a live preview. Once you find one you like, just press Enter and follow the prompts to set it as your preferred theme.

💡
Latest versions of Kitty now support automatic theme changes based on your system's dark and light mode. This is a very convenient feature if you want your terminal to stay in sync with your global OS settings.

In my opinion, this is a feature I really miss when using Ghostty. While Ghostty has a similar interface, you still have to manually edit your configuration file to apply the theme name after you pick one.

Fonts

If you have found a new font and want to set it as your terminal choice, this kitten has you covered. You can launch the interactive interface directly in your terminal using a simple command:

kitten choose-fonts

Choose Fonts

This tool allows you to perform several actions within a single interface. You can select new fonts, preview how they look, and even fine-tune specific font faces.

The utility makes it much easier to manage your typography without guessing how a font will appear in your workspace. It handles the complex parts of the setup so you can focus on finding the perfect look.

Choose files

Choose files is a comprehensive file picker designed for Kitty and other GUI applications on your system. It functions similarly to fzf but is specifically optimized for finding and managing files.

Choose Files

This tool offers several powerful features, including the ability to select multiple files at once. It intelligently respects .gitignore rules in your git directories to keep your workflow clean.

To use it, run:

kitten choose-files

You can also select non-existent files to trigger a "save file" option or choose entire directories. In my opinion, this file picker will completely change the way you interact with files in your terminal.

Quick access terminal

If you remember Yakuake in KDE, you are already familiar with the concept of a drop down terminal for quick tasks. Kitty offers similar functionality through the Quick Access Terminal Kitten.

You can launch this feature at any time using a simple command in your terminal:

kitten quick-access-terminal
0:00
/0:19

Quick Access Terminal

If you want to personalize the experience, you can customize the tool using a specific configuration file. Simply create or edit quick-access-terminal.conf inside your ~/.config/kitty/ directory to adjust its behavior.

GPU accelerated dock panel

The Panel kitten is something truly special. It creates a desktop panel for you that functions much like i3bar.

0:00
/0:13

Kitten Panel

While some might feel this is a bit overpowered for a terminal application, the panel is quite interesting for minimal use cases. It even allows you to set tools like btop as your actual desktop wallpaper.

In my opinion, this is an incredible feature for anyone who loves a unique workspace. You heard that right, and here is a great example of how it looks in action.

A diff tool

The diff kitten is an excellent tool available directly within Kitty. It offers several advanced features like side-by-side comparisons, syntax highlighting, and even image diffs or recursive directory comparisons.

To use it, you simply pass the file names as shown in the command below:

kitten diff file1 file2

Diff Files

Other interesting Kittens

I use the terminal daily for standard update tasks and editing text files. If you are deeply involved in terminal usage, there are many kittens available for very niche use cases.

For example, the Broadcast kitten allows you to type text simultaneously across multiple Kitty windows. There are also SSH related kittens designed for editing files and even a specialized SSH supported clipboard.

In my opinion, these specific tools are essential for power users who manage remote servers regularly. Feel free to experiment with these options to make your terminal life significantly more productive.

Assign keybindings/alias for quick access

All these kittens can be bound to keyboard shortcuts or aliases so you don't have to manually run the command every time. This makes your workflow much faster by giving you instant access to your favorite actions.

I will show you how I mapped the kittens in my own configuration file. It is a straightforward process that keeps everything organized and easy to access.

The most important step is to make sure your chosen keys are uniquely assigned. You want to avoid any conflicts with existing terminal options or system-wide shortcuts.

In the below code, I mapped the F1 key to get the file chooser kitten in multiple file select mode.

map f1 kitten choose-files --mode=files

Adding the following line to your shell configuration file (~/.bashrc) to add an alias to the diff tool:

alias d="kitten diff"

Now, you can run:

d file1 file2

To get the difference between them.

Another example, let's map the F2 key to get a quick access terminal:

map f2 kitten quick-access-terminal

Wrapping up

So, we have seen how kittens can improve your terminal productivity. While most of these have separate alternatives like fzf for file selection or difftastic for diffs, integrating them directly into your terminal with a clean UI is commendable.

Kitty also offers a desktop-ui kitten that lets you integrate the file picker into all your GUI apps. Since this can cause issues with some applications and is something I use rarely, it remains out of scope for this guide.

In my opinion, the seamless integration of these tools makes Kitty feel much more cohesive than a standard terminal emulator.

Did you find any of these kittens useful enough to replace your existing tools?



from It's FOSS https://ift.tt/e81aK6U
via IFTTT

Kamis, 30 Juli 2026

Keychron Built Open Source Firmware for Gaming Mice, and Linux Users Stand to Gain the Most

keychron and zgm logos on left, picture of the upcoming keychron g6 he on the right

Keychron has introduced ZGM, short for Zephyr Gaming Mouse, an open source firmware project built for gaming mice.

It is built on Zephyr RTOS, the same real-time operating system that already powers ZMK for keyboards. In its announcement, Keychron portrayed the launch as a philosophy rather than a marketing angle, stating, "Open source isn't marketing for us. It's the default."

The firmware is set to debut alongside the Keychron G6 HE, with a launch window sometime between January and March 2027.

The details

ZGM isn't a mouse, and it isn't a driver or third-party tool you install after buying one either. It's firmware that runs directly on a mouse's own hardware, and only devices built with it will run it.

The G6 HE is the first confirmed device, and any wider adoption depends on whether other manufacturers choose to build around it. The project is released under the GPL-3.0 license, so anyone can inspect the code, modify it, or fork it for their own hardware.

Currently, it is in a very early stage of development, where the repository mainly holds project scaffolding and policy files right now. Keychron says firmware sources, board support, and flashing guidance are still being prepared.

The plan is for the project to grow into full Zephyr-based firmware, with configuration layers for different hardware variants and integration for sensors, buttons, scroll wheels, and lighting.

Wired support is expected to arrive first, with wireless support to follow, alongside build instructions, example hardware targets, and testing guidance for latency and reliability.

Want even more?

a cropped screenshot of the zgm homepage that has a bunch of text on the left, and an illustration of a compact computer mouse on the right
Just a placeholder pic of the ZGM website.

Keychron plans to support the chips Zephyr already works with, plus the sensors, buttons, scroll wheels, and lighting that go into a gaming mouse. Battery management for wireless builds is part of the plan too.

The roadmap starts where the project is now, then moves to building the actual firmware. After that comes getting buttons, scrolling, and sensors working, followed by basic USB support for wired mice.

Later steps cover different hardware setups, testing for lag and stability, and eventually wireless support and more customization. The peripherals manufacturer says this is just a tentative plan for now, not a fixed schedule.

Keychron already builds keyboards around QMK and is already going towards ZMK. Both firmwares have proven that open source software can deliver deep customization and long-term reliability through years of community development.

And, as mentioned earlier, ZMK already runs on the same Zephyr foundation ZGM uses, which likely shaped Keychron's choice to build on it for their new mouse instead of starting from scratch.

That said, ZGM has a long way to go before it matches either project. QMK and ZMK both carry years of contributions, documentation, and supported hardware, while ZGM's repository only has planning material.

Linux users gain from this

Gaming and productivity mice rarely ship with official Linux support. Most peripheral makers build their configuration software for Windows and macOS only, leaving buttons, DPI stages, and lighting profiles locked behind an app that never gets a Linux release.

Linux users are left relying on community projects that reverse engineer these devices instead, and even then, support only covers whatever protocols someone has bothered to document.

I personally use two Logitech mice, the G502 HERO and a wireless one that comes with the MK470 bundle, and neither has official software support on Linux. Both work fine plugged in directly, but configuring them means turning to third-party tools like Piper or Solaar.

If more manufacturers pivot towards an open solution like ZGM, us Linux users could at least get some QMK-like support (but for mice). Imagine the kind of keybinds and macros you could play around with.



from It's FOSS https://ift.tt/4QAN9w8
via IFTTT

And Folks, We Have a Vibe Coded Linux Distro!

starling desktop screenshot sits over some funky-looking text that says "starling", below which "desktop environment" is written

Starling is a new open source Linux desktop environment. One developer built it by directing Claude for about six months, ending up with a working desktop that boots into its own session with a compositor and window manager.

Don't think of this as a themed shell bolted onto GNOME or KDE either. It brings its own X11 server, so apps like Chrome, Slack, and Zoom run on it without requiring any special modifications.

🚧
This is a vibe-coded desktop environment, still an early preview built mostly through AI prompts rather than a full engineering team. Expect bugs, security issues, missing settings, and rough edges throughout.

What is Starling?

a wide as heck screenshot that shows the about page in the settings app for starling desktop

Every part of it, like the shell, the compositor, the window manager, and the apps, are written in Swift, a language that has hardly been used for a Linux desktop before.

Most of the heavylifting here has been done using Claude, which was instructed to follow things like "Wayland only. Do not read, modify, or reference X11Server/ or X11 launch paths unless explicitly asked."

Under the hood, the framework running the whole desktop is a full port of Flutter's Dart framework to Swift. Starling brings a Wayland compositor written in C and its own X11 server, so older X11 apps still work.

That combination is what actually makes it a desktop rather than a demo.

For features, it has things like:

  • A dock and Launchpad (app launcher).
  • Floating and tiling window management.
  • A shader-based glass effect on the dock and panels.
  • Five first-party apps, including Terminal and an apt-powered App Store.

Taking it for a run

many app windows are open on an starling session on ubuntu 26.04 lts

I tested Starling on an Ubuntu 26.04 LTS virtual machine, and its rough edges showed up almost immediately. Right after logging in, the resolution defaulted to a non-standard, letterboxed widescreen ratio of 5120x2160 at 2x scaling (according to Fastfetch).

I tried searching for an option to change this in the Settings menu, and the "Displays" page only had a slider for scaling, nothing for resolution itself. Things might be better if you install it on a computer directly, but that's a risk you are more than welcome to take. 🙂‍↔️

A few smaller things didn't work either. The search bar inside the Launchpad (app launcher) doesn't respond to typing, and none of the accent color swatches in Appearance actually apply once clicked.

The App Store itself works, technically. I installed Chrome through it without any errors, but the browser opened up oversized and ran noticeably laggy once it loaded. Not exactly the experience you'd want from one of the few apps the store puts at the top of its list.

Shutting the system down turned into its own small hunt. There's no power menu anywhere on the desktop, so I had to go into the Terminal and run sudo shutdown to turn it all off.

Early stages of abandonware?

Starling probably won't be the last project like this. If one developer directing an AI can produce a working desktop environment, compositor and all in about six months, expect a lot more attempts over the coming years.

Building something and keeping it alive are two very different jobs. Vibe coding gets you off the ground fast. Debugging what it produces is painfully slow, and that grind is usually what kills a developer's motivation before the project gets anywhere.

Installing Starling

Starling packages as a single DEB, built for Ubuntu 26.04 LTS on amd64. You will have to ensure that you have a Wayland-capable login manager (which the Desktop LTS release ships with).

From there, download and install the package:

curl -fLO https://github.com/starling-build/starling/releases/download/v0.2.1/starling_0.2.1-1_amd64.deb
sudo apt install ./starling_0.2.1-1_amd64.deb

Next, you have to either log out or reboot, then at the login screen click your name, open the session menu (a small gear icon at the bottom-right), and pick "Starling" from the list.

the ubuntu 26.04 lts login screen with the session switcher showing starling and ubuntu (gnome) as options on the bottom-right

Mind you, it is quite early for this desktop. Currently on v0.2.1, the project itself is being handled by an anonymous human developer (or maybe AGI 😱?), so I would test it on a spare machine.



from It's FOSS https://ift.tt/2KDnjlk
via IFTTT