<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="https://tim.siosm.fr/feeds/KDE.xml" rel="self" type="application/atom+xml" /><link href="https://tim.siosm.fr/" rel="alternate" type="text/html" /><updated>2026-04-28T21:44:37+02:00</updated><id>https://tim.siosm.fr/feeds/KDE.xml</id><title type="html">Siosm’s blog</title><subtitle>Some thoughts from a systemd, Rust and security aficionado.</subtitle><author><name>Timothée Ravier</name></author><entry><title type="html">What’s new for Fedora Atomic Desktops in Fedora 44</title><link href="https://tim.siosm.fr/blog/2026/04/28/fedora-atomic-desktops-44/" rel="alternate" type="text/html" title="What’s new for Fedora Atomic Desktops in Fedora 44" /><published>2026-04-28T00:00:00+02:00</published><updated>2026-04-28T00:00:00+02:00</updated><id>https://tim.siosm.fr/blog/2026/04/28/fedora-atomic-desktops-44</id><content type="html" xml:base="https://tim.siosm.fr/blog/2026/04/28/fedora-atomic-desktops-44/"><![CDATA[<p><a href="https://fedoramagazine.org/announcing-fedora-linux-44/">Fedora 44 has been released</a>!
🎉 So let’s see what is included in this new release for the Fedora Atomic Desktops variants
(Silverblue, Kinoite, Sway Atomic, Budgie Atomic and COSMIC Atomic).</p>

<p><strong>Note:</strong> You can also read this post on the
<a href="https://fedoramagazine.org/whats-new-fedora-atomic-desktops-in-fedora-linux-44/">Fedora Magazine</a>.</p>

<!-- more -->

<h2 id="changes-for-all-atomic-desktops">Changes for all Atomic Desktops</h2>

<h3 id="issue-tracker-moved-to-the-new-fedora-forge">Issue tracker moved to the new Fedora forge</h3>

<p>We have moved the <a href="https://forge.fedoraproject.org/atomic-desktops/tracker">cross-variants issue tracker</a> to the new <a href="https://forge.fedoraproject.org">Fedora forge</a>.
This is the best place to file issues that impacts all variants or to coordinate work between all of them.
If you have issues specific to a given desktop environment then we usually prefer to track them in each respective SIG trackers.
They are listed on the <a href="https://forge.fedoraproject.org/atomic-desktops">README for the atomic-desktops organization</a>.</p>

<h3 id="unified-documentation-hosted-on-the-new-forge">Unified documentation, hosted on the new forge</h3>

<p>The <a href="https://docs.fedoraproject.org/en-US/atomic-desktops/">unified documentation for all Atomic Desktops</a> is finally live!
Unfortunately the translations have not been migrated so we will need help to re-translate everything again, once the translation setup is ready with the new forge.
It should be mostly copy/paste from the previous docs and this time we will only have to translate the docs once and not for every (new) variant.</p>

<p>See the tracking issue <a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/10">atomic-desktops#10</a>.</p>

<h3 id="removal-of-fuse-version-2-libraries">Removal of FUSE version 2 libraries</h3>

<p>FUSE version 2 has been deprecated and unmaintained for a while so we have removed it from the images. In practice, this means two things:</p>

<ul>
  <li>If you are using AppImages, some of them may not work anymore.</li>
  <li>If you are using legacy backends with Plasma Vault on Kinoite, you need to migrate your data.</li>
</ul>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/AtomicDesktopDropFuse2">Fedora Change</a> and the tracking issue <a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/50">atomic-desktops#50</a>.</p>

<p>The implications are detailed below.</p>

<h4 id="appimages-and-the-fuse-2-libraries">AppImages and the FUSE 2 libraries</h4>

<p>Some AppImages are still using an old AppImage runtime that relies on FUSE 2 libraries being available on the host.
See the <a href="https://discussion.fedoraproject.org/t/f44-change-proposal-atomic-desktops-drop-fuse-2-libraries-selfcontained/179410/4">discussion thread</a> for examples on how to check the runtime of an AppImage.</p>

<p>If some of your AppImages do not work on Fedora Atomic Desktops 44, we recommend:</p>

<ul>
  <li>Looking for a Flatpak for the application and giving it another try. Consider helping upstream package their application as a Flatpak.</li>
  <li>Reporting the issue upstream so that they are aware that they should use a newer runtime. Consider helping upstream with this as well.</li>
</ul>

<h4 id="encfs-or-cryfs-backends-for-plasma-vaults-are-removed">EncFS or CryFS backends for Plasma Vaults are removed</h4>

<p>KDE upstream no longer recommend using the EncFS nor CryFS backends for Plasma Vaults, notably because they rely on the FUSE 2 libraries.
If you are using one of those backends, you should migrate your data to a new Vault using the only maintained backend (<code class="language-plaintext highlighter-rouge">gocryptfs</code>).
Ideally this should occur before the update to Fedora 44.
If you have already updated to Fedora 44 and need access to your data, you can layer the needed packages (<code class="language-plaintext highlighter-rouge">cryfs</code> or <code class="language-plaintext highlighter-rouge">fuse-encfs</code>) using <code class="language-plaintext highlighter-rouge">rpm-ostree install &lt;package&gt;</code>, then migrate your data and finally reset the layers with <code class="language-plaintext highlighter-rouge">rpm-ostree reset</code>.</p>

<h3 id="dropping-compatibility-for-pkla-polkit-rules">Dropping compatibility for pkla polkit rules</h3>

<p>Support for the legacy pkla polkit rules format has been removed.
It is unlikely that you were relying on support for those rules as most of the ecosystem has moved on to the new Javascript based format.</p>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/AtomicDesktopDropPklaCompat">Fedora Change</a> and the tracking issue <a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/102">atomic-desktops#102</a>.</p>

<h2 id="whats-new-in-silverblue">What’s new in Silverblue</h2>

<h3 id="gnome-50">GNOME 50</h3>

<p>Fedora Silverblue comes with the latest <a href="https://release.gnome.org/50/">GNOME 50 release</a>.</p>

<p>For more details about the changes that alongside GNOME 50, see
<a href="https://fedoramagazine.org/whats-new-fedora-workstation-44/">What’s new in Fedora Workstation 44</a>
on the Fedora Magazine.</p>

<h2 id="whats-new-in-kinoite">What’s new in Kinoite</h2>

<h3 id="kde-plasma-66">KDE Plasma 6.6</h3>

<p>Fedora Kinoite ships with
<a href="https://kde.org/announcements/plasma/6/6.6.0/">Plasma 6.6</a>,
<a href="https://kde.org/announcements/frameworks/6/6.24.0/">Frameworks 6.24</a> and
<a href="https://kde.org/announcements/gear/25.12.0/">Gear 25.12</a>.</p>

<p>See also
<a href="https://fedoramagazine.org/whats-new-in-fedora-kde-plasma-desktop-44/">What’s new in Fedora KDE Plasma Desktop 44</a>
on the Fedora Magazine.</p>

<h3 id="kde-plasma-login-manager-replaces-sddm">KDE Plasma Login Manager replaces SDDM</h3>

<p>The brand new Plasma Login Manager replaces SDDM to provide a more integrated experience with systemd and the KDE Plasma session.</p>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/PlasmaLoginManager">Fedora Change</a>.</p>

<h3 id="unified-out-of-the-box-experience-with-kde-plasma-setup-oem-installation">Unified out of the box experience with KDE Plasma Setup (OEM installation)</h3>

<p>Thanks to the new Plasma Setup, it is now possible to install the system with Anaconda with minimal configuration and then complete the installation on the first boot by creating a new user and selecting the timezone.
This is great when you want to install Fedora Kinoite on a computer and don’t want to setup a user in advance.</p>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/Unified_KDE_OOBE">Fedora Change</a>.</p>

<h2 id="whats-new-in-sway-atomic">What’s new in Sway Atomic</h2>

<p>Nothing specific for this release.</p>

<h2 id="whats-new-in-budgie-atomic">What’s new in Budgie Atomic</h2>

<p>Fedora Budgie Atomic comes with the latest
<a href="https://buddiesofbudgie.org/blog/budgie-10-10-2-released">10.10.2 Budgie release</a>.
This release brings Wayland support to Budgie Atomic.
See the <a href="https://buddiesofbudgie.org/blog/budgie-10-10-released">10.10 release announcement</a> for more details.</p>

<h2 id="whats-new-in-cosmic-atomic">What’s new in COSMIC Atomic</h2>

<p>Fedora COSMIC Atomic comes with the latest <a href="https://github.com/pop-os/cosmic-epoch/releases/tag/epoch-1.0.8">1.0.8 release of the COSMIC desktop</a>.
This is now considered stable.</p>

<h2 id="universal-blue-bluefin-bazzite-and-aurora">Universal Blue, Bluefin, Bazzite and Aurora</h2>

<p>Our friends in the <a href="https://universal-blue.org/">Universal Blue project</a>
(<a href="https://bazzite.gg/">Bazzite</a>, <a href="https://projectbluefin.io/">Bluefin</a>,
<a href="https://getaurora.dev/">Aurora</a>) have prepared the update to Fedora 44.
Look for upcoming
<a href="https://universal-blue.discourse.group/tag/announcements">announcements in their Discourse</a>.</p>

<p>As always, I heavily recommend checking them out, especially if you feel like some things
are missing from the Fedora Atomic Desktops and you depend on them (NVIDIA drivers, extra
media codec, out of tree kernel drivers, etc.).</p>

<h2 id="whats-next">What’s next</h2>

<h3 id="helping-us-with-a-few-nasty-bugs">Helping us with a few nasty bugs</h3>

<p>If you are interested in contributing to Fedora Atomic Desktops, here are some bugs that we will have to fix in the short term.
We would greatly appreciate help with:</p>

<ul>
  <li>
    <p>Fixing root mount options (<a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/72">atomic-desktops#72</a>):
This is a long standing and mostly invisible bug that impacts performance.</p>
  </li>
  <li>
    <p>Moving away from nss-altfiles (<a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/108">atomic-desktops#108</a>):
This is another long standing source of issues that new users regularly face.</p>
  </li>
</ul>

<h3 id="sealed-fedora-atomic-desktop-bootable-container-images">Sealed Fedora Atomic Desktop bootable container images</h3>

<p>Sealed images are now ready for testing!
<a href="https://tim.siosm.fr/blog/2026/04/21/sealed-atomic-desktops-test-images/">See the other article for all the details</a>.</p>

<h3 id="roadmap-to-bootable-containers">Roadmap to Bootable Containers</h3>

<p>A lot of work is happening to make the transition to Bootable Containers as smooth as possible for our existing users.
You can look at the roadmap for this transition at <a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/26">atomic-desktops#26</a>.</p>

<p>One of the tasks is to move away from our unmaintained installation ISO building scripts to the new <code class="language-plaintext highlighter-rouge">image-builder</code> tooling.
This is <a href="https://fedoraproject.org/wiki/Changes/BuildAtomicDesktopsWithImageBuilder">planned for Fedora 45 for the ostree variants</a> and support for Bootable Container <a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/32">will follow right after</a>.</p>

<p>Another task is to start building the Fedora Atomic Desktops Bootable Container images <a href="https://forge.fedoraproject.org/atomic-desktops/tracker/issues/91">using the Fedora Konflux instance</a>.</p>

<h2 id="where-to-reach-us">Where to reach us</h2>

<p>We are looking for contributors to help us make the Fedora Atomic Desktops the
best experience for Fedora users.</p>

<ul>
  <li><a href="https://fedoraproject.org/wiki/SIGs/AtomicDesktops">Atomic Desktops SIG</a>:
<a href="https://forge.fedoraproject.org/atomic-desktops">Organization on Fedora’s Forge</a>,
<a href="https://matrix.to/#/#atomic-desktops:fedoraproject.org">#atomic-desktops:fedoraproject.org</a></li>
  <li>Silverblue:
<a href="https://docs.fedoraproject.org/en-US/workstation-working-group/">Workstation Working Group</a>,
<a href="https://matrix.to/#/#silverblue:fedoraproject.org">#silverblue:fedoraproject.org</a></li>
  <li>Kinoite:
<a href="https://fedoraproject.org/wiki/SIGs/KDE">KDE SIG</a>,
<a href="https://matrix.to/#/#kinoite:fedoraproject.org">#kinoite:fedoraproject.org</a></li>
  <li>Sway Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Sway">Sway SIG</a>,
<a href="https://matrix.to/#/#sway:fedoraproject.org">#sway:fedoraproject.org</a></li>
  <li>Budgie Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Budgie">Budgie SIG</a>,
<a href="https://matrix.to/#/#budgie:fedoraproject.org">#budgie:fedoraproject.org</a></li>
  <li>COSMIC Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/COSMIC">COSMIC SIG</a>,
<a href="https://matrix.to/#/#cosmic:fedoraproject.org">#cosmic:fedoraproject.org</a></li>
</ul>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><summary type="html"><![CDATA[Fedora 44 has been released! 🎉 So let’s see what is included in this new release for the Fedora Atomic Desktops variants (Silverblue, Kinoite, Sway Atomic, Budgie Atomic and COSMIC Atomic). Note: You can also read this post on the Fedora Magazine.]]></summary></entry><entry><title type="html">Sealed Fedora Atomic Desktop bootable container images</title><link href="https://tim.siosm.fr/blog/2026/04/28/sealed-atomic-desktops-test-images/" rel="alternate" type="text/html" title="Sealed Fedora Atomic Desktop bootable container images" /><published>2026-04-28T00:00:00+02:00</published><updated>2026-04-28T00:00:00+02:00</updated><id>https://tim.siosm.fr/blog/2026/04/28/sealed-atomic-desktops-test-images</id><content type="html" xml:base="https://tim.siosm.fr/blog/2026/04/28/sealed-atomic-desktops-test-images/"><![CDATA[<p>I’m happy to announce that we have sealed bootable container images ready for testing for the Fedora Atomic Desktops!</p>

<p><strong>Note:</strong> You can also read this post on the
<a href="https://fedoramagazine.org/sealed-atomic-desktops-test-images/">Fedora Magazine</a>.</p>

<!-- more -->

<h2 id="what-are-sealed-bootable-container-images">What are sealed bootable container images?</h2>

<p>Sealed bootable container images include all the components needed to create a fully verified boot chain, from the firmware to the operating system composefs image.
This relies on Secure Boot and thus only supports system booting with UEFI on <code class="language-plaintext highlighter-rouge">x86_64</code> &amp; <code class="language-plaintext highlighter-rouge">aarch64</code>.</p>

<p>The components are:</p>

<ul>
  <li>systemd-boot as bootloader,</li>
  <li>a Unified Kernel Image (UKI) which includes the Linux kernel, an initrd and the kernel command line,</li>
  <li>a composefs repository with fs-verity enabled. This is managed by bootc.</li>
</ul>

<p>Both systemd-boot and the UKI are signed for Secure Boot.
The images are <strong><em>test images</em></strong> so the components are not signed with the official keys from Fedora.</p>

<p>The main direct benefit that we will get from this support is that we will be able to enable passwordless disk unlocking using the TPM in a way that will be reasonably secure by default.</p>

<h2 id="how-do-i-test-those-images">How do I test those images?</h2>

<p>See the instructions at <a href="https://github.com/travier/fedora-atomic-desktops-sealed">github.com/travier/fedora-atomic-desktops-sealed</a> on how to give the pre-built container and disk images a try and how to build your own.</p>

<p>We welcome testing and feedback! Please see the list of known issues and report new issue at <a href="https://github.com/travier/fedora-atomic-desktops-sealed">github.com/travier/fedora-atomic-desktops-sealed</a>.
We’ll redirect them as needed to the right upstream projects.</p>

<p><em>Beware</em>, those are testing images. The root account does not have a password set and sshd is enabled, by default, to make debugging easier.
The UKI and systemd-boot are signed for Secure Boot but, since those are test images, they are not signed with the official keys from Fedora.
<em>Don’t use those images in production.</em></p>

<h2 id="where-can-i-get-more-details-about-how-this-work">Where can I get more details about how this work?</h2>

<p>If you want to know more about how sealed images work (i.e. how we make bootable containers, UKI and composefs work together to create a verified boot chain), see the following presentations and documentation:</p>
<ul>
  <li><a href="https://archive.fosdem.org/2025/schedule/event/fosdem-2025-5191--signed-sealed-and-delivered-with-ukis-and-composefs/">“Signed, Sealed, and Delivered”, with UKIs and composefs, from Allison and Timothée at FOSDEM 2025</a></li>
  <li><a href="https://pretalx.devconf.info/devconf-cz-2025/talk/739KGC/">UKIs and composefs support for Bootable Containers, from Timothée at Devconf.cz 2025</a></li>
  <li><a href="https://media.ccc.de/v/all-systems-go-2025-362-uki-composefs-and-remote-attestation-for-bootable-containers">UKI, composefs and remote attestation for Bootable Containers, from Pragyan, Vitaly and Timothée at ASG 2025</a></li>
  <li><a href="https://bootc-dev.github.io/bootc/experimental-composefs.html">composefs backend documentation in bootc</a></li>
</ul>

<p>Thanks to all the contributors that made this possible, notably (but non exhaustively) from the following projects: <a href="https://github.com/bootc-dev/bootc">bootc</a> &amp; <a href="https://github.com/bootc-dev/bcvk">bcvk</a>, <a href="https://github.com/composefs/composefs">composefs</a> &amp; <a href="https://github.com/composefs/composefs-rs">composefs-rs</a>, <a href="https://github.com/coreos/chunkah">chunkah</a>, <a href="https://github.com/containers/podman">podman</a> &amp; <a href="https://github.com/containers/buildah">buildah</a> and <a href="https://github.com/systemd/systemd">systemd</a>.</p>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><summary type="html"><![CDATA[I’m happy to announce that we have sealed bootable container images ready for testing for the Fedora Atomic Desktops! Note: You can also read this post on the Fedora Magazine.]]></summary></entry><entry><title type="html">How do we keep apps maintained on Flathub? (or building a more respectful App Store)</title><link href="https://tim.siosm.fr/blog/2025/11/24/building-better-app-store-flathub/" rel="alternate" type="text/html" title="How do we keep apps maintained on Flathub? (or building a more respectful App Store)" /><published>2025-11-24T00:00:00+01:00</published><updated>2025-11-24T00:00:00+01:00</updated><id>https://tim.siosm.fr/blog/2025/11/24/building-better-app-store-flathub</id><content type="html" xml:base="https://tim.siosm.fr/blog/2025/11/24/building-better-app-store-flathub/"><![CDATA[<p>There have been a few discussions about what Flathub should do to push
developers to maintain their apps on the latest versions of the published
runtimes. But most of those lack important details around how this would
actually happen. I will not discuss in this post the technical means that are
already in place to help developers keep their dependencies up to date. See the
<a href="https://docs.flathub.org/blog/app-safety-layered-approach-source-to-user">Flathub Safety: A Layered Approach from Source to User</a>
blog post instead.</p>

<p>The main thing to have in mind is that Flathub is not a commercial entity like
other app stores. Right now, developers that put their apps on Flathub are (in
the vast majority) not paid to do so and most apps are under an open source
license.</p>

<p>So any discussion that starts with “developers should update to the latest
runtime or have their apps removed” directly contradicts the social contract
here (which is also in the terms of most open source licenses): You get
something for free so don’t go around making demands unless you want to look
like a jerk. We are not going to persuade overworked and generally volunteer
developers to update their apps by putting pressure on them to do more work.
It’s counter productive.</p>

<p>With that out of the way, how do we gently push developers to keep their apps
up to date and using the latest runtime? Well, we can pay them. Flathub wants
to setup a way to offer payments for applications but unfortunately it’s not
ready yet. So in the meantime, the best option is to donate to the projects or
developers working on those applications.</p>

<p>And make it very easy for users to do so.</p>

<p>Now we are in luck, this is exactly what some folks have been working on
recently. <a href="https://github.com/kolunmi/bazaar">Bazaar</a> is a Flathub first app
store that makes it really easy to donate to the apps that you have installed.</p>

<p>But we also need to make sure that the developers actually have something set
up to get donations.</p>

<p>And this is were the
<a href="https://github.com/ublue-os/flatpak-tracker">flatpak-tracker</a> project comes
in. This project looks for the donation links in a collection of Flatpaks and
checks if there is one and if the website is still up. If it’s not, it opens
<a href="https://github.com/ublue-os/flatpak-tracker/issues?q=sort%3Aupdated-desc%20is%3Aissue%20is%3Aopen%20label%3Adonation-metadata">issues</a>
in the repo for tracking and fixing. It also checks if those apps are using the
latest runtimes and open issues for that as well
(<a href="https://github.com/ublue-os/flatpak-tracker/issues?q=state%3Aopen%20label%3Afreedesktop-25.08">FreeDesktop</a>,
<a href="https://github.com/ublue-os/flatpak-tracker/issues?q=state%3Aopen%20label%3Agnome-49">GNOME</a>,
<a href="https://github.com/ublue-os/flatpak-tracker/issues?q=state%3Aopen%20label%3Akde-6-9">KDE</a>).</p>

<p>If you want to help, you can take a look at this repo for apps that you use and
see if things needs to be fixed. Then engage and suggest fixes upstream. Some
of this work does not require complex technical skills so it’s a really good
way to start contributing. This is probably one of the most direct way to
enable developers to receive money from their users, via donations.</p>

<p>Updating the runtime used by an app usually requires more work and more
testing, but it’s a great way to get started and to contribute to your favorite
apps. And this is not just about Flathub: updating a Qt5 app to run with Qt6,
or a GNOME 48 app to 49, will help everyone using the app.</p>

<p>We want to build an App Store that is respectful of the time developers put
into developing, submitting, publishing, testing and maintaining their apps.</p>

<p>We don’t want to replicate the predatory model of other app stores.</p>

<p>Will some apps be out of date sometimes? Probably, but I would rather have a
sustainable community than an exploiting one.</p>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Flathub" /><summary type="html"><![CDATA[There have been a few discussions about what Flathub should do to push developers to maintain their apps on the latest versions of the published runtimes. But most of those lack important details around how this would actually happen. I will not discuss in this post the technical means that are already in place to help developers keep their dependencies up to date. See the Flathub Safety: A Layered Approach from Source to User blog post instead. The main thing to have in mind is that Flathub is not a commercial entity like other app stores. Right now, developers that put their apps on Flathub are (in the vast majority) not paid to do so and most apps are under an open source license. So any discussion that starts with “developers should update to the latest runtime or have their apps removed” directly contradicts the social contract here (which is also in the terms of most open source licenses): You get something for free so don’t go around making demands unless you want to look like a jerk. We are not going to persuade overworked and generally volunteer developers to update their apps by putting pressure on them to do more work. It’s counter productive. With that out of the way, how do we gently push developers to keep their apps up to date and using the latest runtime? Well, we can pay them. Flathub wants to setup a way to offer payments for applications but unfortunately it’s not ready yet. So in the meantime, the best option is to donate to the projects or developers working on those applications. And make it very easy for users to do so. Now we are in luck, this is exactly what some folks have been working on recently. Bazaar is a Flathub first app store that makes it really easy to donate to the apps that you have installed. But we also need to make sure that the developers actually have something set up to get donations. And this is were the flatpak-tracker project comes in. This project looks for the donation links in a collection of Flatpaks and checks if there is one and if the website is still up. If it’s not, it opens issues in the repo for tracking and fixing. It also checks if those apps are using the latest runtimes and open issues for that as well (FreeDesktop, GNOME, KDE). If you want to help, you can take a look at this repo for apps that you use and see if things needs to be fixed. Then engage and suggest fixes upstream. Some of this work does not require complex technical skills so it’s a really good way to start contributing. This is probably one of the most direct way to enable developers to receive money from their users, via donations. Updating the runtime used by an app usually requires more work and more testing, but it’s a great way to get started and to contribute to your favorite apps. And this is not just about Flathub: updating a Qt5 app to run with Qt6, or a GNOME 48 app to 49, will help everyone using the app. We want to build an App Store that is respectful of the time developers put into developing, submitting, publishing, testing and maintaining their apps. We don’t want to replicate the predatory model of other app stores. Will some apps be out of date sometimes? Probably, but I would rather have a sustainable community than an exploiting one.]]></summary></entry><entry><title type="html">What’s new for Fedora Atomic Desktops in Fedora 43</title><link href="https://tim.siosm.fr/blog/2025/10/29/fedora-atomic-desktops-43/" rel="alternate" type="text/html" title="What’s new for Fedora Atomic Desktops in Fedora 43" /><published>2025-10-29T00:00:00+01:00</published><updated>2025-10-29T00:00:00+01:00</updated><id>https://tim.siosm.fr/blog/2025/10/29/fedora-atomic-desktops-43</id><content type="html" xml:base="https://tim.siosm.fr/blog/2025/10/29/fedora-atomic-desktops-43/"><![CDATA[<p><a href="https://fedoramagazine.org/announcing-fedora-linux-43/">Fedora 43 has been released</a>!
🎉 So let’s see what is included in this new release for the Fedora Atomic Desktops variants
(Silverblue, Kinoite, Sway Atomic, Budgie Atomic and COSMIC Atomic).</p>

<p><strong>Note:</strong> You can also read this post on the
<a href="https://fedoramagazine.org/whats-new-fedora-atomic-desktops-in-fedora-linux-43/">Fedora Magazine</a>.</p>

<!-- more -->

<h2 id="changes-for-all-variants">Changes for all variants</h2>

<h3 id="zstd-compressed-initrds">zstd compressed initrds</h3>

<p>Alongside the rest of Fedora, we are now compressing our initrds with the Zstandard (<code class="language-plaintext highlighter-rouge">zstd</code>) algorithm.
This should make the initrd a bit smaller and the boot a bit faster.</p>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/InitrdZstdDefault">Fedora Change request</a>
and the tracking issue <a href="https://gitlab.com/fedora/ostree/sig/-/issues/34">atomic-desktops-sig#34</a>.</p>

<h3 id="2-gb-boot-partition">2 GB boot partition</h3>

<p>Alongside the rest of Fedora, systems will install with a 2GB <code class="language-plaintext highlighter-rouge">/boot</code> partition.
This should make things easier with the growing initrd sizes (mostly due to firmwares).
Existing systems will require a backup and re-install to benefit from this change.</p>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/2GbootPartition">Fedora Change request</a>.</p>

<h3 id="wireguard-tools-added">wireguard-tools added</h3>

<p>We are adding the <code class="language-plaintext highlighter-rouge">wireguard-tools</code> to all variants.
Users can still use the graphical interface in their desktop environment to configure WireGuard connections.
However, it should now be easier to debug issues using the <code class="language-plaintext highlighter-rouge">wg</code> tool.
This change was decided too late to be included in the installation ISO but it will come via an update.</p>

<p>See <a href="https://github.com/fedora-silverblue/issue-tracker/issues/390">silverblue#390</a>
and <a href="https://pagure.io/fedora-kde/SIG/issue/381">kde-sig#381</a>.</p>

<h3 id="plocate-removed">plocate removed</h3>

<p>We removed <code class="language-plaintext highlighter-rouge">plocate</code> from all variants.</p>

<p>See <a href="https://gitlab.com/fedora/ostree/sig/-/issues/81">atomic-desktops-sig#81</a>.</p>

<h2 id="whats-new-in-silverblue">What’s new in Silverblue</h2>

<h3 id="gnome-49">GNOME 49</h3>

<p>Fedora Silverblue comes with the latest
<a href="https://release.gnome.org/49/">GNOME 49 release</a>.</p>

<p>For more details about the changes that alongside GNOME 49, see
<a href="https://fedoramagazine.org/whats-new-fedora-workstation-43/">What’s new in Fedora Workstation 43</a>
on the Fedora Magazine.</p>

<h3 id="workaround-for-third-party-page-hang">Workaround for Third Party page hang</h3>

<p>We temporarily removed the Third Party page shown during the first boot as it
was causing issues. Users will be asked if they want to enable Third Party
repositories when then open GNOME Software.</p>

<p>It will be re-enabled once we figure out where the bug is.</p>

<p>See <a href="https://github.com/fedora-silverblue/issue-tracker/issues/650">silverblue#650</a>
and <a href="https://gitlab.com/fedora/ostree/sig/-/issues/74">atomic-desktops-sig#74</a>.</p>

<h3 id="openssl-added-for-gsconnect">openssl added for GSConnect</h3>

<p>We added the <code class="language-plaintext highlighter-rouge">openssl</code> command line tool to Silverblue, to make the GSConnect
extension work without having to resort to package layering or sysexts.</p>

<p>See <a href="https://github.com/fedora-silverblue/issue-tracker/issues/201">silverblue#201</a>.</p>

<h2 id="whats-new-in-kinoite">What’s new in Kinoite</h2>

<h3 id="kde-plasma-64-with-65-coming-soon">KDE Plasma 6.4, with 6.5 coming soon</h3>

<p>Fedora Kinoite ships with
<a href="https://kde.org/announcements/plasma/6/6.4.0/">Plasma 6.4</a>,
<a href="https://kde.org/announcements/frameworks/6/6.18.0/">Frameworks 6.18</a> and
<a href="https://kde.org/announcements/gear/25.08.0/">Gear 25.08</a>.</p>

<p>The update to Plasma 6.5 is ready should become available soon after the release.</p>

<p>See also
<a href="https://fedoramagazine.org/whats-new-in-fedora-kde-plasma-desktop-43/">What’s New in Fedora KDE Plasma Desktop 43?</a>
on the Fedora Magazine.</p>

<h3 id="weekly-automatic-updates-by-default">Weekly automatic updates by default</h3>

<p>Updates are now automatically applied on a weekly basis, for Flatpaks and the
system. You can configure the frequency or disable auto-updates in the system
settings.</p>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/KDEKinoiteAutoUpdateByDefault">Fedora Change request</a>
and the tracking issue
<a href="https://pagure.io/fedora-kde/SIG/issue/342">kde-sig#342</a>.</p>

<h2 id="whats-new-in-sway-atomic">What’s new in Sway Atomic</h2>

<p>Fedora Sway Atomic comes with the latest
<a href="https://github.com/swaywm/sway/releases/tag/1.11">1.11 Sway release</a>.</p>

<h2 id="whats-new-in-budgie-atomic">What’s new in Budgie Atomic</h2>

<p>Fedora Budgie Atomic comes with the latest
<a href="https://github.com/BuddiesOfBudgie/budgie-desktop/releases/tag/v10.9.3">10.9.3 Budgie release</a>.
Budgie 10.9.3 is a bug-fix and GNOME 49 compatibility release.</p>

<h2 id="whats-new-in-cosmic-atomic">What’s new in COSMIC Atomic</h2>

<p>Fedora COSMIC Atomic comes with the latest beta release of the <a href="https://system76.com/cosmic">COSMIC desktop</a>.</p>

<h2 id="changes-in-unofficial-images">Changes in unofficial images</h2>

<h3 id="xfce-atomic--lxqt-atomic-dropped-in-fedora-43">XFCE Atomic &amp; LXQt Atomic dropped in Fedora 43</h3>

<p>Starting with Fedora 43, we will no longer build XFCE Atomic &amp; LXQt Atomic unofficial images.</p>

<h2 id="universal-blue-bluefin-bazzite-and-aurora">Universal Blue, Bluefin, Bazzite and Aurora</h2>

<p>Our friends in the <a href="https://universal-blue.org/">Universal Blue project</a>
(<a href="https://bazzite.gg/">Bazzite</a>, <a href="https://projectbluefin.io/">Bluefin</a>,
<a href="https://getaurora.dev/">Aurora</a>) have prepared the update to Fedora 43. Look
for upcoming
<a href="https://universal-blue.discourse.group/tag/announcements">announcements in their Discourse</a>.</p>

<p>As always, I heavily recommend checking them out, especially if you feel like some things
are missing from the Fedora Atomic Desktops and you depend on them (NVIDIA drivers, extra
media codec, out of tree kernel drivers, etc.).</p>

<h2 id="whats-next">What’s next</h2>

<h3 id="roadmap-to-bootable-containers">Roadmap to Bootable Containers</h3>

<p>The next major evolution for the Atomic Desktops will be to transition to
<a href="https://containers.github.io/bootable/">Bootable Containers</a>. See also the
<a href="https://docs.fedoraproject.org/en-US/bootc/">Fedora bootc documentation</a>.</p>

<p>We have established a roadmap
(<a href="https://gitlab.com/fedora/ostree/sig/-/issues/26">atomic-desktops-sig#26</a>)
and we need your help to make this a smooth transition for all of our existing
users.</p>

<h3 id="new-home-for-the-fedora-sysexts">New home for the Fedora sysexts</h3>

<p>We have moved the systemd system extensions (sysexts) to a <a href="https://github.com/fedora-sysexts">new GitHub organization</a>.
The sysexts are now split between those built exclusively from Fedora packages and those built from various community sources.
Make sure to update your <code class="language-plaintext highlighter-rouge">systemd-sysupdate</code> configs to point to the new URLs.</p>

<h3 id="moving-to-fedoras-new-forge-based-on-forgejo">Moving to Fedora’s new Forge based on Forgejo</h3>

<p>Now that <a href="https://communityblog.fedoraproject.org/forging-fedoras-future-with-forgejo/">Fedora’s new forge is available</a>,
we will start moving our repos there.
You can find the new organization at <a href="https://forge.fedoraproject.org/atomic-desktops">forge.fedoraproject.org/atomic-desktops</a>.
We will likely start by moving the documentation and then issue tracker and the sources.</p>

<h2 id="where-to-reach-us">Where to reach us</h2>

<p>We are looking for contributors to help us make the Fedora Atomic Desktops the
best experience for Fedora users.</p>

<ul>
  <li><a href="https://fedoraproject.org/wiki/SIGs/AtomicDesktops">Atomic Desktops SIG</a>:
<a href="https://forge.fedoraproject.org/atomic-desktops">New Fedora Forge organization</a>,
<a href="https://gitlab.com/fedora/ostree/sig/-/issues">Issue tracker (gitlab.com/fedora/ostree/sig)</a>,
<a href="https://matrix.to/#/#atomic-desktops:fedoraproject.org">#atomic-desktops:fedoraproject.org</a></li>
  <li>Silverblue:
<a href="https://docs.fedoraproject.org/en-US/workstation-working-group/">Workstation Working Group</a>,
<a href="https://matrix.to/#/#silverblue:fedoraproject.org">#silverblue:fedoraproject.org</a></li>
  <li>Kinoite:
<a href="https://fedoraproject.org/wiki/SIGs/KDE">KDE SIG</a>,
<a href="https://matrix.to/#/#kinoite:fedoraproject.org">#kinoite:fedoraproject.org</a></li>
  <li>Sway Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Sway">Sway SIG</a>,
<a href="https://matrix.to/#/#sway:fedoraproject.org">#sway:fedoraproject.org</a></li>
  <li>Budgie Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Budgie">Budgie SIG</a>,
<a href="https://matrix.to/#/#budgie:fedoraproject.org">#budgie:fedoraproject.org</a></li>
  <li>COSMIC Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/COSMIC">COSMIC SIG</a>,
<a href="https://matrix.to/#/#cosmic:fedoraproject.org">#cosmic:fedoraproject.org</a></li>
</ul>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><summary type="html"><![CDATA[Fedora 43 has been released! 🎉 So let’s see what is included in this new release for the Fedora Atomic Desktops variants (Silverblue, Kinoite, Sway Atomic, Budgie Atomic and COSMIC Atomic). Note: You can also read this post on the Fedora Magazine.]]></summary></entry><entry><title type="html">What’s new for Fedora Atomic Desktops in Fedora 42</title><link href="https://tim.siosm.fr/blog/2025/04/15/fedora-atomic-desktops-42/" rel="alternate" type="text/html" title="What’s new for Fedora Atomic Desktops in Fedora 42" /><published>2025-04-15T00:00:00+02:00</published><updated>2025-05-20T00:00:00+02:00</updated><id>https://tim.siosm.fr/blog/2025/04/15/fedora-atomic-desktops-42</id><content type="html" xml:base="https://tim.siosm.fr/blog/2025/04/15/fedora-atomic-desktops-42/"><![CDATA[<p><a href="https://fedoramagazine.org/announcing-fedora-linux-42/">Fedora 42 has been released</a>!
🎉 So let’s see what is included in this new release for the Fedora Atomic
Desktops variants (Silverblue, Kinoite, Sway Atomic, Budgie Atomic and COSMIC
Atomic).</p>

<p><strong>Note:</strong> You can also read this post on the
<a href="https://fedoramagazine.org/whats-new-for-fedora-atomic-desktops-in-fedora-42/">Fedora Magazine</a>.</p>

<!-- more -->

<h2 id="new-cosmic-atomic-variant">New COSMIC Atomic variant</h2>

<p>The new <a href="https://system76.com/cosmic/">COSMIC desktop</a> has been packaged for
Fedora and a new Atomic variant created for it thanks to
<a href="https://codeberg.org/ryanabx">Ryan Brue</a>. It is not yet available on the
website but should be soon. See
<a href="https://gitlab.com/fedora/websites-apps/fedora-websites/fedora-websites-3.0/-/issues/351">fedora-websites#351</a>.
Edit: It is now live: <a href="https://fedoraproject.org/atomic-desktops/cosmic/">Fedora COSMIC Atomic</a>.</p>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/FedoraCOSMIC">Fedora change request</a>.</p>

<h2 id="changes-for-all-variants">Changes for all variants</h2>

<h3 id="composefs-enabled-by-default">composefs enabled by default</h3>

<p>Following Fedora CoreOS in Fedora 41, Fedora Atomic Desktops are now using
<a href="https://github.com/containers/composefs">composefs</a> by default. This is an
important first step towards better integrity for the system content.</p>

<p><strong>Note:</strong> As a side effect of this change, the <code class="language-plaintext highlighter-rouge">systemd-remount-fs.service</code>
unit may fail to start on your system. Until we find a good way to fix this,
you can find a workaround to apply in the
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/72">atomic-desktops-sig#72</a>
issue or in the
<a href="https://discussion.fedoraproject.org/t/systemd-remount-fs-service-failed-on-fedora-atomic-desktops-42/148562">common issue thread</a>
on the forum.</p>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/ComposefsAtomicDesktops">Fedora change request</a>
and the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/35">atomic-desktops-sig#35</a>.</p>

<h3 id="migration-to-a-static-grub-config">Migration to a static GRUB config</h3>

<p>As part of the move to composefs, we had to migrate systems to using a static
GRUB config.</p>

<p>This also removes the duplicated entries in the boot menu for installations
that pre-dates Fedora 41.</p>

<p>The transition will happen automatically during the first boot on Fedora 42.
You can verify that it worked by looking at the status of the
<code class="language-plaintext highlighter-rouge">bootloader-update</code> service:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ sudo systemctl status bootloader-update.service
</code></pre></div></div>

<p>We are still missing documentation on how to change some GRUB settings now that
the configuration is static. See the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/73">atomic-desktops-sig#73</a>.</p>

<h3 id="custom-keyboard-layout-set-on-installation-for-luks-unlock">Custom keyboard layout set on installation (for LUKS unlock)</h3>

<p>This fix is important for setups where the root disk is encrypted with LUKS and
the user is asked a passphrase on boot. The keyboard layout is now set as a
kernel argument during the installation by Anaconda. If you want to later
change the keyboard layout used for the LUKS password prompt, you will have to
update the kernel argument.</p>

<p>Example to set the keyboard layout to the french keyboard:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ sudo rpm-ostree kargs --append=vconsole.keymap=fr
</code></pre></div></div>

<p>Example to replace an existing layout by another:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ sudo rpm-ostree kargs --replace=vconsole.keymap=de
</code></pre></div></div>

<p>See <a href="https://gitlab.com/fedora/ostree/sig/-/issues/6">atomic-desktops-sig#6</a>.</p>

<h3 id="no-longer-building-for-ppc64le">No longer building for PPC64LE</h3>

<p>According to the countme statistics, we did not have users on PPC64LE, so we
decided to stop building the Fedora Atomic Desktops for that architecture.</p>

<p>If you relied on those images, you can migrate to Fedora Bootc images (which
are available for PPC64LE) or use a conventionnal Fedora package based
installation.</p>

<p>See the <a href="https://fedoraproject.org/wiki/Changes/AtomicDesktopsNoPpc64le">Fedora change request</a>.</p>

<h2 id="whats-new-in-silverblue">What’s new in Silverblue</h2>

<h3 id="gnome-48">GNOME 48</h3>

<p>Fedora Silverblue comes with the latest
<a href="https://release.gnome.org/48/">GNOME 48 release</a>.</p>

<p>For more details about the changes that alongside GNOME 48, see
<a href="https://fedoramagazine.org/whats-new-fedora-workstation-42/">What’s new in Fedora Workstation 42</a>
on the Fedora Magazine,
<a href="https://blogs.gnome.org/uraeus/2025/02/03/looking-ahead-at-2025-and-fedora-workstation-and-jobs-on-offer/">Looking ahead at 2025 and Fedora Workstation and jobs on offer!</a>
and
<a href="https://blogs.gnome.org/uraeus/2025/04/15/fedora-workstation-42-is-upon-us/">Fedora Workstation 42 is upon us!</a>
from Christian F.K. Schaller.</p>

<h2 id="whats-new-in-kinoite">What’s new in Kinoite</h2>

<h3 id="kde-plasma-63">KDE Plasma 6.3</h3>

<p>Fedora Kinoite ships with
<a href="https://kde.org/announcements/plasma/6/6.3.0/">Plasma 6.3</a>,
<a href="https://kde.org/announcements/frameworks/6/6.11.0/">Frameworks 6.11</a> and
<a href="https://kde.org/announcements/gear/24.12.0/">Gear 24.12</a>.</p>

<p>See also
<a href="https://fedoramagazine.org/whats-new-for-fedora-kde-plasma-desktop-42/">What’s New in Fedora KDE Plasma Desktop 42?</a>
on the Fedora Magazine.</p>

<h2 id="whats-new-in-sway-atomic">What’s new in Sway Atomic</h2>

<p>Nothing specific this release.</p>

<h2 id="whats-new-in-budgie-atomic">What’s new in Budgie Atomic</h2>

<p>The default software center for Budgie Atomic is now Plasma Discover. To rebase
from Fedora 41 to 42, you will have to use the command line as rebasing via
GNOME Software will move your system to Fedora Silverblue.</p>

<p>See: <a href="https://pagure.io/fedora-budgie/project/issue/5">fedora-budgie/project/issue/5</a>.</p>

<h2 id="changes-in-unofficial-images">Changes in unofficial images</h2>

<p>Until we complete the work needed in the Fedora infrastructure to build and
push official container images for the Atomic Desktops (see
<a href="https://pagure.io/releng/issue/12142">releng#12142</a> and
<a href="https://pagure.io/cloud-image-uploader/issue/37">cloud-image-uploader#37</a>), I
am providing unofficial builds of those. They are built on GitLab.com CI
runners, use the official Fedora packages and the same sources as the official
images.</p>

<p>You can find the configuration and list on
<a href="https://gitlab.com/fedora/ostree/ci-test">gitlab.com/fedora/ostree/ci-test</a>
and the container images at
<a href="https://quay.io/organization/fedora-ostree-desktops">quay.io/organization/fedora-ostree-desktops</a>.</p>

<h3 id="container-images-signed-with-cosign-sigstore">Container images signed with cosign (sigstore)</h3>

<p>The unofficial container images are now signed with cosign. You can configure
your system to verify the signature of the images using the instructions from
the <a href="https://gitlab.com/fedora/ostree/ci-test#setup-container-image-signature-verification">project README</a>.</p>

<h3 id="container-images-available-for-aarch64">Container images available for aarch64</h3>

<p>We are now building all our variants for the aarch64 architecture as well.</p>

<h3 id="goodbye-to-sericea-and-onyx-now-sway-atomic--budgie-atomic">Goodbye to Sericea and Onyx (now Sway Atomic &amp; Budgie Atomic)</h3>

<p>We have now removed all container images under that name. Use the new names:</p>

<ul>
  <li>Sericea: <a href="https://quay.io/repository/fedora-ostree-desktops/sway-atomic?tab=tags">sway-atomic</a></li>
  <li>Onyx: <a href="https://quay.io/repository/fedora-ostree-desktops/budgie-atomic?tab=tags">budgie-atomic</a></li>
</ul>

<h2 id="unofficial-experimental-fedora-asahi-remix-atomic-desktops">Unofficial, experimental Fedora Asahi Remix Atomic Desktops</h2>

<p>We are now producing unofficial, experimental bootable container images
targeting Apple Silicon, using the packages from the Fedora Asahi Remix
project.</p>

<p>Those images are in a working state, but the installation procedure is not
ready for general use. We thus only recommend that you give this a try if you
are ready to help with the development or are ready to re-install you system
and lose data.</p>

<p>See: <a href="https://github.com/fedora-asahi-remix-atomic-desktops/images">fedora-asahi-remix-atomic-desktops project on GitHub</a></p>

<p>See also the
<a href="https://fedoramagazine.org/fedora-asahi-remix-42-is-now-available/">Fedora Asahi Remix 42 is now available</a>
posts on the Fedora Magazine.</p>

<p>Note that those images currently do not support the x86 emulation detailed in
<a href="https://fedoramagazine.org/new-in-fedora-running-x86-programs-on-arm-systems/">New in Fedora: Running x86 programs on ARM systems</a>.</p>

<h2 id="universal-blue-bluefin-bazzite-and-aurora">Universal Blue, Bluefin, Bazzite and Aurora</h2>

<p>Our friends in the <a href="https://universal-blue.org/">Universal Blue project</a>
(<a href="https://bazzite.gg/">Bazzite</a>, <a href="https://projectbluefin.io/">Bluefin</a>,
<a href="https://getaurora.dev/">Aurora</a>) have prepared the update to Fedora 42. Look
for upcoming
<a href="https://universal-blue.discourse.group/tag/announcements">announcements in their Discourse</a>.</p>

<p>I heavily recommend checking them out, especially if you feel like some things
are missing from the Fedora Atomic Desktops and you depend on them (NVIDIA
proprietary drivers, extra media codec, out of tree kernel drivers, etc.).</p>

<h2 id="whats-next">What’s next</h2>

<h3 id="roadmap-to-bootable-containers">Roadmap to Bootable Containers</h3>

<p>The next major evolution for the Atomic Desktops will be to transition to
<a href="https://containers.github.io/bootable/">Bootable Containers</a>. See also the
<a href="https://docs.fedoraproject.org/en-US/bootc/">Fedora bootc documentation</a>.</p>

<p>We have established a roadmap
(<a href="https://gitlab.com/fedora/ostree/sig/-/issues/26">atomic-desktops-sig#26</a>)
and we need your help to make this a smooth transition for all of our existing
users.</p>

<h3 id="turning-the-sysext-experiment-into-a-good-experience">Turning the sysext experiment into a good experience</h3>

<p>Systemd system extensions (sysexts) are a new option when you need some
applications available on your system and can not run them in containers or as
Flatpaks for various reasons. They offer an alternative approach to package
layering as they do not increase update time and can be enabled or disabled as
needed.</p>

<p>Support for sysexts is still in development for the Atomic Desktops but they
already provide advantages over package layering for some use cases. See the
currently experimental project:
<a href="https://github.com/travier/fedora-sysexts">github.com/travier/fedora-sysexts</a>.</p>

<h3 id="unifying-the-atomic-desktops-documentation">Unifying the Atomic Desktops documentation</h3>

<p>We would like to unify the documentation for the Fedora Atomic Desktops into a
single one instead of having per desktop environments docs which are mostly
duplicate of one another and need to be constantly synced.</p>

<p>See the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/10">atomic-desktops-sig#10</a> if
you want to help us do that.</p>

<h2 id="where-to-reach-us">Where to reach us</h2>

<p>We are looking for contributors to help us make the Fedora Atomic Desktops the
best experience for Fedora users.</p>

<ul>
  <li><a href="https://fedoraproject.org/wiki/SIGs/AtomicDesktops">Atomic Desktops SIG</a>:
<a href="https://gitlab.com/fedora/ostree/sig/-/issues">Issue tracker (gitlab.com/fedora/ostree/sig)</a>,
<a href="https://matrix.to/#/#atomic-desktops:fedoraproject.org">#atomic-desktops:fedoraproject.org</a></li>
  <li>Silverblue:
<a href="https://docs.fedoraproject.org/en-US/workstation-working-group/">Workstation Working Group</a>,
<a href="https://matrix.to/#/#silverblue:fedoraproject.org">#silverblue:fedoraproject.org</a></li>
  <li>Kinoite:
<a href="https://fedoraproject.org/wiki/SIGs/KDE">KDE SIG</a>,
<a href="https://matrix.to/#/#kinoite:fedoraproject.org">#kinoite:fedoraproject.org</a></li>
  <li>Sway Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Sway">Sway SIG</a>,
<a href="https://matrix.to/#/#sway:fedoraproject.org">#sway:fedoraproject.org</a></li>
  <li>Budgie Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Budgie">Budgie SIG</a>,
<a href="https://matrix.to/#/#budgie:fedoraproject.org">#budgie:fedoraproject.org</a></li>
  <li>COSMIC Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/COSMIC">COSMIC SIG</a>,
<a href="https://matrix.to/#/#cosmic:fedoraproject.org">#cosmic:fedoraproject.org</a></li>
</ul>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><summary type="html"><![CDATA[Fedora 42 has been released! 🎉 So let’s see what is included in this new release for the Fedora Atomic Desktops variants (Silverblue, Kinoite, Sway Atomic, Budgie Atomic and COSMIC Atomic). Note: You can also read this post on the Fedora Magazine.]]></summary></entry><entry><title type="html">What’s new for Fedora Atomic Desktops in Fedora 41</title><link href="https://tim.siosm.fr/blog/2024/10/30/fedora-atomic-desktops-41/" rel="alternate" type="text/html" title="What’s new for Fedora Atomic Desktops in Fedora 41" /><published>2024-10-30T00:00:00+01:00</published><updated>2024-10-30T00:00:00+01:00</updated><id>https://tim.siosm.fr/blog/2024/10/30/fedora-atomic-desktops-41</id><content type="html" xml:base="https://tim.siosm.fr/blog/2024/10/30/fedora-atomic-desktops-41/"><![CDATA[<p><a href="https://fedoramagazine.org/announcing-fedora-linux-41/">Fedora 41 has been released</a>!
🎉 So let’s see what comes in this new release for the Fedora Atomic Desktops
variants (Silverblue, Kinoite, Sway Atomic and Budgie Atomic).</p>

<p><strong>Note:</strong> You can also read this post on the
<a href="https://fedoramagazine.org/whats-new-for-fedora-atomic-desktops-in-fedora-41/">Fedora Magazine</a>.</p>

<!-- more -->

<h2 id="bootupd-enabled-by-default-for-uefi-systems-bios-coming-soon">bootupd enabled by default for UEFI systems (BIOS coming soon)</h2>

<p>After a long wait and a lot of work and testing, bootloader updates are finally
enabled by default for Atomic Desktops.</p>

<p>For now, only UEFI systems will see their bootloader automatically updated on
boot as it is the safest option. Automatic updates for classic BIOS systems
will be enabled in the upcoming weeks.</p>

<p>If you encounter issues when updating old systems, take a look at the
<a href="https://fedoramagazine.org/manual-action-needed-to-resolve-boot-failure-for-fedora-atomic-desktops-and-fedora-iot/">Manual action needed to resolve boot failure for Fedora Atomic Desktops and Fedora IoT</a>
Fedora Magazine article which includes instructions to manually update UEFI
systems.</p>

<p>Once you are on Fedora 41, there is nothing more to do.</p>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/FedoraSilverblueBootupd">Enable bootupd for Fedora Atomic Desktops and Fedora IoT</a>
change request and the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/1">atomic-desktops-sig#1</a>.</p>

<h2 id="first-step-towards-bootable-containers-dnf5-and-bootc">First step towards Bootable Containers: dnf5 and bootc</h2>

<p>The next major evolution for the Atomic Desktops will be to transition to
<a href="https://containers.github.io/bootable/">Bootable Containers</a>.</p>

<p>We have established a roadmap
(<a href="https://gitlab.com/fedora/ostree/sig/-/issues/26">atomic-desktops-sig#26</a>)
and for Fedora 41, we added <code class="language-plaintext highlighter-rouge">dnf5</code> and
<a href="https://containers.github.io/bootc/"><code class="language-plaintext highlighter-rouge">bootc</code></a> to the Bootable Container images
of Atomic Desktops.</p>

<p>Those images are currently built in the Fedora infrastructure
(<a href="https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Silverblue/x86_64/images/">example</a>)
but not pushed to the container registry.</p>

<p>The images currently available on
<a href="https://quay.io/organization/fedora">quay.io/fedora</a>
(<a href="https://quay.io/repository/fedora/fedora-silverblue?tab=tags">Silverblue</a>,
<a href="https://quay.io/repository/fedora/fedora-kinoite?tab=tags">Kinoite</a>, etc.)
are mirrored from the ostree repository and thus do not yet include <code class="language-plaintext highlighter-rouge">dnf5</code> and
<code class="language-plaintext highlighter-rouge">bootc</code>.</p>

<p>Once <a href="https://pagure.io/releng/issue/12142">releng#12142</a> has been completed,
they will be replaced by the Bootable Container images.</p>

<p>In the mean time, you can take a look at the unofficial images (see the
<a href="#changes-in-unofficial-images">Changes in unofficial images</a> section below).</p>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/DNFAndBootcInImageModeFedora">DNF and bootc in Image Mode Fedora variants</a>
change request and the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/48">atomic-desktops-sig#48</a>.</p>

<h2 id="whats-new-in-silverblue">What’s new in Silverblue</h2>

<h3 id="gnome-47">GNOME 47</h3>

<p>Fedora Silverblue comes with the latest
<a href="https://release.gnome.org/47/">GNOME 47 release</a>.</p>

<p>For more details about the changes that alongside GNOME 47, see
<a href="https://fedoramagazine.org/whats-new-fedora-workstation-41/">What’s new in Fedora Workstation 41</a>
on the Fedora Magazine and
<a href="https://blogs.gnome.org/uraeus/2024/06/14/fedora-workstation-development-update-artificial-intelligence-edition/">Fedora Workstation development update – Artificial Intelligence edition</a>
from Christian F.K. Schaller.</p>

<h3 id="ptyxis-as-default-terminal-application">Ptyxis as default terminal application</h3>

<p>Ptyxis is a terminal for GNOME with first-class support for containers, and
thus works really well with <a href="https://containertoolbx.org/">Toolbx</a> (and
<a href="https://distrobox.it/">Distrobox</a>). This is now the default terminal app and
it brings features such as native support for light/dark mode and
user-customizable keyboard shortcuts.</p>

<p>See <a href="https://gitlab.gnome.org/chergert/ptyxis">Ptyxis</a>’ website.</p>

<h3 id="wayland-only">Wayland only</h3>

<p>Fedora Silverblue is now Wayland only by default. The packages needed for the
X11 session will remain available in the repositories maintained by the GNOME
SIG and may be overlayed on Silverblue systems that require them.</p>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/WaylandOnlyGNOMEWorkstationMedia">Wayland-only GNOME Workstation Media</a>
change request and the tracking issue:
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/41">atomic-desktops-sig#41</a>.</p>

<h2 id="whats-new-in-kinoite">What’s new in Kinoite</h2>

<h3 id="kde-plasma-62">KDE Plasma 6.2</h3>

<p>Fedora Kinoite ships with <a href="https://kde.org/announcements/plasma/6/6.2.0/">Plasma 6.2</a>,
<a href="https://kde.org/announcements/frameworks/6/6.7.0/">Frameworks 6.7</a> and
<a href="https://kde.org/announcements/gear/24.08.0/">Gear 24.08</a>.</p>

<p>See also
<a href="https://fedoramagazine.org/whats-new-in-fedora-kde-41/">What’s New in Fedora KDE 41?</a>
on the Fedora Magazine.</p>

<h3 id="kinoite-mobile">Kinoite Mobile</h3>

<p>Kinoite Mobile is currently only provided as unofficial container images. See
the <a href="#changes-in-unofficial-images">Changes in unofficial images</a> section
below.</p>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/Fedora_KDE_Plasma_Mobile">KDE Plasma Mobile Spin and Fedora Kinoite Mobile</a>
change request.</p>

<h2 id="whats-new-in-sway-atomic">What’s new in Sway Atomic</h2>

<p>Fedora Sway Atomic comes with the latest
<a href="https://github.com/swaywm/sway/releases/tag/1.10">1.10 Sway release</a>.</p>

<h2 id="whats-new-in-budgie-atomic">What’s new in Budgie Atomic</h2>

<p>Nothing specific this release. The team is working on Wayland support.</p>

<h2 id="changes-in-unofficial-images">Changes in unofficial images</h2>

<p>Until we complete the work needed in the Fedora infrastructure to build and
push official container images for the Atomic Desktops (see
<a href="https://pagure.io/releng/issue/12142">releng#12142</a>), I am providing
unofficial builds of those. They are built on GitLab.com CI runners, use the
official Fedora packages and the same sources as the official images.</p>

<p>You can find the configuration and list on
<a href="https://gitlab.com/fedora/ostree/ci-test">gitlab.com/fedora/ostree/ci-test</a>
and the container images at
<a href="https://quay.io/organization/fedora-ostree-desktops">quay.io/organization/fedora-ostree-desktops</a>.</p>

<h3 id="new-unofficial-images-kinoite-mobile--cosmic-atomic">New unofficial images: Kinoite Mobile &amp; COSMIC Atomic</h3>

<p>With Fedora 41, we are now building two new unofficial images: Kinoite Mobile
and COSMIC Atomic. They join our other unofficial images: XFCE Atomic and LXQt
Atomic.</p>

<p>See
<a href="https://tim.siosm.fr/blog/2023/06/21/rpm-ostree-variants-fedora/">How to make a new rpm-ostree desktop variant in Fedora?</a>
if you are interested in making those images official Fedora ones.</p>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/Fedora_KDE_Plasma_Mobile">KDE Plasma Mobile Spin and Fedora Kinoite Mobile</a>
change request and the
<a href="https://fedoraproject.org/wiki/SIGs/COSMIC">Fedora COSMIC Desktop Environment Special Interest Group (SIG)</a>
page.</p>

<h3 id="renaming-the-sericea-and-onyx-unofficial-images-to-sway-atomic-and-budgie-atomic">Renaming the Sericea and Onyx unofficial images to Sway Atomic and Budgie Atomic</h3>

<p>If you are using the
<a href="https://quay.io/repository/fedora-ostree-desktops/sericea?tab=tags">Sericea</a>
or
<a href="https://quay.io/repository/fedora-ostree-desktops/onyx?tab=tags">Onyx</a>
container images, please migrate to the new Atomic names for Sericea &amp; Onyx
(<a href="https://quay.io/repository/fedora-ostree-desktops/sway-atomic?tab=tags">sway-atomic</a>
and
<a href="https://quay.io/repository/fedora-ostree-desktops/budgie-atomic?tab=tags">budgie-atomic</a>)
as I will remove the images published under the old name soon, likely before
Fedora 42.</p>

<p>We will likely rename the official container images as well.</p>

<h2 id="smaller-changes-common-to-all-desktops">Smaller changes common to all desktops</h2>

<h3 id="unprivileged-updates">Unprivileged updates</h3>

<p>The polkit policy controlling access to the <code class="language-plaintext highlighter-rouge">rpm-ostree</code> daemon has been
updated to:</p>

<ul>
  <li>Enable users to update the system without having elevated privileges or
typing a password. Note that this change only applies to system updates and
repository meta updates; no other operations.</li>
  <li>Reduce access to the most privileged operations (such as changing the kernel
arguments, or rebasing to another image) of <code class="language-plaintext highlighter-rouge">rpm-ostree</code> for administrators
to avoid mistakes. Only the following operations will remain password-less to
match the behavior of package mode Fedora with the <code class="language-plaintext highlighter-rouge">dnf</code> command:
    <ul>
      <li>install and uninstall packages</li>
      <li>upgrade the image</li>
      <li>rollback the image</li>
      <li>cancel transactions</li>
      <li>cleanup deployment</li>
    </ul>
  </li>
</ul>

<p>See the
<a href="https://fedoraproject.org/wiki/Changes/UnprivilegedUpdatesAtomicDesktops">Unprivileged updates for Fedora Atomic Desktops</a>
change request and the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/7">atomic-desktops-sig#7</a>.</p>

<h3 id="alternatives-work-again">“Alternatives” work again</h3>

<p>The <code class="language-plaintext highlighter-rouge">alternatives</code> command
(<a href="https://www.mankier.com/8/alternatives">alternatives(8)</a>) is now working on
Atomic Desktops.</p>

<p>See the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/51">atomic-desktops-sig#51</a>
for more details and documentation.</p>

<h3 id="fixes-for-luks-unlock-via-tpm">Fixes for LUKS unlock via TPM</h3>

<p>Support for unlokcing a LUKS partition with the TPM is now included in the initramfs.</p>

<p>See the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/33">atomic-desktops-sig#33</a> and
the in progress documentation
<a href="https://github.com/fedora-silverblue/silverblue-docs/pull/176">silverblue-docs#176</a>.</p>

<h2 id="universal-blue-bluefin-bazzite-and-aurora">Universal Blue, Bluefin, Bazzite and Aurora</h2>

<p>Our friends in the <a href="https://universal-blue.org/">Universal Blue</a> project have
prepared the update to Fedora 41 already. For <a href="https://bazzite.gg/">Bazzite</a>,
you can find all the details in
<a href="https://universal-blue.discourse.group/t/bazzite-f41-update-new-kernel-msi-claw-improvements-vrr-fixes-better-changelogs-gnome-47-more/4726">Bazzite F41 Update: New Kernel, MSI Claw Improvements, VRR Fixes, Better Changelogs, GNOME 47 &amp; More</a>.</p>

<p>For <a href="https://projectbluefin.io/">Bluefin</a> (and similarly for
<a href="https://getaurora.dev/">Aurora</a>), see
<a href="https://universal-blue.discourse.group/t/bluefin-gts-is-now-based-on-fedora-40/4782">Bluefin GTS is now based on Fedora 40</a>.</p>

<p>I heavily recommend checking them out, especially if you feel like some things
are missing from the Fedora Atomic Desktops and you depend on them (NVIDIA
proprietary drivers, extra media codec, etc.).</p>

<h2 id="whats-next">What’s next</h2>

<p>We have made lot of progress
<a href="https://tim.siosm.fr/blog/2024/04/29/fedora-atomic-desktops-40/#whats-next">since the last time</a>,
thus this section is going to be more exciting!</p>

<h3 id="roadmap-to-bootable-containers">Roadmap to Bootable Containers</h3>

<p>As I mentionned in
<a href="#first-step-towards-bootable-containers-dnf5-and-bootc">First step towards Bootable Containers: dnf5 and bootc</a>,
the next major evolution for the Atomic Desktops will be to transition to
<a href="https://containers.github.io/bootable/">Bootable Containers</a>. See also the
<a href="https://docs.fedoraproject.org/en-US/bootc/">Fedora bootc documentation</a>.</p>

<p>We have established a roadmap
(<a href="https://gitlab.com/fedora/ostree/sig/-/issues/26">atomic-desktops-sig#26</a>)
and we need your help to make this a smooth transition for all of our existing
users.</p>

<h3 id="composefs">composefs</h3>

<p>Moving to composefs is one of the items on the roadmap to Bootable Containers.
composefs is the next step for ostree based systems and will enable us to
provide better integrity and security in the future.</p>

<p>For Fedora 41, we moved
<a href="https://fedoraproject.org/wiki/Changes/ComposefsAtomicCoreOSIoT">Fedora CoreOS and Fedora IoT</a>
to <a href="https://github.com/containers/composefs">composefs</a>.</p>

<p>For the Atomic Desktops, this is planned for Fedora 42 as we still have a few
issues to resolve. See the
<a href="https://fedoraproject.org/wiki/Changes/ComposefsAtomicDesktops">Enabling composefs by default for Atomic Desktops</a>
change request and the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/35">atomic-desktops-sig#35</a>.</p>

<h3 id="custom-keyboard-layout-set-on-installation">Custom keyboard layout set on installation</h3>

<p>This fix is important for setups where the root disk is encryptd with LUKS and
the user is asked a passphrase on boot. Right now, the keyboard layout is not
remembered and defaults to the US QWERTY layout. Unfortunately this fix did not
land in time for Fedora 41 but this will be part of the Fedora 42 installations
ISOs. Help us test this by installing systems from a Rawhide ISO to confirm
that this issue is fixed.</p>

<p>If you are impacted by this issue, see the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/6">atomic-desktops-sig#6</a> for
the manual workarounds.</p>

<h3 id="unifying-the-atomic-desktops-documentation">Unifying the Atomic Desktops documentation</h3>

<p>We would like to unify the documentation for the Fedora Atomic Desktops into a
single one instead of having per desktop environments docs which are mostly
duplicate of one another and need to be constantly synced.</p>

<p>See the tracking issue
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/10">atomic-desktops-sig#10</a>.</p>

<h2 id="where-to-reach-us">Where to reach us</h2>

<p>We are looking for contributors to help us make the Fedora Atomic Desktops the
best experience for Fedora users.</p>

<ul>
  <li><a href="https://fedoraproject.org/wiki/SIGs/AtomicDesktops">Atomic Desktops SIG</a>:
<a href="https://gitlab.com/fedora/ostree/sig/-/issues">Issue tracker (gitlab.com/fedora/ostree/sig)</a>,
<a href="https://matrix.to/#/#atomic-desktops:fedoraproject.org">#atomic-desktops:fedoraproject.org</a></li>
  <li>Silverblue:
<a href="https://docs.fedoraproject.org/en-US/workstation-working-group/">Workstation Working Group</a>,
<a href="https://matrix.to/#/#silverblue:fedoraproject.org">#silverblue:fedoraproject.org</a></li>
  <li>Kinoite:
<a href="https://fedoraproject.org/wiki/SIGs/KDE">KDE SIG</a>,
<a href="https://matrix.to/#/#kinoite:fedoraproject.org">#kinoite:fedoraproject.org</a></li>
  <li>Sway Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Sway">Sway SIG</a>,
<a href="https://matrix.to/#/#sway:fedoraproject.org">#sway:fedoraproject.org</a></li>
  <li>Budgie Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Budgie">Budgie SIG</a>,
<a href="https://matrix.to/#/#budgie:fedoraproject.org">#budgie:fedoraproject.org</a></li>
</ul>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><summary type="html"><![CDATA[Fedora 41 has been released! 🎉 So let’s see what comes in this new release for the Fedora Atomic Desktops variants (Silverblue, Kinoite, Sway Atomic and Budgie Atomic). Note: You can also read this post on the Fedora Magazine.]]></summary></entry><entry><title type="html">Manual action needed to resolve boot failure for Fedora Atomic Desktops and Fedora IoT</title><link href="https://tim.siosm.fr/blog/2024/07/05/manual-action-atomic-desktops-iot/" rel="alternate" type="text/html" title="Manual action needed to resolve boot failure for Fedora Atomic Desktops and Fedora IoT" /><published>2024-07-05T00:00:00+02:00</published><updated>2024-07-05T00:00:00+02:00</updated><id>https://tim.siosm.fr/blog/2024/07/05/manual-action-atomic-desktops-iot</id><content type="html" xml:base="https://tim.siosm.fr/blog/2024/07/05/manual-action-atomic-desktops-iot/"><![CDATA[<p>Since the <code class="language-plaintext highlighter-rouge">39.20240617.0</code> and <code class="language-plaintext highlighter-rouge">40.20240617.0</code> updates for Atomic Desktops and
the <code class="language-plaintext highlighter-rouge">40.20240617.0</code> update for IoT, systems with Secure Boot enabled may fail
to boot if they have been installed before Fedora Linux 40. You might see the
following error:</p>

<figure class="highlight"><pre><code class="language-console" data-lang="console"><span class="go">error: ../../grub-core/kern/efi/sb.c:182:bad shim signature.
error: ../../grub-core/loader/i386/efi/linux.c:258:you need to load the kernel first.

Press any key to continue...</span></code></pre></figure>

<p><strong>Note:</strong> You can also read this post on the
<a href="https://fedoramagazine.org/manual-action-needed-to-resolve-boot-failure-for-fedora-atomic-desktops-and-fedora-iot/">Fedora Magazine</a>.</p>

<!-- more -->

<h2 id="workaround">Workaround</h2>

<p>In order to resolve this issue, you must first boot into the previous version
of your system. It should still be functional. In order to do this, reboot your
system and select the previous boot entry in the selection menu displayed on
boot. Its name should be something like:</p>

<figure class="highlight"><pre><code class="language-console" data-lang="console"><span class="go">Fedora Linux 39.20240610.0 (Silverblue)  (ostree:1)</span></code></pre></figure>

<p>Once you have logged in, search for the terminal application for your desktop
and open a new terminal window. On Fedora IoT, log in via SSH or on the
console. Make sure that you are not running in a toolbox for all the commands
listed on this page.</p>

<p>If you are running a Fedora Atomic Desktop based on Fedora 39 and have not yet
updated to Fedora 40, you first need to update to the latest working Fedora 39
version with those commands:</p>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nv">$ </span><span class="nb">sudo </span>rpm-ostree cleanup <span class="nt">--pending</span>
<span class="nv">$ </span><span class="nb">sudo </span>rpm-ostree deploy 39.20240616.0</code></pre></figure>

<p>If you are running Fedora IoT, then first update to the latest working version
with this command:</p>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nv">$ </span><span class="nb">sudo </span>rpm-ostree cleanup <span class="nt">--pending</span>
<span class="nv">$ </span><span class="nb">sudo </span>rpm-ostree deploy 40.20240614.0</code></pre></figure>

<p>Then reboot your system.</p>

<p>Once you are logged in again on the latest working version, proceed with the
following commands:</p>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nv">$ </span><span class="nb">sudo</span> <span class="nt">-i</span>
<span class="nv">$ </span><span class="nb">cp</span> <span class="nt">-rp</span> /usr/lib/ostree-boot/efi/EFI /boot/efi
<span class="nv">$ </span><span class="nb">sync</span></code></pre></figure>

<p>Once completed, reboot your system. You should now be able to update again, as
normal, using the graphical interface or the command line:</p>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nv">$ </span><span class="nb">sudo </span>rpm-ostree update</code></pre></figure>

<h2 id="why-did-this-happen">Why did this happen?</h2>

<p>On Fedora Atomic Desktops and Fedora IoT systems, the components that are part
of the boot chain (Shim, GRUB) are not (yet) automatically updated alongside
the rest of the system. Thus, if you have installed a Fedora Atomic Desktop or
a Fedora IoT system before Fedora 40, it uses an old versions of the Shim and
bootloader binaries to boot your system.</p>

<p>When Secure Boot is enabled, the EFI firmware loads Shim first. Shim is signed
by the Microsoft Third Party Certificate Authority so that it can be verified
on most hardware out of the box. The Shim binary includes the Fedora
certificates used to verify binaries signed by Fedora. Then Shim loads GRUB,
which in turn loads the Linux kernel. Both are signed by Fedora.</p>

<p>Until recently, the kernel binaries where signed two times, with an older key
and a newer one. With the 6.9 kernel update, the kernel is no longer signed
with the old key. If GRUB or Shim is old enough and does not know about the new
key, the signature verification fails.</p>

<p>See the initial report in the
<a href="https://github.com/fedora-silverblue/issue-tracker/issues/543">Fedora Silverblue issue tracker</a>.</p>

<h2 id="what-are-we-doing-to-prevent-it-from-happening-again">What are we doing to prevent it from happening again?</h2>

<p>We have known for a while that not updating the bootloader was not a satisfying
situation. We have been working on enabling <code class="language-plaintext highlighter-rouge">bootupd</code> for Fedora Atomic
Desktops and Fedora IoT. <code class="language-plaintext highlighter-rouge">bootupd</code> is a small application that is responsible
only for bootloader updates. While initially planned for Fedora Linux 38 (!),
we had to delay enabling it due to various issues and missing functionality in
<code class="language-plaintext highlighter-rouge">bootupd</code> itself and changes needed in Anaconda.</p>

<p>We are hoping to enable bootupd in Fedora Linux 41, hopefully by default, which
should finally resolve this situation. See the
<a href="https://fedoraproject.org/wiki/Changes/FedoraSilverblueBootupd">Enable bootupd for Fedora Atomic Desktops and Fedora IoT</a>
Fedora Change page.</p>

<p>Note that the root issue also impacts Fedora CoreOS but steps have been put in
place to force a bootloader update before the 6.9 kernel update. See the
<a href="https://github.com/coreos/fedora-coreos-tracker/issues/1752">tracking issue for Fedora CoreOS</a>.</p>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><category term="Fedora IoT" /><summary type="html"><![CDATA[Since the 39.20240617.0 and 40.20240617.0 updates for Atomic Desktops and the 40.20240617.0 update for IoT, systems with Secure Boot enabled may fail to boot if they have been installed before Fedora Linux 40. You might see the following error: error: ../../grub-core/kern/efi/sb.c:182:bad shim signature. error: ../../grub-core/loader/i386/efi/linux.c:258:you need to load the kernel first. Press any key to continue... Note: You can also read this post on the Fedora Magazine.]]></summary></entry><entry><title type="html">What’s new for Fedora Atomic Desktops in Fedora 40</title><link href="https://tim.siosm.fr/blog/2024/04/29/fedora-atomic-desktops-40/" rel="alternate" type="text/html" title="What’s new for Fedora Atomic Desktops in Fedora 40" /><published>2024-04-29T00:00:00+02:00</published><updated>2024-04-29T00:00:00+02:00</updated><id>https://tim.siosm.fr/blog/2024/04/29/fedora-atomic-desktops-40</id><content type="html" xml:base="https://tim.siosm.fr/blog/2024/04/29/fedora-atomic-desktops-40/"><![CDATA[<p><a href="https://fedoramagazine.org/announcing-fedora-linux-40/">Fedora 40 has been released</a>!
🎉 So let’s see what comes in this new release for the Fedora Atomic Desktops
variants (Silverblue, Kinoite, Sway Atomic and Budgie Atomic).</p>

<p><strong>Note:</strong> You can also read this post on the
<a href="https://fedoramagazine.org/whats-new-for-fedora-atomic-desktops-in-fedora-40/">Fedora Magazine</a>.</p>

<!-- more -->

<h2 id="introducing-fedora-atomic-desktops">Introducing Fedora Atomic Desktops</h2>

<p>As you might have guessed from the title, we are now called Fedora Atomic
Desktops! See the
<a href="https://fedoramagazine.org/introducing-fedora-atomic-desktops/">Introducing Fedora Atomic Desktops</a>
Fedora Magazine article for all the details.</p>

<p>The summary is that the Fedora Atomic Desktops are made up of four atomic
spins:</p>

<ul>
  <li>Fedora Silverblue</li>
  <li>Fedora Kinoite</li>
  <li>Fedora Sway Atomic (was Fedora Sericea)</li>
  <li>Fedora Budgie Atomic (was Fedora Onyx)</li>
</ul>

<p>And we have a <a href="https://fedoraproject.org/atomic-desktops/">landing page on fedoraproject.org</a>.</p>

<h2 id="status-update-on-bootloader-updates-bootupd-integration">Status update on bootloader updates (bootupd integration)</h2>

<p>Unfortunately, we could not land
<a href="https://fedoraproject.org/wiki/Changes/FedoraSilverblueBootupd">bootupd support</a>
in this release due to an issue found late in Anaconda’s handling of bootupd
installations which relied on incomplete functionality in bootupd.</p>

<p>We will attempt to add bootupd again after the release, via an update.</p>

<p>If you encounter Secure Boot errors or need to update your bootloader in the
meantime, you can try the instructions from
<a href="https://github.com/fedora-silverblue/issue-tracker/issues/543#issuecomment-2048350047">fedora-silverblue#543</a>.
Make sure to have a Live USB ready in case you encounter an issue. Please make
backups beforehand.</p>

<p>We are hoping to land improvements to bootupd that should simplify this process.</p>

<p>See: <a href="https://gitlab.com/fedora/ostree/sig/-/issues/1">atomic-desktops-sig#1</a>.</p>

<h2 id="whats-new-in-silverblue">What’s new in Silverblue</h2>

<h3 id="gnome-46">GNOME 46</h3>

<p>Fedora Silverblue comes with the latest
<a href="https://release.gnome.org/46/">GNOME 46 release</a>.</p>

<p>For more details about the changes that comes with GNOME 46, see
<a href="https://fedoramagazine.org/whats-new-fedora-workstation-40/">What’s new in Fedora Workstation 40</a>
on the Fedora Magazine and
<a href="https://blogs.gnome.org/uraeus/2024/03/28/fedora-workstation-40-what-are-we-working-on/">Fedora Workstation 40 – what are we working on</a>
from Christian F.K. Schaller.</p>

<h3 id="no-longer-overlay-language-packages-langpacks-by-default">No longer overlay language packages (langpacks) by default</h3>

<p>GNOME Software will no longer overlay the langpack packages for your locale on
the first update. This should make updates much faster as they won’t need to
overlay packages anymore (unless you explicitly decide to overlay some
packages).</p>

<p>If you are updating from a previous release, you will have to remove this
overlayed package manually. For example:</p>

<ol>
  <li>Find the overlayed package using <code class="language-plaintext highlighter-rouge">rpm-ostree status</code>:</li>
</ol>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nv">$ </span>rpm-ostree status
State: idle
Deployments:
● fedora:fedora/40/x86_64/silverblue
                Version: 40.20240410.1 <span class="o">(</span>2024-04-10T03:43:23Z<span class="o">)</span>
                 Commit: 2428fdbec13787633b3bcd79d4f002ab48582bae8c6a473ca357a1ad43573a94
           GPGSignature: Valid signature by E8F23996F23218640CB44CBE75CF5AC418B8E74C
        LayeredPackages: langpacks-fr

fedora:fedora/40/x86_64/silverblue
                Version: 40.20240402.0 <span class="o">(</span>2024-04-02T00:39:43Z<span class="o">)</span>
                 Commit: 634c8097165e6aab2baeaca6ae6d1ea2a7f11fba9f4955297bcf0fc2507047be
           GPGSignature: Valid signature by E8F23996F23218640CB44CBE75CF5AC418B8E74C
        LayeredPackages: langpacks-fr</code></pre></figure>

<ol start="2">
  <li>Remove the overlayed package and reboot:</li>
</ol>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nv">$ </span>rpm-ostree uninstall langpacks-fr
...</code></pre></figure>

<p>Note that this will remove the dictionaries for the corresponding language
from your system and thus for applications included in the image.</p>

<p>For Flatpaks, the dictionaries are downloaded according to the languages set
in the Flatpak config. If you have set your preferred languages in GNOME
Settings, this configuration should have been set already. For example:</p>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="c"># Get the current config</span>
<span class="nv">$ </span>flatpak config <span class="nt">--list</span>
languages: en<span class="p">;</span>fr<span class="p">;</span>de <span class="o">(</span>default: en<span class="o">)</span>
extra-languages: <span class="k">*</span><span class="nb">unset</span><span class="k">*</span>

<span class="c"># Set the languages to use</span>
<span class="nv">$ </span>flatpak config <span class="nt">--set</span> languages <span class="s2">"en;fr"</span></code></pre></figure>

<p>See the <a href="https://docs.flatpak.org/en/latest/flatpak-command-reference.html#flatpak-config">flatpak-config</a>
documentation for more details.</p>

<p>This will also remove the translated man pages for system commands. To get the
man pages back, you can install them in a container using toolbox for example:</p>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="nv">$ </span>toolbox create
<span class="nv">$ </span>toolbox enter
<span class="nv">$ </span><span class="nb">sudo </span>dnf <span class="nb">install </span>man-pages-fr</code></pre></figure>

<p>See: <a href="https://gitlab.com/fedora/ostree/sig/-/issues/14">atomic-desktops-sig#14</a>.</p>

<h2 id="whats-new-in-kinoite">What’s new in Kinoite</h2>

<h3 id="kde-plasma-6">KDE Plasma 6</h3>

<p>Fedora Kinoite ships with <a href="https://kde.org/announcements/megarelease/6/">Plasma 6, Frameworks 6 and Gear 24.02</a>
(<a href="https://fedoraproject.org/wiki/Changes/KDE_Plasma_6">Fedora Change</a>).
See also <a href="https://fedoramagazine.org/whats-new-in-fedora-kde-40/">What’s New in Fedora KDE 40?</a>
on the Fedora Magazine.</p>

<h3 id="wayland-only">Wayland only</h3>

<p>Fedora Kinoite is now Wayland only. Legacy X11 applications will run using
XWayland. See <a href="https://fedoraproject.org/wiki/KDE/X11_Unsupported">Fedora 40: X11 is now unsupported</a>.</p>

<p>If you have a NVIDIA GPU and encounter issues, I recommend looking at Universal
Blue images, waiting for an upcoming NVIDIA driver update that will hopefully
improve Wayland support or trying out the updated Nouveau / NVK stack for
supported cards.</p>

<h3 id="kde-apps-as-fedora-flatpaks">KDE Apps as Fedora Flatpaks</h3>

<p>A subset of KDE Apps are now installed by default as Fedora Flatpaks by
Ananconda for new installations. The Flatpaks are
<a href="https://gitlab.com/fedora/ostree/sig/-/issues/8">not installed on updates</a> but
you can install them from the Fedora Flatpak remote or from Flathub.</p>

<h3 id="kde-flatpak-on-flathub">KDE Flatpak on Flathub</h3>

<p>Most KDE Apps are directly published and maintained on Flathub by the KDE
community and we have mostly completed the transition to the Qt 6.6 / KDE
Framework 6 Runtime.</p>

<p>You can track the progress for the remaining apps in
<a href="https://invent.kde.org/teams/flathub/issues/-/issues/26">kde/teams/flathub#26</a>.</p>

<h2 id="whats-new-in-sway-atomic">What’s new in Sway Atomic</h2>

<p>Fedora Sway Atomic comes with the latest
<a href="https://github.com/swaywm/sway/releases/tag/1.9">1.9 Sway release</a>.</p>

<h2 id="whats-new-in-budgie-atomic">What’s new in Budgie Atomic</h2>

<p>Fedora Budgie Atomic ships with the latest release of the
<a href="https://buddiesofbudgie.org/blog/budgie-10-9-released">Budgie Desktop 10.9</a>
“release series”. Budgie 10.9 features some initial porting work to
<code class="language-plaintext highlighter-rouge">libxfce4windowing</code> as it progresses towards its move to Wayland and redesigns
its Bluetooth applet with new direct (dis-)connect functionality.</p>

<p>Additionally, Fedora Budgie Atomic ships with the latest Budgie Control Center
and takes into use budgie-session. As Buddies of Budgie officially supports
Fedora, Budgie Desktop has also received numerous backported bug fixes to
provide Fedora users an even better experience.</p>

<p>You can learn more about the latest happenings in Budgie on the
<a href="https://buddiesofbudgie.org/blog">Buddies of Budgie blog</a>.</p>

<h2 id="whats-next">What’s next</h2>

<p>Unfortunately, this section will be short this time, as there has not been much
progress on our future plans
<a href="https://tim.siosm.fr/blog/2023/11/22/fedora-atomic-desktops-39/#whats-next">since the last time</a>.</p>

<p>We will provide an updated article when more information becomes available.</p>

<h3 id="teaser-for-improved-update-support-in-discover-for-kinoite">Teaser for improved update support in Discover for Kinoite</h3>

<p><img src="/assets/images/kinoite-discover-update-size.png" alt="Plasma Discover's main application window, on the update tab, showing a
pending operating system update, which is highlighted in green. For this
update, the size is also available and highlighted in
blue." /></p>

<h2 id="universal-blue-bluefin-bazzite-and-aurora">Universal Blue, Bluefin, Bazzite and Aurora</h2>

<p>Our friends in the Universal Blue, Bluefin and Bazzite projects also released
updates for their images.</p>

<p>Universal Blue is now considered
<a href="https://universal-blue.discourse.group/t/universal-blue-is-now-generally-available/1233">Generally Available</a>
alongside
<a href="https://universal-blue.discourse.group/t/bluefin-is-now-generally-available/1234">Bluefin</a>.</p>

<p>For all your gaming needs,
<a href="https://universal-blue.discourse.group/t/announcing-bazzite-3-0/1218">Bazzite reached version 3.0</a>,
rebasing on our fresh Fedora 40 images.</p>

<p>They are also introducing <a href="https://getaurora.dev/">Aurora</a>, a KDE Plasma and
Kinoite based alternative to Bluefin. See the
<a href="https://universal-blue.discourse.group/t/introduction-to-aurora/1235">Introduction to Aurora</a>
post for all the details.</p>

<h2 id="where-to-reach-us">Where to reach us</h2>

<p>We are looking for contributors to help us make the Fedora Atomic Desktops the
best experience for Fedora users.</p>

<ul>
  <li><a href="https://fedoraproject.org/wiki/SIGs/AtomicDesktops">Atomic Desktops SIG</a>:
<a href="https://gitlab.com/fedora/ostree/sig/-/issues">Issue tracker (gitlab.com/fedora/ostree/sig)</a>,
<a href="https://matrix.to/#/#atomic-desktops:fedoraproject.org">#atomic-desktops:fedoraproject.org</a></li>
  <li>Silverblue:
<a href="https://docs.fedoraproject.org/en-US/workstation-working-group/">Workstation Working Group</a>,
<a href="https://matrix.to/#/#silverblue:fedoraproject.org">#silverblue:fedoraproject.org</a></li>
  <li>Kinoite:
<a href="https://fedoraproject.org/wiki/SIGs/KDE">KDE SIG</a>,
<a href="https://matrix.to/#/#kinoite:fedoraproject.org">#kinoite:fedoraproject.org</a></li>
  <li>Sway Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Sway">Sway SIG</a>,
<a href="https://matrix.to/#/#sway:fedoraproject.org">#sway:fedoraproject.org</a></li>
  <li>Budgie Atomic:
<a href="https://fedoraproject.org/wiki/SIGs/Budgie">Budgie SIG</a>,
<a href="https://matrix.to/#/#budgie:fedoraproject.org">#budgie:fedoraproject.org</a></li>
</ul>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><summary type="html"><![CDATA[Fedora 40 has been released! 🎉 So let’s see what comes in this new release for the Fedora Atomic Desktops variants (Silverblue, Kinoite, Sway Atomic and Budgie Atomic). Note: You can also read this post on the Fedora Magazine.]]></summary></entry><entry><title type="html">Gaming only on Linux, one year in</title><link href="https://tim.siosm.fr/blog/2024/01/03/one-year-linux-only-gaming/" rel="alternate" type="text/html" title="Gaming only on Linux, one year in" /><published>2024-01-03T00:00:00+01:00</published><updated>2024-01-03T00:00:00+01:00</updated><id>https://tim.siosm.fr/blog/2024/01/03/one-year-linux-only-gaming</id><content type="html" xml:base="https://tim.siosm.fr/blog/2024/01/03/one-year-linux-only-gaming/"><![CDATA[<p>I have now been playing games only on Linux for a year, and it has been great.</p>

<p>With the GPU shortage, I had been waiting for prices to come back to reasonable
levels before buying a new GPU. So far, I had always bought NVIDIA GPUs as I
was using Windows to run games and the NVIDIA drivers had a better “reputation”
than the AMD/Radeon ones.</p>

<!-- more -->

<p>With <a href="https://github.com/ValveSoftware/Proton">Valve’s Proton</a> seriously taking
off thanks to the Steam Deck, I wanted to get rid of the last computer in the
house that was running Microsoft Windows, that I had kept only for gaming.</p>

<p>But the NVIDIA drivers story on Linux had never been great, especially on
distributions that move kernel versions quickly to follow upstream releases
like Fedora. I had tried using the NVIDIA binary drivers on Fedora Kinoite but
quickly ran into some of the issues that we have listed
<a href="https://docs.fedoraproject.org/en-US/fedora-kinoite/troubleshooting/#_using_nvidia_drivers">in the docs</a>.</p>

<p>At the time, the Universal Blue project did not exist yet (Jorge Castro started
it <a href="https://universal-blue.org/blog/2023/05/03/hello-world/">a bit later in the year</a>),
otherwise I would have probably used that instead.  If you need NVIDIA support
today on Fedora Atomic Desktops (Silverblue, Kinoite, etc.), I heavily
recommend using the <a href="https://universal-blue.org/images/nvidia/">Universal Blue images</a>.</p>

<p>Hopefully this will be better in the future for NVIDIA users with
the work on <a href="https://www.collabora.com/news-and-blog/news-and-events/nvk-holiday-update.html">NVK</a></p>

<p>So, at the beginning of last year (January 2023), I finally decided to buy an
<a href="https://www.amd.com/en/products/graphics/amd-radeon-rx-6700-xt">AMD Radeon RX 6700 XT</a>
GPU card.</p>

<p>What a delight. Nothing to setup, fully supported out of the box, works
perfectly on Wayland. Valve’s Proton does wonders. I can now play on my Linux
box all the games that I used to play on Windows and they run perfectly. Just
from last year, I played Age of Wonders 4 and Baldur’s Gate 3 without any major
issue, and did it pretty close to the launch dates. Older titles usually work
fairly well too.</p>

<p>Sure, some games require some little tweaks, but it is nothing compared to the
horrors of managing a Windows machine. And some games require tweaks on Windows
as well (looking at you
<a href="https://www.reddit.com/r/cyberpunkgame/comments/ka504y/how_to_rebind_the_unrebindable_controls/">Cyberpunk 2077</a>).
The best experience is definitely with games bought on Steam which usually work
out of the box. For those where it is not the case,
<a href="https://www.protondb.com/">protondb</a> is usually a good source to find the
tweaks needed to make the games work. I try to keep the list of tweaks I use
for the games that I play updated on
<a href="https://www.protondb.com/users/1206799862">my profile</a> there.</p>

<p>I am running all of this on <a href="https://fedoraproject.org/kinoite/">Fedora Kinoite</a>
with the <a href="https://flathub.org/apps/com.valvesoftware.Steam">Steam Flatpak</a>. If
you want a more console-like or Steam Deck-like experience on your existing
computers, I recommend checking out the great work from the
<a href="https://github.com/ublue-os/bazzite">Bazzite team</a>.</p>

<p>Besides Steam, I use <a href="https://usebottles.com/">Bottles</a>,
<a href="https://github.com/kra-mo/cartridges">Cartridge</a> and <a href="https://heroicgameslauncher.com/">Heroic Games
Launcher</a> as needed (all as Flatpaks). I have
not looked at Origins or Uplay/Ubisoft Connect games yet.</p>

<p>According to protondb, the only games from my entire Steam library that are not
supported are mostly multiplayer games that require some specific anti-cheat
that is only compatible with Windows.</p>

<p>I would like to say a big THANK YOU to all the open source graphics and desktop
developers out there and to (in alphabetical order) AMD, Collabora, Igalia, Red
Hat, Valve, and other companies for employing people or funding the work that
makes gaming on Linux a reality.</p>

<p>Happy new year and happy gaming on Linux!</p>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Linux" /><category term="Steam" /><category term="Proton" /><category term="Games" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><summary type="html"><![CDATA[I have now been playing games only on Linux for a year, and it has been great. With the GPU shortage, I had been waiting for prices to come back to reasonable levels before buying a new GPU. So far, I had always bought NVIDIA GPUs as I was using Windows to run games and the NVIDIA drivers had a better “reputation” than the AMD/Radeon ones.]]></summary></entry><entry><title type="html">Don’t change your login shell, use a modern terminal emulator</title><link href="https://tim.siosm.fr/blog/2023/12/22/dont-change-defaut-login-shell/" rel="alternate" type="text/html" title="Don’t change your login shell, use a modern terminal emulator" /><published>2023-12-22T00:00:00+01:00</published><updated>2023-12-22T00:00:00+01:00</updated><id>https://tim.siosm.fr/blog/2023/12/22/dont-change-defaut-login-shell</id><content type="html" xml:base="https://tim.siosm.fr/blog/2023/12/22/dont-change-defaut-login-shell/"><![CDATA[<p><code class="language-plaintext highlighter-rouge">chsh</code> is a small tool that lets you change the default shell for your current
user. In order to let any user change their own shell, which is set in
<code class="language-plaintext highlighter-rouge">/etc/passwd</code>, it needs privileges and is generally <code class="language-plaintext highlighter-rouge">setuid</code> <code class="language-plaintext highlighter-rouge">root</code>.</p>

<p>I am of the opinion that
<a href="https://en.wikipedia.org/wiki/Setuid"><code class="language-plaintext highlighter-rouge">setuid</code>/<code class="language-plaintext highlighter-rouge">setgid</code> binaries</a> are a UNIX
legacy that should be deprecated. I will explain the security reasons behind
that statement in a future post.</p>

<p>In this “UNIX legacy” series of posts, I am looking at classic <code class="language-plaintext highlighter-rouge">setuid</code>
binaries and try to find better, safer alternatives for common use cases. In
this post, we will look at alternatives to changing your login shell.</p>

<!-- more -->

<h2 id="should-you-change-the-default-shell">Should you change the default shell?</h2>

<p>People usually change their default shell because they want to use a modern
alternative to Bash (<a href="https://www.zsh.org/">Zsh</a>,
<a href="https://fishshell.com/">fish</a>, <a href="https://www.oilshell.org/">Oils</a>,
<a href="https://www.nushell.sh/">nushell</a>, etc.).</p>

<p>Changing the default shell (especially to a non POSIX or Bash compatible one)
might have unintended consequences as some scripts relying on Bash
compatibility might not work anymore. There are lots of warnings about this,
for example for the fish shell:</p>

<ul>
  <li><a href="https://fishshell.com/docs/current/#default-shell">Fish shell docs: Default Shell</a></li>
  <li><a href="https://wiki.archlinux.org/title/fish#Setting_fish_as_default_shell">Arch Linux Wiki: fish: Setting fish as default shell</a></li>
  <li><a href="https://wiki.gentoo.org/wiki/Fish#Caveats">Gentoo Wiki: fish: Caveats</a></li>
</ul>

<p>On Fedora Atomic Desktops (Silverblue, Kinoite, etc.), your preferred shell may
not always be available, notably if you have to reset your overlays for an
upgrade, and could lead to an unusable system:</p>

<ul>
  <li><a href="https://github.com/fedora-silverblue/issue-tracker/issues/228">Cannot Login after update of Silverblue Rawhide - Login loops back to login screen, same applies for tty2 login attempts</a></li>
  <li><a href="https://github.com/fedora-silverblue/issue-tracker/issues/307">using lchsh to change the shell brings user back to fedora setup</a></li>
</ul>

<p>So overall, it is a bad idea to change the default login shell for interactive
users.</p>

<p>For non-interactive users or system users, the shell is usually set by the
system administrator only and the user itself never needs to change it.</p>

<p>If you are using
<a href="https://www.freedesktop.org/software/systemd/man/latest/systemd-homed.service.html"><code class="language-plaintext highlighter-rouge">systemd-homed</code></a>,
then you can change your own shell via the
<a href="https://www.freedesktop.org/software/systemd/man/latest/homectl.html"><code class="language-plaintext highlighter-rouge">homectl</code></a>
command without needing <code class="language-plaintext highlighter-rouge">setuid</code> binaries but for the same reasons as above, it
is still not a good idea.</p>

<h2 id="graphical-interface-use-a-modern-terminal-emulator">Graphical interface: Use a modern terminal emulator</h2>

<p>If you want to use another shell than the default one, you can use the
functionality from your graphical terminal emulator to start it by default
instead of Bash.</p>

<p>I recommend using the freshly released
<a href="https://blogs.gnome.org/chergert/2023/12/14/prompt/">Prompt</a>
(<a href="https://gitlab.gnome.org/chergert/prompt">sources</a>) terminal if you are
running on Fedora Silverblue or other GNOME related desktops. You can set your
preferred shell in the Profiles section of the preferences. It also has great
integration for toolbox/distrobox containers. We’re investigating making this
the default in a future version of Fedora Silverblue
(<a href="https://github.com/fedora-silverblue/issue-tracker/issues/520">issue#520</a>).</p>

<p>If you are running on Fedora Kinoite or other KDE related desktops, you should
look at <a href="https://konsole.kde.org/">Konsole</a>’s
<a href="https://userbase.kde.org/Konsole#Profile_Management">profiles features</a>. You
can create your own profiles and set the <code class="language-plaintext highlighter-rouge">Command</code> to <code class="language-plaintext highlighter-rouge">/bin/zsh</code> to use another
shell. You can also assign shortcuts to profiles to open them directly a new
tab, or use <code class="language-plaintext highlighter-rouge">/bin/toolbox enter fedora-toolbox-39</code> as <code class="language-plaintext highlighter-rouge">Command</code> to directly
enter a toolbox container for example.</p>

<p>This is obviously not an exhaustive list and other modern terminal emulators
also let you specify which command to start.</p>

<p>If your terminal emulator does not allow you to do that, then you can use the
alternative from the next section.</p>

<h2 id="or-use-a-small-snippet">Or use a small snippet</h2>

<p>If you want to change the default shell for a user on a server, then you can
add the following code snippet at the beginning of the user’s <code class="language-plaintext highlighter-rouge">~/.bashrc</code>
(example for <code class="language-plaintext highlighter-rouge">fish</code>):</p>

<figure class="highlight"><pre><code class="language-bash" data-lang="bash"><span class="c"># Only trigger if:</span>
<span class="c"># - 'fish' is not the parent process of this shell</span>
<span class="c"># - We did not call: bash -c '...'</span>
<span class="c"># - The fish binary exists and is executable</span>
<span class="k">if</span> <span class="o">[[</span> <span class="si">$(</span>ps <span class="nt">--no-header</span> <span class="nt">--pid</span><span class="o">=</span><span class="nv">$PPID</span> <span class="nt">--format</span><span class="o">=</span><span class="nb">comm</span><span class="si">)</span> <span class="o">!=</span> <span class="s2">"fish"</span> <span class="o">&amp;&amp;</span> <span class="nt">-z</span> <span class="k">${</span><span class="nv">BASH_EXECUTION_STRING</span><span class="k">}</span> <span class="o">&amp;&amp;</span> <span class="nt">-x</span> <span class="s2">"/bin/fish"</span> <span class="o">]]</span><span class="p">;</span> <span class="k">then
  </span><span class="nb">shopt</span> <span class="nt">-q</span> login_shell <span class="o">&amp;&amp;</span> <span class="nv">LOGIN_OPTION</span><span class="o">=</span><span class="s1">'--login'</span> <span class="o">||</span> <span class="nv">LOGIN_OPTION</span><span class="o">=</span><span class="s1">''</span>
  <span class="nb">exec </span>fish <span class="nv">$LOGIN_OPTION</span>
<span class="k">fi</span></code></pre></figure>

<h3 id="references">References</h3>

<ul>
  <li><a href="https://wiki.archlinux.org/title/fish#Setting_fish_as_interactive_shell_only">Arch Linux Wiki: fish: Setting fish as interactive shell only</a></li>
  <li><a href="https://unix.stackexchange.com/questions/26676/how-to-check-if-a-shell-is-login-interactive-batch">How to check if a shell is login/interactive/batch</a></li>
</ul>

<h2 id="other-posts-from-this-series">Other posts from this series</h2>

<ul>
  <li><a href="https://tim.siosm.fr/blog/2023/12/19/ssh-over-unix-socket/">sudo without a <code class="language-plaintext highlighter-rouge">setuid</code> binary or SSH over a UNIX socket</a></li>
</ul>]]></content><author><name>Timothée Ravier</name></author><category term="blog" /><category term="Fedora" /><category term="KDE" /><category term="Fedora Silverblue" /><category term="Fedora Kinoite" /><category term="Fedora Atomic Desktops" /><category term="UNIX legacy" /><summary type="html"><![CDATA[chsh is a small tool that lets you change the default shell for your current user. In order to let any user change their own shell, which is set in /etc/passwd, it needs privileges and is generally setuid root. I am of the opinion that setuid/setgid binaries are a UNIX legacy that should be deprecated. I will explain the security reasons behind that statement in a future post. In this “UNIX legacy” series of posts, I am looking at classic setuid binaries and try to find better, safer alternatives for common use cases. In this post, we will look at alternatives to changing your login shell.]]></summary></entry></feed>