The context is more or less as follows:

I run Distro Foo as my main driver. Inside that I have also set up a few chroots or schroots with Distro Bar, Distro Baz, and an older (or newer) version of Distro Foo, all same arch, oriented for some specific tasks such as devel work. (These other chroots could also be LXC containers, or Virtualbox VMs, or different machines on the network, the point is the same)

On the "real" system I have an extra applications.d installation with some runtimes and applications:

[Installation "extra"]
DisplayName=Extra Installation

I find would be nice to have available from the other "machines" as well. But I would not like to spend the extra space for each, in particular the runtimes that can get to about half a Gig each, without their own locales and sub-dependencies - and thus, I would not want to spare that extra room and I/O if the guest machines were actually chroots or virtual machines that already have access to the host filesystem in the first place.

My first approach was with a schroot, was to simply install flatpak inside. I would add the same remote (flathub in this case) and then add the host location of the flatpaks as the mount point to the guest:

/usr/local/flatpak  /usr/local/flatpak  none ro,bind 0 0

And then add the same installations.d to the guest.

This works when listing flatpaks from the guest:

user@zuperhost:~$ schroot -c devel -u root 
W: Failed to change to directory ‘/home/user’
W: Falling back to directory ‘/root’
(devel)root@zuperhost:~# flatpak list
Description                                              Application           Version Branch Arch   Origin  Installation
default                                                  ?.Platform.GL.default         19.08  x86_64 flathub system
Intel                                                    ?Platform.VAAPI.Intel         19.08  x86_64 flathub system
openh264 - OpenH264 Video Codec provided by Cisco Syste? ?op.Platform.openh264 2.1.0   2.0    x86_64 flathub system
Geany - A fast and lightweight IDE                       org.geany.Geany       1.36    stable x86_64 flathub system
GNOME Software Development Kit version 3.36 - Tools and? org.gnome.Sdk                 3.36   x86_64 flathub system

But I can't actually run the flatpaks inside:

(devel)user@zuperhost:~$ flatpak run org.geany.Geany

-- dmesg output --

 flatpak[2313]: segfault at 18 ip 0000555e4bbab952 sp 00007fff920d1c38 error 4 in flatpak[555e4bb61000+9e000]
[  +0,000013] Code: 7c 24 10 4c 89 fe 48 8b 50 08 49 89 c6 e8 a6 a1 ff ff 4c 89 f7 e8 ce 97 fb ff e9 df fe ff ff e8 b4 65 fb ff 0f 1f 40 00 89 f0 <48> 8b 77 18 48 8b 7f 20 49 89 c8 48 89 d1 89 c2 e9 a9 fc ff ff 66
[jul30 08:27] flatpak[3313]: segfault at 18 ip 0000564cbff364a2 sp 00007ffd4c39c268 error 4 in flatpak[564cbfecd000+ee000]
[  +0,000014] Code: 8a ff ff 4c 89 f7 e8 0d a4 fb ff e9 ed fe ff ff 4c 8d 64 24 38 e9 d3 fe ff ff e8 59 8b fb ff 4c 89 e3 e9 89 fd ff ff 90 89 f0 <48> 8b 77 18 48 8b 7f 20 49 89 c8 48 89 d1 89 c2 e9 b9 fc ff ff 66

This happens for any flatpak that I install on the "real" machine even though I can perfectly see them listed as installed.

Furthermore this happens even from a chroot that "contains" the same OS version I have installed on the host (in my specific case, Debian Stable).

I presume I am doing something wrong and the result would be the same if I tried to eg.: remote mount the installations.d from another machine via sshfs? Is this usage scenario (sharing installation space across "machines") supported by flatpak and/or do I need to do something else?


You must log in to answer this question.

Browse other questions tagged .