openSUSE 15.3 to 15.4 upgrade notes

In a previous article I have shown how to upgrade a distro using zypper and the recently released plugin zypper-upgradedistro, but some issues might always happen for a specific version, that’s why I collected all the changes and the tweaks I applied switching from openSUSE Leap 15.3 to 15.4 during and after the installation process.

Repository upgrade

This time interpolating the repository’s URLs hasn’t been enough to upgrade them correctly, indeed the path has been slightly changed for many of them.

The good news is that the zypper-upgraderepo application, recalled by zypper-upgradedistro, correctly discovered the new URL for all the affected repositories, suggesting the right alternative.

What the zypper-upgradedistro script did, is export in an ini file all the enabled and problematic repositories, printing a suggested_url field for each of them, which, after a careful inspection, must be manually copied in the url field left empty.

[repository_10]
name=openSUSE_Leap_15.4_Devel:Languages:Ruby:Extensions
alias=openSUSE_Leap_15.4_Devel:Languages:Ruby:Extensions
old_url=http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/openSUSE_Leap_15.3/
# The interpolated URL is invalid, try overriding it with the one suggested
# in the fields below or find it manually starting from the old_url.
# The alternatives are:
# 1. Waiting for a repository upgrade;
# 2. Change the provider for the related installed packages;
# 3. Disable the repository by putting the enabled status to 'No'.
#
url=http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/15.4/
priority=99
enabled=Yes
status=Not Found
hint=Override with this one
suggested_url=http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/15.4/

Having a lot of enabled repositories with that problem, this procedure has been pretty boring, that’s why I am planning to introduce a new switch (perhaps –accept-suggestions) to automatically accepts all the suggested_url without manual intervention.

Package upgrade

After fixing all the failing repo URLs references I had some complaints about four packages:

  • the gimp-plugin-resynthesizer from the Graphics repository required the gimp-plugin-python package;
  • the rubygem-qml package couldn’t find a Qt5 library;
  • util-linux was obsolete;
  • texlive-graphics didn’t satisfy all the dependencies.

For all of them I accepted to install the packages anyway, just to don’t break other dependencies.

As I already said, would be better to keep enabled only the main repositories and reinstall later all the other third-part packages, but daring to ignore that recommendation must face similar issues, which is fine for me.

Indeed, in a second instance, I would go through all of them and see, one by one, whether or not is possible to fix them or uninstall these packages completely.

I had to download more than 1500 packages to upgrade my system and it’s quite common that during the download process some of them might be updated and get replaced by a new version.

In that case, re-running a zypper dup --download-only again or using zypper-upgradedistro with the --resume switch, fixes the issue.

After the first restart:

I always suggest running an update after the first restart which might solve some issues:

$ sudo zypper update

Then analyze the errors that occurred at the startup using the commands:

$ sudo dmesg
$ systemctl --failed

No errors have been found at boot time in this upgrade.

Tweaking the system

The next step is erasing any orphaned package detected by zypper.

$ zypper pa --orphaned

According to my configuration, this is the list of packages I removed without further problems:

  • docker-credential-secretservice, docker-machine, python2-docker, python2-docker-pycreds
  • kim
  • libbind9-1600, libdns1605;
  • libgit2-28, libgladeui-2-6, libGLEW2_1;
  • libgpac10, libhogweed4, libimobiledevice6;
  • libirs1601, libisc1606, libisccc1600, libisccfg1600
  • libmediacheck5
  • libmypaint-1_6-1
  • libnettle6
  • libns1604
  • libopencv3_3
  • libplist3
  • libpoppler89
  • libraw16
  • libsgutils2-1_43-2
  • libusbmuxd4
  • libyui15, libyui-ncurses15, libyui-qt15
  • python2-backports, python2-backports.ssl_match_hostname
  • python2-chardet, python2-idna, python2-ipaddr, python2-jsonschema, python2-M2Crypto, python2-Pillow, python2-Pillow-tk, python2-protobuf, python2-py, python2-pycurl, python2-requests, python2-rpm, python2-urllib3, python2-websocket-client, python-gobject2, python-tk, python-urlgrabber, python2-appdirs, python2-asn1crypto, python2-bcrypt, python2-cairo, python2-certifi, python2-cffi, python2-cryptography, python2-cssselect, python2-dbus-python, python2-docopt, python2-gobject, python2-lxml, python2-olefile, python2-packaging, python2-paramiko, python2-pyasn1, python2-pycparser, python2-PyNaCl, python2-pyOpenSSL, python2-pyparsing, python2-PySocks, python2-setuptools, python2-six, python2-typing, python-enum34, python-functools32, python-ipaddress, python-solv.

These are the packages automatically selected with the update:

  • libvdpau_nouveau;
  • libvulkan_intel;
  • Mesa-vulkan-device-select.

And looking to the unneeded:

$ zypper pa --unneded

I also removed:

  • libboost_chrono1_66_0, libboost_locale1_66_0
  • clang9, clang11;
  • accounts-qml-module;
  • libImath-2_2-23, libIexMath-2_2-23;
  • libixion-0_16-0 liborcus-0_16-0;
  • libMagick++-7_Q16HDRI4;
  • libstdc++6-32bit;
  • fontconfig-32bit;
  • sane-saned;

Application issues

This follows some issues I faced after upgrading to openSUSE 15.4, other issues I solved in previous upgrades are available in the tweaks section of this website.

Couldn’t enter folder tags

Browsing any folder with Dolphin made this error dialog appear.

To fix it I just disabled the File Search option in the systemsettings menu as below:

Although I left it disabled, re-enabling it shouldn’t create further issues.

Media couldn’t be loaded

In a few words what happened is an automatic vendor change because some dependencies were missing.

I already did talk more extensively about this issue in a previous article where I show the needed steps to migrate as many packages as possible from the current repository to the wanted one.

If Packman is already configured in your system, this is the command to type in order to change the vendor of many packages as possible to the Packman repo:

$ sudo zypper dup --from Packman --allow-vendor-change

The key here is the --from switch followed by the repository name or number. Keep in mind that in your repository list the Packman repository name might be different.

Qmmp

If you installed this application from Packman you would notice that the mp3 files don’t work as expected.

I suggest removing qmmp from the system and replacing qmmp and libqmmp2 with the version at the OSS repository:

http://download.opensuse.org/distribution/leap/15.4/repo/oss/

Using the command line we have:

$ sudo zypper install --force --repo OSS qmmp libqmmp2

As already said be aware to replace the repository name or number, following the --repo switch, with the one used in your system.

The --force switch is needed when the system doesn’t want to perform a possible downgrade of the package.

Inkscape issues

The Graphics repository contains the most updated version of Inkscape, unfortunately, it doesn’t work very well:

  • maybe because of the Python v2 end of support the plugins aren’t loaded correctly and they crash every time;
  • it misses the reference to the library libinkscape_base.so.

On the other hand, version 1.0.1 installed from the OSS repository works perfectly, so I highly suggest to switch to this repository:

$ sudo zypper install --force --repo OSS inkscape

Just remember to replace OSS with the name or the number of the OSS repository on your system.

GTK styles messed up

The GTK applications installed come with a messed up interface, to overcome this mistake I went to the Systemsettings application, and at the Application Style I reset the GTK theme just changing it and applying it again.

A look around

openSUSE Leap 15.4 arrived with KDE v5.90 and Plasma v5.24, the packages coming from the older KDE 4 have been completely removed.

This version introduces a new style for the OSD dialogs which are smaller than before, the default theme looks more flat, or more minimal, Material alike to use a common term.

The animation is softer by default, unfortunately, the cube has been removed in this version.

Konsole terminal introduced a toolbar with buttons for copy, paste, search, windows splitting, and new sessions. Of course, these buttons are customizable. The menu contains a new item dedicated to the plugins. The only available shows an SSH Manager interface which store the needed data to deploy SSH sessions quickly. The whole menu can hide and show using the combination of the <Ctrl + Shift + M> keys.

The Okular document reader changed its interface too: the sidebar hides completely with the <F7> key, freeing the left side which was occupied by a vertical button toolbar.

In the Kate text editor I noticed a larger line-numbers bar, the tabs occupy the whole horizontal space available, and to navigate among the opened file through the button on the side, a Quick Open Search floating panel is opened.

The Spectacle application introduced the annotations directly from the app, text, draws and emojis can be applied quickly on the portion of the screen capture.

Kolourpaint can capture a screenshot with a certain delay too and interface directly with a scanner.

Plasma Calendar has interesting news:

  • there are plugins to keep informed about astronomical events or based on the selected countries
  • can select a different watch from the contextual menu (Show alternatives)
  • from the contextual menu can copy to the clipboard the current date and time in one of the available formats.

Gwenview allows changing the background among the auto, light, neutral, and dark values to better visualize an image

The number of items served by Discover looks close to the Kde store website, among the news now includes also the Service menus under the Application Addons submenu.

Last but not least the Audio volume can now be changed from app to app in an independent manner:

Final thoughts

This release wants to break some legacy with the past, Python v2 and KDE v4 are mostly, if not completely excluded from the system. The fact that the latest version of Inkscape doesn’t work properly makes me think that will requires some more time before being perfectly working.

More info about openSUSE Leap 15.4 is available at the URLs:


Creative Commons License This work is licensed under a Creative Commons Attribution-NoCommercial-ShareAlike 4.0 International License


Leave a Comment