Giter VIP home page Giter VIP logo

sodalite's Introduction

Screenshot of Sodalite

Sodalite

Sodalite is an immutable desktop OS built with rpm-ostree and on-top of Fedora β€” similar to Fedora Silverblue β€” making use of the Pantheon desktop, sticking closely to the ethos and workflow perpetrated by elementary.


Hmm, it's been X days since the last commit; is this still active?

Yes.

Despite a very active commit history, Sodalite is fairly self-sustaining these days β€” mostly thanks to the awesome people at Fyra Labs β€” and thus the repository will go months without any activity. This does not mean the project is abandoned, especially since its developer uses it as their main OS. Regardless of repository activity, updates are built twice every week from the repository: logs are available at Actions.

Psst! We're on Telegram too. While you're free to use Discussions, the majority of the discussion relating to this project will happen over on Telegram.


πŸŽ‰ Installing

As rpm-ostree is an ever-evolving technology, and ISO installs are currently a low priority, ISOs are currently not available. An existing rpm-ostree-based OS, such as Fedora Silverblue, is required: this OS will be used to "rebase" to Sodalite.

  1. Install an rpm-ostree-based version of Fedora, such as Fedora Silverblue, or use an already-existing install
  2. Fire up a terminal and issue these commands:
    • sudo ostree remote add --if-not-exists sodalite https://ostree.sodalite.rocks --no-gpg-verify
    • sudo ostree pull sodalite:sodalite/current/x86_64/desktop*
    • sudo rpm-ostree rebase sodalite:sodalite/current/x86_64/desktop
  3. Stick the kettle on and make yourself a cuppa. It'll take a while
  4. Reboot when prompted. Use it, enjoy it, make something cool with it, (try to) break it β€” submit a ticket if you do!

* There are multiple branches available; see Branches.

Branches

Several branches (or images) of Sodalite co-exist and are developed side-by-side; these are distinguished by their ref β€” like any other rpm-ostree distro β€” where sodalite/<version>/<arch>/<edition>:

Current

<version> <arch> <edition> Release Base Status
current x86_64 desktop 6Β KutaiΒ  FedoraΒ 39 Update: sodalite/current/x86_64/desktop

Long

<version> <arch> <edition> Release Base Status
long-6 x86_64 desktop 6Β KutaiΒ (Long) FedoraΒ 39 Update: sodalite/long-6/x86_64/desktop

Unlike Current (current), these branches do not update to the current major release: updates will stop the same day as the base Fedora version. Only use these if necessary (i.e. problematic drivers requiring certain versions, critical systems, etc.)

Next

<version> <arch> <edition> Release Base Status
next x86_64 desktop 6Β KutaiΒ (Next)Β  FedoraΒ 39 Update: sodalite/next/x86_64/desktop
next x86_64 desktop-gnome 7.0rc3Β GNOMEΒ (Next)Β  FedoraΒ 40 Update: sodalite/next/x86_64/desktop-gnome

Early versions of upcoming releases. Unstable. Here be dragons. Abandon all hope. You know the drill.

This may sometimes be at the same version as Current (current), but be aware you'll be bumped to an upcoming release without warning if/when released to this branch.

Versioning

(Todo)

πŸ”„ Updating

Performing a system update can be done by either:

  • Running sudo rpm-ostree upgrade in a shell
  • Opening Software, selecting Updates from the headerbar, and pressing Update All
    • As Software runs in the background and periodically checks for updates, you may also receive a notification of a new update; clicking on this opens the appropriate page
    • An update for the OS may take a while to appear in Software (which will appear as "Operating System Updates"), so the above method is preferred

Reboot after either method has finished. You can verify the version installed by opening System Settings and navigating to System βž” Operating System: the version proceeds the word "Sodalite"

If something breaks, you can rollback by running sudo rpm-ostree rollback at a terminal. Remember to also create a new issue if appropriate!

Update Schedule

Updates are built on the build server commencing 4:00 GMT/Β±0 (22:00 CST/-6) every Wednesday and Saturday.

"Long-term" Branches

If you chose to use a "long-term" branch (see Branches above), you will need to rebase whenever the Sodalite version reaches end-of-life. This can be done with sudo rpm-ostree rebase sodalite:sodalite/<version>/<arch>/<edition>, where <version> is the version you're wanting to rebase to and other values are your current values.

It's vital you carry out this process as updates stop the day the base version reaches end-of-life (at the same time as the base Fedora Linux version) and you will be left without updates to vital system components.


πŸ—οΈ Building

1. Prerequisites

Software

Containerized (with --container/-c)

Running in a container is the preferred way of building Sodalite

  • Linux
  • Podman
    • To use Docker instead, pass --ex-use-docker. Running in Docker is entirely untested and experimental!
  • Bash
  • Git LFS
    • As well as including pretty wallpapers, the LFS also includes vital binaries that Sodalite needs to work properly, so don't miss installing this!
    • Unsure if you have LFS support? Tpe git lfs: a help output prints if installed
OS-level

If you don't have Podman, or are having issues with running in a container, you can try running on the host itself

  • Fedora Linux (or other Fedora-based/compatible distros)
  • rpm-ostree
    • On most Fedora-based distros, this can be installed with dnf install rpm-ostree
  • Bash
  • Git LFS
    • As well as including pretty wallpapers, the LFS also includes vital binaries that Sodalite needs to work properly, so don't miss installing this!
    • Unsure if you have LFS support? Tpe git lfs: a help output prints if installed

Environment

  • Permission to sudo
    • Do not run sudo ./build.sh: the script will ask for permission when it needs it
    • Whether or not you run containerized, you must have access to sudo
  • >10GiB disk space
    • The repository itself (including submodules) takes up ~300MiB
    • Initial builds will take up ~4GiB, with subsequent builds adding to this
  • Unlimited Internet
    • The build process caches a lot of Fedora packages (around 2.5GiB), so think carefully about doing this on mobile broadband or any other service that imposes a small data allowance on you
  • An rpm-ostree-based distro, such as such as Fedora Silverblue β€” on either a virtual machine, another physical machine, or your current install (careful!) β€” to test builds on
  • A cuppa (optional) β€” this can take a while

2. Getting

git clone https://github.com/sodaliterocks/sodalite.git
cd sodalite
git submodule sync
git submodule update --init --recursive

Future Pulls

When updating in the future, don't forget to update submodules with:

git submodule update --recursive

Do not use git submodule foreach git pull: this blindly updates all submodules to their latest version, not the commit this parent repo has checked out. This is important for some submodules that are checked out at specific tags/commits (such as ./lib/sodaliterocks.firefox).

The ./lib/workstation-ostree-config_f* submodules β€” serving as a basis for Sodalite for its various different Fedora-based versions β€” are removed every so often so make sure you delete them accordingly. For example, when Fedora 36 reaches EoL, ./lib/workstation-ostree-config_f36 will be removed shortly afterwards. You can use git clean -i to do the work for you.

LFS

An LFS submodule is located at ./lfs. It's important to note this is not hosted on GitHub, but Zio Git β€” a server we control β€” as GitHub's LFS allowances are tight (only 1GiB bandwidth and storage).

Any issues regarding the LFS should be submitted to sodaliterocks/sodalite on GitHub. Currently, as Zio Git does not allow for arbitrary sign-ups, PRs cannot be directly submitted.

Usage of GitHub

Unless the world collectively favours GitLab, or anything else, Sodalite will stay on GitHub as it makes everyone's lives easier. Microsoft is just another company; they're not going to hurt you.

3. Building

./build.sh [-t <edition>] [-w <working-dir>]

See build.sh --help for more options.

This will usually take 10-15 minutes. Remember when I told you to grab a cuppa? Or maybe a cold one?

Arguments
  • <edition> (optional) Edition/variant of Sodalite (defaults to custom)
    • This is any of the sodalite-<edition>.yaml files listed in ./src/treefiles/. Either use sodalite-<edition> or just <edition> as the argument. Currently, there is:
      • desktop: Standard Pantheon desktop
      • desktop-gnome: Alternate GNOME desktop, intended for possible future versions
      • custom: See below point
    • sodalite-custom.yaml is a good place to employ your own changes instead of modifying any of the other treefiles
  • <working-dir> (optional) Directory for build output (defaults to ./build)

Additional Notes

Building in a Container

If you have Podman, you can build Sodalite entirely in a container: just use -c/--container. This is in fact how builds are done on the release server! However, this will add an extra few minutes for the build to complete as the Fedora container needs to install packages first.

NTFS/FAT partitions

Build failures are inevitable on drives formatted as NTFS, FAT, or anything other filesystems that do not support Unix-like permissions, as build.sh sets permissions on various objects.

WSL2

On WSL2, do not build to any /mnt/<drive-letter> directories as these will be formatted as NTFS or FAT. Instead, run the build somewhere else on the Linux distro itself (like $HOME or /usr/local/src).

Not using build.sh

Most rpm-ostree distros can be built just be simply doing rpm-ostree compose, but build.sh provided with Sodalite does some extra steps which are required for the post-build script (which will fail without these being ran). It is therefore not recommended to do it this way: any issues building the distro this way will be closed and marked as invalid.

Cleaning Up

Build contents is located at ./build/ (or whatever you set <working-dir> to), which can be deleted to start afresh. Specifically this holds the following files/directories (of which can be individually deleted instead):

  • ./build/repo/ β€” OSTree repository for Sodalite
  • ./build/cache/ β€” Cache for Fedora packages

Unless stopped manually, build.sh will clean itself up whenever it exits (on both success and failure). It will correct permissions (to your user) for the ./build/ directory, as well as removing the following files/directories:

  • ./src/sysroot/common/usr/lib/sodalite-buildinfo
  • /var/tmp/rpm-ostree.*/
    • This can get large quickly; watch out if you're not letting build.sh exit

4. Using

(todo)


🀝 Acknowledgements

Individuals

Past Individuals

These fine folks' work is no longer included in, or relevant to, Sodalite, but they're still worth a shout-out!

Teams & Organizations

  • elementary, for building lovely stuff
  • Fyra Labs, for maintaining Terra
    • Due to various packaging issues with Pantheon on Fedora's official repos (see #44), Sodalite was almost doomed after f36+ reached EoL. However, Terra maintains builds of Pantheon and effectively keeps the lights on here!
  • The contributors to workstation-ostree-config, for a solid ground to work from

Miscellaneous

πŸ‘€ See Also

Related


πŸ‡¬πŸ‡§ πŸ‡©πŸ‡ͺ

sodalite's People

Contributors

astravexton avatar electricduck avatar malix-off avatar pieckenst avatar sparticvs avatar topfi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

sodalite's Issues

Improve Plymouth splash screen

image

Currently we're using the default theme from Fedora for the Plymouth splash screen; it would be better if we at least had Sodalite's logo instead.

sodalite/unstable fails to build

On the relase/unstable branch, doing ./build.sh base (or any variant) crashes while it configures packages with:

Running pre scripts... done
error: Package 'authselect-libs' has (currently) unsupported <lua> script in '%prein'
error: Failed to build tree
πŸ›‘οΈ  Correcting permissions for build directory... 

Related to coreos/fedora-coreos-tracker#1057.

Investigate if Housekeeping works

Something that has never been tested is if Housekeeping (System Settings βž” Security & Privacy) works at all. The settings panel visibly works, but whether actually the selected items are trashed after the specified days is not known.

image

Software suggests opening GNOME System Settings

On a metered connected, a banner appears in Software warning you about a metered connection, with a button that triggers a dialog box that suggests for you to open your network settings. Unfortunately, this opens GNOME System Settings instead of Switchboard.

Screenshot from 2022-01-24 19 22 37

This will be hardcoded into Software but there may possibly be a way to have Switchboard to open instead, as GNOME System Settings looks a little broken in Pantheon (although most of it does work properly, such as the Network settings).

libXcursor (i686) causing problems

When installing packages such as Steam or Wine (via the repos, not via Flatpak), which can be found on rpm-fusion, they require a number of 32-bit packages, one of which being libXcursor. However, this package fails to install and thus the dependent apps also install, with this error:

error: Checkout libXcursor-1.2.1-2.fc36.i686: Hardlinking [...] to index.theme: file exists

This is due to the fact we're already providing out own default icon theme at /usr/share/icons/default/index.theme (on Pantheon versions only).

Our only options are either:

  • Ignore the problem and advise people to use Flatpak versions of these apps (for Wine, Bottles is a good alternative), as libXcursor seems to be entirely unmaintained (as are a lot of i686 packages now)
  • Remove /usr/share/themes/default/, with the caveat of being a small number of apps may potentially not have the correct icons, so this will need thorough testing

Handle "third-party repos"

When installing Fedora Silverblue, you are given the option to install "Third-party Repos" (RPMFusion). However, after installing Sodalite, issues start occuring with this repository being present, seemingly related to the fact the GPG key is missing.

Related issues:

Calendar widgets have rendering issues

On Fedora 37+ versions of Sodalite, Calendar and the the Wingpanel calendar applet both have rendering issues, as well as possibly other Pantheon apps that use the calendar widget.

image

image

Unable to update

Loaded up Sodalite in a VM this morning to find a banner at the top of the Software window stating that my operating system is no longer supported. It said that I was all up-to-date and that I last checked 5 days ago, so I clicked the refresh button which generated the below curl error regarding nvidia drivers.

image

Steps to reproduce: Install Fedora Silverblue 36 in Gnome Boxes, Update and reboot, install Sodalite, reboot, Check for updates, power off, <leave for 5 days πŸ˜„>, power up Sodalite and check for updates. It happened last week, too, so I reinstalled everything from scratch and it's happening again now 😞

Shortcut Overlay fails to launch

Upon launching Shortcut Overlay (io.elementary.shortcut-overlay), an error occurs:

(io.elementary.shortcut-overlay:9756): GLib-GIO-ERROR **: 19:44:11.722: Settings schema 'org.gnome.settings-daemon.plugins.media-keys' does not contain a key named 'screenshot'
Trace/breakpoint trap (core dumped```

Deepin variant

It would be a nice to have thing, considering fedora server allows you to install it out of the box during software selection
So having it be an option in fedora silverblue base would be a nice to have

Clear up a few issues regarding elementaryOS

It would be best to clear the air between Sodalite and elementaryOS, to make sure there's no treading on toes and no confusion of users. Although this project is currently quite small it would be a good idea to sort these issues out from the get-go. Things we need to discuss:

  • Are we allowed to pack the AppCenter Flatpak repository by default into the OS?
    • As we are using GNOME Software currently (boo!), the pay-what-you-want system is being circumvented and developers are possibly losing out on potential sales. In the future I would like AppCenter to be working on Sodalite along with the payment system.
    • If we're not allowed, could we do this as an optional thing during on-boarding since curated apps are an important part of elementary, but still letting the user know about the pay-what-you-want system somehow?
  • What's the best way to refer to the DE?
    • In documentation it would be nice to always mention the DE is "Pantheon" and not "elementary", but there doesn't seem to be a canonical link to Pantheon on elementary's website to explain the DE to users: it's all just elementary(OS).
    • We could make our own explanation of Pantheon?
  • Making sure to send beginner users to elementaryOS instead, as Sodalite is far from finished and targets more novice users.
  • Potentially out-of-scope, it would be nice to make sure Sodalite-specific issues are not posted in elementary's subreddit or other discussion areas.
  • Are we breaking any other licensing issues with elementary?
  • Any other potential issues?

Would be nice to get appropriate people from elementary on this (@cassidyjames? @danrabbit?).

Firefox has square borders

The native version of Firefox has square borders in Pantheon. Considering this is the default browser, it would make a lot of sense to get it fixed.

Screenshot from 2022-01-19 11 34 06

Version Numbering

Currently, Sodalite has no defined standard for version numbering. There are a few ways this could be addressed.

  1. We could simply utilize the same version numbering system employed by Fedora, starting with Sodalite 35
  2. We could start with yearly numbering (i.e. 21.2 for a build based on Fedora 35 and 22.1 for a build based on Fedora 36)
  3. We could use a similar system to Elementary OS, starting with a few beta releases before changing over to full numbers

I see each of these having their own up- and downsides and am not personally partial to any one.

cant login after rebase

im "getting unable to login starting session failed returned error code 1" while trying to login
also if i set my password wrong it will just froze and i need to restart

lightdm log:
lightdm.log

also tried creating a second user but it does not show in the lightdm login only on gnome.
found other people getting the same error but in my case i dont have a .Xauthority file in my home dir.

rpm-ostree install resulting in failure to download gpg key

Greetings. To start, I'm new to rpm-ostree, so it's possible that I am make a simple mistake. I'm trying to install a local RPM via rpm-ostree install, however I get the following error:

error: Updating rpm-md repo 'rpmfusion-nonfree-nvidia-driver': Failed to download gpg key for repo 'rpmfusion-nonfree-nvidia-driver': Curl error (37): Couldn't read a file:// file for file:///usr/share/distribution-gpg-keys/rpmfusion/RPM-GPG-KEY-rpmfusion-nonfree-fedora-35 [Couldn't open file /usr/share/distribution-gpg-keys/rpmfusion/RPM-GPG-KEY-rpmfusion-nonfree-fedora-35]

Current status is:

State: idle
Deployments:
● sodalite:sodalite/stable/x86_64/base
                   Version: 35-22.6.18 (2022-03-14T00:11:39Z)
                    Commit: 3af99c59f28452c806035f08e2c7a36f699ef54b312ec0c61706760cb25cfba2

  sodalite:sodalite/stable/x86_64/base
                   Version: 35-22.5 (2022-02-09T16:45:00Z)
                    Commit: 3cc2a0ab044d8950ec2bd9465f6be6b13c7e01575a6589ecc2e68a957f2c8798

After doing a couple searches, the commonly accepted solution was to rpm-ostree rebase fedora..., but I don't have the fedora deployments anymore (I got the idea from following the instructions that needed to be removed). I also have this issue when rolling back to the previous version.

Any suggestions to help me get past this issue would be greatly appreciated.

next: Not building with new Terra repos

When trying to build release/next, we are met with this problem:

rpm-ostree version: 2022.16
No previous commit for sodalite/next/x86_64/custom

NOTICE: Running rpm-ostree compose tree without --unified-core is deprecated.
 Please add --unified-core to the command line and ensure your content
 works with it.  For more information, see https://github.com/coreos/rpm-ostree/issues/729

Enabled rpm-md repositories: fedora-updates copr_stsdc_monitor fedora copr_decathorpe_elementary-staging terra
Updating metadata for 'fedora-updates'... done
Updating metadata for 'copr_stsdc_monitor'... done
Updating metadata for 'fedora'... done
Updating metadata for 'copr_decathorpe_elementary-staging'... done
Updating metadata for 'terra'... done
Importing rpm-md... done
rpm-md repo 'fedora-updates'; generated: 2023-01-08T20:10:33Z solvables: 68278
rpm-md repo 'copr_stsdc_monitor'; generated: 2022-03-17T03:51:37Z solvables: 4
rpm-md repo 'fedora'; generated: 2023-01-08T20:10:33Z solvables: 68278
rpm-md repo 'copr_decathorpe_elementary-staging'; generated: 2022-07-30T15:15:25Z solvables: 61
rpm-md repo 'terra'; generated: 2023-01-09T22:19:48Z solvables: 861
Resolving dependencies... done
error: Could not depsolve transaction; 1 problem detected:
 Problem: conflicting requests
  - package elementary-photos-2.8.0-1.fc37.aarch64 does not have a compatible architecture
  - nothing provides ld-linux-aarch64.so.1()(64bit) needed by elementary-photos-2.8.0-1.fc37.aarch64
  - nothing provides ld-linux-aarch64.so.1(GLIBC_2.17)(64bit) needed by elementary-photos-2.8.0-1.fc37.aarch64
  - nothing provides libm.so.6(GLIBC_2.17)(64bit) needed by elementary-photos-2.8.0-1.fc37.aarch64
  - nothing provides libraw.so.20()(64bit) needed by elementary-photos-2.8.0-1.fc37.aarch64
  - nothing provides libraw.so.20()(64bit) needed by elementary-photos-2.8.0-1.fc37.x86_64

This was to be expected, as there is currently no f38 repos of Terra, so we had to hardcode 37 into terra.repo. However, this is causing severe issues resulting in an unbuildable tree, likely something we'll be unable to fix until f38 repos of Terra are created.

Multitasking View shows empty windows

When switchting to multitasking view, then switchting to another workspace and then switching back again, it looks something like this on my system:

image

Greeter has graphical issues

On Fedora 36-based versions of Sodalite, the Greeter seems to start abnormally:

  • Starts up with an entirely black background with only the user switcher and clock visible, with the UI freezing for a moment.
  • Mouse cursor never appears, but keyboard input works fine.
  • Grey background appears after a moment.
  • Icons in the top-right never use the correct icon theme.

image

Touchpad gesture to switch workspaces are laggy

Thanks for the great work, really glad that this works so well!

When swiping three fingers up there is a small jank and then the multitasking view animation starts.
When swiping left and right a similar thing happens and looks like this, with the blue rectangle animating with the motion.

image

Update screenshot on README

The README includes a screenshot with the old logo and old versioning scheme. Would be a good idea to update it.

No refs in new OSTree remote

[jae@rhenium ~]$ sudo ostree pull sodalite:sodalite/stable/x86_64/stable

error: Not normal form
[jae@rhenium ~]$ sudo rpm-ostree rebase sodalite:sodalite/stable/x86_64/stable
error: While pulling sodalite/stable/x86_64/stable: Not normal form
[jae@rhenium ~]$ 

Bring back Pantheon Greeter

Due to #29, we had to ditch Pantheon Greeter in favor of LightDM GTK Greeter. However, now that we have more up-to-date packages its time we moved back to Pantheon Greeter for f37+.

Locales aren't being set correctly

The OS is currently not only missing it's locale options in switchboard, but even when set manually through CLI, most of the OS doesn't adhere to the language and is still displayed in English

For anyone with another mother language than English, this can be quite frustrating. Thus I would like to see it fixed in the future

(This happened across multiple devices on F36 Sodalite)

Font rendering not quite correct

Sodalite/Fedora seems to render fonts ever so slightly different to elementaryOS/Ubuntu.

image

(elementaryOS on the left, Sodalite on the right)

desktop-gnome (variant): No longer builds

When trying to build desktop-gnome (i.e. ./build.sh desktop-gnome), the build fails with this output:

rpm-ostree version: 2022.19
No previous commit for sodalite/devel/x86_64/desktop-gnome

NOTICE: Running rpm-ostree compose tree without --unified-core is deprecated.
 Please add --unified-core to the command line and ensure your content
 works with it.  For more information, see https://github.com/coreos/rpm-ostree/issues/729

Enabled rpm-md repositories: rpmfusion.free rpmfusion.free.updates copr.zeno.scrcpy fedora fedora.updates terra
Updating metadata for 'rpmfusion.free'... done
Updating metadata for 'rpmfusion.free.updates'... done
Updating metadata for 'copr.zeno.scrcpy'... done
Updating metadata for 'fedora'... done
Updating metadata for 'fedora.updates'... done
Updating metadata for 'terra'... done
Importing rpm-md... done
rpm-md repo 'rpmfusion.free'; generated: 2022-11-11T16:54:42Z solvables: 496
rpm-md repo 'rpmfusion.free.updates'; generated: 2023-01-24T08:54:53Z solvables: 162
rpm-md repo 'copr.zeno.scrcpy'; generated: 2023-01-24T11:13:36Z solvables: 4
rpm-md repo 'fedora'; generated: 2022-11-10T09:30:00Z solvables: 66822
rpm-md repo 'fedora.updates'; generated: 2023-01-25T01:34:45Z solvables: 16723
rpm-md repo 'terra'; generated: 2023-01-26T01:33:28Z solvables: 975
error: Packages not found: libproxy-webkitgtk4

File Choosers are a mess

In elementaryOS, all apps use the File Chooser brought in by its Files XDG portal (I presume?)

image

However, in Sodalite, this doesn't happen, and instead we get multiple different versions:

image

Sodalite, and Fedora, seem to be missing the package that provides io.elementary.files.xdg-desktop-portal.service.

Abandon 37 (Is this the end?)

https://www.spinics.net/lists/fedora-devel/msg304445.html

Having been out-of-the-loop for some time, this has only just now been brought to my attention (TL;DR there is no way Pantheon can be supported for Fedora 37 as of currently, possibly even Fedora 38). With that in mind, I am going to abandon the 37 release (removing branches, etc.). Currently, 37 was being built by using old repositories for 36 β€” as I was unaware of what was going on β€” but this is a truely awful hack that will break someday and I am unwilling to allow to be production.

These tasks need doing:

  • Return main branch to 36 (currently 37)
  • Remove release/f37 branch
  • Remove all current tags for v/f37/37-xx.xx
  • Stop builds of sodalite/f37/<arch>/<edition> on the build server
  • Remove all builds of sodalite/f37/<arch>/<edition> on the build server

As it stands, the fate of Sodalite rests in limbo, as I too do not have the capacity to invest in getting Pantheon working on Fedora 37+: a real bummer for me since Sodalite is my daily. The good news is 36 will continue to be supported until 16-May-2022, so hopefully something can be resolved by this time β€” issues are still welcome and releases will still be made.

Development for 38+ will still continue in release/next by retaining the current ugly using-36-repositories hack, but bear in mind this will break someday until the main issue is resolved, and on that day builds will stop and releases for sodalite/next/<arch>/<edition> won't be tagged.

Stay tuned.

Include Initial Setup app

One key component we're missing is the Initial Setup app, which I believe is vital for a number of reasons:

  1. Right now with sodaliterocks/bootable, you can set the OS up without a normal user, leading you to an entirely blank login screen. Slightly jarring at first but workaround-able by going to a TTY: still not ideal though.
  2. Related to above; just like Fedora Silverblue we should be getting the user to setup an account after the install (and disabling the ability during setup on sodaliterocks/bootable).
  3. Following the trend with other OSes of getting the user to setup an account after the initial install, since this is a nicer way of dealing with the OOBE for new devices.

However, @decathorpe, who does amazing work of getting Pantheon working on Fedora, does not maintain this app, which is to be expected (who needs that on their current install?). So we'll have to build it ourselves and investigate how to trigger this app on a fresh user-less startup (does elementary's Greeter already do this, perhaps?)

`rpm-ostreed` breaks due to missing `/boot/loader` directory

I wanted to try out my fresh Sodalite system with zsh as my default shell
So, I lookup how to do that, find out how to use rpm-ostree install, and layered packages, try installing it...and...instantly it throws an error.

The error is as follows:

Error
[rush@fedora ~]$ sudo rpm-ostree status
[sudo] password for rush:              
Job for rpm-ostreed.service failed because the control process exited with error code.
See "systemctl status rpm-ostreed.service" and "journalctl -xeu rpm-ostreed.service" for details.
Γ— rpm-ostreed.service - rpm-ostree System Management Daemon
     Loaded: loaded (/usr/lib/systemd/system/rpm-ostreed.service; static)
     Active: failed (Result: exit-code) since Sun 2022-09-11 00:25:46 CEST; 26ms ago
       Docs: man:rpm-ostree(1)
    Process: 53161 ExecStart=rpm-ostree start-daemon (code=exited, status=1/FAILURE)
   Main PID: 53161 (code=exited, status=1/FAILURE)
     Status: "error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory"
        CPU: 64ms

Sep 11 00:25:46 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
Sep 11 00:25:46 fedora rpm-ostree[53161]: Reading config file '/etc/rpm-ostreed.conf'
Sep 11 00:25:46 fedora rpm-ostree[53161]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted fou…er directory
Sep 11 00:25:46 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
Sep 11 00:25:46 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
Sep 11 00:25:46 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
Hint: Some lines were ellipsized, use -l to show in full.
error: exit status: 1

I then ran journalctl -xeu rpm-ostreed.service, which yielded the following results:

logs

[rush@fedora ~]$ cat log.txt 
Sep 10 21:43:34 ThinkPad-SL510 systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 2382.
Sep 10 21:43:37 ThinkPad-SL510 rpm-ostree[2201]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 21:43:37 ThinkPad-SL510 rpm-ostree[2201]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 21:43:37 ThinkPad-SL510 systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 21:43:37 ThinkPad-SL510 systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 21:43:37 ThinkPad-SL510 systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 2382 and the job result is failed.
Sep 10 21:43:37 ThinkPad-SL510 systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 2578.
Sep 10 21:43:37 ThinkPad-SL510 rpm-ostree[2225]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 21:43:37 ThinkPad-SL510 rpm-ostree[2225]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 21:43:37 ThinkPad-SL510 systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 21:43:37 ThinkPad-SL510 systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 21:43:37 ThinkPad-SL510 systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 2578 and the job result is failed.
Sep 10 22:31:52 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 3775.
Sep 10 22:31:52 fedora rpm-ostree[41323]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 22:31:52 fedora rpm-ostree[41323]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 22:31:52 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 22:31:52 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 22:31:52 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 3775 and the job result is failed.
Sep 10 22:31:58 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 3873.
Sep 10 22:31:59 fedora rpm-ostree[41344]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 22:31:59 fedora rpm-ostree[41344]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 22:31:59 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 22:31:59 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 22:31:59 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 3873 and the job result is failed.
Sep 10 22:32:36 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 3971.
Sep 10 22:32:36 fedora rpm-ostree[41384]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 22:32:36 fedora rpm-ostree[41384]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 22:32:36 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 22:32:36 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 22:32:36 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 3971 and the job result is failed.
Sep 10 22:32:53 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 4069.
Sep 10 22:32:54 fedora rpm-ostree[41427]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 22:32:54 fedora rpm-ostree[41427]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 22:32:54 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 22:32:54 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 22:32:54 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 4069 and the job result is failed.
Sep 10 22:46:11 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 5153.
Sep 10 22:46:11 fedora rpm-ostree[43018]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 22:46:11 fedora rpm-ostree[43018]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 22:46:11 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 22:46:11 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 22:46:11 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 5153 and the job result is failed.
Sep 10 22:46:11 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 5251.
Sep 10 22:46:11 fedora rpm-ostree[43028]: Reading config file '/etc/rpm-ostreed.conf'
Sep 10 22:46:11 fedora rpm-ostree[43028]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 10 22:46:11 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 10 22:46:11 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 10 22:46:11 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 5251 and the job result is failed.
Sep 11 00:14:05 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 7750.
Sep 11 00:14:05 fedora rpm-ostree[52252]: Reading config file '/etc/rpm-ostreed.conf'
Sep 11 00:14:05 fedora rpm-ostree[52252]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 11 00:14:05 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 11 00:14:05 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 11 00:14:05 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 7750 and the job result is failed.
Sep 11 00:14:11 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 7848.
Sep 11 00:14:11 fedora rpm-ostree[52278]: Reading config file '/etc/rpm-ostreed.conf'
Sep 11 00:14:11 fedora rpm-ostree[52278]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 11 00:14:11 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 11 00:14:11 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 11 00:14:11 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 7848 and the job result is failed.
Sep 11 00:14:18 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 7946.
Sep 11 00:14:18 fedora rpm-ostree[52299]: Reading config file '/etc/rpm-ostreed.conf'
Sep 11 00:14:18 fedora rpm-ostree[52299]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 11 00:14:18 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 11 00:14:18 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 11 00:14:18 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 7946 and the job result is failed.
Sep 11 00:19:02 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 8044.
Sep 11 00:19:02 fedora rpm-ostree[52747]: Reading config file '/etc/rpm-ostreed.conf'
Sep 11 00:19:02 fedora rpm-ostree[52747]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 11 00:19:02 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 11 00:19:02 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 11 00:19:02 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 8044 and the job result is failed.
Sep 11 00:19:11 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 8142.
Sep 11 00:19:11 fedora rpm-ostree[52780]: Reading config file '/etc/rpm-ostreed.conf'
Sep 11 00:19:11 fedora rpm-ostree[52780]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 11 00:19:11 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 11 00:19:11 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 11 00:19:11 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 8142 and the job result is failed.
Sep 11 00:25:46 fedora systemd[1]: Starting rpm-ostreed.service - rpm-ostree System Management Daemon...
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has begun execution
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has begun execution.
β–‘β–‘ 
β–‘β–‘ The job identifier is 8240.
Sep 11 00:25:46 fedora rpm-ostree[53161]: Reading config file '/etc/rpm-ostreed.conf'
Sep 11 00:25:46 fedora rpm-ostree[53161]: error: Couldn't start daemon: Error setting up sysroot: loading sysroot: Unexpected state: /run/ostree-booted found, but no /boot/loader directory
Sep 11 00:25:46 fedora systemd[1]: rpm-ostreed.service: Main process exited, code=exited, status=1/FAILURE
β–‘β–‘ Subject: Unit process exited
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ An ExecStart= process belonging to unit rpm-ostreed.service has exited.
β–‘β–‘ 
β–‘β–‘ The process' exit code is 'exited' and its exit status is 1.
Sep 11 00:25:46 fedora systemd[1]: rpm-ostreed.service: Failed with result 'exit-code'.
β–‘β–‘ Subject: Unit failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ The unit rpm-ostreed.service has entered the 'failed' state with result 'exit-code'.
Sep 11 00:25:46 fedora systemd[1]: Failed to start rpm-ostreed.service - rpm-ostree System Management Daemon.
β–‘β–‘ Subject: A start job for unit rpm-ostreed.service has failed
β–‘β–‘ Defined-By: systemd
β–‘β–‘ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
β–‘β–‘ 
β–‘β–‘ A start job for unit rpm-ostreed.service has finished with a failure.
β–‘β–‘ 
β–‘β–‘ The job identifier is 8240 and the job result is failed.

Is there anything that I am doing wrong, or is this some known issue? πŸ€”

build.sh emojis mis-aligned

image

Mostly a cosmetic issue, but it would nice if we could align these emojis in build.sh's output correctly on Linux terminals.

f37 woes

Thanks to Terra, we now have a working build of Sodalite 37 (currently available in sodalite/f37/<arch>/<variant> branches), but its not without its problems:

  • Calendar (Flatpak) does not open, and errors out with: β€” #57
    (io.elementary.calendar:2): GLib-CRITICAL **: 19:01:42.255: g_strsplit: assertion 'string != NULL' failed
  • Videos (Flatpak) does not open, and errors out with: β€” #57
    (io.elementary.videos:2): GLib-CRITICAL **: 19:04:35.760: g_strsplit: assertion 'string != NULL' failed
  • Indicators are broken β€” We won't bother; it's just more work for us maintain something that's essentially obsolete
    • Is this really worth fixing though? Indicators in Linux are unmaintained and nigh dead, and some apps will stay on the dock when they're running in the background (TDesktop does this, for example)
    • elementaryOS itself also doesn't have indicators, and users have to rely on the same hacks we've employed into Sodalite so far
  • User Accounts Switchboard plug is missing β€” cd1c9fb
    • libgnome-desktop-3 dependency is missing from Terra
    • Slightly difficult to live without this as it causes a UX bug: Power βž” User Accounts Settings... ends up on the main Switchboard panel
  • next version (sodalite/next/<arch>/<variant>) does not build β€” #51

Once these major tasks are rectified, we can consider shipping 37 on the stable version branches.

Applications Menu and Shortcut Overlay have the incorrect key binding

In elementaryOS,

  • ⌘+Space opens the Application Menu
  • ⌘ opens the Shortcut Overlay

Although slightly jarring, this feels even more jarring to someone who was used to elementaryOS. Plus the tooltips make no sense anymore (hovering over Applications tells you the keybind is ⌘+Space, and opening Shortcut Overlay manually also tells you this).

It is probably a good idea to change them back to this, and let the user decide their own preferences: also means the Shortcut Overlay has a use being shipped with the OS.

Incorrect script download location

The URL in the comment at the top of install.sh refers to the old self-hosted git repository. It should point to https://raw.githubusercontent.com/electricduck/sodalite/main/install.sh (as per the README).

Switchboard crashes when opening Universal Access

Upon opening "Universal Access" from Switchboard, the application crashes.

Trace:

(io.elementary.switchboard:2560): GLib-GIO-ERROR **: 22:51:20.322: Settings schema 'io.elementary.desktop.wingpanel.a11y' is not installed
Trace/breakpoint trap (core dumped)

Do something about the horrible logo on the Operating System panel

Under System Settings β†’ System β†’Operating System it shows the logo from the LOGO attribute in /etc/os-release. Currently this points to the Fedora logo which doesn't look correct at all in its current state:

  • It clashes with the default background behind it quite badly.
  • It overflows the circle.
  • It doesn't fit elementary's look.

image

We could either modify the Fedora logo to fit and match, or come up with a new logo?

Calendar and Videos won't open

Both Calendar and Videos (provided from Flatpak) don't open, both throwing this error:

GLib-CRITICAL **: 19:04:35.760: g_strsplit: assertion 'string != NULL' failed

Namarupa/Wingpanel-Indicator-Ayatana

Something that I have always found lacking in elementaryOS - and by extension Pantheon - was Appindicators/Tray Icons

However, I haven't missed these because they look nice, or are a good solution, but rather because many applications relying on them have no better way to run in the background than this (Telegram, Nextcloud, Discord, I think even Slack, you name it)

Thus, I propose either including, or having a way to install Namarupa or Wingpanel-Indicator-Ayatana

They're practically identical, other than the fact that Namarupa puts them not directly on the panel, but rather in an indicator on the panel (a 3-dot indicator). This provides support for legacy tray icons for applications which need them, without looking out of place on the wingpanel, nor taking up too much space

Even though Namarupa has not been updated in a while, it still works just fine on my ElementaryOS installation (6.1), and Wingpanel-indicator-Ayatana also still works

(Note that Wingpanel-Indicator-Ayatana used to be the official implementation until 2017, and it has been community-maintained until 2021)

Camera does not work

Upon launching Camera (io.elementary.camera), we are greeted with this error and the app fails to function.

image

elementary/camera#181 explains this issue is caused by the missing GStreamer "good" package but this is present on Sodalite, so there is either differences with how Ubuntu (and NixOS it seems) packages this or there is another problem.

As a side note, the Flatpak version of the app works perfectly.

Fedora 36-based image is unusable

Rebasing to sodalite/f36/x86_64/base to version 36-22.8 (based on Fedora 36) leads to a whole range of problems, rendering the desktop entirely unusable, as shown in the below photos (which speak for themselves).

Login screen (LightDM)

IMG20220329161912

Desktop

IMG20220329162039

Open applications

IMG20220329162121


It's worth mentioning Fedora Linux 36 is still in beta, and is not due for a stable release untilβ€”at the earliestβ€”19-Apr-2022, so it might be a case of it just fixing itself by the time that comes around. The stable verison of Sodalite is still on 35, and we will only bump it to 36 when any major issues are fixed.

Having on briefly played around with this verison, I am not immediately sure of what the problem is, and I cannot find any related issues on other issue trackers (such as RedHat Bugzilla). Wondering if @decathorpe could shed any light?

Wrong remote

sudo ostree pull sodalite/stable/x86_64/default

Complains about remote not found. ostree remote refs zio shows:

zio:fedora/35/x86_64/sodalite
zio:sodalite/stable/x86_64/base

[Recommendation] Compose Tree without --unified-core flag

Looking at the repository, it appears that rpm-ostree compose was executed with the --unified-core flag.
As it stands, the codepath employed when setting that flag is causing a bug that adds additional folders to the repository. These folders generally do not cause issues when rebasing a Silverblue install, however, they can lead to installer images build via that repository to fail installation.

More on this here: coreos/rpm-ostree#3270

I would recommend that until this issue is addressed, using the legacy codepath (running rpm-ostree compose without --unified-core) would be advisable.

Note: I am currently cobbling together a small script that should create a bootable installer image so Sodalite can be directly installed without the need for rebasing. Am currently building an image using a self composed tree without the unified codepath and will open a merge request with the script used, once I have tested that it works reliably. I very much believe that a Silverblue base plus Pantheon has a lot of potential and actually worked on something similar over the past few weeks. Sodalite goes at such a project from a different direction, with each approach potentially complementing each other, so perhaps we can collaborate on that.

Unable to Lock

Going to Power menu > Lock yields no results and does not lock the screen. No errors seem to appear in the console either. Possibly related to #2?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.