How I customize Fedora Silverblue

I am a Fedora Kinoite user, and this will likely not change for now.

KDE is messy, but I love it’s features. Features dont mean customizability though.

I found this survey really interesting. Customizability is a big “selling point”, but many people simply prefer the general defaults and look.

There are still [things I miss, where it blows my ming that GNOME doesnt have these by default:

  • Editing screenshots
  • Having a clipboard history
  • A traditional single panel (that is at the bottom so you look more upwards)
  • Changing the order of the “Super” key actions
  • Allowing to change the cursor
  • Having a background on the login screen (GDM Settings is broken on Silverblue)
  • Basic KDE app support (i.e. non-broken theming)
  • A real text editor
  • A PDF viewer with editing capabilities
  • Basic keyboard tiling support?

I also find that GNOME wastes a ton of potential by using the b*tt ugly grey GDM and not using blur-my-shell. And that cursor… it is not round, it is crooked, just why?


Trying out GNOME

I dont like the vanilla experience, even though I see how it can be nice. I tried virtual desktops on KDE and decided I dont need them.

This is what I want:

How to get there:

Flatpaks

Starting with a debloat, sorry Fedora flatpaks :wink:

flatpak remote-delete -y fedora
flatpak remote-delete -y fedora-testing
flatpak remove --delete-data -y --all

Flathub should be added in the system setup.

I use the system flathub remote, and am very sad that this change proposal was rejected, because having a single remote for everything, including future sysextensions is really nice.

Installing base apps

Most GNOME apps have a better alternative, which is pretty crazy actually.

  • VideoPlayer → Celluloid
  • Music → Gapless
  • Terminal → Ptyxis
  • Extensions → ExtensionManager
  • ImageViewer → ImageRoll (GTK3), Gwenview (KDE)
  • DocumentViewer → Okular (KDE), Firefox
  • TextEditor → Kate (KDE)
flatpak install -y \
com.mattjakeman.ExtensionManager \
io.github.realmazharhussain.GdmSettings \
app.devsuite.Ptyxis \
com.github.neithern.g4music \
com.github.weclaw1.ImageRoll \
org.kde.okular \
org.kde.kate \
io.gitlab.adhami3310.Impression \
io.missioncenter.MissionCenter \
org.gnome.SimpleScan \
org.gnome.Snapshot \
org.libreoffice.LibreOffice \
org.localsend.localsend_app \
org.mozilla.Thunderbird

Some extra apps

These include

  • Decoder: a really nice QR Code scanner, see my fix for deleting the queue always
  • Gwenview: A minimal but useful image viewer with actual features :wink:
  • Switcheroo, a tool to convert images
  • Authenticator: The only good 2FA app on Linux?
flatpak install -y \
com.belmoussaoui.Decoder \
fr.romainvigier.MetadataCleaner \
org.kde.gwenview \
io.gitlab.adhami3310.Converter \
com.belmoussaoui.Authenticator \
org.gimp.GIMP \
org.inkscape.Inkscape

GUI Tweaks

I dont find GNOME usable by default. The preinstalled Extensions are not the ones I would use, and some basic features are missing.

(Tray icons are not one of them, even though basically any app needs a quicksettings extension then)

Using the Flatpak Extensionmanager, I add the following:

image

Dash-to-panel

This extension is really actively developed, and I think it may even be better than the Plasma panel. It only offers a single one, but it has a lot of customizability.

What I do:

  • keep changes as minimal as possible
  • style
    • override panel background opacity to 20%
    • enable “animate hovering app icons”
  • action
    • under “click action”, and the cogwheel, change “middle click” to “quit” (this is also not default on plasma, really annoying)
  • fine-tune
    • change tray icon padding to 0 because the default is incredibly huge
    • change tray font size to 18

Other extensions

The “Clipboard Indicator” is actually a clipboard manager. For whatever reason “Super+V” opens the calendar, so this is still worse than KDE. Also it seems that “Super” is a reserved key?

I did not try “Bluetooth Quick Connect” but the description sounds like something you want by default.

Blur my Shell” just makes GNOME use it’s potential.

Mullvad Indicator” is one of the extensions that removes the need for using a tray icon. Being 3rd party it has way less features, but I like how it looks, and it doesnt require running a ***** Electron app all the time.

The “Privacy Quick Settings” only make sense if you exclusively use Pipewire apps. I am close to that but the Linux Desktop is not there yet.

(btw yes that site needs an overhaul, I lost 3h of edits. Dont work in a browser.)

CLI Tweaks

With some searching, I found many gsettings commands to achive, what otherwise would need gnome-tweaks.

Enable all 3 window buttons

gsettings set org.gnome.desktop.wm.preferences button-layout ":minimize,maximize,close"

set “super” / “meta” key to open app menu

gsettings set org.gnome.mutter overlay-key '' 2> /dev/null
gsettings set org.gnome.shell.keybindings toggle-application-view "['Super_L']" 2> /dev/null

For some reason this seems to prevent me from using “Super” for anything else, like moving windows.

Enable fractional scaling

This one is complicated.

I find GNOME way too huge on 125% scaling, while all non-GTK apps look tiny on 100% on a 1080p 14in monitor.

This command unlocks the (for whatever reason still) hidden fractional scaling options.

gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']"

I use Firefox and Thunderbird in 125% instead, otherwise GNOME feels like a toy.

There is no way to change the interface size of Firefox it seems, which is a big issue. It looks okay-ish, but not good at all.

Fixing the cursor cursor

This command solves 2 purposes, the second in the next chapter

rpm-ostree install --reboot breeze-cursor-theme fedora-release-kde

You need to reboot to apply the changes.

For changing away from the ugly Adwaita cursor to the best cursor in the world, the Plasma 6 Breeze cursor, use this command:

gsettings set org.gnome.desktop.interface cursor-theme breeze_cursors

The cursor is too small at 100% though, and all Flatpak apps still use the Adwaita cursor.

Unbreak KDE apps with Breeze dark

The installed package fedora-release-kde includes the Breeze Dark theme, which Kate Flatpak can now use.

Before, it could only use Breeze light, and as the UI is kinda broken, this is really visible.

But still after that change, KDE apps look worse than on KDE.

Also, the Breeze icons used are all dark. There needs to be some way to sync the Adwaita theme with the Breeze theme, otherwise this is unusable.

At least GNOME cannot break KDE apps anymore :sweat_smile:

Fixing my keyboard layout

I have a strange “UK, extended Windows” Keyboard which is pretty cool, but annoying. I need to switch to German quickly, without leaving the keyboard.

This was not discoverable from the settings at all, but some website told me “Super+Space” already does this? Why is this not discoverable in the Shortcuts??

All I needed to do is add the layout.

Conclusion

GNOME does not care about even adapting the bipolar dark/light color scheme of apps using other toolkits.

This sucks.

GNOMEs UI is huge. It looks really nice when shrunken on a kinda HiDPI display, but bad on normal scaling. If anybody knows how to decrease the size of the header bar, I would appreciate that.

Good things in GNOME

I didnt try this for no reason.

  • The screenshot tool just works awesomely well
  • The iconset is great
  • The backgrounds are not my taste, but I like that one
  • It is really snappy and fast
  • It is stable and reduced to a minimum
  • Style-wise it just got better. KDE too, but still, awesome job!
  • There are a ton of GTK apps I prefer over Qt apps
  • All Apps are on Flathub, and well packaged, Pipewire, Wayland, etc.

Still, these GTK apps work like native on KDE, the other way around is still a pain.

Bad things in GNOME

These come to the other mentioned points.

Nautilus

I have not tried Nautilus extensively, but I really like Dolphins details, like calculating the hashsums in a context menu, customizing the sidebar, changing the icons of elements everywhere, changing the UI.

GUI customizability

Extensions like “QuickSettingsTweaks” are extremely unstable and crashy. You really see how this was not designed to be modified.

Even removing a single entry is not natively possible, like the useless language indicator.

Compatibility

I cannot stress enough, how a desktop that just cares about its own ecosystem is harmful to the Linux Desktop.

I am not sure if the issue are Qt apps adapting to the system, and they should just have a working KDE theme and use that exclusively.

3 Likes

I am using Dash-to-dock as well, since forever. But only today I discovered in gnome extensions this extension called “Background Logo”. Now I have a stylish fedora logo on my background.

2 Likes

That extension is preinstalled afaik, I find it pretty useless :sweat_smile:

What does this mean?? I’m looking at my Gnome cursor now and am trying to find out what’s wrong with it. :sweat_smile:

Enable fractional scaling

Please be aware that the (experimental) fractional scaling is kind of… bad. The reason the setting is hidden is because it’s more like a hack than an actual feature. The way it works is like this:

  • You choose 125% scaling
  • It finds the nearest integer value that can divide to 125%, which is 500%
  • It then internally renders the screen at 500% and then scales it back to normal screen resolution

This has two problems; the first one is that it takes a lot of resources to constantly resize everything on screen. And secondly the end result can be more blurry than wanted since there is an actual lossy resizing taking place.

2 Likes

Answer was still in the draft.

The cursor “stick” is not straight. Also it is sharp edged which makes no sense when GNOME is round everywhere. Windows, ChromeOS and macOS have it the samw though

A post was split to a new topic: Fx KDE RPMs and Flatpaks by including this package

This post is quite old at this point, but i still have some questions

Most of the things you listed are either not necessary or plain subjective things. nothing wrong with that, but why “blows my mind” wording? GNOME is not KDE, if you like Plasma more, then just stick with it?

What is crazy exactly? That they don’t suit your personal taste? I don’t like the language you’re using towards free software project.

If something was basic, it would be implemented ages ago. If it wasn’t, then its not basic.

Also, about this: go to KDE app developers and ask them to Include theme by default. If Adwaita apps can have their own theme outside GNOME, so can KDE apps. Its not GNOME’s business to theme anything.

That rant blog can be summed up like this: author doesn’t bundle icons on Linux and is furious that others don’t do that for them. Seriously, if you want your apps be usable, why not just include it yourself??

No, this is plainly wrong. As long as the app implements FDO dark style preference (or whatever it was called, I don’t remember now) it will work, but apps need to implement it

GNOME is not meant to be CSS Zen Garden.

EDIT: BTW

You took an actual text editor and replaced it with advanced code editor. So much for “rEaL text editor”

The problem is that most KDE apps do not bundle their own theme. That means: you either theme them yourself (not easily feasible in flatpak) or use Plasma. I used multiple different desktops and it was the only one where Qt apps were not painful to theme (because frankly I didnt need to, Plasma did that for me). Again, GNOME doesn’t mess with application’s theme by design.

Years ago I would have been interested in customizing my desktop. Now I am old and I look for the most basic and “vanilla” setup possibile in order to avoid any complication which results in glitches and me debugging and looking for fixes. I tried Gnome extensons, they broke with each update and/or added some issues, it is not worth it. Speaking of Plasma, when you expose all those options the most important thing is a button that must be always accessible to reset the desktop to the default settings. 'nuff said.

I find a bit strange the idea of “customizing Silverblue”, because the idea of “customizing” pretty much goes against the idea of “system provided as image”. I mean, if you want “customizing” why Silverblue?

Not really. In fact, Silverblue (or atomic desktops in general) are very customisable. In this case, you’re just customising your desktops with extensions or change a couple of apps.

Yes, “very” customizable indeed. Oh the irony.
Sometimes it is difficult to understand people.
The idea behind “immutable” systems (not “atomic”) is the system does not mutate.
It does not mutate because who ever invented this thing believes whatever “mutation” is either a mistake or a security flaw.
So yes, you take a system whose main idea is to forbid “the user” to make any change and you “customize” it via Gnome extensions, which are the worst idea ever and irony again, like we did not know extensions are bad before.
Extensions that try to make some changes over Gnome whose philosophy is to not have or to hide ANY option.
Plus of course flatpaks, software you get from a third party source, what could go wrong, again, like we did not now about it before.

Have you actually tried to research the topic before you start ridiculing someone? With experimental (dont let the word scare you, they’re very usable and stable. I use them and that’s what Ublue is based off) bootc images you can just take an image (let’s say Silverblue) and locally built an image with whatever software you want. It is customisable, just in different way than traditional system. Same is possible with current ostree images (that’s what you get when you install official Silverblue), but its more difficult.

No, user can do whatever they want with their system. They just can’t as easily break it when they do something wrong.

Umm, no? There are tons of hidden preferences for power users to play with (like enabling vim motions in GNOME Text Editor). Also, if GNOME’s philosophy was to not have any options, then they’re doing it wrong, coz there’s tons of them lmao. Extensions alone are ultimate way of giving choice to the users - they can do whatever they want as long as they know how to code them.

Why? I’m genuinely asking why do you think so, coz that’s quite the opinion.

You realise Fedora is an actual third-party here, right? On flathub most/a lot apps are verified by the developers, i.e. either they maintain it or people they trust. It means such software is first-party. Flatpaks that aren’t verified are exactly the same as Fedora packages, i.e. third-party packages done by people not affiliated with the project they package.

Please, please, please: research topics before you form an opinion on them.

This kind of discussion usually end the same as a discussion about religion because it not the facts, it is the faith about something above and beyond, in our current case the bright future of Fedora “immutable” and generally the “immutable linux”, plus the self contained and agnostic packages like snap and flatpak. In short, the current hype.

And yes, I am aware I am writing blaspemies inside the church.

The facts are yes, you can force changes on the “immutable” system with the “overlay” trick and I don’t need to research anything, it is nothing complicated and it is explained in Fedora documentation. It is necessary to provide a way to allow “the user” to make changes on top of the “system image” because it is impossible to have a “one fits all” solution and not all the software can be added as self contained - isolated flatpak.

From saying you can install “software X” overlying the “image” to saying you can “do whatevr you want” there is some difference and then “when they do something wrong” makes no sense with a system that is read-only. It is read-only because you aren’t supposed to do anything.

About Gnome, you read it again please. If the options are HIDDEN it means the devs don’t want anybody to access those options. Otherwise they wouldnt’ be hidden, we would had the proper buttons.

About Gnome extensions, they are the worst idea ever for the same reason extensions are the worst idea ever in any case, always. You allow random people to distribute software that “the user” install with two possible consequences, security breach and performance issues (and additional bugs). There is one solution only that is to enforce code review on extensions requiring “maintainers” and the code review must happen before each update. To not mention that the way extensions are installed and managed is clearly the result of an afterthought, that is another usual and known condition. Why the afterthought? Because with extension you have the “excuse” for Gnome not allowing any change, it doesn’t matter if in the end extensions dont’ work, they somehow exist so Gnome is “customizable”.

On Flathub apps are verified by nobody.

Please please please forgive me for my sins.

Yup, you don’t know what you are talking about and you don’t even want to know. That’s a waste of my time.

1 Like

Yes I admit it, I am an idiot. That said, the facts remain.
The “immutable” system is not for allowing “the user” to do whatever she/he wants, simply because we already had something like that.
You know, like compiling the whole system from sources.
Gnome does not allow any “customization” but there are extensions and those bring more problems than any good.
If we look at the same thing in the opposite direction, if an extension is mandatory, then it should not be an extension, it should be an hardcoded feature.
Flatpak does not bring anything good or useful to “the user”, on the contrary, it adds more problems because of the software “isolation” from the system (see “immutable”).
Any “store” which distributes software pretty much negates the very idea of “distribution”.