I am unable to open Software Management from the Yast2 ui.

Opening from the terminal, following su - I can see these errors:

penguin:\~ # yast2
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root
Run command: /sbin/yast2 sw_single 
terminate called after throwing an instance of 'YUIPluginExceptio
what(): Couldn't load plug-in q
/sbin/yast2: line 455: 25386 Aborted (core dumped) $ybindir/y2start $module "$@" "$SELECTED_GUI" $Y2_GEOMETRY $Y2UI_ARGS

And attempting to use the ncurses interface, with sudo yast2, after trying to open the Software Manager I see a few problems:

Couldn't load plug-in ncurses-pkg Check the log file!


Error Internal error. Please report a bug report with logs. Run save_y2logs to get complete logs. Details: Opening package selector failed. Caller: /usr/share/YaST2/modules/PackagesUI.rb:316:in \RunPackageSelector'

But note:

$ _ zypper in libyui-ncurses-pkg8
Loading repository data...
Reading installed packages...
'libyui-ncurses-pkg8' is already installed.
No update candidate for 'libyui-ncurses-pkg8-'. The highest available version is already installed.
Resolving package dependencies...

Nothing to do.


_ zypper se libyui-ncurses                                                                                                                    
Loading repository data...
Reading installed packages...

S  | Name                     | Summary                                                   | Type
   | libyui-ncurses-devel     | Libyui-ncurses header files                               | package
   | libyui-ncurses-doc       | Libyui-ncurses documentation                              | package
   | libyui-ncurses-pkg       | Libyui - yast2 package selector widget for the ncurses UI | srcpackage
   | libyui-ncurses-pkg-devel | Libyui-ncurses-pkg header files                           | package
   | libyui-ncurses-pkg-doc   | Libyui-ncurses-pkg documentation                          | package
   | libyui-ncurses-pkg-doc   | Libyui-ncurses-pkg documentation                          | srcpackage
i+ | libyui-ncurses-pkg8      | Libyui - yast2 package selector widget for the ncurses UI | package
   | libyui-ncurses-pkg9      | Libyui - yast2 package selector widget for the ncurses UI | package
   | libyui-ncurses-tools     | Libyui-ncurses tools                                      | package
i+ | libyui-ncurses8          | Libyui - Character Based User Interface                   | package
i  | libyui-ncurses9          | Libyui - Character Based User Interface                   | package

The tarball that is created when running save_y2logs has a lot of files in it. I'm not sure how to make sense of them

For info:

$ _ zypper ls
# | Alias | Name | Enabled | GPG Check | Refresh | Type
1 | http-download.opensuse.org-17cfaabf | openSUSE:Factory | Yes | (r ) Yes | Yes | rpm-md
2 | openSUSE-Leap-15.0-1 | openSUSE-Leap-15.0-1 | Yes | (r ) Yes | Yes | rpm-md
3 | packman | packman | Yes | (r ) Yes | Yes | rpm-md
4 | repo-debug | openSUSE-Leap-15.0-Debug | No | ---- | ---- | NONE
5 | repo-debug-non-oss | openSUSE-Leap-15.0-Debug-Non-Oss | No | ---- | ---- | NONE
6 | repo-debug-update | openSUSE-Leap-15.0-Update-Debug | No | ---- | ---- | NONE
7 | repo-debug-update-non-oss | openSUSE-Leap-15.0-Update-Debug-Non-Oss | No | ---- | ---- | NONE
8 | repo-non-oss | openSUSE-Leap-15.0-Non-Oss | Yes | (r ) Yes | Yes | rpm-md
9 | repo-source | openSUSE-Leap-15.0-Source | No | ---- | ---- | NONE
10 | repo-source-non-oss | openSUSE-Leap-15.0-Source-Non-Oss | No | ---- | ---- | NONE
11 | repo-update | openSUSE-Leap-15.0-Update | Yes | (r ) Yes | Yes | rpm-md
12 | repo-update-non-oss | openSUSE-Leap-15.0-Update-Non-Oss | Yes | (r ) Yes | Yes | rpm-md

I have run zypper clean, zypper ref, zypper up


So, the openSUSE:Factory repo is actually a Tumbleweed (Not Leap) repo, and when updating packages, I ended up in some mixed state between the two distributions, which caused many things to be broken. I'm unsure how I got into this state. But there you have it.

The options at this point were either to remove the Factory repo and zypper dup to attempt to move back onto Leap (this did not work), rollback using snapper (this did not work), or upgrade to Tumbleweed, which seems to have resolved my issues. The only remaining options would be a full re-install of Leap.

The upgrade was pretty easy, following these docs: https://en.opensuse.org/openSUSE:Tumbleweed_upgrade

Simply just:

mkdir /etc/zypp/repos.d/old
mv /etc/zypp/repos.d/*.repo /etc/zypp/repos.d/old 

to remove and back up the old mess of repos I was on

zypper ar -f -c http://download.opensuse.org/tumbleweed/repo/oss repo-oss
zypper ar -f -c http://download.opensuse.org/tumbleweed/repo/non-oss repo-non-oss
zypper ar -f -c http://download.opensuse.org/tumbleweed/repo/debug repo-debug
zypper ar -f -c http://download.opensuse.org/update/tumbleweed/ repo-update

to add the correct Tumbleweed repos

zypper dup

to upgrade. As always: back up before a distribution upgrade. But I didn't encounter any immediate or obvious issues with data loss.


Although the OP was able to resolve this and other problems with a system upgrade, a more targeted fix would be to investigate the y2log (which is also copied into the archive mentioned in the question):

sudo cat /var/log/YaST2/y2log

Based on the information given in the question, for the OP this would have almost certainly revealed that Software Management was looking for YUI 9 when only YUI 8 was installed. That problem could be fixed by upgrading the appropriate packages from the command line:

sudo zypper install libyui-qt9 libyui-qt-pkg9

A similar fix would help with ncurses for anyone wanting to work with a TUI.

  • Interesting. Can you clarify how you reached this conclusion? – fixer1234 Jun 25 at 20:24
  • @fixer1234 I am merely reporting the fix for me to a problem with matching symptoms. Is that what you are asking? – ςερτυθιοπ Jun 25 at 21:25
  • OK. The answer seemed to suggest that you were pretty sure the OP's problem had the same cause, so I thought you might have determined that from the information in the question, and those details might help another user identify the problem. – fixer1234 Jun 25 at 21:59
  • 1
    @fixer1234 Oh I see. I am pretty sure on account of "what(): Couldn't load plug-in q" appearing in the question, which is a cutoff version of the error message that pointed me at libyui-qt9. – ςερτυθιοπ Jun 25 at 22:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.