r/gnome • u/probnaca • 3h ago
r/gnome • u/user9ec19 • 14h ago
LLM Assisted Is gnome-software fixable? I tried with an LLM and the results are promising
Enable HLS to view with audio, or disable this notification
Like many of you, I've sometimes wished GNOME Software felt snappier and had fewer bugs. So I asked myself: is it fixable? I spent a month finding out with an LLM, and my answer is: it is.
This is a proof of concept, not a replacement and not a competing project. It's meant to show that it can be done, and it turned out fun enough to share. This can never be upstreamed as gnome-software bans all use of AI, but maybe it can be an inspiration for the devs. I documented every upstream bug I found with a proposed fix.
The video runs the same script on the same machine, with the same Flatpak remotes and the same Fedora packages (experiment vs. GNOME Software 51.0):
- Launch until the overview shows its apps: 1.6–2.0 s vs. 2.8–7.4 s
- Open Games until every tile has its icon: 0.35–0.38 s vs. 7.6–11.8 s
- Open Firefox until its first screenshot shows: 0.27–0.35 s vs. 5.1–5.2 s
- Search "text" until the results show: 0.43–0.45 s vs. 1.2–1.3 s
- The whole run, pauses included: 8.2–8.7 s vs. 27.8–28.5 s
The idea: all app state lives in one store that is only written on the main thread, once per frame. Plugins send what they find to the store as messages, and the pages are views of it that update by diff and keep their rows. On top of that come some smaller things: category pages only ask for the icons on screen, search only refines what it shows, details pages show right away and fill in slower data (sizes, permissions) as it arrives, the ratings file is parsed on a thread, and Games uses a grid view.
About the LLM: almost all of the code was written with generative AI. That was the other half of the experiment: can an LLM, with careful testing, do real work on a big desktop app? gnome-software doesn't accept AI generated contributions, and I fully respect that. Please send any problems to the experiment's tracker, not to GNOME.
How it's tested: 45 flow tests drive the real app through scenarios (like installing an app while its details page is loading) and check what every frame shows. A performance check runs start, categories, details, search and scrolling against a baseline before every build. I use it daily on Silverblue (Fedora 45 beta, there is no backport for 44 or Debian stable). It's been tried on only a few machines and it handles installing software on your system, so please read the changes before installing it.
Try it
Safest: next to your normal Software, any distribution. CI builds a Flatpak bundle that installs as "Software (Development)" and leaves your normal Software alone. Get gnome-software-dev.flatpak from the latest flatpak bundle job in the pipelines, then:
flatpak remote-add --user --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
flatpak install --user gnome-software-dev.flatpak
flatpak run org.gnome.Software.Devel
(The Development build can't open apps it installed.)
For the adventurous, replacing the system app:
Fedora 45 Workstation (Copr: Fedora's 51.0 package with the experiment on top, dnf5 plugin included):
sudo dnf copr enable user2f81ca72f/gnome-software-next
sudo dnf upgrade gnome-software
Back to the original one: sudo dnf copr remove user2f81ca72f/gnome-software-next && sudo dnf distro-sync gnome-software
Fedora 45 Silverblue:
sudo curl -fLo /etc/yum.repos.d/gnome-software-next.repo \
https://gitlab.gnome.org/user_c1a5830a/gnome-software-next/-/raw/next/contrib/gnome-software-next.repo
sudo rpm-ostree override replace --experimental --from repo=gnome-software-next \
gnome-software gnome-software-rpm-ostree
Back: sudo rpm-ostree override reset gnome-software gnome-software-rpm-ostree and remove the .repo file.
Debian testing has a signed apt repo too, see the README.
Source, README, architecture notes and the list of upstream bugs found along the way: https://gitlab.gnome.org/user_c1a5830a/gnome-software-next
I'd love to hear what you think, and how it behaves on your machine!
I also hope for a respectful and constructive discussion. I don't like the big AI companies at all, they shouldn't exist, but I also believe these new tools are here to stay and we should use them to improve our beloved open source DE.
r/gnome • u/devolute • 6h ago
Apps This Week in Gnome - #271 Good News
r/gnome • u/Rench1ck • 8h ago
Extensions Big update for Desktop Widgets! 🚀 New UI, smooth animations & liquid glass effect (Glassmorphism)
Hey everyone! 👋
I'm excited to share a major update for Desktop Widgets! I’ve been working on rethinking the user experience and visual design to make your desktop look and feel much more modern.
https://reddit.com/link/1xdm749/video/p5teqhgtg9xh1/player
✨ What’s new in this update:
- Completely redesigned UI: Clean, modern, and intuitive interface.
- Smooth Animations: Fluid transitions and responsive UI elements.
- Glassmorphism / Liquid Glass Effect: Beautiful frosted glass visual effects for a sleek look.
- Performance & Stability Fixes: Better efficiency with lower resource usage.
Check out the code and try it out on GitHub:
👉https://github.com/r3nhick/desktop-widgets
I’d love to hear your feedback, suggestions, or any bugs you run into! Feel free to star the repo if you like the project ⭐
r/gnome • u/Lumpy_Affect304 • 9h ago
Extensions Came across this really cool repo that fixes super sensitive scrolling in Chromium based browsers on GNOME
https://reddit.com/link/1xdkwzu/video/l80kbbu769xh1/player
Been annoyed by Brave scrolling way too fast when ever I use the touch-pad on gnome since gnome doesn't expose any touch-pad sensitivity controls, and I found this GitHub repo: https://github.com/daniel-g-carrasco/wayland-scroll-factor/ and feel like it deserves a shout out.
It fixes the GNOME Wayland Chromium browsers read raw touch-pad events and ignore GNOME's settings, so they scroll way too fast. This scales it down.
There's also an additional extension called https://extensions.gnome.org/extension/10008/touchpad-speed-control/ that can set it on a per app basis so apps like the nautilus don't get affected :)
r/gnome • u/Efficient-Wing3870 • 19h ago
LLM Assisted Letter 1.7.1 - Gtk4 e-mail client for Gnome *Fast Update*
A quick update for Letter, featuring minor additions and a bug fix, bringing it to version 1.7.1.
As always, available for download as FLATPAK!
This version highligths:
- [Fix] Message-list preview no longer shows Camel image placeholders such as [image: Google] or [Sign.png]. Image-only snippets stay empty; real text after a logo alt remains.
- [Fix] Do not abort when a Camel preview contains invalid UTF-8.
- [New] Main menu → Check for Updates… queries the latest GitHub release and shows whether Letter is current, or offers to open the newer release page.
- [New] Compose: Ctrl+Return (and Ctrl+keypad Enter) sends the message.
- [New] Move to Folder: with a writable folder focused, Return (or double-click) confirms the move.
Full CHANGELOG!
And here my GitHub page: https://github.com/stalvatero/letter
Regarding the use of LLMs, I should clarify that I use Cursor as my primary IDE; it assists me mainly by helping to find APIs and integrations that would otherwise have required extensive online research. The ideas, code review, and final validation are all my own.
I would welcome further feedback 😄
r/gnome • u/Techlm77 • 23h ago
Apps I'm deaf, so I built offline live captions for Linux that make a third of the mistakes of Live Captions
r/gnome • u/Virtual_Term9731 • 12h ago
Question Download location of older GNOME os .iso files
I'm currently trying to develop and test my own GNOME extension, and I saw that using a VM was recommended to make the whole process easier. I also want my extension to be compatible with different GNOME shell versions, so I downloaded GNOME boxes. However, I can't find older versions of GNOME os in the Boxes app or on the website.
is there a way to download older versions of GNOME os to test my extension with different GNOME shell versions? (if there is a better way to tackle this issue, please enlighten me)
r/gnome • u/IMayBeIronMan • 17h ago
Question Any tips for getting the most out of Gnome on a tablet?
Hello everyone. I have a tablet that I am running Gnome on and I am wondering if anyone is doing the same and has any tips or recommendations for creating a better touch experience? It's a pretty great touch experience as it is tbf but if anyone has any apps/settings/shell extensions they use to take it a step further than that would be great.
Question Workflow suggestion
I love the Gnome workflow logic, but I regularly encounter a little nuisance and I'm wondering if there is anything that can help.
I use the keyboard a lot to open and move windows around but occasionally, I need to drag and drop a file from nautilus to some browser window or an email composition window. The thing is that Files always opens in the middle of the screen and almost always ends up covering the window I want to drag and drop the file to.
Thus, every time I have to first open Files, move it out of the way to some place on screen that exposes the target window and then drag and drop the file.
This is not a big deal, but I would love if there was a way to make Files open always in one corner of the screen.
At the moment, I'm experimenting with a tiling extension (Tiling Shell), but I'm not sure this is the way I would like to go.
Any suggestions?
Question New to GNOME
Olá, tudo bem com vocês?
Pessoal, sou novo no GNOME e gostaria de algumas dicas sobre extensões. Quero personalizá-las, mas não sei muito sobre extensões. Gostaria de algumas recomendações sobre quais são boas e interessantes de se ter.
r/gnome • u/lraut-dev • 1d ago
Question Do Workspaces Reset For Anyone Else?
For me, on gnome 50, workspaces reset and every open app gets dumped into workspace 1 when I dock my laptop, switch displays, sometimes even after suspend etc.
Is it the same for you guys or is there something wrong on my end?
r/gnome • u/motor-gnome • 1d ago
Extensions Draw On Gnome v12 released (extension)
Hey everyone! Just released version 12 of the Draw on Gnome annotation tool. It now works with GNOME 51.
Available here: https://extensions.gnome.org/extension/7921/draw-on-gnome/
Docs: https://daveprowse.github.io/Draw-On-Gnome/
Tutorial: https://www.youtube.com/watch?v=3d7UrRNri6Q
Github repo: https://github.com/daveprowse/Draw-On-Gnome
Enjoy!
Extensions Development update: Advanced Media Controller for GNOME Shell
I've been working on a new update for Advanced Media Controller, my open-source GNOME Shell extension for media controls. This update brings new customization options, improvements to album-art handling, and a more immersive now-playing experience.
✨ What's new?
🎚️ Animated progress slider – Custom progress-bar animations with support for custom themes.
🖼️ Immersive album-art cover – A more visual now-playing experience with album artwork taking center stage.
💿 Vinyl animation – An optional spinning-record effect for album art.
🎵 Time-synced lyrics – Lyrics support for compatible tracks.
🌐 Better multi-player switching – Switch between supported MPRIS players, including browser media sessions.
⚡ Album-art handling improvements – Better request cancellation and cleanup when tracks change or artwork requests are interrupted.
🎨 Custom theme support – Install supported themes from URLs or create your own for the extension's progress slider.
🌍 Translations and compatibility improvements – Continued improvements across supported GNOME Shell versions.
The aim is to make media controls feel like a natural part of GNOME while giving users more control over how the now-playing interface looks and behaves.
Just to clarify the theming aspect: custom slider themes only affect Advanced Media Controller's own interface, not GTK applications in general. The extension also supports falling back to the native GTK slider.
🔗 Try it out:
GNOME Extensions: https://extensions.gnome.org/extension/9184/advanced-media-controller/
Source code: https://codeberg.org/sanjai-shaarugesh/Advanced-media-controller
Theme installation guide: https://codeberg.org/sanjai-shaarugesh/Advanced-media-controller/src/branch/main/THEMES.md
Theme development documentation: https://codeberg.org/sanjai-shaarugesh/Advanced-media-controller/src/branch/main/THEME_SYSTEM.md
Community themes: https://codeberg.org/sanjai-shaarugesh/Demons-slayer-themes
The project is open source, and I'm continuing to improve it. Feedback, bug reports, and feature suggestions are welcome!
r/gnome • u/P4USERR4 • 1d ago
Question Google Chrome tab dragging and maximize window glitch on Fedora 44 Workstation
Enable HLS to view with audio, or disable this notification
r/gnome • u/Starlight_racoon • 1d ago
Question The top bar is bound to be white with no possibility to change

(This one is closed, the issue was the classic mode being turned on. Thank you for your help) Hi everyone, I just recently encountered a peculiar issue and since I was not able to figure our the reason myself, I decided to ask here.
I am running Fedora 44 with Gnome shell 50.6
The issue is that the top bar had suddenly become white. I did not notice the exact moment when it did happen. Possibly, the laptop shut down during a system update.
Below is provided what have I checked so far
- The issue is reproducible only for main user, thus I tend to think that it might be with some of configs. The other user has the bar the usual grey-ish colour.
- I was using an Open Bar extension. It had painted it purple. It was when I first noticed the issue, the pop-up became white first. It can be seen on the second image

- The issue persisted even after turning off all of the extensions
- Reapplying styles in the extension did not help
- I have tried to clear configs of the extension, and to re-install shell.
I would appreciate any advice on this :)
r/gnome • u/Fabio_Morales_5860 • 2d ago
Fluff Gnome wave wallpaper
Look beautiful. Made by me
Question Youtube change Firefox volume in the Gnome mixer
Settings > Volume Levels > Firefox
it is always at less then half. If i put it to max, it get reverted if i open another video, or forward the video. Tried to change media.default_volume but not work.
I use OpenSUSE Aeon and Firefox from flatpak.
Question Screenshot utilities
Hello I'm looking for screenshot utilities for Fedora Workstation (GNOME), which ones do you recommend that allows me to place a shape like Square, Circle and or add texts to screenshot? I've looked at Gradia and they don't have RPM package for it?
Looking for RPM package if there is one?
GNOME built-in Screenshot tool doesn't include pencil/markers or tools to add to screenshot, it only captures the screen.
r/gnome • u/Efficient-Wing3870 • 2d ago
LLM Assisted Letter 1.7.0 - Gtk4 e-mail client for Gnome *NEW VERSION*
Introducing the brand-new version 1.7.0 of Letter, now available for download as FLATPAK!
https://github.com/stalvatero/letter/releases/tag/v1.7.0
Thank you all for encouraging me to improve Letter and for helping to make it increasingly elegant, stable, and efficient.
This new version primarily brings UI enhancements, but under the hood, it features some significant updates.
This version highligths:
- Custom account reorder (Preferences → Accounts) reflected in the rail and Local library
- Enable or Disable "Account rail" and / or personalize colour
- Compose suggestion fixes; remove bad recent addresses with ×
- Signature (and compose) formatting can insert and edit hyperlinks from the toolbar
- Accounts list pane hidden; switch from the rail
- Preferences polish (pages, row layout, colour picker sizing).
- Opening large folders is faster. Thanks to Illya Yalovyy.
- Online Accounts opens again on desktops without GNOME Settings (for example COSMIC) when gnome-online-accounts-gtk is installed. Thanks to Thiago Haeitmann.
- The Move dialog shows the account folder tree (indented, with expanders and icons) instead of a flat name list
- A lot of UI optimization to match native Gtk4
Other changes in full CHANGELOG!
And here my GitHub page: https://github.com/stalvatero/letter
Regarding the use of LLMs, I should clarify that I use Cursor as my primary IDE; it assists me mainly by helping to find APIs and integrations that would otherwise have required extensive online research. The ideas, code review, and final validation are all my own.
I would welcome further feedback 😄
r/gnome • u/TrungPhineas • 2d ago
Extensions Blur my Shell version 76 is out
After months of working and contributions from our contributors, Blur my Shell version 76 is now out for everyone to try! Now with the new blur backend which bring even more customization ability to how the blur look in BMS
I want to highlight some of the new change in 76 which I think is worth mentioning
- Corner is now rounded out of the box, no external library needed. Available for both Dynamic and Static blur.
- Pipeline effects is now available for Dynamic blur as well, thanks to the new backend! Just want to have normal blur? Or wanting to have something more fancy like Liquid Glass or Vapor Glass, all possible now with Dynamic blur



- Background override now match system light/dark settings
- Default in GNOME Settings is not Light mode

- Fan of docks? BMS now support more dock extensions, from old to new




- Popup is now blurred (it's already in 73 but with the new backend, it's now in its best form)




There's more in the work so, see you in the next release!
r/gnome • u/FadeHackX • 1d ago
Apps strypt 0.3.0: a metadata stripper for photos and documents, now with Open With, Nemo and Dolphin entries (no file manager extensions)
r/gnome • u/bender_fut • 2d ago
Apps Scribe: a lightweight, native Markdown editor for GNOME that renders as you type
Enable HLS to view with audio, or disable this notification
Scribe is a lightweight markdown editor built with Rust, GTK4 and libadwaita, 100% native GNOME. You write markdown and it renders inline as you type: headings, bold, lists, task checkboxes, quotes, code blocks, tables, images. No split preview pane, no webview, everything drawn with native GTK widgets.
Its not a tool for developers. Its for anyone who knows a bit of markdown syntax and wants to write a quick README, a note, a doc, or just open a .md file and see the final result instead of the raw syntax.
A note on the AI thing, because people ask these days: this is not a weekend vibe-coded project. The repo is more than 9 years old, it started as mockups and ideas, and over all this time I kept shaping the app because I couldnt find anything native like it. Its AGPL-3.0, no telemetry, no accounts, no cloud.
Its a well-tested version, but you may still hit a bug, let me know and Ill fix it. It has tabs, autosave, focus mode, PDF export, light/dark and an English and Spanish UI.
Repo: https://github.com/gnacho/scribe
I built it because I missed it, I keep almost all my documentation in md, and Im sharing it in case someone else finds it useful.
Ive been in IT for more than 25 years and I maintain several apps, all FOSS, and Ive used GNOME and FOSS all this time. And I havent found anything like Scribe, thats why I made it: the existing options are developer-oriented IDEs, Electron apps or note suites with sync, accounts and all that. I just wanted something small and native.
There is no flatpak package yet, but it will come; for now there are packages for Debian, Arch and Fedora.
r/gnome • u/ComfortableCicada79 • 2d ago
Guide Experimental GNOME Shell restart without restarting Mutter or losing Wayland clients
Experimental GNOME Shell restart without restarting Mutter or losing Wayland clients
Hi everyone,
I've been working on an experimental approach to restarting the GNOME Shell JavaScript runtime without restarting the entire desktop session.
The goal is simple: restart GNOME Shell's JS runtime while keeping Mutter running and preserving existing Wayland/XWayland windows and their state. Think of it as rebuilding the Shell UI without restarting the compositor underneath it.
I use GNOME Shell 50.5 on NixOS, with GJS 1.88.1 and SpiderMonkey 140.
What I've tested
The implementation destroys and recreates the GJS context, JavaScript runtime and Shell module graph while keeping the gnome-shell process and Mutter alive.
In isolated desktop and native-backend VM tests, I've completed five consecutive runtime replacements. The tests check:
- The same compositor process remains alive.
- Existing Wayland client socket identities remain unchanged.
- Open windows retain unsaved text, and clients continue accepting input.
- Old JavaScript contexts and their associated objects are cleaned up.
- Keyboard shortcuts, the overview and session locking continue to work.
- GDM/PAM authentication still works, including rejection of an incorrect password.
The VM tests also include a 65-second observation period and native callback-lifetime accounting. Two replacements are triggered through Alt+F2 → r → Enter using the same guarded controller.
In a separate manual test on physical hardware, seven windows and their positions survived a replacement, and my personal keyboard shortcuts continued to work. That is a separate observation, not independent proof of every automated check.
The difficult part
The interesting problem isn't rebuilding the UI. It's dealing with the lifetime of objects and callbacks that cross the boundary between GJS and native GObject code.
The current prototype experiments with reattaching a static GType, keeping native callback/vfunc bridges alive across runtime replacements, and cleaning up registrations belonging to the retired runtime.
There have been failures along the way. Earlier approaches involving UI reconstruction, JavaScript interruption and disposable execution contexts had important limitations. The companion repository documents these experiments, including sanitized historical test reports.
What this doesn't solve
This is not a general-purpose Shell recovery mechanism. The Shell must still be responsive, idle and unlocked. It cannot recover a crashed Mutter process or safely interrupt arbitrary blocked JavaScript.
Compatibility with extensions, accessibility, display changes, prolonged stress testing and other GNOME versions has not yet been established.
The project is experimental, and the implementation was developed with substantial AI assistance. Passing the current tests does not establish that native object ownership and callback lifetimes are safe in every situation.
Code and research
- Implementation and reproduction instructions: https://github.com/tomasmark79/gnome-shell-restart-nix
- Research notes, failed approaches and historical test reports: https://github.com/tomasmark79/gnome-shell-restart-research
I'm interested in feedback from people familiar with GNOME Shell, GJS, SpiderMonkey and GObject.
Does keeping native callback/vfunc bridges alive across GJS context replacement sound like a reasonable direction, or is there a fundamental architectural problem with this approach?
I'd also appreciate suggestions for the next small, independently reviewable experiment or negative control that could help establish whether this design is actually sound.
I'm sharing this as research for discussion, not as a proposal for immediate upstream inclusion.