Hello,
I'm experiencing an issue using Sculpt OS 20.08.
Adding a config section to app launchers prevents certain apps from working: qt5-textedit, falkon, system shell. The component tree shows them as a new component, but no window is opened. The manual says that a <config> node within a launcher overrides the one provided by the package. It seems like overriding <config> here disables some important settings and prevents the apps from running properly. How to extend the default config or replace just a few parts instead of completely overriding it?
For qt5-textedit with my custom config section, I get log messages like: "Warning: raise: raise not implemented" "child "text_editor" exited with exit value 1"
If I try to do the same by using the "+" menu and adding <config> to a running component (e.g. qt5-textedit) in /config/managed/deploy and restarting the component, it doesn't prevent the app from running. However, adding <config> <clipboard="yes"/> </config> doesn't allow pasting in qt5-textedit and falkon. Neither does <config> <paste="yes"/> </config> in system shell. Pasting into qt5-textedit, falkon and system shell doesn't work with my config and the log shows this: "Error: Invalid clipboard XML syntax"
On the other hand, copying works normally, and I can copy text from qt5-textedit, falkon and system shell into an Inspect window. Both copy and paste work inside an Inspect window.
What would be the proper configuration for the launchers?
Here are the relevant launchers: <launcher pkg="genodelabs/pkg/qt5_textedit/2020-09-18"> <config> <clipboard="yes"/> </config> <route> <service name="File_system"> <child name="ram_fs"/> </service> <service name="Gui"> <child name="themed_wm"/> </service> <service name="Report" label="shape"> <child name="themed_wm"/> </service> <service name="Report" label="clipboard"> <child name="themed_wm"/> </service> <service name="ROM" label_last="clipboard"> <parent/> </service> </route> </launcher>
<launcher pkg="cproc/pkg/falkon/2020-10-30"> <route> <service name="File_system" label="config"> <child name="config"/> </service> <service name="File_system" label="downloads"> <child name="ahci-1.fs"/> </service> <service name="Gui"> <child name="themed_wm"/> </service> <service name="Nic"> <child name="nic_router"/> </service> <service name="Report" label="falkon -> shape"> <child name="themed_wm"/> </service> <service name="Report" label="clipboard"> <child name="themed_wm"/> </service> <service name="ROM" label_last="clipboard"> <parent/> </service> <service name="Rtc"> <parent/> </service> </route> <config> <clipboard="yes"/> </config> </launcher>
<launcher pkg="genodelabs/pkg/system_shell/2020-09-18"> <route> <service name="Gui"> <child name="themed_wm"/> </service> <service name="File_system" label="config"> <child name="config"/> </service> <service name="File_system" label="report"> <parent label="report"/> </service> <service name="File_system" label="target"> <child name="ram_fs"/> </service> <service name="File_system" label="fonts"> <child name="fonts_fs"/> </service> <service name="ROM" label="vimrc"> <parent label="config -> vimrc"/> </service> <service name="ROM" label="clipboard"> <child name="themed_wm"/> </service> <service name="Report" label_last="clipboard"> <parent/> </service> <service name="RM"> <parent/> </service> </route> <config> <copy="yes"/> <paste="yes"/> </config> </launcher>
Best regards, Dima Sokolov
Hi Dima,
It seems like overriding <config> here disables some important settings and prevents the apps from running properly. How to extend thedefault config or replace just a few parts instead of completely overriding it?> ... However, adding <config> <clipboard="yes"/> </config> doesn't allow pasting in qt5-textedit and falkon.
I guess, (part of) the problem is the malformed XML. It should be:
<config clipboard="yes"> ... </config>
Since this pattern occurs multiple times in your email, I wonder what have you taken as original reference for this snippet?
Please note that equipping any of the mentioned components with an almost empty <config> is unlikely to work. The config usually sets up the VFS namespace for the component and configures the libc. If those parts are left out, the component is not able to work.
For reference, a valid configuration for qt5_textedit looks like [1].
[1] https://github.com/genodelabs/genode/blob/master/repos/libports/recipes/raw/...
On Sculpt, you can find it at /depot/genodelabs/raw/qt5_textedit/<version>/textedit.config once you have installed the qt5_textedit package. That's useful for copying the content to your launcher.
Cheers Norman