Upgrading to Plasma 6

Hello All!

It’s not support question, but I don’t know which another forum category for that. Please move this topic to appropriate category.

As user of OpenMandriva ROME with system installed long time ago I didn’t want to reinstall it for upgrade to Plasma 6. There must be another way. We use Linux, after all. After some experiments I getted this list of things for upgrade process.

-1. Prepare your system: make backups and execute dnf dup --allowerasing to get fully updated system.

Because packages of version 5 conflicting on file level with packages for version 6 we can’t just install task-plasma6 we must prepare list of conflicting packages first.
There two ways: using zypper or dnf. On my installation it give some results, but zypper output is more understandable for me.

Zypper way:

  1. Exec zypper to downloading packages:
    zypper install -d task-plasma6

  2. zypper -x install task-plasma6 | tee zypper.xml – for getting list conflicting packages. Say ‘n’ when ask to rewrite conflicted files.

  3. grep -E -o '<rhs>.*</rhs>' ./zypper.xml | grep -E -o '<name>(.*)</name>' | sort -u | sed 's/<\/*name>//g' | tr '\n' ' ' > dnf-commands.txt – now we have all conflicting packages in file


OR

DNF way:


  1. Downloading packages and getting list of conflicts:
    dnf install task-plasma6 plasma6-dolphin plasma6-systemsettings --allowerasing 2>dnf-conflicts.txt

  2. Getting list of conflicted packages:
    grep -E -o 'from package.*' ./dnf-conflicts.txt | sort -u | sed 's/from package //g'| tr '\n' ' ' > dnf-commands.txt


  1. After that we now have list of package with conflicting files. Now we must prepare file for dnf shell to remove old and install new packages in one transaction:
    Open dnf-commands.txt with editor and prepend line of package list with remove. Then on next line add next: install task-plasma6 plasma6-dolphin plasma6-systemsettings
    You need plasma6-dolphin and plasma6-systemsettings added to manually installed packages because they surprisingly is not a part of task-plasma6 metapackage.

  2. dnf shell dnf-commands.txt
    dnf may start complaining on more conflicting packages. Then add them to remove list and add their plasma6 counterparts to install list. To example: gwenview and plasma6-gwenview.

  3. After sucessfull upgrade and reboot you get text login because new SDDM is not enabled.
    Enable it by run systemctl enable sddm & systemctl start sddm.

Also you can get partially broken KDE because old panel from Plasma5 is gone, just add new.
If you use OpenMandriva Panel your good.

And then your installation will need some manual tuning, mostly to replace old KDE’s packages to new. For me best way to do it is using dnf swap command.

Hope after all that manipulations your installation is not broken. :slight_smile:

2 Likes

Thanks @aunoor for the post on this important topic. I will be looking at your post as we work on the transition to Plasma6.

Currently the OM contributor group is hard at work on the next release of ROME which will have both Plasma5 and Plasma6 packages and ISOs. Soon after we will have the next Rock release also with P5 and P6. After that we begin work on the complete transition to Plasma6. We will at that time be removing Plasma5 packages from Cooker repositories and in Cooker working to make the next ROME and Rock upgrades as trouble free as possible. The usual work flow is:

Cooker>ROME>Rock

Personally I can not wait for us to get rid of Plasma5. Not because I do not like it but because, IMO, right now we have to much to maintain and test.

Of course we never have enough testers but that is a separate issue.

My hope is that when we do go to all Plasma6 the user will just do a normal distro-sync or dsync like:

sudo dnf --refresh dsync --allowerasing
sudo dnf autoremove

Also where some Linux distros are offering P6 only with Wayland OM is offering P6 with Wayland and X11. We believe this is an issue of responsibility to users with older hardware. It does add to the workload in package building and our testing. For the same reason, to benefit users with older hardware, we have attempted an increase in focus on the LXQt desktop. I believe our LXQt is substantially better than it was a year ago. However I am a biased observer.

Note: We reccommend that Cooker and ROME users use dnf dsync to upgrade their systems rather than dnf up. This is because of frequent changes to distro-release-repos-pkgprefs. dnf dsync reads that and upgrades the system accordingly whereas dnf up simply upgrades to what it thinks is the numerically highest package version. This matters. Rock, by design, almost never sees any changes to distro-release-repos-pkgprefs.

@aunoor Hello,
I will test the dnf procedure.
Thank you.

My test feedback.
Suggesting slight changes, and comments:

For ROME and cooker we use distro-sync

sudo dnf clean all;dnf clean all;dnf repolist
sudo dnf --refresh --allowerasing distro-sync 2>&1 | tee dsync.log

also run
sudo dnf remove om-feeling-like systemd-kcm
as om-feeling-like intended for Plasma5 needs some modifications for Plasma6, and systemd-kcm is not available anymore.

,
Got the conflicts list as you described above, and added some packages to the lists.

Here is the content of my file:
(expand by click on the little arrow)

Riepilogo
remove baloo-5.116.0-2.x86_64 baloo-widgets-24.02.0-2.x86_64 bluedevil-5.27.11-2.x86_64 breeze-5.27.11-2.x86_64 breeze-gtk-5.27.11-2.x86_64 breeze-icons-5.116.0-1.noarch discover-5.27.11-4.x86_64 discover-backend-flatpak-5.27.11-4.x86_64 discover-backend-packagekit-5.27.11-4.x86_64 distro-release-desktop-Plasma-24.90-16.noarch dolphin-1:23.08.5-2.x86_64 drkonqi-5.27.11-2.x86_64 kaccounts-integration-23.08.5-2.x86_64 kactivitymanagerd-5.27.11-2.x86_64 kde-cli-tools-5.27.11-2.x86_64 kdeplasma-addons-5.27.11-2.x86_64 kdialog-1:23.08.4-1.x86_64 kinfocenter-5.27.11-3.x86_64 kmenuedit-5.27.11-1.x86_64 konsole-1:23.08.5-3.x86_64 kscreen-5.27.11-2.x86_64 kscreenlocker-5.27.11-2.x86_64 ksshaskpass-5.27.11-1.x86_64 kuserfeedback-1.3.0-1.x86_64 kwin-5.27.11-2.x86_64 kwin-x11-5.27.11-2.x86_64 lib64kdecorations2_5-5.27.11-1.x86_64 lib64keyring-kwallet16-23.08.5-1.x86_64 libkscreen-5.27.11-2.x86_64 libksysguard-5.27.11-2.x86_64 milou-5.27.11-1.x86_64 oxygen-sounds-5.27.11-1.noarch plasma-browser-integration-5.27.11-2.x86_64 plasma-desktop-5.27.11-2.x86_64 plasma-nm-5.27.11-2.x86_64 plasma-pa-5.27.11-2.x86_64 plasma-systemmonitor-5.27.11-1.x86_64 plasma-vault-5.27.11-2.x86_64 plasma-workspace-5.27.11-5.x86_64 plasma-workspace-x11-5.27.11-5.x86_64 polkit-kde-agent-1-5.27.11-1.x86_64 powerdevil-5.27.11-2.x86_64 systemsettings-5.27.11-2.x86_64 lib64KF5Baloo5-5.116.0-2.x86_64 dolphin-plugins-1:23.08.5-2.x86_64 lib64kaccounts-23.08.5-2.x86_64 kde-gtk-config-5.27.11-2.x86_64 yakuake-23.08.5-1.x86_64 kleopatra-23.08.5-2.x86_64 lib64KF5Screen-5.27.11-2.x86_64 purpose-5.116.0-2.x86_64 kamoso zeroconf-ioslave-23.08.5-2.x86_64 kate gwenview xdg-desktop-portal-kde kwrite spectacle kio-gdrive skanlite kaccounts-providers kaccounts-integration
--best --allowerasing swap lib64KF5KIO5 task-plasma6
--best --allowerasing install task-plasma6 plasma6-dolphin plasma6-systemsettings lib64KF6Baloo lib64kaccounts6 plasma6-kde-cli-tools plasma6-kleopatra plasma6-yakuake lib64KF6Screen plasma6-kate plasma6-gwenview plasma6-workspace plasma6-workspace-x11 plasma6-kwrite plasma6-spectacle plasma6-kio-gdrive plasma6-skanlite plasma6-kaccounts-providers

There will be a problem when you run transaction from inside the desktop because you will get the screen black (due to sddm upgrade) so I’d suggest to run commands after logout in virtual terminal.
While there you also can enable and start the new sddm, or you can do it after reboot.

I found my desktop like this, but easy to fix

Logout/Login

,
Some more packages to install (YMMV):

kf6-oxygen-icons
lib64Qt6WlShellIntegration
plasma6-ark
plasma6-dolphin-plugins
plasma6-ffmpegthumbs
plasma6-flatpak-kcm
plasma6-kdegraphics-thumbnailers
plasma6-kdepim-runtime
plasma6-kio-admin
plasma6-kio-extras
plasma6-kio-zeroconf
plasma6-ksystemstats
plasma6-okular
plasma6-oxygen
plasma6-plymouth-kcm
sound-theme-ocean
1 Like

Thanks for additional package list.

And what wrong with dup? This is just alias for dystro-sync defined in /etc/dnf/aliases.d/zypper.conf which installed by dnf-data.noarch package…

Nothing if dup = distro-sync :slight_smile:

Never noticed tbh, I did learn something today.

Many thanks @aunoor , I also do not like to reinstall.
I followed your approach and everything went smoothly (obvious with some adjustments).
And many thanks also to @rugyada for trying… and for additional files.
Now I am on Plasma6 without reinstallation (on my working machine).

1 Like

While using a different distro at the time, I found it easier to boot up into runlevel 3 and perform the Plasma 5 → 6 upgrade (with all other packages) that way.

Upgrading 5 → 6 while logged into the GUI desktop, caused problems. :angry: