Heya folks! It's Friday, and that means it's time for the weekly Solus roundup!

With this sync, 10% of users on the Stable repository will undergo the Usr-Merge. If you haven't yet read our blog post about Usr-Merge, definitely check it out. A number of users on Unstable have helped us test the process over the last two weeks, and everything is looking good.

KDE Gear has been updated to 24.08.1 this week. The 24.08 series has many changes and fixes. Check out the full announcement for v24.08.0 here. The release post for v24.08.1 is here.

  • k3b, kdevelop, kompare, krdc, and lokalize are now using Qt6/KF6.
  • knotes has been removed from the repository. It has been replaced by Marknote, which will be installed automatically if you had knotes installed.
  • kgraphviewer and massif-visualizer have been added to the repository.

Heaptrack and SubtitleComposer are also now being built with Qt6.

Just in case there weren't enough Plasma-related updates, KDE Frameworks has also been updated to 6.6.0. This release contains many fixes and improvements. The release notes can be found here.

Marble had Plasma integration disabled. It is unlikely that it was actually working in the first place.

Many KF5 and Qt5 libraries have been deprecated as they are no longer used by packages in the repository. A total of 88 packages have been removed.

For our GNOME users, our GNOME version has been updated to 46.5. This release is a boring bugfix release for the 46 series. The full changelog is available here.

We have updated procps-ng to 4.0.4. This package provides tools including ps, free, top, etc.

PulseEffects has been removed from the repository. It no longer builds, and is no longer maintained upstream. Solus uses PipeWire by default these days, anyway.

Onedrive has been updated to 2.5.0. The first sync after installing the update might take a long time due to database changes. Important: OneDrive Client for Linux v2.5.0 introduces significant changes and is not backwards compatible with v2.4.x. Please ensure that you do not use both v2.5.0 and v2.4.x clients with the same Microsoft OneDrive account simultaneously - whether on the same or different systems. If you upgrade to v2.5.0, all your clients must be updated to this version.

LXD has been replaced by Incus. Incus is a fork of LXD in the wake of Cannonical's decision to move LXD away from the Linux Containers umbrella. For more information about Incus and it's history, check out this news post.

PipeWire, Mesa, and the Linux kernels have all been bumped to the latest in their series.

Our Solus Cleanup Crew™️ has been hard at work this week bringing the repository up to current standards:

Most of these tasks are beginner-friendly, and can be a great way to learn Solus packaging. We invite anyone that has the time and inclination to join us!

If you would like to join:

  1. Join the Solus Packaging Room on Matrix
  2. Read and practice our packaging documentation
  3. Submit your first Pull Request. We recommend doing the homepage task
  4. Follow along the review process until your PR gets merged
  5. Continue on contributing!

Security updates

We have one security update this week. Make sure to install updates for the latest vulnerability protections!

General updates

The full list of updated packages can be found here.

That’s all for this week, folks! We'll be here same time, same place next week for another roundup of the news!

Known issues

  • When running eopkg check, linux-current and linux-lts show as broken. These are false positives, and can be disregarded.

How did the sync go for you?

This poll has ended.

    EbonJaeger With this sync, 10% of users on the Stable repository will undergo the Usr-Merge.

    is there an easy way to confirm if one is in that 10%?

    and to the Solus Cleanup CrewTM these 🍻 are on the house.

      brent ls -ahl / | grep lib If you see lib -> usr/lib then you were one of the (lucky?) ones who got it.

        brent and if you want to know beforehand echo $((16#${$(cat /etc/machine-id): -2})) If the resulting number is equal to or greater than the current threshold value of 26 then your system will not be usr-merged yet

          All four VMs plus my main laptop all installed with no drama this week, as usual. But I was really hoping that the KDE hybernate/network issue might have been solved by now, and sadly, it's still not working.

          If it's still broken in the next update, I'll submit a bug report for it, but I rather suspect that it's a KDE problem, not a Solus problem.

          The error page has a message that says something about not being able to get secrets for the network, and I copied the exact wordage, but was then unable to change to here paste it.

          ReillyBrogan lib -> usr/lib

          lucky!

          Staudey and if you want to know beforehand echo $((16#${$(cat /etc/machine-id): -2})) If the resulting number is equal to or greater than the current threshold value of 26 then your system will not be usr-merged yet

          $ echo $((16#${$(cat /etc/machine-id): -2}))
          bash: 16#${$(cat /etc/machine-id): -2}: bad substitution

            Ok having grey hair moment was like brent but I dont see no usr/lib
            something aint clicking lost a cog in my wheel..lol

            Staudey machine_id="$(cat /etc/machine-id)"; echo "$((16#${machine_id: -2}))"

            103 so no usr merge for me. thanks for the new command.

            ReillyBrogan ls -ahl / | grep lib If you see lib -> usr/lib then you were one of the (lucky?) ones who got it. also

            $ ls -ahl / | grep lib
            lrwxrwxrwx 1 root root 7 Sep 10 15:00 lib -> usr/lib
            lrwxrwxrwx 1 root root 9 Sep 10 15:00 lib32 -> usr/lib32
            lrwxrwxrwx 1 root root 9 Sep 10 15:00 lib64 -> usr/lib64

            I got lib > usr/lib so that means "will undergo"

            @Axios little confused but hardly care. it's all good. I think w/ usr/lib in that usrmerge devtracker thread I had to create a file and link to unstable and that's probably why it shows me

              brent I just hate when I get confused..rofl
              It makes sense now.

              brent I got lib > usr/lib so that means "will undergo"

              That should mean "has already undergone".

              Is this the same system you've used in the usr-merge testing issue? Because in that case your system has already been usr-merged anyway as part of that process. (or was that a different brent altogether?)
              edit: Ah, just noticed the "devtracker" remark. So yeah, your system has already been usr-merged.

              Due to the failed usr-merge attempt months prior, I don't think the symlink is necessarily indicative of this new method having selected you as part of the 10%.

              Instead after updating and rebooting, if /var/solus/usr-merge/merge-complete exists your system has completed the new usr-merge attempt.

              If and only if that file is present you can check:

              • ls -l / which should include the following (with different timestamps):
                lrwxrwxrwx   1 root root    7 25 aug 14:52 bin -> usr/bin
                lrwxrwxrwx   1 root root    7 25 aug 14:52 lib -> usr/lib
                lrwxrwxrwx   1 root root    9 25 aug 14:52 lib32 -> usr/lib32
                lrwxrwxrwx   1 root root    9 25 aug 14:52 lib64 -> usr/lib64
                lrwxrwxrwx   1 root root    8 25 aug 14:52 sbin -> usr/sbin
              • /var/solus/usr-merge/orphaned-files should not exist.

              Please note:
              If you had opted into the usr-merge manually as discussed in the blog post, you are not going to notice anything different. There is nothing new for your system to be selected for, it is complete.

                Harvey All I have in that dir is eopkg-Ready and its 0bytes
                Just curious

                  Axios
                  Then you have not been selected.

                  The eopkg-ready file is a marker file, it is empty. Its presence indicates to the usr-merge script that eopkg is up to date enough to attempt the usr-merge without causing problems.

                    Successful update on Plasma on physical machine and VM. VM opted in so usr-merge complete but physical machine still waiting.

                    All good, thanks for the update.

                    Did a test

                    created /etc/sysconfig/usr-merge with USR_MERGE_CHANCE=256 on my stable system and I got merged now.

                    mkl@mkl-solus ~ $ ls -l /
                    insgesamt 60
                    lrwxrwxrwx   1 root root     7 21. Sep 08:52 bin -> usr/bin
                    drwxr-xr-x   2 root root  4096 29. Apr 13:48 boot
                    drwxr-xr-x  20 root root  4380 21. Sep 08:54 dev
                    drwxr-xr-x  58 root root  4096 21. Sep 08:22 etc
                    drwxr-xr-x   3 root root  4096 29. Apr 13:48 home
                    lrwxrwxrwx   1 root root     7 21. Sep 08:52 lib -> usr/lib
                    lrwxrwxrwx   1 root root     9 21. Sep 08:52 lib64 -> usr/lib64
                    drwx------   2 root root 16384  8. Jan 2024  lost+found
                    drwxr-xr-x   2 root root  4096 29. Apr 13:48 media
                    drwxr-xr-x   2 root root  4096 10. Sep 16:40 mnt
                    dr-xr-xr-x 302 root root     0 21. Sep 08:52 proc
                    drwxr-xr-x   6 root root  4096 21. Sep 08:52 root
                    drwxr-xr-x  32 root root   740 21. Sep 08:52 run
                    lrwxrwxrwx   1 root root     8 21. Sep 08:52 sbin -> usr/sbin
                    drwxr-xr-x   2 root root  4096 10. Sep 16:54 snap
                    drwxr-xr-x   2 root root  4096  8. Jan 2024  sof-ipc4-tplg
                    drwxr-xr-x   2 root root  4096  8. Jan 2024  srv
                    dr-xr-xr-x  12 root root     0 21. Sep 08:52 sys
                    drwxrwxrwt  24 root root   620 21. Sep 08:55 tmp
                    drwxr-xr-x   9 root root  4096 10. Sep 16:47 usr
                    drwxr-xr-x  12 root root  4096 10. Sep 16:54 var
                    
                    
                    mkl@mkl-solus ~ $ systemctl status usr-merge --lines=0
                    ● usr-merge.service - Perform the usr-merge
                         Loaded: loaded (/usr/lib/systemd/system/usr-merge.service; disabled; preset: enabled)
                        Drop-In: /usr/lib64/systemd/system/service.d
                                 └─10-timeout-abort.conf
                         Active: active (exited) since Sat 2024-09-21 08:52:54 CEST; 5min ago
                        Process: 617 ExecStart=/usr/lib64/usysconf/usr-merge.sh (code=exited, status=0/SUCCESS)
                       Main PID: 617 (code=exited, status=0/SUCCESS)
                          Tasks: 2 (limit: 18913)
                         Memory: 34.8M
                            CPU: 915ms
                         CGroup: /system.slice/usr-merge.service
                                 ├─619 /usr/bin/bash /usr/lib64/usysconf/usr-merge.sh
                                 └─621 sleep 530
                    
                    
                    mkl@mkl-solus ~ $ systemd-analyze blame | grep usr-merge
                    1.203s usr-merge.service
                    
                    
                    mkl@mkl-solus ~ $ find /var/solus/usr-merge
                    /var/solus/usr-merge
                    /var/solus/usr-merge/eopkg-ready
                    /var/solus/usr-merge/merge-complete
                    
                    
                    mkl@mkl-solus ~ $ ls -l /bin /lib /lib32 /lib64 /sbin
                    ls: Zugriff auf '/lib32' nicht möglich: Datei oder Verzeichnis nicht gefunden
                    lrwxrwxrwx 1 root root 7 21. Sep 08:52 /bin -> usr/bin
                    lrwxrwxrwx 1 root root 7 21. Sep 08:52 /lib -> usr/lib
                    lrwxrwxrwx 1 root root 9 21. Sep 08:52 /lib64 -> usr/lib64
                    lrwxrwxrwx 1 root root 8 21. Sep 08:52 /sbin -> usr/sbin
                    
                    
                    mkl@mkl-solus ~ $

                    Mod edit - Fixed file name needed for manually opting in.