Bug 1202121

Summary: MicroOS Snapshot20220801 kwrite missing KDE-specific features and icons when ran from Toolbox
Product: [openSUSE] openSUSE Distribution Reporter: Jared Hudson <jared.hudson>
Component: MicroOSAssignee: Forgotten User u0-bnvADNc <forgotten_u0-bnvADNc>
Status: NEW --- QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Leap 15.4   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Comparing kwrite in toolbox vs kwrite on MicroOS host
Comparing open-dialog in kwrite in toolbox vs on MicroOS host
Comparing save-dialog in kwrite in toolbox vs on MicroOS host

Description Jared Hudson 2022-08-03 20:06:50 UTC
Created attachment 860587 [details]
Comparing kwrite in toolbox vs kwrite on MicroOS host

I installed MicroOS Snapshot20220801 as a KVM VM and picked the KDE Desktop installation pattern.

kwrite was not installed by default so I went looking for what my options are.

I could run sudo transactional-update pkg install kwrite but that would require a reboot which seems quite extreme just to get an editor.

I referred to the documentation https://en.opensuse.org/Portal:MicroOS/Desktop#Installation:_KDE which recommends flatpak or Toolbox or Distrbox.

I ran toolbox enter. This required downloading several container blobs which could be an issue for air-gapped systems or people with constrained bandwidth. This is a negative compared to traditional Leap or even Tumbleweed ISO which includes most required packaged on the ISO.

I ran sudo zypper ref && sudo zypper dup - No additional packages downloaded.

I ran sudo zypper install adwaita-icon-theme xorg-x11-fonts libX11-xcb1 gsettings-desktop-schemas gdk-pixbuf-query-loaders which required installing 17 packages. (from https://en.opensuse.org/Portal:MicroOS/Desktop#Installation:_KDE)

I ran sudo gdk-pixbuf-query-loaders-64 --update-cache as instructed from https://en.opensuse.org/Portal:MicroOS/Desktop#Installation:_KDE
which produced the error "Failed to create file “/usr/lib64/gdk-pixbuf-2.0/2.10.0/loaders.cache.3JKAQ1”: No such file or directory"

/usr/lib64/gdk-pixbuf-2.0 is not included in the "toolbox enter" container.

I then ran sudo zypper -n in kwrite which wanted to install 177 new packages. All of those packages were already installed on my MicroOS host. Re-downloading these packages wastes disk space and bandwidth.

Once done I ran kwrite. It doesn't look or behave like a normal KDE Kwrite does from Leap, Tumbleweed or even if I had installed Kwrite in the MicroOS host and rebooted. Here's a list of differences:

There are no icons for menu items. I'll attach a screenshot illustrating the difference between toolbox vs MicroOS host version. I did eventually install on the host and reboot in order to write this bug report and compare/contrast differences.

The open dialog is missing KDE features. I'll attach screenshot to illustrate. On the left of the Open Dialog there's only Computer and jhhudso, it looks like a KDE application from several years ago. Whereas a modern KDE application has a set of "Places" like Home, Desktop, Documents, Downloads. It also normally has a set of  Devices such as your disk, USB devices plugged, etc. The toolbox version of kwrite is missing all of this. I have no way to mount or unmount a USB stick via the Open dialog of the toolbox kwrite.

The Kwrite Settings/Configure menu is missing icons above the words Appearance, Color Themes, Editing and Open/Save.

The Save/Save As dialog is missing the KDE ability to save to a Network share. When Kwrite is run from the host instead of toolbox, it has the ability to utilize Network resources such as Bluetooth, MTP Devices and Shared Folders (SMB). You can save to a URL in the host-based version such as smb://192.168.1.7/username/ but that functionality is missing from toolbox version.

The toolbox version uses a lot more memory than the host based version. As reported by pmap -X, the toolbox version uses 133 MiB (PSS) out of 138 MiB (RSS). Whereas the host version, uses only 33 MiB (PSS) out of 122 MiB (RSS). Most libraries kwrite depends on are already loaded in memory.

To try flatpak I ran
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak search kwrite
flatpak install kwrite
It gives the error:
F: An error was encountered searching remote ‘flathub’ for ‘kwrite’: Unable to load summary from remote flathub: GPG verification enabled, but no summary found (check that the configured URL in remote config is correct)
Found ref ‘app/org.kde.kwrite/x86_64/stable’ in remote ‘flathub’ (system).
Use this ref? [Y/n]: y

After installing I ran with flatpak run org.kde.kwrite.
Visually the flatpak version looks the same as the host based version which is good. There are icons, theme is correct, Settings/Configure has icons as well.

The Host and Flatpak versions are not able to open the Kwrite Handbook, Report Bug Wizard or Donate (options from Help) without being told who handles https. The toolbox version doesn't give a pop-up option of who handles https and only prints to the console "Unable to detect a web browser to launch 'https://docs.kde.org.....'

The flatpak version of kwrite uses more memory than the host similar to this issue in the Toolbox. As reported by pmap -X, the flatpak version uses 137 MiB (PSS) out of 218 MiB (RSS).
Comment 1 Jared Hudson 2022-08-03 20:07:35 UTC
Created attachment 860588 [details]
Comparing open-dialog in kwrite in toolbox vs on MicroOS host
Comment 2 Jared Hudson 2022-08-03 20:09:37 UTC
Created attachment 860589 [details]
Comparing save-dialog in kwrite in toolbox vs on MicroOS host