How to use Libertine container?
-
How should the Libertine container work? Installed it normally, through the menu and the container and the program. For the testing, I decided to install HexChat to communicate on IRC, but as I understand, the program can not connect to the X server. There is an icon in the list of applications menu, but when I start it, it immediately closes. This is what I found in the logs:
$ tail -f ./.cache/upstart/application-legacy-xenial_hexchat_0.0-.log invalid handle: 0x5e884add invalid handle: 0x70a64e2b hybris_gralloc_retain:245: called gralloc method without gralloc loaded Xmir: gralloc.c:245: hybris_gralloc_retain: Assertion `NULL' failed. hexchat: Fatal IO error 11 (Resource temporarily unavailable) on X server :0. pasted: The X11 connection broke (error 1). Did the X11 server die? pasted: The X11 connection broke: I/O error (code 1) XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0" after 8 requests (7 known processed) with 0 events remaining. hybris_gralloc_retain:245: called gralloc method without gralloc loaded Xmir: gralloc.c:245: hybris_gralloc_retain: Assertion `NULL' failed. hexchat: Fatal IO error 11 (Resource temporarily unavailable) on X server :0. pasted: The X11 connection broke (error 1). Did the X11 server die? pasted: The X11 connection broke: I/O error (code 1) XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0" after 8 requests (7 known processed) with 0 events remaining.
-
It looks like the application could not connect to the XServer (XMir?)
In ~/.cache/upstart/unity8.log starting application:[2021-04-05:23:35:04.017] qtmir.applications: Application["xenial_hexchat"]::Application() unity8.log:[2021-04-05:23:35:04.174] qtmir.applications: Application["xenial_hexchat"]::setExemptFromLifecycle(true) unity8.log:[2021-04-05:23:35:04.175] qtmir.sessions: Wakelock acquired "28" unity8.log:[2021-04-05:23:35:04.255] qtmir.mir: SessionAuthorizer::configure_input_is_allowed - this= SessionAuthorizer(0x7b6c17b2 00) pid= 23317 unity8.log:[2021-04-05:23:35:04.256] qtmir.mir: SessionAuthorizer::set_base_input_configuration_is_allowed - this= SessionAuthoriz er(0x7b6c17b200) pid= 23317 unity8.log:[2021-04-05:23:35:04.256] qtmir.mir: SessionAuthorizer::configure_display_is_allowed - this= SessionAuthorizer(0x7b6c17 b200) pid= 23317 unity8.log:[2021-04-05:23:35:04.256] qtmir.mir: SessionAuthorizer::set_base_display_configuration_is_allowed - this= SessionAuthor izer(0x7b6c17b200) pid= 23317 unity8.log:[2021-04-05:23:35:04.256] qtmir.mir: SessionAuthorizer::screencast_is_allowed - this= SessionAuthorizer(0x7b6c17b200) p id= 23317 unity8.log:[2021-04-05:23:35:04.256] qtmir.mir: SessionAuthorizer::prompt_session_is_allowed - this= SessionAuthorizer(0x7b6c17b20 0) pid= 23317 unity8.log:[2021-04-05:23:35:04.258] qtmir.sessions: TaskController::onSessionStarting - sessionName=xenial_hexchat_0.0 unity8.log:[2021-04-05:23:35:04.258] qtmir.applications: Application["xenial_hexchat"]::addSession(session=qtmir::Session(0x382b81 a0)) unity8.log:[2021-04-05:23:35:05.609] qtmir.surfaces: MirSurface[0x384a1f20,"xenial_hexchat"]::MirSurface(type=dialog,state=restore d,size=(564,435),parentSurface=QObject(0x0)) unity8.log:[2021-04-05:23:35:05.610] qtmir.surfaces: MirSurface[0x384a1f20,"xenial_hexchat"]::activate() unity8.log:[2021-04-05:23:35:05.617] qtmir.surfaces: MirSurface[0x384a1f20,"xenial_hexchat"]::registerView(927002320) after=1 unity8.log:[2021-04-05:23:35:05.620] qtmir.surfaces: MirSurface[0x384a1f20,"xenial_hexchat"]::setKeymap("us") unity8.log:[2021-04-05:23:35:05.641] toplevelwindowmodel: prependSurface appId=xenial_hexchat surface=qtmir::MirSurface(0x384a1f20 ), filling out placeholder. after: (index=0,appId=xenial_hexchat,surface=0x384a1f20,id=10) unity8.log:[2021-04-05:23:35:05.642] qtmir.surfaces: MirSurface[0x384a1f20,"xenial_hexchat"]::setFocused(true) unity8.log:[2021-04-05:23:35:05.645] toplevelwindowmodel: setFocusedWindow(Window[0x3752dab0, id=10, MirSurface[0x384a1f20,"HexCha t: Network List"]]) unity8.log:[2021-04-05:23:35:05.647] qtmir.surfaces: MirSurface[0x384a1f20,"xenial_hexchat"]::setLive(false) unity8.log:[2021-04-05:23:35:05.648] qtmir.sessions: TaskController::onSessionStopping - sessionName=xenial_hexchat_0.0 unity8.log:[2021-04-05:23:35:05.648] qtmir.applications: Application["xenial_hexchat"]::setInternalState(state=Stopped) unity8.log:[2021-04-05:23:35:05.662] qtmir.sessions: Wakelock released "28" unity8.log:[2021-04-05:23:35:05.672] qtmir.surfaces: MirSurface[0x384a1f20,"xenial_hexchat"]::unregisterView(927002320) after=0 li ve=false unity8.log:[2021-04-05:23:35:05.682] qtmir.applications: Application["xenial_hexchat"]::~Application() unity8.log:[2021-04-05:23:35:05.685] qtmir.surfaces: MirSurface[0x384a1f20,"-"]::~MirSurface() viewCount=0
-
What device is this on?
-
@dobey Xiaomi Redmi Note 7
-
And another related question, how to remove from the application menus bogus icons, already removed in Libertine applications?! they remain in menu... and there are no asociated files in ~/.local/share/applications/*.desktop
-
I had to use SQLite to remove the bogus icons, very interesting...
cd ~/.cache/unity8 sqlite3 windowstatestorage.sqlite sqlite> delete from geometry where windowId like 'xenial_%'; sqlite> delete from state where windowId like 'xenial_%'; sqlite> save windowstatestorage.sqlite; ^C
-
@markatrafik This has nothing to do with what is shown in the app drawer. You probably simply needed to refresh the drawer, which you can do by pulling down from the top.
-
@dobey said in How to use Libertine container?:
This has nothing to do with what is shown in the app drawer. You probably simply needed to refresh the drawer, which you can do by pulling down from the top.
No, I am not so dumb... Of course I tried, and rebooted the system. When container was already deleted - the icons remained, because there was a failure during the installation inside the container. After the removal of applications and after the removal of the container itself - someone has not cleaned up the SQLite file... and there is no "garbage collctor" for this purpose. It's kind of weird. Some of the applications have .desktop files, and some only appear in SQLite for Unity8.
-
and, still... how do I diagnose and solve the problem with the X server not being available to the container applications? Something like libertine-mir, it says incompatible galloc(), may be LD_PRELOAD something?
-
@markatrafik Well that is coincidence then, because that sqlite file has nothing to do with what is shown in the app drawer.
-
@markatrafik Try to install the
tls-padding
package in the container, withlibertine-container-manager install-package -p tls-padding -i <container_id>
-
ok, I'll try... Maybe the container must be installed from the shell as well? With some other parameters? From the interface is it "chroot"?
-
@dobey said in How to use Libertine container?:
@markatrafik Well that is coincidence then, because that sqlite file has nothing to do with what is shown in the app drawer.
Maybe, but it means that there is some huge delay, so that even if there is no .desktop file and after rebooting, icons of non-existent applications and in non-existent container are somehow displayed in the panel for more than an hour and then disappear at the same moment after editing the file... the probability is small, I'll look at the code. BTW, all such apps have index xenial_*
-
@dobey something changed, but possible not enough...
~/.cache/upstart$ cat application-legacy-xenial_debian-xterm_0.0-.log xterm: cannot load font '-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1' hybris_gralloc_retain:245: called gralloc method without gralloc loaded Xmir: gralloc.c:245: hybris_gralloc_retain: Assertion `NULL' failed. xterm: fatal IO error 104 (Connection reset by peer ) or KillClient on X server ":0" pasted: Could not connect to any X display.
gralloc.c at line 245 assertion NULL... W*F, BTW, application starts, but crashes when accessing the X server because it has errors inside
the same situation: https://paste.ubuntu.com/p/GQ2k5hXmCv/
-
This post is deleted! -
At the moment I have ubports packages installed in my system (also to work with Android HAL?) from 2020-08-27. From ubports_GSI_installer_v10.zip
~$ dpkg -l | grep libandroid | awk '{printf "%s\n", $3}' 0.1.3+ubports3+0~20200827080951.2~1.gbp002f19
now, as far as I see in the repository packages from 2020-11-13. May be it fix the problem:
https://repo.ubports.com/dists/xenial_-_android9_-_gralloc-20201113062738141602671/
If I apt upgrade them, I get a brick... I wrote in another post. I can't install with ubports-installer - errors, brick... tried on different computers. I would like to get an OTA instead of a GSI somehow. But it's kind of a dead end. And I've already setup a lot of things... and I don't know what settings get lost during re-installation and how to return them.