|
Bugzilla – Full Text Bug Listing |
| Summary: | YaST2 sw_single fatal error when trying to install single rpm due to new UI check | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE Tumbleweed | Reporter: | Tejas Guruswamy <masterpatricko> |
| Component: | YaST2 | Assignee: | Stefan Hundhammer <shundhammer> |
| Status: | RESOLVED FIXED | QA Contact: | Jiri Srain <jsrain> |
| Severity: | Normal | ||
| Priority: | P2 - High | CC: | alexinfobag, jshand2013, sb56637, sebix+novell.com |
| Version: | Current | ||
| Target Milestone: | --- | ||
| Hardware: | x86-64 | ||
| OS: | openSUSE Tumbleweed | ||
| URL: | https://trello.com/c/bM1EFCcS | ||
| See Also: | http://bugzilla.opensuse.org/show_bug.cgi?id=1195519 | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: | Relevent section of y2log | ||
|
Description
Tejas Guruswamy
2021-11-12 20:53:12 UTC
Created attachment 853723 [details]
Relevent section of y2log
Full logs from sw_single installing a single rpm attached
*** Bug 1192680 has been marked as a duplicate of this bug. *** This crash seems to affect multiple users. Bumping priority to P2. So this was started with: 2021-11-12 14:49:28 <1> hobbes(9794) [Ruby] bin/y2start(<main>):22 y2base called with ["sw_single", "--arg", "/home/tejas/src/obs/packages/opensuse-welcome-lang-0.1.8-0.noarch.rpm", "qt", "-name", "YaST2", "-icon", "yast"] So in this setup, there don't seem to be any UI plug-ins loaded yet: 2021-11-12 14:49:28 <1> hobbes(9794) [Ruby] yast2/ui_plugin_info.rb(ui_plugins):53 UI plug-ins: [] AFAICS this is called via /usr/share/applications/org.opensuse.yast.Packager.desktop: [Desktop Entry] Encoding=UTF-8 Name=YaST Software ... Exec=/usr/lib/YaST2/bin/sw_single_wrapper %F ... MimeType=application/x-rpm;application/x-redhat-package-manager; So, it turned out that this was caused by an unfortunate mixture of the YaST command line mode and that new UIExtensionChecker class: The CLI mode was initiated by that additional argument (the name of the RPM) on the command line. But in that case, creating the UI YaST component is delayed until the first real UI call; basically, until a window is opened. That other class checks what shared libs: It reads /proc/self/maps for "libyui*" so it can compare if the matching libyui*-pkg is available, and if not, it asks if it should install the corresponding package. But since not even the main part of the UI (libyui-qt or libyui-ncurses) was loaded yet, it didn't find it there, and it tried to build the name of the -pkg plug-in from 'nil' which was what failed. Pull request with a fix: https://github.com/yast/yast-yast2/pull/1204 The fix will arrive with yast2-4.4.22. OBS submit request: https://build.opensuse.org/request/show/931637 *** Bug 1192859 has been marked as a duplicate of this bug. *** |