PDA

View Full Version : Flatpak on Sailfish OS


Pages : [1] 2

rinigus
2020-01-05, 10:40
This is to announce Flatpak support for Sailfish. Its raw on the edges, limited, but possible and, hopefully, will be available for your SFOS devices. With it, Flatpak allows you to use latest SDKs for your code development and running applications developed for Linux and distributed in this format.

Development is done via repositories at https://github.com/sailfishos-flatpak.

For issues and documentation see https://github.com/sailfishos-flatpak/main

Right now, Flatpak support is available for Sony Xperia Tama devices (unofficial port) with the hope that other devices will follow. Due to QtWayland limitations, only Qt/QML applications run well with Gdk apps refusing to start due to the absence of currently standard Wayland extensions.

For issues, see README at Github and its issue trackers.

Obligatory screenshots below showing KDE Plasma Mobile Web browser running on Sailfish.

Fellfrosch
2020-01-05, 10:46
:eek: Amazing

Kabouik
2020-01-05, 11:16
Unbelievable. Great work Rinigus, again. Thanks a lot, the community owes you a lot. :o

Maemish
2020-01-05, 21:23
The flatpak is unknown to me. What are the benefits? With "Make Mint faster" instructions the flatpak is one to be deleted for good because of... something. So what are the benefits of flatpak? Curious.

rinigus
2020-01-05, 22:05
https://en.wikipedia.org/wiki/Flatpak

In lay terms, it is a packaging format that allows you to run applications in a sandbox. As a result, your application sits in the same perceived environment regardless on whether it runs on Debian, Fedora, Gentoo, or, with the developed support, on Sailfish. There are limitations that make its use limited, but some we could maybe resolve.

Now, for us, it means ability to run KDE Plasma Mobile apps. In future, with Wayland compositor update, Gdk apps as well. In addition, it also allows to develop using Qt 5.12/5.13 already now.

There is a price to pay. Native look is not available, at least right now. Starting apps takes longer time as container has to be prepared. Keyboard requires special attention and a mod of the app before used. Hopefully, the latter can be resolved and we could use SFOS keyboard.

As a developer, I have distributed Pure Maps and OSM Scout Server via Flatpaks. As a result, I can package it in one place and have it on all desktop distributions. For native look, you have to package separately and write accordingly, as done for SFOS and Ubuntu Touch. For my apps, KDE Kirigami (as in Plasma Mobile) style is used for Flatpaks.

eson
2020-01-06, 06:00
There's no locale in OSM Scout Server flatpak?

Maemish
2020-01-06, 06:40
Thanks Rinigus, I understand now the benefits. Is this something that can be use also for Leste and N900? And longer starting times do not matter that much if the app works well after launching and if otherwise the application would be without reach with the device. Great work you do.

rinigus
2020-01-06, 06:53
There's no locale in OSM Scout Server flatpak?

Maybe. I don't know, tbh. never checked it. Should put into my todo list...

rinigus
2020-01-06, 06:57
Thanks Rinigus, I understand now the benefits. Is this something that can be use also for Leste and N900? And longer starting times do not matter that much if the app works well after launching and if otherwise the application would be without reach with the device. Great work you do.

As long as kernel is reasonably current (don't know what's reasonably current means over here), I presume it can work. But I know too little about Leste and N900 to make any specific comments

eson
2020-01-06, 09:22
Maybe. I don't know, tbh. never checked it. Should put into my todo list...


There isn't. Works fine in Pure Maps flatpack.

nthn
2020-01-06, 09:50
Outstanding work!

rinigus
2020-01-06, 15:57
There isn't. Works fine in Pure Maps flatpack.

That red box is regarding map labels selection, not really locale as of GUI. Note that you could set some better Qt style which will show these items in dropboxes (no idea why default sucks so much)

taixzo
2020-01-06, 16:34
How does the memory usage of Flatpak apps compare with native ones?

Bundyo
2020-01-06, 16:38
How does the memory usage of Flatpak apps compare with native ones?

Probably every one loads its own libs, so worse than running shared.

rinigus
2020-01-06, 18:09
How does the memory usage of Flatpak apps compare with native ones?

Excellent question. That's what I found regarding it: https://github.com/flatpak/flatpak/issues/984#issuecomment-356259401

So, in practice:

- if you have KDE platform with Qt 5.12 installed in home (--user)
- all apps using this platform will share Qt libs and all libs in the platform
- the libs bundled with the apps (like some ones required for specific action by that app) will not be shared between apps

In this respect, it the same for us now. All libs bundled with the apps don't share RAM even if they are the same.

So, we get an overhead of loading platform libs to RAM, but we can minimize it by using the same runtime as much as we can.

However, the discussion in that linked issue is interesting for getting info on Flatpak internals.

MartinK
2020-01-07, 17:56
So, we get an overhead of loading platform libs to RAM, but we can minimize it by using the same runtime as much as we can.

I can get some background about what I have found so far about the on-disk space using of Flatpaks to complement the data about RAM usage.

For that it's important to note, how Flatpaks & runtimes are actually stored - in a single shared OSTree (https://ostree.readthedocs.io/en/latest/) repo. OSTree provides some key benefits for flatpaks:

git like per app & per runtime repo
differential updates (only changes from previous version are transferred on update)
automatic deduplication of everything in the repo


Especially the last point is pretty important and should be stressed. Thanks to this, you can have say 5 versions of the KDE (or any other) installed, but it will not consume much less than 5 full copies (basically size of all the shared bits + all the individual differences).

The same thing is true for applications - everything is automatically deduplicated against everything else. So if two apps bundle the same thing, say libfoo built the same way, resulting in the same binaries or say some bitmap files - there will always be just a single copy stored for all the apps.

To summarize - thanks to its innovative storage layout even with the need for runtimes when compared to "normal" packages, Flatpak is pretty efficient in both storage of runtimes and apps as well as for runtime and app updates.

Many of these things are simply not possible or pretty hard to do just with regular RPM (easy parallel installation & automatic deduplication).

Also - HUGE thanks to rinigus for working on this - you are really a hero! :)

I was secretly hoping Jolla would pick this up as the main native app distribution mechanism given that it fixes many many of the problems of the current platform and store (such as the App version and system version of Qt being the same, turning Qt updates into a tricky and ornerous process). But this is also a way. :)

Fingers crossed that this time they they will give priority to any changes needed in the regular Sailfish OS for full Flatpak support, so that Sailfish OS users on as many devices as possible can use it. :)

rinigus
2020-01-07, 20:32
@MartinK: thanks a lot for the background. I am sure we will be able to get it working on all devices or at least on the updated ones. Right now I am focusing on getting the keyboard working, then would have to polish different aspects and when its end-user usable, get it supported on wide range of devices.

If done well, I am sure Jolla will see the benefit in it. But we don't have to rely on them and let it out as much as we could through community.

mankir
2020-01-09, 18:05
very promising at all! i am not able to run the plasma browser, may be i forgot something?

rinigus
2020-01-10, 07:17
very promising at all! i am not able to run the plasma browser, may be i forgot something?

Probably.

Its not ready yet for general use. Making good progress with the keyboard (can already trigger SFOS one from Flatpak app), but need to polish keyboard-app communication further. When ready, will have to see how to properly incorporate that into the platform.

rinigus
2020-01-11, 14:36
I have just released new flatpak runner with Sailfish keyboard support. The keyboard required


Having DBus service running in P2P mode for communication of Sailfish application rotation and activity state
Modified Maliit Qt plugin inside Flatpak container to trigger keyboard and rotate it


It could still have some issues with the keyboard, but those could be resolved later. I presume it should also work with the hardware keyboard device as it should be configured on Maliit server side (residing on SFOS).

So, right now we can use QML/Qt apps with the keyboard. Keyboard follows application screen orientation, hides when you switch away from it, can be used to enter chars.

Example packaging script for Angelfish is in the separate repository, https://github.com/sailfishos-flatpak/example-apps

rinigus
2020-01-12, 21:50
I have made tmp solution that mounts Maliit plugin into any app running in Flatpak. This solution requires:

- flatpak-maliit-plugin-qt installed in SFOS
- app should use KDE 5.12 runtime

Just released flatpak-runner will add the plugin into container when app is running and keyboard can be used.

So, this means that we can use Flatpak applications as they are provided by KDE and Flathub. No recompile or hacking is needed. Assuming that they are QML/Qt 5.12 ...

Proper solution will be to add Maliit plugin as an extension of KDE runtime. Will talk to KDE devs about it.

rinigus
2020-01-18, 09:14
Yesterday, patches required to libhybris linker were merged and, I presume, will be part of the next SFOS release. Which would bring Flatpak support for many, if not all, devices. If you are using unofficial port, you could already ask maintainers to bump their libhybris to version 0.0.5.34 to get it working in between updates.

mankir
2020-01-18, 09:59
great work, angelfish is running now (a bit sluggish, but that is not the point). would be nice to get some audio apps working, audacity should be possible, i saw the mic levelmeter even with the last version... unfortunally flathub does not have an arm version of mixxx, would be crazy to dj with a mobile!

rinigus
2020-01-18, 10:20
great work, angelfish is running now (a bit sluggish, but that is not the point). would be nice to get some audio apps working, audacity should be possible, i saw the mic levelmeter even with the last version... unfortunally flathub does not have an arm version of mixxx, would be crazy to dj with a mobile!

Audio, as such, should work. At least I can hear sound in videos from BBC. As for audacity, check if it fulfills requirements:

- should be Qt/QML 5.12
- no additional windows open.

Requirements explained in this thread

bennypr0fane
2020-01-25, 15:32
Right now, Flatpak support is available for Sony Xperia Tama devices (unofficial port) with the hope that other devices will follow. Due to QtWayland limitations, only Qt/QML applications run well with Gdk apps refusing to start due to the absence of currently standard Wayland extensions.
What, pray tell, are Gdk apps? I suppose you are not talking about Google Glass Dev Kit? Maybe GTK is what you mean?

rinigus
2020-01-25, 15:35
What, pray tell, are Gdk apps? I suppose you are not talking about Google Glass Dev Kit? Maybe GTK is what you mean?

see https://en.wikipedia.org/wiki/GDK#/media/File:GTK+_software_architecture.svg

Gtk sits on top of Gdk

rinigus
2020-01-26, 21:43
New flatpak runner is out: 0.4.0

This time it has been mainly about making it usable. From now on, you don't need to make GL extension manually anymore - its made for you on the first start of flatpak-runner.

The app takes care of refreshing the list of flatpak applications installed on your device and generates corresponding .desktop files. As a result, you can launch them as if they are SFOS apps from the app grid.

When started without hosting any app, it will show the list of installed flatpak apps and will allow you to tune environment for each of them. You can add default and app-specific env variables, change QT scaling and DPI parameters. For qtwebengine based browser, I recommend to set scaling to 2 or 3 (depending on your device) for better hidpi screen support.

Known bugs: https://together.jolla.com/question/221851/x-nemo-single-instanceno-is-not-respected/

coderus
2020-02-03, 19:25
is tere a list/wiki with usable software? :D i am new to flatpak and no idea what i just installed :DD

rinigus
2020-02-03, 20:07
is tere a list/wiki with usable software? :D i am new to flatpak and no idea what i just installed :DD

Right now, unless you wish to compile it, list is short:

- Angelfish available from KDE Flatpak repo, org.kde.mobile.angelfish; developed at https://invent.kde.org/jbbgameich/plasma-angelfish

- Maybe Matrix client Spectral, https://gitlab.com/spectral-im/spectral

We are limited to QML apps due to QtWayland 5.4 that we have and which is used in the compositor run by flatpak-runner. On top of that, flatpak-runner compositor is in particularly bad and assumes that it has only one window to show. Which does cause some issues. Depending on Qt update on SFOS, we will either have to work with QtWayland 5.4 or just wait with this limitation for now.

I'm mainly looking into improving the browser, Spectral has issues with touch controlled devices (issues filed). Browser, as distributed now, is slow. Bugfix is known and already applied, but may require further investigation on my side.

As for other software, much is written for desktop. Gtk apps are no go for now (too old QtWayland compositor).

In sum, right now, you have to get hands dirty to get software that you want and be ready to fix it. Shouldn't be a problem, right?

Did you check that your device has newer libhybris? libhybris-0.0.5.34 is required.

mosen
2020-02-03, 20:25
I am trying the github instructions on Pro¹ but struggle at adding the repos.

[nemo@mosen-Pro1 ~]$ flatpak remote-add -vv --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
F: Opening user flatpak installation at path /home/nemo/.local/share/flatpak
F: Loading https://flathub.org/repo/flathub.flatpakrepo using libsoup
F: Received 4040 bytes
Usage: gpg-connect-agent [options] (-h for help)Usage: gpg-connect-agent [options] (-h for help)F: Imported 1 GPG key to remote "flathub"
F: Fetching summary file for remote ?flathub?
Warning: Could not update extra metadata for 'flathub': While fetching https://dl.flathub.org/repo/summary.sig: [28] Timeout was reached


The kdeapps repo added without that trouble but still if i do remote-ls:

flatpak remote-ls --user kdeapps
error: While fetching http://distribute.kde.org/flatpak-apps-testing/summary.sig: [52] Server returned nothing (no headers, no data)

What may i miss?

When installing sth:
[nemo@mosen-Pro1 ~]$ flatpak install -vv --user org.kde.mobile.angelfish
F: Opening user flatpak installation at path /home/nemo/.local/share/flatpak
Looking for matches?
F: Fetching summary file for remote ?flathub?
F: Failed to download optional summary
F: An error was encountered searching remote ?flathub? for ?org.kde.mobile.angelfish?: Unable to load summary from remote flathub: While fetching https://dl.flathub.org/repo/summary.sig: [28] Timeout was reached
F: Fetching summary file for remote ?kdeapps?
Usage: gpg-connect-agent [options] (-h for help)Found similar ref(s) for ?org.kde.mobile.angelfish? in remote ?kdeapps? (user).
Use this remote? [Y/n]: Y
F: No installations directory in /etc/flatpak/installations.d. Skipping
F: Fetching summary file for remote ?kdeapps?
Usage: gpg-connect-agent [options] (-h for help)F: Transaction: install kdeapps:app/org.kde.mobile.angelfish/arm/master
F: Looking for remote metadata updates for kdeapps
F: marking op install:app/org.kde.mobile.angelfish/arm/master resolved to 0317b5bae437bf982c139a3b9a8207fc4f736c6a56e81e9736 911789dbd3ad5c
F: Fetching summary file for remote ?flathub?
F: Failed to download optional summary
error: The application org.kde.mobile.angelfish/arm/master requires the runtime org.kde.Platform/arm/5.12 which was not found
[nemo@mosen-Pro1 ~]$ flatpak install -vv --user org.kde.Platform/arm/5.12
F: Opening user flatpak installation at path /home/nemo/.local/share/flatpak
Looking for matches?
F: Fetching summary file for remote ?flathub?
F: Failed to download optional summary
F: An error was encountered searching remote ?flathub? for ?org.kde.Platform/arm/5.12?: Unable to load summary from remote flathub: While fetching https://dl.flathub.org/repo/summary.sig: [28] Timeout was reached
F: Fetching summary file for remote ?kdeapps?
Usage: gpg-connect-agent [options] (-h for help)error: No remote refs found similar to ?org.kde.Platform/arm/5.12?

coderus
2020-02-03, 20:37
Thanks i installed angelfish just fine. Just wanted to know if there is anything around i can try as well :)

Running on fxtec pro1.

rinigus
2020-02-03, 21:29
@mosen, I wonder whether you rebooted after install of flatpak.

mosen
2020-02-03, 22:04
I did, after starting up the flatpak-launcher once from gui appdrawer.

Is it a clean way to "zypper remove flatpak flatpak-runner flatpak-maliit-plugin-qt" and try again?

rinigus
2020-02-03, 22:08
I did, after starting up the flatpak-launcher once from gui appdrawer.

Is it a clean way to "zypper remove flatpak flatpak-runner flatpak-maliit-plugin-qt" and try again?

you can remove those, but I would suggest to remove

/home/nemo/.local/share/flatpak/

first. And check that your /var/lib/flatpak/ is empty. Then add repos again ...

coderus
2020-02-03, 22:39
i had no problems installing everything from scratch today. except instaalling missing pyotherside requires :)

rinigus
2020-02-04, 08:25
@coderus: requirement added and new release is out (minor)

If you want to develop using Flatpak or compile something, make sure you check https://github.com/sailfishos-flatpak/main/blob/master/AppDevelopment.md and the known issues listed there at the bottom.

lal
2020-02-04, 17:15
I am trying the github instructions on Pro¹ but struggle at adding the repos.

.. snip ..


I have these Timeout errors too, from the "flathub" repo. From the look of it, "kdeapps" repo looks good. I tried from different networks and VPNs thinking my network was be the culprit, but it certainly wasn't the case.

Anyway, I did install the kde-arm-Qt-5.12 runtime and then the Angelfish on phone. I flatpak installed the org.kde.Platform/arm/5.12 in PC and copied the runtimes to the phone under ~/.local/share/flatpak/runtime/. Installing Angelfish from kdeapps repo went *mostly* fine then on Sailfish the normal way.

I observed that the flatpak wouldn't throw the timeout error when accessing flathub if the install/repo-sync operation was carried out quickly after a fresh Sailfish restart. It starts to throw errors after that.

rinigus
2020-02-04, 17:48
I have heard that Flathub has sometimes net issues, but usually its not too bad. I wonder now whether your phone enters suspend and looses connection because of that. In this case, the timeouts could come with switched off screen, but not with display on.

mosen
2020-02-04, 19:52
Happy lal has similar to tell :)
I thought i was stupid over the last 2 evenings :D
But yes, it looks like network issues and i had the same thought and tried with display on while charging and usb plugged in.
Can also confirm the kdeapps repo not throwing errors.
Also tried to switch wlan off and get repos from mobile data, same.
Standing by for debug instructions ;)

rinigus
2020-02-04, 21:34
TBH, I have no clue the downloads fail. Could be probably many reasons behind it. Maybe something is with infrastructure of Flathub leading to it. But a trick that @lal used should work for you too. If you have PC nearby

Kabouik
2020-02-04, 22:45
It worked for me on the Pro¹ with some warnings that I guess are minor since Angelfish runs. All steps after the "reboot" step in the Github instructions were run immediately after reboot, the screen didn't turn off once. I'm looking forward to being able to install other apps in the future!

lal
2020-02-05, 04:27
I have heard that Flathub has sometimes net issues, but usually its not too bad. I wonder now whether your phone enters suspend and looses connection because of that. In this case, the timeouts could come with switched off screen, but not with display on.

I would rule out the chances of phone suspending. I was pretty eager to see the result of the operation and kept it alive :D

Also, thanks to the intelligent timeout/suspension management in Sailfish OS (mce takes care of that?) that the screen stays on longer during the next cycle if woken up during the dimming phase.

rinigus
2020-02-07, 16:40
Turned out that the issue with Pure Maps was not OpenGL, but internal Mapbox code used to download tiles. As I was using hybrid version for Mapbox GL and not pure Qt one (due to a bug in old Qt used by SFOS), this somehow triggered an issue. So, GL part is working fine (well, maybe with some other issues).

coderus
2020-02-07, 18:44
should be flatpak-maliit-plugin-qt instead

rinigus
2020-02-15, 11:47
New releases of Flatpak Runner and Maliit keyboard plugin are out. It is now possible to ask Flatpak Runner to take into account whether the keyboard is shown and, if it is, reduce the window used by application accordingly. As there is a temporary side-effect while Wayland application window is changed (old content scaled to the new size and then redrawn), I made this feature opt-in. Usually its not needed, but sometimes is handy. Examples when its needed: setting homepage and search options in Angelfish.

The packages are available at OBS.

Meanwhile, I am mainly working on Angelfish. Its progressing nicely and already is the main SFOS browser for me. Some changes are not merged yet (auto-hiding of navigation bar), some changes have to be written. But we are making progress with KDE developers.

Ironically, TMO is the worst site right now. As WebEngine doesn't handle HIDPI that well, I have to scale window up and TMO just doesn't fit on portrait when the minimal font is imposed.

claustn
2020-02-16, 19:06
Is it possible to run flatpak on a Nexus 5? With the latest Sailfish but based on an "old" CM 12.

rinigus
2020-02-16, 19:16
Is it possible to run flatpak on a Nexus 5? With the latest Sailfish but based on an "old" CM 12.

Give it a try. I don't know, tbh. The bug that I fixed in hybris was introduced for Android 6 and above. It may work just out of the box. Unless there is something missing in the kernel... So, try and let us know.

claustn
2020-02-17, 07:05
Trying to run Angelfish gives me the following output. It opens an empty window.

,---
| Sailfish OS 3.2.0.12 (Torronsuo)
'---
[nemo@Sailfish ~]$ flatpak-runner org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-1
WAYLAND_DISPLAY="../../display/wayland-1" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-MM6gVH7U7S,guid=2cd4ffbf50593a6028484a0e5e4a3ad2" flatpak run --env=QT_WAYLAND_FORCE_DPI=442 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --filesystem=/opt/flatpak/maliit/org.kde.Platform/arm/5.12:ro --env=QT_PLUGIN_PATH=/app/lib64/plugins:/app/lib/plugins:/usr/share/runtime/lib/plugins:/opt/flatpak/maliit/org.kde.Platform/arm/5.12 --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.kde.mobile.angelfish
[D] onCompleted:389 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:52 - file:///usr/share/flatpak-runner/qml/main.qml:52:26: Unable to assign [undefined] to bool
error: app/org.kde.mobile.angelfish/arm/master not installed
[D] expression for onExit:58 - Skipping quit as it will hang the window. Proper exit is needed

rinigus
2020-02-17, 07:11
Few quick checks:

- have you rebooted after installing flatpak? If you didn't, please do so

- have you installed Angelfish using --user?

- what does `flatpak list` return in terminal?

- Try to enter Flatpak environment by running: flatpak run --command=sh org.kde.mobile.angelfish

The last command should give you a prompt inside Flatpak. If something is wrong, it will fail.

claustn
2020-02-17, 21:22
Few quick checks:

- have you rebooted after installing flatpak? If you didn't, please do so
- Yes I rebooted
- have you installed Angelfish using --user?
- Yes
- what does `flatpak list` return in terminal?

- Try to enter Flatpak environment by running: flatpak run --command=sh org.kde.mobile.angelfish

The last command should give you a prompt inside Flatpak. If something is wrong, it will fail.

My bad, I didn't complete the installation. Anyway, now it does not start with the following output:
[nemo@Sailfish ~]$ flatpak run --command=sh org.kde.mobile.angelfishbwrap: Creating new namespace failed: Invalidargumenterror: ldconfig failed, exit status 256
[nemo@Sailfish ~]$ devel-su
[root@Sailfish nemo]# ldconfig
[root@Sailfish nemo]# exit
[nemo@Sailfish ~]$ flatpak run --command=sh org.kde.mobile.angelfishbwrap: Creating new namespace failed: Invalidargumenterror: ldconfig failed, exit status 256
[nemo@Sailfish ~]$ devel-su
[root@Sailfish nemo]# flatpak-runner org.kde.mobile.angelfisherror: XDG_RUNTIME_DIR not set in the environment.[C] unknown:0 - Failed to create display (No such file or directory)[root@Sailfish nemo]#

Flatpak list output:
[nemo@Sailfish ~]$ flatpak list
Name Application ID Version Branch Origin Installation
html5-codecs …esktop.Platform.html5-codecs 18.08 flathub user
KDE Application… org.kde.Platform 5.12 flathub user
Angelfish Webbr… org.kde.mobile.angelfish master kdeapps user

rinigus
2020-02-18, 06:59
Critical error is

Creating new namespace failed

As for ldconfig, its running inside flatpak environment, different from the system one. For namespaces, kernel needs to have support for it. Check out what you get from

# zcat /proc/config.gz | grep _NS

I have the following:

CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
CONFIG_NET_NS=y
CONFIG_NF_CONNTRACK_NETBIOS_NS=y

I am sure that USER_NS is needed, but that should be there for older kernels as well: https://cateee.net/lkddb/web-lkddb/USER_NS.html

So, I suspect you need to recompile your kernel.

claustn
2020-02-18, 14:46
You're right:

# CONFIG_UTS_NS is not set
# CONFIG_IPC_NS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
CONFIG_NET_NS=y
CONFIG_NF_CONNTRACK_NETBIOS_NS=y

I think my tests stop here then, I don't have the knowledge to recompile the kernel.

rinigus
2020-02-18, 14:48
Understood. At least we know why. Now, I suggest you to ask the maintainer of the port to recompile the kernel. As the options are there, its relatively easy.

edp17
2020-02-20, 01:04
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
CONFIG_NET_NS=y
CONFIG_NF_CONNTRACK_NETBIOS_NS=y


Do you know from which kernel version do we have these flags in the kernel? I am curious whether they are available in kernel 3.0?

rinigus
2020-02-20, 06:59
Do you know from which kernel version do we have these flags in the kernel? I am curious whether they are available in kernel 3.0?

According to https://cateee.net/lkddb/web-lkddb/USER_NS.html, should be there under "experimental"

edp17
2020-02-20, 09:11
According to https://cateee.net/lkddb/web-lkddb/USER_NS.html, should be there under "experimental"

Thanks for confirming and showing me the way how I can double check these things in the future.
I think will switch them on for my S2 and try Flatpak there. :D

rinigus
2020-02-23, 08:48
New Flatpak Runner is out: 0.5.2

I was looking into how to enable hardware acceleration for Qt WebEngine and found the way. Turned out that by dropping SFOS-specific QMLSCENE_DEVICE environment variable from Flatpak app environment resulted in Chromium using hardware acceleration. That variable is used in Qt WebEngine constructor and had such implications.

Now, with Chromium having hardware acceleration, many bug workarounds for Android phones hardware are not engaged as they are checked for Android specifically (as in https://chromium.googlesource.com/chromium/src/+/master/gpu/config/gpu_driver_bug_list.json#247). For now, I have disabled GPU HW composing which seems to work for me. That's done in one env variable set by default. Let me know if you get into trouble with the browser.

Browser, after enabling HW acceleration, plays youtube videos as well. There has been work done on Angelfish and the next release of it should add hiding of navigation bar, internal changes in tabs handling, bump to Qt 5.14, to name the changes that are already merged.

edp17
2020-02-24, 22:01
Thanks for confirming and showing me the way how I can double check these things in the future.
I think will switch them on for my S2 and try Flatpak there. :D

I needed to switch on too the CONFIG_NAMESPACES.
But now I have Flatpak support in the kernel on my S2 as well. :D
Once I have a little time I'll try to install Angelfish.

rinigus
2020-02-24, 22:44
Great to hear! There has been great progress in the last few days and I will probably report a bit later when few things get finalized. I am testing new settings for WebEngine that work quite well on XZ2. In addition, videos that were failing in the browser are playing now and without choppiness. Few PRs still have to be merged and then I hope new releases will be out.

Will be very interesting to hear when its all merged how it all runs on S2 and other hardware... In terms of S2, would be good to know if the current released Angelfish actually works as well. So we are sure that we don't miss anything in the setup

edp17
2020-02-24, 22:55
Great to hear! There has been great progress in the last few days and I will probably report a bit later when few things get finalized. I am testing new settings for WebEngine that work quite well on XZ2. In addition, videos that were failing in the browser are playing now and without choppiness. Few PRs still have to be merged and then I hope new releases will be out.

Will be very interesting to hear when its all merged how it all runs on S2 and other hardware... In terms of S2, would be good to know if the current released Angelfish actually works as well. So we are sure that we don't miss anything in the setup

I have installed Flatpak and added the repos, then installed angelfish. Unfortunately I got this:
[nemo@GalaxyS2 ~]$ flatpak-runner org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-1
WAYLAND_DISPLAY="../../display/wayland-1" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-zMvZjjUACb,guid=d3719efecbc24fcf8ca84dcb5e5453c9" flatpak run --env=QT_WAYLAND_FORCE_DPI=218 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --filesystem=/opt/flatpak/maliit/org.kde.Platform/arm/5.12:ro --env=QT_PLUGIN_PATH=/app/lib64/plugins:/app/lib/plugins:/usr/share/runtime/lib/plugins:/opt/flatpak/maliit/org.kde.Platform/arm/5.12 --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.kde.mobile.angelfish
[D] onCompleted:389 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:52 - file:///usr/share/flatpak-runner/qml/main.qml:52:26: Unable to assign [undefined] to bool
bwrap: prctl(PR_SET_NO_NEW_CAPS) failed: Invalid argument
error: ldconfig failed, exit status 256
[D] expression for onExit:58 - Skipping quit as it will hang the window. Proper exit is needed

rinigus
2020-02-25, 07:44
That could be considerable roadblock for the older kernels out there. Looks like you fail at


/* Never gain any more privs during exec */
if (prctl (PR_SET_NO_NEW_PRIVS, 1, 0, 0, 0) < 0)
die_with_error ("prctl(PR_SET_NO_NEW_CAPS) failed");


PR_SET_NO_NEW_PRIVS, according to manuals, has been introduced into 3.5 kernels. So, older kernels, including S2 and the several devices with 3.4 are no go, as far as I understand.

From looking around, it seems that there are backports available, though. See https://wiki.mozilla.org/Security/Sandbox/Seccomp and https://bugzilla.mozilla.org/show_bug.cgi?id=790923 referenced there. Cannot guarantee that it will work, though.

Note that there could be more backports available, I just took one of the first links.

edp17
2020-02-25, 08:31
That could be considerable roadblock for the older kernels out there.
...

Thank you for taking a look into it. When I switched my PC off I realised that I should have asked whether that error was something that I could/should fix on the device (or in the kernel) or something else in the flatpak-runner.
Now, I understand this is limitation of the old kernel and there might be a workaround. (This is what I love in Linux, there always is a or more workaround. :))
I have checked the links you provided for the backport and found this in the second one: backport NO_NEW_PRIVS (https://github.com/gdestuynder/android_kernel_samsung_crespo/commit/b16c22815425742c5823b4f8913c6cdb0c89e0bb)

I apply this into the S2's kernel and will re-try.

(By the way, with adding this Flatpak support into the kernel, something else also changed because the sneak-peek function started to work there. :D Thanks for that.)

claustn
2020-02-25, 14:05
On Nexus 5, despite the added flags in the kernel, Angelfish does not start. Here is the output:
nemo@Sailfish ~]$ flatpak-runner
org.kde.mobi le.angelfish Starting:
org.kde.mobile.angelfish h: modules.devname [D]
unknown:0 - Using Wayland-EGL Wayland
socket: ../../display/wayland-2
WAYLAND_DISPLAY="../../display/wayland-2"
FLAT
PAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/
dbus-WOnQp4HCDA,guid=23d92ab87b61acf890bb9eff5
e5527a4" flatpak run
--env=QT_WAYLAND_FORCE_DP I=442
--filesystem=/system:ro
--filesystem=/ve ndor:ro
--filesystem=/odm:ro --device=all --ta
lk-name=org.maliit.server
--filesystem=/opt/fl
atpak/maliit/org.kde.Platform/arm/5.12:ro
--en
v=QT_PLUGIN_PATH=/app/lib64/plugins:/app/lib/p
lugins:/usr/share/runtime/lib/plugins:/opt/fla
tpak/maliit/org.kde.Platform/arm/5.12
--env=QT _QUICK_CONTROLS_MOBILE=1
--env=QT_QUICK_CONTRO LS_STYLE=Plasma
--env=HYBRIS_EGLPLATFORM_DIR=/
usr/lib/arm-linux-gnueabihf/GL/host/lib/libhyb
ris
--env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux
-gnueabihf/GL/host/lib/libhybris/linker
--env=
HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnue
abihf/GL/host/libexec/droid-hybris/system/lib:
/usr/libexec/droid-hybris/system/lib:/vendor/l
ib:/system/lib
--env=LD_LIBRARY_PATH=/usr/lib/
arm-linux-gnueabihf/GL/host/lib
org.kde.mobile .angelfish [D]
onCompleted:389 - Warning: specifying
an o bject instance for initialPage is
sub-optimal - prefer to use a
Component [W] unknown:52 -
file:///usr/share/flatpak-run
ner/qml/main.qml:52:26: Unable to
assign [unde fined] to bool bwrap:
execvp xdg-dbus-proxy: No such file or
directory

edp17
2020-02-25, 14:25
On Nexus 5, despite the added flags in the kernel, Angelfish does not start. Here is the output:
...


I think I got this error. Did you try to start angelfish on the device in a fingerterm or from a PC logged into the device with ssh? Try to run it on the device!

claustn
2020-02-25, 14:48
I run it from fingerterm on device with your new kernel! The Angelfish app cover shows up with its icon but the loading circle spins forever.

rinigus
2020-02-25, 17:38
@claustn, how did you install flatpak support? did you install by zypper after setting up repository? or downloaded and installed manually?

It looks like xdg-dbus-proxy from flatpak repo is not installed (see missing command error: execvp xdg-dbus-proxy: No such file or
directory)

But in addition to that, we probably have an issue with 3.4 kernel on the top of that, as referred to earlier.

edp17
2020-02-26, 08:32
@claustn, how did you install flatpak support? did you install by zypper after setting up repository? or downloaded and installed manually?

It looks like xdg-dbus-proxy from flatpak repo is not installed (see missing command error: execvp xdg-dbus-proxy: No such file or
directory)

But in addition to that, we probably have an issue with 3.4 kernel on the top of that, as referred to earlier.

I am not sure this is related to that kernel thing because I when I first tried I got exactly the same error. Then I fixed it somehow but don't remember how.
(I will try to find out what have done when I get home. I hope the console is still active on my PC and I can look back what I was doing. :) + I will try to install this on my Nexus 5 too.)
And just after then I got the other error about the 'PR_SET_NO_NEW_PRIVS'.

edp17
2020-02-26, 22:22
I am not sure this is related to that kernel thing because I when I first tried I got exactly the same error. Then I fixed it somehow but don't remember how.
(I will try to find out what have done when I get home. I hope the console is still active on my PC and I can look back what I was doing. :) + I will try to install this on my Nexus 5 too.)
And just after then I got the other error about the 'PR_SET_NO_NEW_PRIVS'.

Unfortunately my console I used for S2 is full of AD related stuff, so I could not check what I was doing when I got this Flatpak related error.

I have tried to install it on my Nexus 5 and got exactly the same error and the rotating circle as an app cover.

To compare the two message on the devices:

On Nexus 5: [W] unknown:52 - file:///usr/share/flatpak-runner/qml/main.qml:52:26: Unable to assign [undefined] to bool
bwrap: execvp xdg-dbus-proxy: No such file or directory
On S2: [W] unknown:52 - file:///usr/share/flatpak-runner/qml/main.qml:52:26: Unable to assign [undefined] to bool
bwrap: prctl(PR_SET_NO_NEW_CAPS) failed: Invalid argument
error: ldconfig failed, exit status 256
Both error do look similar and probably they are related to the kernel just how @rinigus said earlier.

edp17
2020-02-26, 23:31
It looks like the Flatpak won't work on the S2 (or some other fixes also needs to be backported).
I have backported the NO_NEW_PRIVS from here (https://github.com/gdestuynder/android_kernel_samsung_crespo/commit/b16c22815425742c5823b4f8913c6cdb0c89e0bb) but when I re-run the angelfish, I got this: [nemo@GalaxyS2 ~]$ flatpak-runner org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-2
WAYLAND_DISPLAY="../../display/wayland-2" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-7rr6cT2EOw,guid=8929142dcc20de9f7e54f93c5e56fd25" flatpak run --env=QT_WAYLAND_FORCE_DPI=218 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --filesystem=/opt/flatpak/maliit/org.kde.Platform/arm/5.12:ro --env=QT_PLUGIN_PATH=/app/lib64/plugins:/app/lib/plugins:/usr/share/runtime/lib/plugins:/opt/flatpak/maliit/org.kde.Platform/arm/5.12 --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.kde.mobile.angelfish
[D] onCompleted:389 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:52 - file:///usr/share/flatpak-runner/qml/main.qml:52:26: Unable to assign [undefined] to bool
FATAL: kernel too old
error: ldconfig failed, exit status 34304
[D] expression for onExit:58 - Skipping quit as it will hang the window. Proper exit is needed
^C

Some of the strace is here (https://pastebin.com/Bq0thHsH).

Do I need the CONFIG_SECCOMP in the kernel? (Or something else?)

edp17
2020-02-27, 02:15
I have got an idea from elros. If we can patch the glibc for flatpak it can work on my S2 and probably on hammerhead too. I had to do this for my S2 port, otherwise sailfish wouldn't build. More info here (https://git.sailfishos.org/elros34/glibc/commit/7d957de2154194cabd37f008c8b183356102b3c4).

(For the S2 port, I needed to add a glibc.ini (https://github.com/edp17/droid-config-i9100/blob/master/sparse/usr/share/ssu/features.d/glibc.ini) file into /usr/share/ssu/features.d/ folder.)

rinigus
2020-02-27, 16:24
"FATAL: kernel too old" is probably an issue for S2. Do you know where the message is coming from, glibc? glibc is provided in Flatpak by its own platform, that's gonna be hard to patch.

Regarding xdg error - would you mind to check my questions from http://talk.maemo.org/showpost.php?p=1565684&postcount=66 and reply to them.

rinigus
2020-02-27, 19:34
Regarding general progress with Flatpak and Angelfish.

KDE platform added new type of extension - input plugins - which allowed me to distribute Maliit plugin as an extension in Flatpak. This depricates a hack used to package Flatpak extension in RPM and users will have to install Maliit using org.kde.PlatformInputContexts.MaliitSailfishOS :

flatpak install --user \
org.kde.PlatformInputContexts.MaliitSailfishOS//5.14


Replace //5.14 by //5.12 if you use KDE 5.12 apps. Extension is distributed and built at Flathub, https://github.com/flathub/org.kde.PlatformInputContexts.MaliitSailfishOS .

Right now 5.12 still has to be built, there were some Flathub internal issues with that runtime. As soon as its done, I'll let you know.

Note that after installing extension, you should remove flatpak-maliit-plugin-qt package in SFOS. Next version of Flatpak Runner will not use it.

Next, I managed to improve HW acceleration in WebEngine. I found the set of environment variables that, while not fully using HW acceleration, seem to make Angelfish reasonably fast. Flatpak packaging scripts have been developed further to improve playback of videos. Right now, it looks like all the sites I have visited are playing as they should. My issues with the acceleration are reported as a bug in https://bugreports.qt.io/browse/QTBUG-82423 and there is a hope it will be resolved at some time.

All this will become available with the next release of Flatpak Runner (waiting for KDE platform rebuild) and Angelfish (maybe will have to ask for it the lead developer). Assuming that the next SFOS will have updated libhybris, it all comes right on time.

coderus
2020-02-27, 21:07
being a flatpak noob i'm asking for commands to update stuff :))

rinigus
2020-02-27, 21:37
being a flatpak noob i'm asking for commands to update stuff :))

Right now, as of today, its

sleep 48h

Hopefully, by that time KDE 5.12 is sorted or new Angelfish is released.

claustn
2020-02-28, 07:47
Regarding xdg error - would you mind to check my questions from http://talk.maemo.org/showpost.php?p=1565684&postcount=66 and reply to them.

On the Nexus 5, I installed flatpak using zipper, followig the instructions provided on GitHub https://github.com/sailfishos-flatpak/main

rinigus
2020-02-28, 07:52
On the Nexus 5, I installed flatpak using zipper, followig the instructions provided on GitHub https://github.com/sailfishos-flatpak/main

Can you please check if xdg-dbus-proxy is installed? Maybe I am missing some dependency...

edp17
2020-02-28, 08:10
"FATAL: kernel too old" is probably an issue for S2. Do you know where the message is coming from, glibc? glibc is provided in Flatpak by its own platform, that's gonna be hard to patch.

Regarding xdg error - would you mind to check my questions from http://talk.maemo.org/showpost.php?p=1565684&postcount=66 and reply to them.

I don't know how can I check this message is coming from where. If you an idea on how to check,I appreciate if you let me know.

Regarding that post, I did respond on that already.

After reading your post about the general progress of Fltapak where you mentioned you might need to contact the main developer of Flatpak. Is it worth to as them to try to apply the glibc patch that elros provided? If they can apply that, this can make Flatpak available for the wider audience like my S2 with that old kernel.

edp17
2020-02-28, 08:12
Can you please check if xdg-dbus-proxy is installed? Maybe I am missing some dependency...

I just have checked my Nexus 5 and can confirm yes, xd-dbus-proxy is installed.

What I spotted on my Nexus 5 was the version of libhybris. It is 0.0.5.33+master.... while in the install instruction you said Flatpak is required libhybris >= 0.0.5.34
How can I get the newer libhybris?
I am happy to build a new sailfish image if I know what to change in there to get the newer libhybris.

rinigus
2020-02-28, 08:36
I just have checked my Nexus 5 and can confirm yes, xd-dbus-proxy is installed.

Souldn't we install the flatpak-libs package?

No, flatpak-libs is not needed on device. Have you rebooted after installation? Other than that, I am out of ideas on why that xdg- missing error is issued

rinigus
2020-02-28, 08:42
I don't know how can I check this message is coming from where. If you an idea on how to check,I appreciate if you let me know.

Regarding that post, I did respond on that already.

After reading your post about the general progress of Fltapak where you mentioned you might need to contact the main developer of Flatpak. Is it worth to as them to try to apply the glibc patch that elros provided? If they can apply that, this can make Flatpak available for the wider audience like my S2 with that old kernel.

The best I can come up is to grep inside flatpak platform. As in

flatpak run --command=sh org.kde.mobile.angelfish

then in the opened shell, try to grep files in /usr

As for patch, I don't know who to ask. I am mainly in contact with some KDE developers. That type of question should probably belong to freedesktop-sdk IRC/Matrix channel or their issue tracker in gitlab. But try to see first which file has the error message and proceed from there.

coderus
2020-02-28, 09:09
Right now, as of today, its

sleep 48h

Hopefully, by that time KDE 5.12 is sorted or new Angelfish is released.

i am using with 5.14, still not clearly understand how to update application and stuff

rinigus
2020-02-28, 09:25
Looks like Angelfish has been updated in the repos.

To update:


flatpak update


Follow the questions and respond to them accordingly. Usually, just Y is sufficient.

To remove unused runtimes


flatpak uninstall --unused


If you are using Angelfish only and had it before as well, that should remove KDE 5.12

With 5.14 KDE and new Angelfish, install also


flatpak install --user org.freedesktop.Platform.ffmpeg-full


For new keyboard plugin, install


flatpak install --user org.kde.PlatformInputContexts.MaliitSailfishOS


Tonight I plan to release Flatpak Runner which would drop the support for older Maliit plugin and will configure environment for better WebEngine support.

edp17
2020-02-28, 11:09
The best I can come up is to grep inside flatpak platform. As in

flatpak run --command=sh org.kde.mobile.angelfish

then in the opened shell, try to grep files in /usr

As for patch, I don't know who to ask. I am mainly in contact with some KDE developers. That type of question should probably belong to freedesktop-sdk IRC/Matrix channel or their issue tracker in gitlab. But try to see first which file has the error message and proceed from there.

I probably have misunderstood you. I thought you were in contact with the Flatpak developers.
I'll try to do my best to find out where the error was coming from and then we will see the further options. Thanks.

edp17
2020-02-28, 11:11
No, flatpak-libs is not needed on device. Have you rebooted after installation? Other than that, I am out of ideas on why that xdg- missing error is issued

Yes, I did reboot. I have tried to strace it but in that case I got another error and the angelfish didn't even start. I'll play with it more once I am at home with pc.

rinigus
2020-02-28, 11:35
Yes, I did reboot. I have tried to strace it but in that case I got another error and the angelfish didn't even start. I'll play with it more once I am at home with pc.

Then it's hard to say what's wrong. You can try to run

flatpak run --command=sh org.kde.Platform

and see if you get the prompt inside flatpak. It could be a manifestation of using old kernel, but I am speculating here.

Note that neochapay started working on Qt 5.12 builds for Nemo. If he pulls it off, assuming that we can install it in parallel with Qt 5.6, we can probably run 5.12 apps via similar solution as Flatpak Runner even without Silica support. Maybe its more realistic to wait for this solution than trying to fight requirements with old kernels.

edp17
2020-02-28, 13:46
Then it's hard to say what's wrong. You can try to run

flatpak run --command=sh org.kde.Platform

and see if you get the prompt inside flatpak. It could be a manifestation of using old kernel, but I am speculating here.

Note that neochapay started working on Qt 5.12 builds for Nemo. If he pulls it off, assuming that we can install it in parallel with Qt 5.6, we can probably run 5.12 apps via similar solution as Flatpak Runner even without Silica support. Maybe its more realistic to wait for this solution than trying to fight requirements with old kernels.

I have ran that (flatpak run --command=sh org.kde.Platform) on my S2 and got:FATAL: kernel too old
error: ldconfig failed, exit status 34304It seems this is a no go for the S2. :(
How good could have been, if it worked. Anyway, thanks for your hard work.

On the Nexus 5, I got:bwrap: execvp xdg-dbus-proxy: No such file or directory
and it didn't give the cursor back until I terminated with a CTRL+C

You are probably right when saying better to wait for the newer Qt.
With that (Qt 5.12) we might will be able to install/compile Linphone. And with that finally we can have video calls on Sailfish. That would be so :cool:

coderus
2020-02-28, 17:07
btw, where is "Usage: gpg-connect-agent [options] (-h for help)" come from? can it be suppressed?

about angelfish - is there way to change video quality in youtube?

rinigus
2020-02-28, 18:21
Flatpak Runner 0.6.0 is released with the environment variables set for Qt WebEngine. As its SFOS app, update with zypper or any other tool you prefer, as usual. Not in OpenRepos yet, probably should upload soon.

Please also uninstall flatpak-maliit-plugin-qt (SFOS package) and install org.kde.PlatformInputContexts.MaliitSailfishOS (Flatpak package) instead.

As Angelfish has been updated as well, you can update that as well (some of you probably did already). Please note it will pull KDE 5.14, you can remove 5.12 after.

For keyboard install, ffmpeg install (required for video playback), uninstall of unused packages, see http://talk.maemo.org/showpost.php?p=1565756&postcount=82

If you are short in storage, instead of update, remove Angelfish and other flatpak packages (unused ones), and install Angelfish with the new runtime.


Re gpg messages: as far as I remember, its due to old GPG used in SFOS. Seems you can ignore it.

Re Youtube video quality, other select actions: Select action on most websites lead to opening overlayed window. As the composer implemented in Flatpak Runner is properly primitive, its not able to do so. I would prefer not to spend time on it and wait till we get newer QtWayland on SFOS. As we use QtWayland 5.4, whatever we do, is very temporary. Before that Qt update it makes more sense to spend time on making the browser and other projects. Just remember that limitation and stay away from those drop down comboboxes on such sites as TMO.

Jedibeeftrix
2020-02-29, 09:43
have we had anything from Jolla to indicate when the Qt update for SFOS is coming? It has been coming 'soon' for years now.

and are we presuming that a new qt-wayland version will arrive with a new Qt version?

thank you for all your work on this, would love to see it made official.

rinigus
2020-02-29, 10:17
have we had anything from Jolla to indicate when the Qt update for SFOS is coming? It has been coming 'soon' for years now.

and are we presuming that a new qt-wayland version will arrive with a new Qt version?

thank you for all your work on this, would love to see it made official.

They mentioned it in one of the last IRC meetings, but are afraid of setting the date for it. Not sure whether the work on 5.12 has started yet. In the public branches, we have https://git.sailfishos.org/mer-core/qtbase/tree/mer-5.9 , but it stalled about a year ago.

I would expect that Qt Wayland will be updated as well. But your guess is as good as mine.

coderus
2020-02-29, 11:28
Just installed flatpak to my XA2
[nemo@Sailfish ~]$ flatpak-runner org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-1
WAYLAND_DISPLAY="../../display/wayland-1" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-hxDgBBD9wQ,guid=aabaee73b085b4a4461ed6015e5a4a22" flatpak run --env=QT_WAYLAND_FORCE_DPI=289 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --num-raster-threads=1 --enable-viewport --disable-composited-antialiasing --env=QTWEBENGINE_DISABLE_GPU_THREAD=1 --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.kde.mobile.angelfish
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:52 - file:///usr/share/flatpak-runner/qml/main.qml:52:26: Unable to assign [undefined] to bool
i see window with angelfish logo, spinning busyindicator, and nothing happens

rinigus
2020-02-29, 11:50
Just installed flatpak to my XA2
[nemo@Sailfish ~]$ flatpak-runner org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-1
WAYLAND_DISPLAY="../../display/wayland-1" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-hxDgBBD9wQ,guid=aabaee73b085b4a4461ed6015e5a4a22" flatpak run --env=QT_WAYLAND_FORCE_DPI=289 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --num-raster-threads=1 --enable-viewport --disable-composited-antialiasing --env=QTWEBENGINE_DISABLE_GPU_THREAD=1 --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.kde.mobile.angelfish
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:52 - file:///usr/share/flatpak-runner/qml/main.qml:52:26: Unable to assign [undefined] to bool
i see window with angelfish logo, spinning busyindicator, and nothing happens

It depends on whether you have libhybris version >= 0.0.5.34 on XA2. Unless it's some kind of development device with future SFOS version running on it, you are out luck on XA2. Hopefully, next SFOS release will include that libhybris.

As for spinning disk, logo and absence of action. Don't forget that we have SFOS app (flatpak-runner) which starts first, then flatpak app is started with Wayland display pointing to the display created by flatpak-runner. Hence, spinning disk is just provided by flatpak-runner itself. I guess in XA2 case, it gets stuck with some hybris trouble and never finishes the flatpak process.

coderus
2020-03-01, 08:18
i have 0.0.5.34 on my XA2

what can be debugged?

rinigus
2020-03-01, 10:59
i have 0.0.5.34 on my XA2

what can be debugged?

OK, then something is broken. As we seem to have AOSP9 devices (Sony Tama family and Pro1?) working so far, maybe its due to the other base.

Let's start with the simple test (assuming that all got installed and you did reboot after that):


flatpak run --command=sh org.kde.mobile.angelfish


That should bring you to the command prompt. As its not depending on hybris, it will show if the flatpak is running at all.

I wonder if you run flatpak-runner without any arguments (just from launcher) to initialize hybris extension? It is maybe easy to miss in the instructions.

If flatpak is working (shell in it is accessible), flatpak-runner has generated extension (ls -l ~/.local/share/flatpak/extension/org.freedesktop.Platform.GL.host), then we probably miss somethin in extension.

Check whether I miss any filesystem that should be there for libhybris in https://github.com/sailfishos-flatpak/flatpak-runner/blob/master/src/runner.cpp#L83 for your device.

Next, we can run strace on angelfish and see where it breaks. For that, install Sdk:


flatpak install --user org.kde.Sdk//5.14


Then close flatpak-runner and let's start with the plain flatpak for simplicity (windows minimization will not work, but its not a problem as we don't have any window to start with). Command line is based on what flatpak-runner is composing and showing you in its terminal output as well as addition of -d --command=sh to get into development env


flatpak run --env=QT_WAYLAND_FORCE_DPI=335 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --env=QTWEBENGINE_CHROMIUM_FLAGS="--disable-gpu-compositing --num-raster-threads=1 --enable-viewport --disable-composited-antialiasing" --env=QTWEBENGINE_DISABLE_GPU_THREAD=1 --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib --command=sh -d org.kde.mobile.angelfish


In Flatpak environment, check if you can get any useful info from strace:

strace /app/bin/angelfish

Hopefully, strace will get stuck on some hybris call.

coderus
2020-03-01, 13:15
GL was generated after install then rebooted, shell works okay

not sure what to do with filesystems?

strace is full of ENOENT: https://gist.github.com/CODeRUS/add4f008e0d4998c66c89520736ab9e9

rinigus
2020-03-01, 13:55
GL was generated after install then rebooted, shell works okay

not sure what to do with filesystems?

strace is full of ENOENT: https://gist.github.com/CODeRUS/add4f008e0d4998c66c89520736ab9e9

As long as it finds library later, ENOENT is OK.

Looks like something is off with egl:

writev(6, [{iov_base="\0\7\0w\264[^\327C+!", iov_len=11}, {iov_base="\5", iov_len=1}, {iov_base="libEGL\0", iov_len=7}, {iov_base="eglInitialize(0x3726b78) failed "..., iov_len=48}], 4) = 67

Anything relevant in dmesg/journal?

As for filesystems, which ones are mounted on device? (df)

coderus
2020-03-01, 15:31
both journal and dmesg are silent.

[nemo@Sailfish ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sailfish/root 2488624 1366160 1080532 56% /
devtmpfs 1263452 312 1263140 0% /dev
tmpfs 1351608 0 1351608 0% /dev/shm
tmpfs 1351608 21356 1330252 2% /run
tmpfs 1351608 0 1351608 0% /sys/fs/cgroup
tmpfs 1351608 8 1351600 0% /tmp
tmpfs 1351608 0 1351608 0% /mnt
/dev/mmcblk0p71 840320 276924 538772 34% /opt
/dev/mmcblk0p68 380360 211172 156900 57% /odm
/dev/mmcblk0p42 112592 97936 14656 87% /firmware
/dev/mmcblk0p40 65488 496 64992 1% /bt_firmware
/dev/mmcblk0p2 28144 444 27048 2% /persist
/dev/mmcblk0p44 12016 7484 4208 64% /dsp
/dev/mapper/sailfish-home
18131468 4322680 13612804 24% /home
tmpfs 270324 820 269504 0% /run/user/100000
/dev/mmcblk1p1 15549952 8128 15541824 0% /run/media/nemo/3334-3431

rinigus
2020-03-01, 18:38
both journal and dmesg are silent.

[nemo@Sailfish ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sailfish/root 2488624 1366160 1080532 56% /
devtmpfs 1263452 312 1263140 0% /dev
tmpfs 1351608 0 1351608 0% /dev/shm
tmpfs 1351608 21356 1330252 2% /run
tmpfs 1351608 0 1351608 0% /sys/fs/cgroup
tmpfs 1351608 8 1351600 0% /tmp
tmpfs 1351608 0 1351608 0% /mnt
/dev/mmcblk0p71 840320 276924 538772 34% /opt
/dev/mmcblk0p68 380360 211172 156900 57% /odm
/dev/mmcblk0p42 112592 97936 14656 87% /firmware
/dev/mmcblk0p40 65488 496 64992 1% /bt_firmware
/dev/mmcblk0p2 28144 444 27048 2% /persist
/dev/mmcblk0p44 12016 7484 4208 64% /dsp
/dev/mapper/sailfish-home
18131468 4322680 13612804 24% /home
tmpfs 270324 820 269504 0% /run/user/100000
/dev/mmcblk1p1 15549952 8128 15541824 0% /run/media/nemo/3334-3431

Doesn't look from your strace that the missing mounts are missed. I am pretty much blank at this point. Maybe we can learn from comparison with some Sailfish app strace when its started.

I presume that the window of Angelfish did not appear in your test.

Also, maybe some folder needs to be exported in / . Is there anything obvious there?

As for no records in dmesg and journal - I wonder where do those writes with egl failed go (https://gist.github.com/CODeRUS/add4f008e0d4998c66c89520736ab9e9#file-flatpak-runner-strace-L9132)

Let's get the strace and ask for help in the porters channel. Maybe someone has an idea on what's wrong with XA2 setup.

coderus
2020-03-01, 20:50
got this from /system/bin/logcat:
03-01 20:50:12.930 7981 5 D vndksupport: Loading /vendor/lib/hw/gralloc.default.so from current namespace instead of sphal namespace.
03-01 20:50:12.931 7981 5 E cutils-trace: Error opening trace file: No such file or directory (2)
03-01 20:50:12.931 7981 5 D vndksupport: Loading /vendor/lib/egl/libEGL_adreno.so from current namespace instead of sphal namespace.
03-01 20:50:12.932 7981 5 D libEGL : loaded /vendor/lib/egl/libEGL_adreno.so
03-01 20:50:12.938 7981 5 D vndksupport: Loading /vendor/lib/egl/libGLESv1_CM_adreno.so from current namespace instead of sphal namespace.
03-01 20:50:12.939 7981 5 D libEGL : loaded /vendor/lib/egl/libGLESv1_CM_adreno.so
03-01 20:50:12.952 7981 5 D vndksupport: Loading /vendor/lib/egl/libGLESv2_adreno.so from current namespace instead of sphal namespace.
03-01 20:50:12.952 7981 5 D libEGL : loaded /vendor/lib/egl/libGLESv2_adreno.so
03-01 20:50:12.969 7981 5 I Adreno : QUALCOMM build : 1dcb581, I26dffed9a4
03-01 20:50:12.969 7981 5 I Adreno : Build Date : 01/10/18
03-01 20:50:12.969 7981 5 I Adreno : OpenGL ES Shader Compiler Version: EV031.22.00.01
03-01 20:50:12.969 7981 5 I Adreno : Local Branch :
03-01 20:50:12.969 7981 5 I Adreno : Remote Branch : refs/tags/AU_LINUX_ANDROID_LA.UM.6.4.R1.08.00.00.309.049
03-01 20:50:12.969 7981 5 I Adreno : Remote Branch : NONE
03-01 20:50:12.969 7981 5 I Adreno : Reconstruct Branch : NOTHING
03-01 20:50:12.969 7981 5 D vndksupport: Loading /vendor/lib/hw/gralloc.default.so from current namespace instead of sphal namespace.
03-01 20:50:12.969 7981 5 I Adreno : OpenGrallocModuleAndDevice: Failed to open the Gralloc device, error: -22
03-01 20:50:12.969 7981 5 W libEGL : eglInitialize(0xbc110e8) failed (EGL_BAD_ALLOC)

rinigus
2020-03-02, 06:38
@coderus: thank you very much, at least some error message. I should have remembered about logcat...

coderus
2020-03-02, 10:44
cool, but any ideas? :D

rinigus
2020-03-02, 10:57
cool, but any ideas? :D

I'll ask on porters channel if someone has any. Should be some missing property or lib in the environment. Would be able to start discussion bit later today...

rinigus
2020-03-02, 12:25
@coderus, would you mind to provide strace for some SFOS app? So, it would be clear which gralloc is used usually on XA2, for example.

edp17
2020-03-02, 12:44
What should be the libhybris version on the XA2? On mine that is 0.0.5.31-1.54.4
According to the Flatpak doc (https://github.com/sailfishos-flatpak/main) the supported devices should have >= 0.0.5.34

@coderus: Did you get the newer version of libhybris to your XA2 or you tried Flatpak with the same libhybris version that I have got on mine? I am a bit :confused: here. Thanks.

rinigus
2020-03-02, 13:55
@coderus, when you get to it, please generate also logs with HYBRIS_LD_DEBUG=1 in addition to strace.

So, I would like to get

* strace of regular SFOS app on XA2

* output of regular SFOS app on XA2 running with HYBRIS_LD_DEBUG=1 set, no strace for reading simplicity

* output of "flatpak run ... --env=HYBRIS_LD_DEBUG=1 ..." , no strace for reading simplicity

It is possible that I am missing some specific libs in https://github.com/sailfishos-flatpak/flatpak-runner/blob/master/scripts/flatpak-extension-hybris and we have to figure out which.

coderus
2020-03-02, 15:47
What should be the libhybris version on the XA2? On mine that is 0.0.5.31-1.54.4
According to the Flatpak doc (https://github.com/sailfishos-flatpak/main) the supported devices should have >= 0.0.5.34

@coderus: Did you get the newer version of libhybris to your XA2 or you tried Flatpak with the same libhybris version that I have got on mine? I am a bit :confused: here. Thanks.

i own future

@coderus, when you get to it, please generate also logs with HYBRIS_LD_DEBUG=1 in addition to strace.

So, I would like to get

* strace of regular SFOS app on XA2

* output of regular SFOS app on XA2 running with HYBRIS_LD_DEBUG=1 set, no strace for reading simplicity

* output of "flatpak run ... --env=HYBRIS_LD_DEBUG=1 ..." , no strace for reading simplicity

It is possible that I am missing some specific libs in https://github.com/sailfishos-flatpak/flatpak-runner/blob/master/scripts/flatpak-extension-hybris and we have to figure out which.

sfos strace: https://gist.github.com/CODeRUS/3db4af39fdaee3597c6ccc40c689612a
sfos hybris debug: https://gist.github.com/CODeRUS/b988e3880415291e6f280f2ce9b8175d
flatpak hybris debug: https://gist.github.com/CODeRUS/7bc34c2533954c496c69a4d8a68f0864

rinigus
2020-03-02, 16:28
@coderus: thanks a lot!

Do you have such folders/files as /plat_property_contexts and /nonplat_property_contexts in /?

It looks like properties (Android) are not loaded properly and that leads to wrong gralloc lib loaded in Flatpak.

Please send "ls /"

If those folders are indeed there, you can test by running flatpak with extra arguments:

--filesystem=/plat_property_contexts:ro --filesystem=/nonplat_property_contexts:ro

coderus
2020-03-02, 16:47
@coderus: thanks a lot!

Do you have such folders/files as /plat_property_contexts and /nonplat_property_contexts in /?

It looks like properties (Android) are not loaded properly and that leads to wrong gralloc lib loaded in Flatpak.

Please send "ls /"

If those folders are indeed there, you can test by running flatpak with extra arguments:

--filesystem=/plat_property_contexts:ro --filesystem=/nonplat_property_contexts:ro

files are there for sure:
[root@Sailfish nemo]# ls -la /
total 336
drwxr-xr-x 32 root root 4096 Feb 28 21:47 .
drwxr-xr-x 32 root root 4096 Feb 28 21:47 ..
drwxr-xr-x 3 root root 4096 May 22 2019 .config
-rw-r--r-- 1 root root 0 Sep 6 1970 .fs-resized
drwxr-xr-x 2 root root 4096 Feb 28 21:43 bin
drw------- 2 root root 4096 Feb 28 21:45 boot
dr-xr-x--- 3 bluetoot net_bt 16384 Jan 1 1970 bt_firmware
lrwxrwxrwx 1 root root 50 Feb 16 16:50 bugreports -> /data/user_de/0/com.android.shell/files/bugreports
lrwxrwx--- 1 system cache 11 Feb 16 16:50 cache -> /data/cache
drwxr-xr-x 4 root root 0 Jan 1 1970 config
lrwxrwxrwx 1 root root 17 Feb 16 16:50 d -> /sys/kernel/debug
drwxrwx--x 42 system system 4096 Feb 16 17:52 data
lrwxrwxrwx 1 root root 23 Feb 16 16:50 default.prop -> system/etc/prop.default
drwxr-xr-x 24 root root 7860 Mar 2 19:43 dev
drwxr-xr-x 4 root root 4096 Feb 16 16:50 dsp
drwxr-xr-x 75 root root 4096 Mar 2 19:43 etc
drwxr-xr-x 2 root root 4096 May 22 2019 fimage
dr-xr-x--- 3 system system 16384 Jan 1 1970 firmware
drwxr-xr-x 12 root root 4096 Feb 28 21:47 home
-rwxr-xr-x 1 root root 12406 Feb 11 14:08 init-debug
-rw-r--r-- 1 root root 1522 Feb 16 17:10 init.environ.rc
-rw-r--r-- 1 root root 98 Feb 16 17:10 init.extraenv.armeabi-v7a.rc
-rw-r--r-- 1 root root 29945 Feb 16 17:10 init.rc
-rw-r--r-- 1 root root 1909 Feb 16 17:10 init.recovery.pioneer.rc
-rw-r--r-- 1 root root 7874 Feb 16 17:10 init.usb.configfs.rc
-rw-r--r-- 1 root root 5721 Feb 16 17:10 init.usb.rc
drwxr-xr-x 7 root root 4096 Feb 28 21:45 lib
drwx------ 2 root root 16384 May 22 2019 lost+found
drwxr-xr-x 2 root root 4096 Feb 15 22:17 media
drwxrwxr-x 10 root system 220 Mar 2 19:43 mnt
-rw-r--r-- 1 root root 18267 Feb 16 16:59 nonplat_file_contexts
-rw-r--r-- 1 root root 103 Feb 16 16:59 nonplat_hwservice_contexts
-rw-r--r-- 1 root root 861 Feb 16 16:59 nonplat_property_contexts
-rw-r--r-- 1 root root 95 Feb 16 16:59 nonplat_seapp_contexts
-rw-r--r-- 1 root root 141 Feb 16 16:59 nonplat_service_contexts
drwxr-xr-x 8 root root 4096 Mar 5 2019 odm
drwxr-xr-x 5 root root 4096 Feb 15 22:17 opt
drwxrwx--x 20 system system 4096 May 22 2019 persist
-rw-r--r-- 1 root root 20703 Feb 16 16:59 plat_file_contexts
-rw-r--r-- 1 root root 5768 Feb 16 16:59 plat_hwservice_contexts
-rw-r--r-- 1 root root 4341 Feb 16 16:59 plat_property_contexts
-rw-r--r-- 1 root root 965 Feb 16 16:59 plat_seapp_contexts
-rw-r--r-- 1 root root 12996 Feb 16 16:59 plat_service_contexts
dr-xr-xr-x 770 root root 0 Jan 1 1970 proc
drwxr-x--- 3 root root 4096 Feb 15 22:17 root
drwxr-xr-x 34 root root 780 Mar 2 19:43 run
drwxr-xr-x 2 root root 4096 Feb 28 21:45 sbin
lrwxrwxrwx 1 root root 21 Feb 16 16:50 sdcard -> /storage/self/primary
drwxr-xr-x 2 root root 4096 Feb 15 22:17 srv
dr-xr-xr-x 13 root root 0 Sep 6 1970 sys
drwxr-xr-x 9 root root 4096 Oct 1 14:30 system
drwxrwxrwt 14 root root 460 Mar 2 19:44 tmp
-rw-r--r-- 1 root root 5222 Feb 16 17:10 ueventd.rc
drwxr-xr-x 12 root root 4096 Feb 28 21:42 usr
drwxr-xr-x 17 root root 4096 Feb 28 21:42 var
drwxr-xr-x 8 root root 4096 Oct 1 14:30 vendor
-rw-r--r-- 1 root root 524 Feb 16 16:50 verity_key
-rw-r--r-- 1 root root 136 Feb 16 16:59 vndservice_contexts

with exttra arguments added angelfish started successfully!

rinigus
2020-03-02, 18:22
files are there for sure:

with exttra arguments added angelfish started successfully!

Excellent news! Sorry, looking at the files I am sure I asked earlier already.

You could use the same arguments with flatpak-runner (before org.kde.mobile.angelfish) until I fix it in the source. Hopefully tonight, but cannot promise as there is a merge request I am finishing for Angelfish.

coderus
2020-03-02, 18:45
cool! regarding angelfish - do you want to distribute offline .flatpak installers of your nightly builds?)

rinigus
2020-03-02, 19:21
cool! regarding angelfish - do you want to distribute offline .flatpak installers of your nightly builds?)

The changes when merged into the main repository should trigger rebuilds - so that's redistributed automatically. They just moved repository to https://invent.kde.org/kde/plasma-angelfish , so let's see if it will go smoother. On your side, all you have to do is to run

flatpak update

once in a while.

rinigus
2020-03-02, 19:53
Flatpak Runner 0.6.1 is out and it incorporates the fix needed for Xperia XA2 (and maybe some others on the same base). As always, update from OBS.

coderus
2020-03-02, 21:32
Flatpak Runner 0.6.1 is out and it incorporates the fix needed for Xperia XA2 (and maybe some others on the same base). As always, update from OBS.

it works, thanks!

edp17
2020-03-03, 00:09
i own future

(I need 10 characters.) How?:)

edp17
2020-03-03, 00:10
Flatpak Runner 0.6.1 is out and it incorporates the fix needed for Xperia XA2 (and maybe some others on the same base). As always, update from OBS.

Is it for any mortal XA2 or only for those immortals with the newer libhybris? :D

taixzo
2020-03-03, 01:35
Apparently angelfish is unable to play any videos on Pro1 - is there some library needed for this?

rinigus
2020-03-03, 07:08
Apparently angelfish is unable to play any videos on Pro1 - is there some library needed for this?

with KDE 5.14 and used Flatpak platform you need to install extension

org.freedesktop.Platform.ffmpeg-full

for video support. Videos should play then. Please let me know how it goes.

edp17: I think new hybris is coming with the next SFOS release. So, just wait a bit.

coderus
2020-03-03, 08:57
Is it for any mortal XA2 or only for those immortals with the newer libhybris? :D

wait for 3.3

rinigus
2020-03-03, 17:54
I guess we will make separate thread for Angelfish when more users will start using it. Just a warning - MR got merged which changed bookmarks and history format. We are using SQLite for storage of these data together with thumbs now. For simplicity of the coders and assuming that the users prefer to see fast progress, old bookmarks and history have been just dropped without any import.

taixzo
2020-03-03, 18:41
Is it possible to change the Plasma theme? I realize making it tie into the ambiance theme is unlikely, but at least being able to set a dark mode would be nice.

rinigus
2020-03-03, 18:50
Is it possible to change the Plasma theme? I realize making it tie into the ambiance theme is unlikely, but at least being able to set a dark mode would be nice.

I'd love to have it darker as well. Haven't searched extensively and don't have solution for it. Please feel free to look for how to do it. I saw some screenshots with darker theme somewhere and it does switch colors on desktop if you shift to dark gnome theme, for example.

taixzo
2020-03-03, 20:37
I did a bit of research and it seems there's a command "lookandfeeltool" to change the Plasma theme; however I'm not sure how to find out if I have it installed in the sandbox (running "flatpak run --command=sh org.kde.angelfish" just hangs, though launching the actual app works just fine).

rinigus
2020-03-03, 22:16
I did a bit of research and it seems there's a command "lookandfeeltool" to change the Plasma theme; however I'm not sure how to find out if I have it installed in the sandbox (running "flatpak run --command=sh org.kde.angelfish" just hangs, though launching the actual app works just fine).

Thanks! Strange that it hangs, seems to be correct. I don't see that program, though. There maybe some other ways to work in Flatpak as they have some extensions with themes. Would require more investigation, it seems.

rinigus
2020-03-04, 16:04
taixzo:

looks like we can add file ~/.var/app/org.kde.mobile.angelfish/config/kdeglobals with


[Theme]
name=breeze-dark


Now will have to think how to make it user friendly.

taixzo
2020-03-04, 18:27
Thanks! Also, it seems that it doesn't hang forever - after leaving it along for a few hours, I came back and discovered that I was finally in a flatpak shell.

rinigus
2020-03-04, 20:40
New Flatpak Runner is out: 0.7.0

This adds simple theme selection in KDE apps. By default, it follows Silica theme and sets KDE theme either to dark or light accordingly.
You could also specify light or dark theme and opt out of the feature.

Settings are done via file in home folder (~/.var/app/FLATPAK-ID/config/kdeglobals) that is overwritten every time you start the app.
So, if you opt out, either edit or remove the file accordingly.

Let me know if there are issues with it, as testing was rather limited.

coderus
2020-03-05, 12:07
org.telegram.desktop from flathub is working after adding env QT_QPA_PLATFORM=wayland, then crashing on some animated stickers ith: [swscaler @ 0xe32af050] No accelerated colorspace conversion found from yuv420p to bgra.

rinigus
2020-03-05, 12:26
org.telegram.desktop from flathub is working after adding env QT_QPA_PLATFORM=wayland, then crashing on some animated stickers ith: [swscaler @ 0xe32af050] No accelerated colorspace conversion found from yuv420p to bgra.

For some reason they have `--env=QT_QPA_PLATFORM=xcb` specified at https://github.com/flathub/org.telegram.desktop/blob/master/org.telegram.desktop.json#L20 . Commit at https://github.com/flathub/org.telegram.desktop/commit/5f2b9efffd3e2647bc75f1a4b0558ad02bd81a3c

I guess you have to check and maybe file issue with Telegram.

mosen
2020-03-05, 14:34
Finally i was able to join the (non-sideload) flatpak party by simply trying form workplace connection :P

Still, same issues from my home T-Online connection. I have Routers & Firewalls set up exactly the same in both locations so i suspect something on T-Online Germany side blocking connection to the repo somehow?
I can open the logo.svg icon specified in the remote tho. Weird.

https://dl.flathub.org/repo/logo.svg

taixzo
2020-03-05, 15:56
I have a similar issue with it only working from some connections; the issue appears to be that DNS is returning ipv6 addresses for the repo domains, but flatpak doesn't seem to know what to do with them. It works fine on networks where ipv4 is prioritized.

coderus
2020-03-05, 16:53
For some reason they have `--env=QT_QPA_PLATFORM=xcb` specified at https://github.com/flathub/org.telegram.desktop/blob/master/org.telegram.desktop.json#L20 . Commit at https://github.com/flathub/org.telegram.desktop/commit/5f2b9efffd3e2647bc75f1a4b0558ad02bd81a3c

I guess you have to check and maybe file issue with Telegram.

okay thats minor. but ddo you have any thoughts of swscaler?

found this: https://forum.manjaro.org/t/viewing-a-sticker-causes-telegram-desktop-to-crash-on-manjaroarm/119131/17

and this: https://github.com/AOSC-Dev/aosc-os-abbs/blob/stable/extra-web/telegram-desktop/autobuild/patches/tdesktop-lottie-swscale-hack.patch

...

coderus
2020-03-05, 19:25
pleaase add options to erase user data of flatpak

rinigus
2020-03-05, 19:55
I have a similar issue with it only working from some connections; the issue appears to be that DNS is returning ipv6 addresses for the repo domains, but flatpak doesn't seem to know what to do with them. It works fine on networks where ipv4 is prioritized.

Interesting. I wonder if its also extended to apps in Flatpak? I don't know what its using for downloading, maybe its IPv4 limited.

rinigus
2020-03-05, 19:58
okay thats minor. but ddo you have any thoughts of swscaler?

found this: https://forum.manjaro.org/t/viewing-a-sticker-causes-telegram-desktop-to-crash-on-manjaroarm/119131/17

and this: https://github.com/AOSC-Dev/aosc-os-abbs/blob/stable/extra-web/telegram-desktop/autobuild/patches/tdesktop-lottie-swscale-hack.patch

...

Looks like ARM-specific FFMPEG issue? Or its interaction with Telegram. As for thoughts, none :)


pleaase add options to erase user data of flatpak

Which data do you think about? One in .var or in .local/share/flatpak? While latter is possible via uninstall, the one in .var behaves similar to SFOS apps data

rinigus
2020-03-05, 20:17
Re FFMPEG: I wonder if there is some simple example with ffmpeg? For example running something in flatpak environment with the extension installed.

coderus
2020-03-05, 20:27
Looks like ARM-specific FFMPEG issue? Or its interaction with Telegram. As for thoughts, none :)




Which data do you think about? One in .var or in .local/share/flatpak? While latter is possible via uninstall, the one in .var behaves similar to SFOS apps data

animated stickers are lottie stuff, no idea if ffmeg is affect at all

for data i mean same what user can do with flatpak uninstall --delete-data appname but without uninstalling app? sometimes i screw app settings and want to start from scratch. reinstalling is an option, but easy way via flatpak runner can be simple solution.

taixzo
2020-03-05, 20:28
Interesting. I wonder if its also extended to apps in Flatpak? I don't know what its using for downloading, maybe its IPv4 limited.

I don't think so, because Angelfish doesn't seem to have any problem loading websites on that same network.
Where do you find Plasma flatpak apps? I had a look on flathub but there don't seem to be any there, and none of the KDE apps from there that I tried (e.g. kgoldrunner) worked.

rinigus
2020-03-05, 20:41
KDE Flatpak apps are in kdeapps:

flatpak remote-add --user --if-not-exists kdeapps --from https://distribute.kde.org/kdeapps.flatpakrepo

So, you could use remote-ls command to see what's available - far from easy to use flathub. I am using only Angelfish. There is a hope that Spectral (Matrix client) will get ported to Kirigami and will be usable on mobile. So far its not.

As for other apps, I haven't tried much. Many don't work, as far as I remember. For me, browser is good enough reason to use it :)

PS: Pure Maps and OSM Scout Server do work in Flatpak, except location is not known (Pure Maps). But they work better natively ...

rinigus
2020-03-05, 21:00
animated stickers are lottie stuff, no idea if ffmeg is affect at all

for data i mean same what user can do with flatpak uninstall --delete-data appname but without uninstalling app? sometimes i screw app settings and want to start from scratch. reinstalling is an option, but easy way via flatpak runner can be simple solution.

If you want to remove app data, `rm` is your friend:


rm -rf ~/.var/app/FLATPAK_ID


and you should be good to go. Its still installed and should just start as new

coderus
2020-03-05, 21:22
seems angelfish is broken after update..

rinigus
2020-03-06, 07:08
seems angelfish is broken after update..

As I don't see any breakage, you'd have to be more specific

BTW, I noticed that sometimes I have to remove QML and other caches on my device to get the latest version updates. For that, try


rm -rf ~/.var/app/org.kde.mobile.angelfish/cache


No idea why.

mousse04
2020-03-06, 14:17
Hi guys,

I've just followed the guideline to install flatpak and then angelfish, but when I launch angelfish it says Error code 139. Don't know if the error is the same reported by @Coderus. I'm on Xperia XA2

coderus
2020-03-06, 16:05
after another updaate it staarrted working again

was error:

[nemo@Sailfish ~]$ flatpak-runner org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-8
WAYLAND_DISPLAY="../../display/wayland-8" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-3HchXuYvXl,guid=dce393649c42c21c80460a135e627490" flatpak run --env=QT_WAYLAND_FORCE_DPI=191 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --filesystem=/plat_property_contexts:ro --filesystem=/nonplat_property_contexts:ro --device=all --talk-name=org.maliit.server --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --num-raster-threads=1 --enable-viewport --disable-composited-antialiasing --env=QTWEBENGINE_DISABLE_GPU_THREAD=1 --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.kde.mobile.angelfish
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:53 - file:///usr/share/flatpak-runner/qml/main.qml:53:26: Unable to assign [undefined] to bool
[C] unknown:0 - Failed to open database "/home/nemo/.var/app/org.kde.mobile.angelfish/data/KDE/angelfish/angelfish.sqlite"
terminate called after throwing an instance of 'std::runtime_error'
what(): Failed to open database /home/nemo/.var/app/org.kde.mobile.angelfish/data/KDE/angelfish/angelfish.sqlite
[D] expression for onExit:59 - Skipping quit as it will hang the window. Proper exit is needed

rinigus
2020-03-06, 17:14
Hi guys,

I've just followed the guideline to install flatpak and then angelfish, but when I launch angelfish it says Error code 139. Don't know if the error is the same reported by @Coderus. I'm on Xperia XA2

Unless you run unreleased SFOS version, as coderus does, XA2 is not ready yet. libhybris is too old

rinigus
2020-03-06, 18:23
after another updaate it staarrted working again

was error:

[nemo@Sailfish ~]$ flatpak-runner org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-8
WAYLAND_DISPLAY="../../display/wayland-8" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-3HchXuYvXl,guid=dce393649c42c21c80460a135e627490" flatpak run --env=QT_WAYLAND_FORCE_DPI=191 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --filesystem=/plat_property_contexts:ro --filesystem=/nonplat_property_contexts:ro --device=all --talk-name=org.maliit.server --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --num-raster-threads=1 --enable-viewport --disable-composited-antialiasing --env=QTWEBENGINE_DISABLE_GPU_THREAD=1 --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.kde.mobile.angelfish
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:53 - file:///usr/share/flatpak-runner/qml/main.qml:53:26: Unable to assign [undefined] to bool
[C] unknown:0 - Failed to open database "/home/nemo/.var/app/org.kde.mobile.angelfish/data/KDE/angelfish/angelfish.sqlite"
terminate called after throwing an instance of 'std::runtime_error'
what(): Failed to open database /home/nemo/.var/app/org.kde.mobile.angelfish/data/KDE/angelfish/angelfish.sqlite
[D] expression for onExit:59 - Skipping quit as it will hang the window. Proper exit is needed

Database folder creation issue was fixed last night, indeed.

balta
2020-03-06, 19:29
Would it be worth a try on the Jolla Tablet or do you now that it will not work, anyway? Do you have some x86 packages for this?

rinigus
2020-03-06, 19:39
Would it be worth a try on the Jolla Tablet or do you now that it will not work, anyway? Do you have some x86 packages for this?

While we have packages for Sailfish, there are no Flatpak packages for x86 32 bit with KDE 5.14. That's due to discontinuing of support for that platform.

Now, KDE 5.12 is available for i386. So, you could, if interested, build applications yourself. Just have to be ready to get hands dirty.

mousse04
2020-03-07, 08:02
Unless you run unreleased SFOS version, as coderus does, XA2 is not ready yet. libhybris is too old

Thanks. When, us, human :), are we getting a newer version of libhybris? With the upcoming 3.3.0 update?

Thanks

Mathieu

coderus
2020-03-07, 08:43
Thanks. When, us, human :), are we getting a newer version of libhybris? With the upcoming 3.3.0 update?

Thanks

Mathieu

in sfos 3.3 release

rinigus
2020-03-10, 18:41
The latest nightly of Angelfish brings it there (well one small cosmetic merge absent) where I wanted it to be. Now you can choose which navigation buttons are displayed in Settings. While the default is based on KDE requirements, its easy to make it into the bar that we are used to. In my case, I have: tabs, back, address, and reload buttons. Menu buttons are hidden.

To get into the main and context menus (left and right menus by default), all you have to do is to slide your finger along bottom border of the screen. Depending on direction, you will get either main or context menu. As, at least in my case, menus were mainly used to access back and reload buttons, I don't have much use for them if the buttons are out. Note that the menu buttons will appear in landscape mode as there is more screen space over there.

If you find issues, missing features, fill in bugs at https://invent.kde.org/kde/plasma-angelfish/issues (will have to register KDE account though). Except, be sure that its not related to Flatpak implementation at SFOS. For example, lack of support for <select> due to Wayland bugs.

coderus
2020-03-11, 11:27
https://github.com/sailfishos-flatpak/flatpak-runner/pull/17/files

Fixed popups. Cant get position to show it properly, so displaying in the center of screen

rinigus
2020-03-11, 13:07
https://github.com/sailfishos-flatpak/flatpak-runner/pull/17/files

Fixed popups. Cant get position to show it properly, so displaying in the center of screen

Thank you very much! I will test and review tonight. As for centering, its probably a valid approach. From testing earlier of the browser on Fedora/Wayland, it looks to me that the <select> widgets are put at (0,0) coordinates in QtWebEngine. In this respect, assuming that the patch covers it as well, centering makes more sense.

coderus
2020-03-11, 18:09
Thank you very much! I will test and review tonight. As for centering, its probably a valid approach. From testing earlier of the browser on Fedora/Wayland, it looks to me that the <select> widgets are put at (0,0) coordinates in QtWebEngine. In this respect, assuming that the patch covers it as well, centering makes more sense.

well, for example in telegram all notification popups are stacked on each other.. if any waylaand/compositor expert here :D

rinigus
2020-03-11, 18:45
@coderus: changes merged, thank you very much! It already improved <select> in HTML. As for overlapping notifications, cannot say much. I wonder whether we need to spend too much time on Wayland compositor, as surely Qt update is coming soon, right? :)

PS: I have no info regarding Qt update, don't get your hopes up. Feel free to read soon^{TM}

coderus
2020-03-11, 19:24
@coderus: changes merged, thank you very much! It already improved <select> in HTML. As for overlapping notifications, cannot say much. I wonder whether we need to spend too much time on Wayland compositor, as surely Qt update is coming soon, right? :)

PS: I have no info regarding Qt update, don't get your hopes up. Feel free to read soon^{TM}

new qt isn't coming any soon. my best hopes in compiling new stuff in /opt

rinigus
2020-03-11, 19:38
new qt isn't coming any soon. my best hopes in compiling new stuff in /opt

In this respect, its probably as good as sticking with Flatpak then. For /opt you would need the same Wayland compositor-in-compositor as Flatpak Runner. Except, Flatpak has few extra limitations, I guess (file save dialogs and such).

Yeah, I suspected that much as there is no visible activity in mer repos... Thanks for letting us know!

carlosgonz
2020-04-02, 20:28
SONY XPERIA X - SF-ROKUA


[nemo@Sailfish ~]$ flatpak install --user org.kde.mobile.angelfish
Looking for matches?
Usage: gpg-connect-agent [options] (-h for help)Usage: gpg-connect-agent [options] (-h for help)Found similar ref(s) for ?org.kde.mobile.angelfish? in remote ?kdeapps? (user).
Use this remote? [Y/n]: Y
Usage: gpg-connect-agent [options] (-h for help)Usage: gpg-connect-agent [options] (-h for help)Required runtime for org.kde.mobile.angelfish/arm/master (runtime/org.kde.Platform/arm/5.14) found in remote flathub
Do you want to install it? [Y/n]: Y

org.kde.mobile.angelfish permissions:
ipc network pulseaudio wayland x11 dri file access [1] dbus access [2] tags [3]

[1] home, xdg-config/kdeglobals:ro
[2] com.canonical.AppMenu.Registrar, org.freedesktop.Notifications
[3] nightly

ID Branch Op Remote Download
1. [?] org.kde.Platform.Locale 5.14 i flathub 1.0 kB / 337.0?MB
2. [?] org.kde.Platform 5.14 i flathub 1.0 kB / 282.7?MB
3. [ ] org.kde.mobile.angelfish master i kdeapps < 47.2?MB

Warning: Failed to read commit 5aab5ef11ea869dbf035c24593164f1ce1865afec0d2940587 73697c043d11b1: No such metadata object c6dd096e6359f64131e4ed4d57439708834cfe46fe7cf87bee 55c7b223cd71d0.dirtree
Installing 2/3? ???????????????????? 100% 98 bytes/s 00:00error: Failed to install org.kde.Platform: While trying to checkout 369b3f9f6a8f78699502df53fe653562fbfde76a18dc373175 f2592b0a02c686 into /home/nemo/.local/share/flatpak/runtime/org.kde.Platform/arm/5.14/.369b3f9f6a8f78699502df53fe653562fbfde76a18dc37317 5f2592b0a02c686-P8RJI0: Opening content object a28c6d9f509aaaac286705a47cbc1f2842121d8f5dc3f6c472 6ae154d6bb0001: Couldn't find file object 'a28c6d9f509aaaac286705a47cbc1f2842121d8f5dc3f6c47 26ae154d6bb0001'

atlochowski
2020-04-02, 21:01
@carlosgonz

flatpak --user repair

carlosgonz
2020-04-02, 21:09
@carlosgonz

flatpak --user repair

Yes Yes Yes Yes fixed. Big thanks at you.

Jedibeeftrix
2020-04-03, 07:17
Video says following features for SFOS 3.3 - GCC 8.3 and flatpak support. Smashing!

https://www.youtube.com/watch?v=cG957dy_ZPM&feature=youtu.be

Does this also suggest that 3.3 has moved to QT 5.9.x?

atlochowski
2020-04-03, 08:12
Video says following features for SFOS 3.3 - GCC 8.3 and flatpak support. Smashing!

https://www.youtube.com/watch?v=cG957dy_ZPM&feature=youtu.be

Does this also suggest that 3.3 has moved to QT 5.9.x?

No, it doesn't

Jedibeeftrix
2020-04-03, 08:53
what does it say? In watching the video this morning I'm pretty sure it mentioned gcc and flatpak...

atlochowski
2020-04-03, 09:17
what does it say? In watching the video this morning I'm pretty sure it mentioned gcc and flatpak...

It doesn't suggest that 3.3 has moved to QT 5.9.x. Still 5.6.
But newer gcc and flatpak support it's present in 3.3.0.14.

Jedibeeftrix
2020-04-03, 09:20
apologies for misunderstanding, thank you.

rinigus
2020-04-03, 13:22
As we are getting to more widespread use, I have added 'App tips' section in
https://github.com/sailfishos-flatpak/main/blob/master/README.md#app-specific-tips

Currently it addresses scaling issues with the apps (too large fonts in Angelfish, for example). Feel free to extend via PRs to add your tips.

coderus
2020-04-03, 13:40
As we are getting to more widespread use, I have added 'App tips' section in
https://github.com/sailfishos-flatpak/main/blob/master/README.md#app-specific-tips

Currently it addresses scaling issues with the apps (too large fonts in Angelfish, for example). Feel free to extend via PRs to add your tips.

thanks, done: https://github.com/sailfishos-flatpak/main/compare/master...CODeRUS:patch-1

rinigus
2020-04-03, 13:47
thanks, done: https://github.com/sailfishos-flatpak/main/compare/master...CODeRUS:patch-1

merge request created and merged. Thanks!

carlosgonz
2020-04-03, 15:40
So what is the scaling or dpi normal in a sony xperia x, now is looking zoomed Angelfish.

rinigus
2020-04-03, 15:45
So what is the scaling or dpi normal in a sony xperia x, currently is look zoomed Angelfish.

https://lmgtfy.com/?q=sony+xperia+x+dpi&s=d

and look into recommended settings for Angelfish in the README referred before :)

carlosgonz
2020-04-03, 20:07
https://lmgtfy.com/?q=sony+xperia+x+dpi&s=d

and look into recommended settings for Angelfish in the README referred before :)

Thank you. It is possible be translated the qml-Flatpak-runner app to be easy for end user?

taixzo
2020-04-03, 20:59
Is this useful for any apps besides angelfish and telegram?

rinigus
2020-04-04, 07:02
Is this useful for any apps besides angelfish and telegram?

Excellent and important question!

In my eyes, no, it is not.

I am using it with Angelfish mainly. I have tried Mirage (https://github.com/mirukana/mirage, have to compile flatpak yourself until its published on Flathub), but it has some touch screen issues - although is usable. However, I hope that SFOS Matrix client will show up and I don't need Mirage on SFOS.

The whole project was started to get access to current libs and web browser. The best bet, taking into account QtWayland situation (no Gtk apps possible), turned out to be QtWebengine and corresponding web browser. Hence my participation in Angelfish development and its use.

Good thing about Angelfish is that it should be relatively simple to convert it to SFOS native app iff we get Qt updates. So, I consider it as an investment and it makes sense to join forces in browser development.

As for other apps, we are in rather good state with the apps when you compare with the others. In theory (haven't tried), its possible to package ubuntu touch apps to flatpaks as well. But it takes effort and someone has to be interested enough to make it.

My own plans, with the respect of Flatpak support, are modest. I don't plan to work on it much as it does what I need. Others are very welcome to join and fix issues as they find them. For example, if you wish to get ability to upload/download files via Angelfish, Flatpak would need to get support for the corresponding portals (file system access). So, you would have to read up on it, figure out used API, and implement it.

There are bugs, those that I know of are listed at https://github.com/sailfishos-flatpak/main/issues . Again, feel free to work on them and I will help as much as I can.

Flatpak will be able to make more if we get access to the newer Qt libs and corresponding QtWayland update. That would allow to use/write/adapt better composer in Flatpak Runner and get ability to run Gtk apps developed by Purism folks. Ironically, at the same time, we will be able to use newer Qt libs natively reducing the need of flatpak on SFOS. So, let's see what will be the situation when/if Qt update happens. Or, we all move on to somewhere else due to the inability to develop/run current software.

As for my time, I'd prefer to allocate it to the apps development (maps, browser, maybe something else) and ensuring that Sony Tama port is up to date.

rinigus
2020-04-04, 07:04
Thank you. It is possible be translated the qml-Flatpak-runner app to be easy for end user?

Sure, I should look into it. Issue opened: https://github.com/sailfishos-flatpak/flatpak-runner/issues/18

monkeyisland
2020-04-04, 09:44
hi ringius.
i successfully installed flatpak on my xperia f53121.
but no icon of angelfish is appearing.
is there a fix which i can manage myselfon my jolla c
i have the icons but angelfish is not working because i think it is only working on sony devices?
or is therr a simple workaround too?

rinigus
2020-04-04, 09:51
hi ringius.
i successfully installed flatpak on my xperia f53121.
but no icon of angelfish is appearing.
is there a fix which i can manage myselfon my jolla c
i have the icons but angelfish is not working because i think it is only working on sony devices?
or is therr a simple workaround too?

Have you installed Angelfish? After installation you have to run Flatpak Runner (desktop icon should be there) and it will create an icon for you for all installed flatpak apps

monkeyisland
2020-04-04, 09:53
yes i did i perform a new clean install.

no icon

rinigus
2020-04-04, 10:18
yes i did i perform a new clean install.

no icon

To be sure that we speak about the same things:

* do you have flatpak-runner command available?

* did you install using devel-su zypper in flatpak flatpak-runner

* please paste the output of flatpak list from ssh/terminal.

monkeyisland
2020-04-04, 10:31
I install new.

here a screenshot

monkeyisland
2020-04-04, 10:42
Afer installation the device performed a reboot itself.

Flatpak list.

shows

But no starter with angelfish :o

rinigus
2020-04-04, 10:51
First, it should not reboot itself, you will have to figure out what's going on. But looks like it managed to install all what's needed.

Second:

have you installed flatpak-runner? You are expected to install that as well, its Sailfish app. Now start in terminal (or from launcher)

flatpak-runner

It will show you the list of installed apps. Angelfish should be recognized and in that list. After that, Angelfish will be available in the icon list of the launcher

rinigus
2020-04-04, 10:52
PS: You are on SFOS 3.3.xxx, right?

monkeyisland
2020-04-04, 11:04
yes installed it

it is very funny that i dont get an icon
:p

yes

when i install flatpak and flatpak-runner how much
packages i get 2?

in a screenshot in this thread from another user there where 12 packages:;)

rinigus
2020-04-04, 11:15
yes installed it

it is very funny that i dont get an icon
:p

yes

when i install flatpak and flatpak-runner how much
packages i get 2?

in a screenshot in this thread from another user there where 12 packages:;)

You will pull few dependencies, sure. Don't remember the count though.

OK, then let's try differently. Try to run

flatpak-runner org.kde.mobile.angelfish

from terminal. Something feels amiss and I don't get what

monkeyisland
2020-04-04, 11:29
So i find the package i meant here:

http://talk.maemo.org/showpost.php?p=1565078&postcount=41

So i removed the package disable your repo.
pkcon refresh
all right
then enable your repo.
and maked a clean install of flatpak-runner and flatpak.

and now this :

:o

here the packages with repo info:

rinigus
2020-04-04, 11:41
There is a reason README is written. Please follow installation guide at https://github.com/sailfishos-flatpak/main . These dependencies are needed for what makes flatpak tick.

monkeyisland
2020-04-04, 11:57
okay so i ignore the warning i install it
;)

rinigus
2020-04-04, 11:59
okay so i ignore the warning i install it
;)

Looks like warning is coming from new package in 3.3 SFOS. as I compiled all for SFOS 3.2 and haven't updated yet, you can either ignore or not install and wait for few weeks (until Sony Tama is updated and flatpak packages will move to 3.3)

monkeyisland
2020-04-04, 12:05
Here evtl. an error with .svg pictures icons?

41048

otherwise succes with terminal.
but no icon on desktop :o

41049

rinigus
2020-04-04, 12:10
What happens if you run flatpak-runner without any arguments? does it show Angelfish? Did it create icon in launcher then?

Nekron
2020-04-04, 12:14
Installing flatpak on XA2 and X gave me the following package conflict:

File /usr/lib/libjson-glib-1.0.so.0.400.4
from install of
json-glib-1.4.4-1.8.1.jolla.armv7hl (rinigus-flatpak)
conflicts with file from package
libjson-glib-1.4.4-1.2.1.jolla.armv7hl (@System)


Seems like Jolla is using an older version of libjson vs. Rinigus repository. I'm not sure if this will break OS stuff that depends on the Jolla provided json-glib or is it safe (having future OS updates in mind) to override this conflict?

rinigus
2020-04-04, 12:19
Installing flatpak on XA2 and X gave me the following package conflict:

File /usr/lib/libjson-glib-1.0.so.0.400.4
from install of
json-glib-1.4.4-1.8.1.jolla.armv7hl (rinigus-flatpak)
conflicts with file from package
libjson-glib-1.4.4-1.2.1.jolla.armv7hl (@System)


Seems like Jolla is using an older version of libjson vs. Rinigus repository. I'm not sure if this will break OS stuff that depends on the Jolla provided json-glib or is it safe (having future OS updates in mind) to override this conflict?

I think its the same version (difference is in the last digits). As for whether it will break anything, I don't know. As stated above, I will be able to work on SFOS 3.3. only in few weeks

monkeyisland
2020-04-04, 12:22
No icon :o

evtl. these helps?

41050

otherwise i can start angelfish from terminal.

rinigus
2020-04-04, 13:57
Looks like sfos 3.3 is not at OBS yet. So, will have to wait with conflict resolution for it. As for absent icon, no idea why is it.

LouisDK
2020-04-04, 15:36
I tried installing flatpak on my spare Jolla C running 3.3.0.14 by following these instructions: https://github.com/sailfishos-flatpak/main

ssu addrepo rinigus-flatpak http://repo.merproject.org/obs/home:/rinigus:/flatpak/sailfish_latest_armv7hl/
devel-su zypper ref
devel-su zypper in flatpak flatpak-runner

But it fails after running: devel-su zypper in flatpak flatpak-runner[

Loading repository data...
Reading installed packages...
Resolving package dependencies...
2 Problems:
Problem: nothing provides libgdk_pixbuf-2.0.so.0 needed by flatpak-1.6.2.0-1.21.1.jolla.armv7hl
Problem: nothing provides libgdk_pixbuf-2.0.so.0 needed by flatpak-1.6.2.0-1.21.1.jolla.armv7hl

Problem: nothing provides libgdk_pixbuf-2.0.so.0 needed by flatpak-1.6.2.0-1.21.1.jolla.armv7hl
Solution 1: do not install flatpak-1.6.2.0-1.21.1.jolla.armv7hl
Solution 2: break flatpak-1.6.2.0-1.21.1.jolla.armv7hl by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/s/r/c] (c):

I can't seem to find libgdk_pixbuf-2.0.so.0 compiled for Sailfish neither in the repos nor on openrepos.

rinigus
2020-04-04, 15:54
I tried installing flatpak on my spare Jolla C running 3.3.0.14 by following these instructions: https://github.com/sailfishos-flatpak/main



But it fails after running: devel-su zypper in flatpak flatpak-runner[



I can't seem to find libgdk_pixbuf-2.0.so.0 compiled for Sailfish neither in the repos nor on openrepos.

Sounds like incompatibility between 3.2 and 3.3 SFOS. You'll better wait till 3.3 lands at OBS and we can build packages against it.

atlochowski
2020-04-04, 17:33
I tried installing flatpak on my spare Jolla C running 3.3.0.14 by following these instructions: https://github.com/sailfishos-flatpak/main



But it fails after running: devel-su zypper in flatpak flatpak-runner[



I can't seem to find libgdk_pixbuf-2.0.so.0 compiled for Sailfish neither in the repos nor on openrepos.

Interesting because I installed flatpak-runner on my Jolla C without any problems.
When you install flatpak-runner remember to enlarge your root partition because it's too small to install angelfish with all dependecies.

carlosgonz
2020-04-04, 17:34
Sounds like incompatibility between 3.2 and 3.3 SFOS. You'll better wait till 3.3 lands at OBS and we can build packages against it.

I got reboot itself on installing Flatpak dependecies. About sf-3.3 @mosen showed sf-3.3 in fixtec pro device, also i have problem with Angelfish icon.

rinigus
2020-04-04, 17:42
Interesting because I installed flatpak-runner on my Jolla C without any problems.
When you install flatpak-runner remember to enlarge your root partition because it's too small to install angelfish with all dependecies.

When you use --user you install at your home folder, not root partition

The icon issues could be due to some error or some assumption that I made which is not valid for other cases.

But note: it is assumed that you use --user while install flatpak packages.

PS: don't like those reboots, something is wrong. Maybe that's what EA is for...

carlosgonz
2020-04-04, 19:48
Seems that the flatpak icons issues is to sf-rokua.

LouisDK
2020-04-04, 21:36
Interesting because I installed flatpak-runner on my Jolla C without any problems.
When you install flatpak-runner remember to enlarge your root partition because it's too small to install angelfish with all dependecies.

I do this is a size issue. As stated flatpak refuse to install due to "libgdk_pixbuf" not being available. Do you have a package named something like "libgdk_pixbuf" to be present on your Jolla C?

juz
2020-04-04, 21:39
I too have had some issues installing Flatpak support on my xperia X running 3.3.
At the completion of installing both angelfish and telegram-desktop my device immediately rebooted. Angelfish runs, though with a little lag, so I assume that completed successfully. I haven't managed to start telegram though.
I too have no desktop icon for angelfish or telegram following installation.
Not sure what other information I can provide to assist.
Thanks very much .

eson
2020-04-05, 05:54
Just want to report that I got flatpak support and Angelfish up and running on my Xperia X, with no problem at all. :D
Thanks, @rinigus!

rinigus
2020-04-05, 07:06
These reports are rather confusing. @eson, thanks for telling that it worked - this makes me to dig deeper.

For users with reboots, missing icons. Please provide output of the following commands. Run those via ssh in PC, so you could paste the output and not make screenshots.


flatpak list --user
flatpak list --system
du -sh ~/.local/share/flatpak/
ls -l ~/.local/share/applications


When you start flatpak-runner from terminal WITHOUT any other options, do you see installed apps listed in flatpak-runner window?

Looks like your issues are reproducible, so I presume output of one is sufficient. Others, please check if you have the same as the reported one, when we get there.

As for gdk_... , I don't know and can look into it when OBS 3.3 is up

coderus
2020-04-05, 08:13
in russian sfos telegram chat i've seen users ran into issues with flatpaks by issuing flatpak command as root user.

juz
2020-04-05, 08:28
Hi Rinigus,
Thanks for all the development and thanks for looking into this.
Following your list of commands I end up with the following:
,---
| Sailfish OS 3.3.0.14 (Rokua)
'---
[nemo@Sailfish ~]$ flatpak list --user
Name Application ID Version Branch Origin
default org.freedesktop.Platform.GL.default 19.08 flathub
ffmpeg-full org.freedesktop.Platform.ffmpeg-full 19.08 flathub
KDE Application Pl? org.kde.Platform 5.14 flathub
Maliit plugin for ? ?tformInputContexts.MaliitSailfishOS 5.14 flathub
Angelfish Webbrows? org.kde.mobile.angelfish master kdeapps
Telegram Desktop org.telegram.desktop 2.0.1 stable flathub
[nemo@Sailfish ~]$ flatpak list --system
[nemo@Sailfish ~]$ du -sh ~/.local/share/flatpak/
984.3M /home/nemo/.local/share/flatpak/
[nemo@Sailfish ~]$ ls -l ~/.local/share/applications
total 4
lrwxrwxrwx 1 nemo nemo 32 Nov 4 2018 defaults.list -> /home/nemo/.config/mimeapps.list
-rw-rw-r-- 1 nemo nemo 50 Feb 5 21:10 mimeapps.list
[nemo@Sailfish ~]$ flatpak-runner
Starting empty Wayland server and enabling settings
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-1
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[D] unknown:0 - Got library name: "/usr/lib/qt5/qml/io/thp/pyotherside/libpyothersideplugin.so"



I see simply "Default settings" in Flatpak Runner after launching it from terminal.

This is all using 3.3.0.14 SFOS on Xperia X. For what is worth the native email app is also incredibly laggy after update, so maybe something deeper is wrong with my phone. Have to look at that seperately.

Thanks again for your help,
Justin.

rinigus
2020-04-05, 11:21
That looks like all is installed correctly. I suggest to uninstall angelfish and telegram. After that, run

flatpak repair --user

and install Angelfish only. It should not reboot, btw.

Would that help?

juz
2020-04-05, 11:35
Hi Rinigus,
Thanks for your help.
I started following your instructions, I started by uninstalling angelfish, and the Xperia X rebooted itself. Here is the terminal:
[nemo@Sailfish ~]$ flatpak uninstall --user angelfish
Found installed ref ?app/org.kde.mobile.angelfish/arm/master? (user). Is this correct? [Y/n]: y


ID Branch Op
1. [-] org.kde.mobile.angelfish master r

Uninstalling?



After that the phone rebooted.
I shall keep going?

Thanks,

juz
2020-04-05, 11:37
Uninstall of telegram resulted in the same behaviour.

rinigus
2020-04-05, 11:40
Try still to uninstall and then repair before installing again. Reboot sounds as a bug of SFOS or flatpak. But let's see where you get

juz
2020-04-05, 11:57
I issued the uninstall command for both angelfish and telegram as I noted above. Both resulted in a restart.
On following the repair and reinstall of Angelfish I found the following:
[nemo@Sailfish ~]$ flatpak repair --user
Working on the user installation at /home/nemo/.local/share/flatpak
Verifying deploy/runtime/org.kde.PlatformInputContexts.MaliitSailfishOS/arm/5.14?
Verifying deploy/runtime/org.kde.Platform.Locale/arm/5.14?
Verifying flathub:runtime/org.kde.PlatformInputContexts.MaliitSailfishOS/arm/5.14?
Verifying flathub:runtime/org.kde.Platform/arm/5.14?
Verifying deploy/app/org.kde.mobile.angelfish/arm/tmp.ELgD0A?
Verifying deploy/runtime/org.freedesktop.Platform.GL.default/arm/19.08?
Verifying deploy/runtime/org.freedesktop.Platform.ffmpeg-full/arm/19.08?
Verifying deploy/runtime/org.kde.Platform/arm/5.14?
Verifying kdeapps:app/org.kde.mobile.angelfish/arm/master?
Verifying deploy/app/org.telegram.desktop/arm/tmp.bD8Zsm?
Verifying flathub:runtime/org.freedesktop.Platform.GL.default/arm/19.08?
Verifying flathub:runtime/org.kde.Platform.Locale/arm/5.14?
Verifying flathub:app/org.telegram.desktop/arm/stable?
Verifying flathub:runtime/org.freedesktop.Platform.ffmpeg-full/arm/19.08?
Pruning objects
[nemo@Sailfish ~]$ flatpak install --user angelfish
Looking for matches?
Usage: gpg-connect-agent [options] (-h for help)Usage: gpg-connect-agent [options] (-h for help)Found similar ref(s) for ?angelfish? in remote ?kdeapps? (user).
Use this remote? [Y/n]: y
Found ref ?app/org.kde.mobile.angelfish/arm/master? in remote ?kdeapps? (user).
Use this ref? [Y/n]: y
Skipping: org.kde.mobile.angelfish/arm/master is already installed
[nemo@Sailfish ~]$


So I think the uninstall must not have completed prior to reboot.
The device has not suffered from reboots at any other stage in it's life.

There is still no icon, and still just "Default settings" in Flatpak Runner.

juz
2020-04-05, 11:59
I should of added that Angelfish launches and runs.

juz
2020-04-05, 12:39
Last post for the evening:

After several reboots and issueing flatpak uninstall commands I eventually got angelfish and telegram uninstalled.

I then repaired.

And then reinstalled angelfish. My device then rebooted.

On completion, Angelfish now has an icon, and now shows up in flatpak runner, and opens and runs.

[nemo@Sailfish ~]$ flatpak list --user
Name Application ID Version Branch
default org.freedesktop.Platform.GL.default 19.08
ffmpeg-full org.freedesktop.Platform.ffmpeg-full 19.08
KDE Application Platf? org.kde.Platform 5.14
Maliit plugin for Sai? ?.PlatformInputContexts.MaliitSailfishOS 5.14
[nemo@Sailfish ~]$ flatpak repair --user
Working on the user installation at /home/nemo/.local/share/flatpak
Verifying deploy/runtime/org.kde.PlatformInputContexts.MaliitSailfishOS/arm/5.14?
Verifying deploy/runtime/org.kde.Platform.Locale/arm/5.14?
Verifying flathub:runtime/org.kde.PlatformInputContexts.MaliitSailfishOS/arm/5.14?
Verifying flathub:runtime/org.kde.Platform/arm/5.14?
Verifying deploy/app/org.kde.mobile.angelfish/arm/tmp.ELgD0A?
Verifying deploy/runtime/org.freedesktop.Platform.GL.default/arm/19.08?
Verifying deploy/runtime/org.freedesktop.Platform.ffmpeg-full/arm/19.08?
Verifying deploy/runtime/org.kde.Platform/arm/5.14?
Verifying flathub:runtime/org.kde.Platform.Locale/arm/5.14?
Verifying deploy/app/org.telegram.desktop/arm/tmp.bD8Zsm?
Verifying flathub:runtime/org.freedesktop.Platform.GL.default/arm/19.08?
Verifying flathub:runtime/org.freedesktop.Platform.ffmpeg-full/arm/19.08?
Pruning objects
Erasing .removed
[nemo@Sailfish ~]$ flatpack install --user angelfish
-bash: flatpack: command not found
[nemo@Sailfish ~]$ flatpak install --user angelfish
Looking for matches?
Usage: gpg-connect-agent [options] (-h for help)Usage: gpg-connect-agent [options] (-h for help)Found similar ref(s) for ?angelfish? in remote ?kdeapps? (user).
Use this remote? [Y/n]: y
Found ref ?app/org.kde.mobile.angelfish/arm/master? in remote ?kdeapps? (user).
ID Branch Op Remote Download
1. [/] org.kde.Platform.Locale 5.14 u flathub 158.2?MB / 337.0?MB
2. [ ] org.kde.mobile.angelfish master i kdeapps < 47.2?MB

ID Branch Op Remote Download
ID Branch Op Remote Downlo ID Branch Op Remote Download
ID Branch Op Remote Download
ID Branch Op Remote Download
1. [?] org.kde.Platform.Locale 5.14 u flathub 182.0?MB / 337.0?MB
2. [?] org.kde.mobile.angelfish master i kdeapps 19.2?kB / 47.2?MB

Installing 2/2? ???????????????????? 100% 3.2?kB/s 00:00



These reboots don;t seem to be helping.

Rinigus, thanks for all your help tonight.

rinigus
2020-04-05, 13:36
It is worrisome that the device reboots. It sounds like installation is interrupted and something triggers reboot. But great that you managed to make it work.

Now, we do have setuid application installed - flatpak-bwrap . It doesn't have to be setuid while you install apps. So, if someone who can trigger reboots by installation or removal could strip setuid from /usr/libexec/flatpak-bwrap and try again, that would be helpful. If you get reboots even then, its bug of the OS (or RAM pressure). Just don't forget to make setuid again, otherwise flatpak will not work.

juz
2020-04-06, 00:26
I am happy to try this, though I have not been able to work out how to strip setuid out of flatpak-bwrap. I thought it might be editable in VIM. Doesn’t look like that is true though. Can anyone give further instruction?
Thanks,

carmenfdezb
2020-04-06, 08:44
Hi rinigus!
I have two questions about angelfish:
1) Copy/Paste into angelfish doesn't work, right?
2) I would like to use angelfish like default browser, but it doesn't work that well: I can open an url with angelfish but it doesn't start in that url
Thanks for your work!

rinigus
2020-04-06, 14:10
juz: you need to use chmod

- to remove setuid:

devel-su chmod 755 /usr/libexec/flatpak-bwrap

- to set it back

devel-su chmod 4755 /usr/libexec/flatpak-bwrap


carmenfdezb:

1. copy and paste work if you want to paste sailfish into angelfish. this is done by selecting the field where you want to paste for editing and pasting via keyboard

2. copy and paste works from angelfish to angelfish. for that, select text, copy it, go to the editing of some field and press paste button appeating next to it.

3. copy and paste from angelfish to sailfish does not work. that will require some wizard interested in it and implementing some kind of copy/paste buffer handling on flatpak/wayland side of flatpak runner and, easier part probably, syncing it with sfos keyboard.

4. url handling works for the start only. but, its not hooked into mime types and, to be more reasonable, we have to implement proper single app starting support in angelfish and flatpak-runner. probably will be done, but don't hold your breath. I'll try to remember to open single app support and mime handling issue at angelfish repo. after that is implemented, will look into flatpak-runner part. feel free to ping me in a week regarding it.

carmenfdezb
2020-04-06, 14:41
carmenfdezb:

1. copy and paste work if you want to paste sailfish into angelfish. this is done by selecting the field where you want to paste for editing and pasting via keyboard

2. copy and paste works from angelfish to angelfish. for that, select text, copy it, go to the editing of some field and press paste button appeating next to it.

3. copy and paste from angelfish to sailfish does not work. that will require some wizard interested in it and implementing some kind of copy/paste buffer handling on flatpak/wayland side of flatpak runner and, easier part probably, syncing it with sfos keyboard.

4. url handling works for the start only. but, its not hooked into mime types and, to be more reasonable, we have to implement proper single app starting support in angelfish and flatpak-runner. probably will be done, but don't hold your breath. I'll try to remember to open single app support and mime handling issue at angelfish repo. after that is implemented, will look into flatpak-runner part. feel free to ping me in a week regarding it.

Thanks for all your answer!!

I didn't know that 2) works, I was using paste option from keyboard :confused:

Maybe the most important point for copy/paste text feature is 3)

carmenfdezb
2020-04-06, 14:48
carmenfdezb:

1. copy and paste work if you want to paste sailfish into angelfish. this is done by selecting the field where you want to paste for editing and pasting via keyboard

2. copy and paste works from angelfish to angelfish. for that, select text, copy it, go to the editing of some field and press paste button appeating next to it.

3. copy and paste from angelfish to sailfish does not work. that will require some wizard interested in it and implementing some kind of copy/paste buffer handling on flatpak/wayland side of flatpak runner and, easier part probably, syncing it with sfos keyboard.

4. url handling works for the start only. but, its not hooked into mime types and, to be more reasonable, we have to implement proper single app starting support in angelfish and flatpak-runner. probably will be done, but don't hold your breath. I'll try to remember to open single app support and mime handling issue at angelfish repo. after that is implemented, will look into flatpak-runner part. feel free to ping me in a week regarding it.


I didn't know that 2) works, I was using paste option from keyboard :confused:
Maybe the most important point for copy/paste text feature is 3) and it would be really nice that 4) feature will work some day.

Thanks for all your answers!!

carmenfdezb
2020-04-06, 14:56
carmenfdezb:

1. copy and paste work if you want to paste sailfish into angelfish. this is done by selecting the field where you want to paste for editing and pasting via keyboard

2. copy and paste works from angelfish to angelfish. for that, select text, copy it, go to the editing of some field and press paste button appeating next to it.

3. copy and paste from angelfish to sailfish does not work. that will require some wizard interested in it and implementing some kind of copy/paste buffer handling on flatpak/wayland side of flatpak runner and, easier part probably, syncing it with sfos keyboard.

4. url handling works for the start only. but, its not hooked into mime types and, to be more reasonable, we have to implement proper single app starting support in angelfish and flatpak-runner. probably will be done, but don't hold your breath. I'll try to remember to open single app support and mime handling issue at angelfish repo. after that is implemented, will look into flatpak-runner part. feel free to ping me in a week regarding it.

I didn't know that 2) works, I was using paste option from keyboard :confused:
Maybe the most important point for copy/paste text feature is 3) and it would be really nice that 4) feature will work some day.

Thanks for all your answers!!

rinigus
2020-04-06, 20:01
I have opened translation project at https://www.transifex.com/rinigus/flatpak-runner/ . All as usual: languages have to be requested and then translation done. After that, I'll be able to pull it into the code.

juz
2020-04-07, 03:54
Hi Rinigus,
Stripping setuid certainly seems to have worked.
No reboots on installation. Install completes, and angelfish shows up in flatpak-runner, as does the angelfish desktop icon.
Every flatpak install (or uninstall) command issued the following warning between 1 and 3 times:
bwrap: Can’t mount devpts on /newroot/dev/pts: Operation not permitted
Despite this, the command reports completion and everything seems to work.
On a side note, telegram doesn’t start. The GUI window reports “Application finished with exit code 134” and the terminal looks like this:
Last login: Tue Apr 7 13:27:43 2020 from 172.20.10.1
,---
| Sailfish OS 3.3.0.14 (Rokua)
'---
[nemo@Sailfish ~]$ flatpak list --user
Name Application ID Version Branch Origin
default org.freedesktop.Platform.GL.default 19.08 flathub
ffmpeg-full org.freedesktop.Platform.ffmpeg-full 19.08 flathub
KDE Application Platform org.kde.Platform 5.14 flathub
Maliit plugin for SailfishOS org.kde.PlatformInputContexts.MaliitSailfishOS 5.14 flathub
Angelfish Webbrowser org.kde.mobile.angelfish master kdeapps
Telegram Desktop org.telegram.desktop 2.0.1 stable flathub
[nemo@Sailfish ~]$ flatpak-runner org.telegram.desktop
Starting: org.telegram.desktop
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-1
WAYLAND_DISPLAY="../../display/wayland-1" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-SNrqq3t4Q8,guid=f6b4913f7c0ddd07f11975ae5e8bf82d" flatpak run --env=QT_WAYLAND_FORCE_DPI=446 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --num-raster-threads=1 --enable-viewport --disable-composited-antialiasing --env=QTWEBENGINE_DISABLE_GPU_THREAD=1 --env=QT_QPA_PLATFORM=wayland= --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib org.telegram.desktop
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:53 - file:///usr/share/flatpak-runner/qml/main.qml:53:26: Unable to assign [undefined] to bool
[W] unknown:0 - Could not find the Qt platform plugin "wayland=" in ""
[F] unknown:0 - This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, xcb.

[D] expression for onExit:59 - Skipping quit as it will hang the window. Proper exit is needed

Note that setuid was readded, and angelfish runs well. Also note that the environmental variable QT_QPA_PLATFORM=wayland was added.

Thanks again for all your help,

rinigus
2020-04-07, 06:23
juz: just to be clear - do you still need setuid to run Angelfish? for me it fails to run without setuid.

Thanks for testing. I hope it will be fixed by recompiling against SFOS 3.3, but time will tell.

As for Telegram, maybe coderus can help out. I don't use it myself.

juz
2020-04-07, 08:33
Hi Rinigus,
I hadn't tried running angelfish without restoring setuid. However I have just ran the following:
devel-su chmod 455 /usr/libexec/flatpak-bwrap
I entered my password, and ran:
flatpak-runner org.kde.mobile.angelfish
Angelfish starts and seems to run as per usual.
I can provide more info if required,
thanks again,

coderus
2020-04-07, 08:43
juz: you mistyped QT_QPA_PLATFORM env value with unwanted = at the end (for telegram)

rinigus
2020-04-07, 09:05
Hi Rinigus,
I hadn't tried running angelfish without restoring setuid. However I have just ran the following:
devel-su chmod 455 /usr/libexec/flatpak-bwrap
I entered my password, and ran:
flatpak-runner org.kde.mobile.angelfish
Angelfish starts and seems to run as per usual.
I can provide more info if required,
thanks again,

chmod is expected to be 755, not 455. However, it doesn't change the use for you... Very interesting. This means that either there are changes in kernel options or some extra difference in XZ2 and official Xperia devices. Will learn more when I get to 3.3 SFOS.

coderus: good catch!

juz
2020-04-07, 10:28
Hi Coderus,
I had seen that extra = in the terminal output and couldn’t understand it as it was not shown in the flatpak runner GUI. However, I had typed the whole item on the name line and nothing on the value line! Now I understand how the layout works. Upon entering the correct name and value all works. Thanks for taking a look and for your feedback.
Hi Rinigus,
I wrote the previous post on my phone and that was a typo. I have just checked my terminal and it was 755 I had written. Sorry for the typo.
Thanks for all the work and help getting my installation set up.

Kopekenscheich
2020-04-08, 03:58
Hi everyone,

just stopping by to say thanks to all involved for making this happen!

Running Angelfish on i4293 and 3.3.0.14 Rokua. Feels really good to have an up to date browser for once.

Telegram Desktop has a few hickups but then there’s the native Depecher or Telegra’me.

What other KDE apps might be worth a try?

rinigus
2020-04-08, 06:59
Hi everyone,

just stopping by to say thanks to all involved for making this happen!

Running Angelfish on i4293 and 3.3.0.14 Rokua. Feels really good to have an up to date browser for once.

Telegram Desktop has a few hickups but then there’s the native Depecher or Telegra’me.

What other KDE apps might be worth a try?

you are welcome. as mentioned earlier (probably few pages back in history), regarding other apps: no, not to my knowledge

Nekron
2020-04-08, 11:31
Installing flatpak on XA2 and X gave me the following package conflict:

File /usr/lib/libjson-glib-1.0.so.0.400.4
from install of
json-glib-1.4.4-1.8.1.jolla.armv7hl (rinigus-flatpak)
conflicts with file from package
libjson-glib-1.4.4-1.2.1.jolla.armv7hl (@System)


Seems like Jolla is using an older version of libjson vs. Rinigus repository. I'm not sure if this will break OS stuff that depends on the Jolla provided json-glib or is it safe (having future OS updates in mind) to override this conflict?

Took the pill and installed flatpak on Xperia X using the updated installation instructions w/out using zypper but pkcon. Pkcon did not show any version mismatch that zypper did before so packages got installed without hicups. On the other hand I experied the same system reboot others did, but flatpak-runner installed ok and after launching it the Anglefish icon showed up.

Observations compared Sony X vs XA2: Anglefish runs obviously faster on XA2 compared to X. X is somehow laggy and scrolling isn't that smooth as on XA2. Therefor I wonder if h/w acceleration (OpenGL ES) is missing with the wayland compositor and how it can be enabled if possible?

Other than that great work and kudos to Rinigus for making this possible :) :) :)

Cheers,
Nek

PS:Even if juddery I quite like Anglefish as an updated browser compared to stock Firefox 45.

rinigus
2020-04-08, 14:00
Took the pill and installed flatpak on Xperia X using the updated installation instructions w/out using zypper but pkcon. Pkcon did not show any version mismatch that zypper did before so packages got installed without hicups. On the other hand I experied the same system reboot others did, but flatpak-runner installed ok and after launching it the Anglefish icon showed up.

Observations compared Sony X vs XA2: Anglefish runs obviously faster on XA2 compared to X. X is somehow laggy and scrolling isn't that smooth as on XA2. Therefor I wonder if h/w acceleration (OpenGL ES) is missing with the wayland compositor and how it can be enabled if possible?

Other than that great work and kudos to Rinigus for making this possible :) :) :)

Cheers,
Nek

PS:Even if juddery I quite like Anglefish as an updated browser compared to stock Firefox 45.

I don't know relative performance of X vs XA2, but I thought they were not that far apart. It is possible that some lib or acceleration is not hooked for X. Now the trick will be to find what. Namely, compare the libs loaded by hybris for some native sailfish app and angelfish.

For that, you have to check what are debug vars for hybris on X (they may have changed between X and XA2). For me, its HYBRIS_LINKER_DEBUG=1 HYBRIS_LD_DEBUG=1

So, for example: HYBRIS_LINKER_DEBUG=1 HYBRIS_LD_DEBUG=1 flatpak-runner

This is for SFOS native.

and then run

flatpak-runner --env=HYBRIS_LINKER_DEBUG=1 --env=HYBRIS_LD_DEBUG=1 org.kde.mobile.angelfish

this is for Flatpak. Then we can compare and add missing libs into
.local/share/flatpak/extension/org.freedesktop.Platform.GL.host/arm/1.4

vbelloir
2020-04-08, 14:25
Hi all,
Just installed Flatpack and AngelFish without any troubles on XA2 with 3.3.0.14 SFOS release.

Display is just to big, and I have to check which DPI a or scale setting I should use with my XA2.


Thanks a lot for your job!

Nekron
2020-04-08, 15:04
For that, you have to check what are debug vars for hybris on X (they may have changed between X and XA2). For me, its HYBRIS_LINKER_DEBUG=1 HYBRIS_LD_DEBUG=1

So, for example: HYBRIS_LINKER_DEBUG=1 HYBRIS_LD_DEBUG=1 flatpak-runner

This is for SFOS native.

and then run

flatpak-runner --env=HYBRIS_LINKER_DEBUG=1 --env=HYBRIS_LD_DEBUG=1 org.kde.mobile.angelfish

this is for Flatpak. Then we can compare and add missing libs into
.local/share/flatpak/extension/org.freedesktop.Platform.GL.host/arm/1.4

Here is the output:



[nemo@Sailfish ~]$ flatpak-runner --env=HYBRIS_LINKER_DEBUG=1 --env=HYBRIS_LD_DEBUG=1 org.kde.mobile.angelfish
Starting: org.kde.mobile.angelfish
Flatpak run options: --env=HYBRIS_LINKER_DEBUG=1 --env=HYBRIS_LD_DEBUG=1
[D] unknown:0 - Using Wayland-EGL
Wayland socket: ../../display/wayland-3
WAYLAND_DISPLAY="../../display/wayland-3" FLATPAK_MALIIT_CONTAINER_DBUS="unix:abstract=/tmp/dbus-LgjOnhhMdB,guid=103265a32462a8d57359a8d65e8de683" flatpak run --env=QT_WAYLAND_FORCE_DPI=129 --env=QT_SCALE_FACTOR=3 --filesystem=/system:ro --filesystem=/vendor:ro --filesystem=/odm:ro --device=all --talk-name=org.maliit.server --env=QTWEBENGINE_CHROMIUM_FLAGS=--disable-gpu-compositing --num-raster-threads=1 --enable-viewport --disable-composited-antialiasing --env=QTWEBENGINE_DISABLE_GPU_THREAD=1 --env=QT_QUICK_CONTROLS_MOBILE=1 --env=QT_QUICK_CONTROLS_STYLE=Plasma --env=HYBRIS_EGLPLATFORM_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris --env=HYBRIS_LINKER_DIR=/usr/lib/arm-linux-gnueabihf/GL/host/lib/libhybris/linker --env=HYBRIS_LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib:/usr/libexec/droid-hybris/system/lib:/vendor/lib:/system/lib --env=LD_LIBRARY_PATH=/usr/lib/arm-linux-gnueabihf/GL/host/lib --env=HYBRIS_LINKER_DEBUG=1 --env=HYBRIS_LD_DEBUG=1 org.kde.mobile.angelfish
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[W] unknown:53 - file:///usr/share/flatpak-runner/qml/main.qml:53:26: Unable to assign [undefined] to bool
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libGLESv2.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libcutils.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libutils.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/liblog.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libEGL.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libdsyscalls.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libc++.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libc.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libm.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libbacktrace.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libGLES_trace.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libbase.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libunwind.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libprotobuf-cpp-lite.so ]
[ linking /system/lib/libhardware.so ]
[ linking /system/lib/hw/gralloc.msm8952.so ]
[ linking /system/lib/libmemalloc.so ]
[ linking /system/lib/libqdMetaData.so ]
[ linking /system/lib/libqdutils.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libGLESv1_CM.so ]
[ linking /system/lib/libui.so ]
[ linking /system/lib/libbinder.so ]
[ linking /system/lib/libqservice.so ]
[ linking /system/lib/libsync.so ]
[ linking /odm/lib/egl/libEGL_adreno.so ]
[ linking /odm/lib/libadreno_utils.so ]
[ linking /odm/lib/libgsl.so ]
[ linking /system/lib/libz.so ]
[ linking /odm/lib/egl/libGLESv2_adreno.so ]
[ linking /odm/lib/libllvm-glnext.so ]
[ linking /odm/lib/egl/libGLESv1_CM_adreno.so ]
[ linking /odm/lib/egl/eglSubDriverAndroid.so ]
[W] unknown:0 - QObject: Cannot create children for a parent that is in a different thread.
(Parent is QApplication(0xffb90468), parent's thread is QThread(0xab390d10), current thread is QThread(0xab5459c8)
[W] unknown:0 - QObject::installEventFilter(): Cannot filter events for objects in a different thread.
[D] unknown:0 - Current tab changed to 0
[D] unknown:0 - Current tab changed to 0
[W] unknown:362 - file:///usr/lib/qml/org/kde/kirigami.2/Page.qml:362:9: QML Loader: Binding loop detected for property "active"
[D] unknown:0 - Setting isMobile: 0 true tabs open 1
[D] unknown:0 - Setting isMobile: 0 true tabs open 1
[W] unknown:0 - Installed Qt WebEngine locales directory not found at location /usr/translations/qtwebengine_locales. Trying application directory...
[W] unknown:0 - Qt WebEngine locales directory not found at location /app/bin/qtwebengine_locales. Trying fallback directory... Translations MAY NOT not be correct.
[W] unknown:0 - Path override failed for key ui::DIR_LOCALES and path '/home/nemo/.angelfish'
[0408/165819.267663:WARNING:resource_bundle_qt.cpp(115)] locale_file_path.empty() for locale
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libGLESv2.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libcutils.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libutils.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/liblog.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libEGL.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libdsyscalls.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libc++.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libc.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libm.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libbacktrace.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libGLES_trace.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libbase.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libunwind.so ]
[ linking /usr/lib/arm-linux-gnueabihf/GL/host/libexec/droid-hybris/system/lib/libprotobuf-cpp-lite.so ]
[W] unknown:0 - Installed Qt WebEngine locales directory not found at location /usr/translations/qtwebengine_locales. Trying application directory...
[W] unknown:0 - Qt WebEngine locales directory not found at location /app/bin/qtwebengine_locales. Trying fallback directory... Translations MAY NOT not be correct.
[W] unknown:0 - Path override failed for key ui::DIR_LOCALES and path '/home/nemo/.QtWebEngineProcess'
[0408/165819.455536:WARNING:resource_bundle_qt.cpp(115)] locale_file_path.empty() for locale
[D] onCompleted:202 - WebView completed.
[D] onCompleted:204 - Settings: QQuickWebEngineSettings(0xaba3c580)
[D] unknown:0 - Setting URL: 0 "about:blank" tabs open 1
[D] onCurrentWebViewChanged:57 - Current WebView is now : 0
[D] onCompleted:202 - WebView completed.
[D] onCompleted:204 - Settings: QQuickWebEngineSettings(0xabadbf60)
[D] unknown:0 - Setting URL: 0 "about:blank" tabs open 1
[W] unknown:0 - "wl-shell" is a deprecated shell extension, prefer using "xdg-shell-v6" or "xdg-shell" if supported by the compositor by setting the environment variable QT_WAYLAND_SHELL_INTEGRATION
[D] unknown:0 - loaded from file: 1 "/home/nemo/.var/app/org.kde.mobile.angelfish/config/angelfish/tabs.json"
[D] onCurrentWebViewChanged:57 - Current WebView is now : 0
[D] onCompleted:202 - WebView completed.
[D] onCompleted:204 - Settings: QQuickWebEngineSettings(0xabe7b5b0)
[D] unknown:0 - Setting URL: 0 "http://talk.maemo.org/" tabs open 1
[D] unknown:0 - Current tab changed to 0
[W] unknown:38 - file:///usr/lib/qml/QtQuick/Controls.2/Plasma/ToolButton.qml:38: TypeError: Cannot read property 'margins' of null
[W] unknown:36 - file:///usr/lib/qml/QtQuick/Controls.2/Plasma/ToolButton.qml:36: TypeError: Cannot read property 'margins' of null
[W] unknown:37 - file:///usr/lib/qml/QtQuick/Controls.2/Plasma/ToolButton.qml:37: TypeError: Cannot read property 'margins' of null
[W] unknown:35 - file:///usr/lib/qml/QtQuick/Controls.2/Plasma/ToolButton.qml:35: TypeError: Cannot read property 'margins' of null
[D] onLoadingChanged:159 - url: about:blank
[D] onLoadingChanged:159 - url: http://talk.maemo.org/
[D] onLoadingChanged:159 - url: about:blank
libpng warning: iCCP: known incorrect sRGB profile
[C] unknown:1223 - Uncaught ReferenceError: _gat is not defined
[D] onLoadingChanged:159 - url: http://talk.maemo.org/

rinigus
2020-04-08, 17:04
I will also need an output of

HYBRIS_LINKER_DEBUG=1 HYBRIS_LD_DEBUG=1 flatpak-runner

for comparison

Nekron
2020-04-08, 17:34
Hi Rinigus,

sorry RTFM I guess :)

Here is the output of the former command:


[nemo@Sailfish ~]$ HYBRIS_LINKER_DEBUG=1 HYBRIS_LD_DEBUG=1 flatpak-runner
[ linking /usr/libexec/droid-hybris/system/lib/libGLESv2.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libcutils.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libutils.so ]
[ linking /usr/libexec/droid-hybris/system/lib/liblog.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libEGL.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libdsyscalls.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libc++.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libc.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libm.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libbacktrace.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libGLES_trace.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libbase.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libunwind.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libprotobuf-cpp-lite.so ]
Starting empty Wayland server and enabling settings
[D] unknown:0 - Using Wayland-EGL
[ linking /odm/lib/egl/libEGL_adreno.so ]
[ linking /odm/lib/libadreno_utils.so ]
[ linking /odm/lib/libgsl.so ]
[ linking /system/lib/libz.so ]
[ linking /odm/lib/egl/libGLESv2_adreno.so ]
[ linking /odm/lib/libllvm-glnext.so ]
[ linking /odm/lib/egl/libGLESv1_CM_adreno.so ]
[ linking /usr/libexec/droid-hybris/system/lib/libGLESv1_CM.so ]
[ linking /odm/lib/egl/eglSubDriverAndroid.so ]
[ linking /system/lib/libhardware.so ]
[ linking /system/lib/hw/gralloc.msm8952.so ]
[ linking /system/lib/libmemalloc.so ]
[ linking /system/lib/libqdMetaData.so ]
[ linking /system/lib/libqdutils.so ]
[ linking /system/lib/libui.so ]
[ linking /system/lib/libbinder.so ]
[ linking /system/lib/libqservice.so ]
[ linking /system/lib/libsync.so ]
Wayland socket: ../../display/wayland-13
[D] onCompleted:424 - Warning: specifying an object instance for initialPage is sub-optimal - prefer to use a Component
[D] unknown:0 - Got library name: "/usr/lib/qt5/qml/io/thp/pyotherside/libpyothersideplugin.so"
[D] unknown:0 - "PyOtherSide error: Traceback (most recent call last):\n\n File \"/usr/share/flatpak-runner/fpk/__init__.py\", line 12, in refresh_apps\n return refresh_apps_impl(just_delete=just_delete)\n\n File \"/usr/share/flatpak-runner/fpk/apps.py\", line 39, in refresh_apps\n d = Desktop(i)\n\n File \"/usr/share/flatpak-runner/fpk/desktop.py\", line 8, in __init__\n self.config.read(fname)\n\n File \"/usr/lib/python3.8/configparser.py\", line 697, in read\n self._read(fp, filename)\n\n File \"/usr/lib/python3.8/configparser.py\", line 1017, in _read\n for lineno, line in enumerate(fp, start=1):\n\n File \"/usr/lib/python3.8/encodings/ascii.py\", line 26, in decode\n return codecs.ascii_decode(input, self.errors)[0]\n\nUnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 759: ordinal not in range(128)\n"
[D] onError:53 - Error in Python: Return value of PyObject call is NULL: Traceback (most recent call last):

File "/usr/share/flatpak-runner/fpk/__init__.py", line 12, in refresh_apps
return refresh_apps_impl(just_delete=just_delete)

File "/usr/share/flatpak-runner/fpk/apps.py", line 39, in refresh_apps
d = Desktop(i)

File "/usr/share/flatpak-runner/fpk/desktop.py", line 8, in __init__
self.config.read(fname)

File "/usr/lib/python3.8/configparser.py", line 697, in read
self._read(fp, filename)

File "/usr/lib/python3.8/configparser.py", line 1017, in _read
for lineno, line in enumerate(fp, start=1):

File "/usr/lib/python3.8/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 759: ordinal not in range(128)


The interesting part is that if flatpak-runner is launched from console PyOtherSide crashes with an unicode decode error and GUI shows no installed flatpaks.

I added a print(fname) and got "/home/nemo/.local/share/flatpak/exports/share/applications/org.kde.mobile.angelfish.desktop". I guess the desktop file is not the correct configuration file that should be read for AngelFish.
Launching runner from application grid though works fine.

vbelloir
2020-04-08, 19:02
SFOS doesn't appear in official support distribution :
https://flatpak.org/setup/

Also, Is there a chance that slack app, hosted in Flathub works?
https://flathub.org/apps/details/com.slack.Slack

rinigus
2020-04-08, 19:22
SFOS doesn't appear in official support distribution :
https://flatpak.org/setup/

Also, Is there a chance that slack app, hosted in Flathub works?
https://flathub.org/apps/details/com.slack.Slack

RE official support: we probably can ask for it to be on the website, but it wouldn't change much for us. Its not as someone will come and start developing portals or other parts from outside our community.

Re Slack: slack does not provide ARM version for Linux. See https://github.com/flathub/com.slack.Slack/blob/master/com.slack.Slack.json#L81 . So, you can ask them for such version, but don't have too much hope. It doesn't work from Angelfish either as its considering that its Android device that contacts it and starts asking to install the app.

Cavalier
2020-04-08, 19:23
or firefox
https://flathub.org/apps/details/org.mozilla.firefox

coderus
2020-04-09, 08:41
or firefox
https://flathub.org/apps/details/org.mozilla.firefox

have you read?

Right now, Flatpak support is available for Sony Xperia Tama devices (unofficial port) with the hope that other devices will follow. Due to QtWayland limitations, only Qt/QML applications run well with Gdk apps refusing to start due to the absence of currently standard Wayland extensions.

fooxl
2020-04-09, 11:42
Hi and thanks for all the (angel)fish.

Angelfish runs like expected.
Installing and uninstalling flatpaks works, BUT every time I do one of these actions my phone crashes and reboots:

journalctl -fa shows the follwoing when uninstalling org.kde.okular

Apr 09 13:34:43 SailX polkitd(authority=local)[852]: Registered Authentication Agent for unix-process:11676:360590 (system bus name :1.123 [flatpak uninstall --user org.kde.okular], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
Apr 09 13:34:44 SailX kernel: afe_callback: cmd = 0x100ef returned error = 0x2
Apr 09 13:34:44 SailX kernel: afe_apr_send_pkt: DSP returned error[ADSP_EBADPARAM]
Apr 09 13:34:44 SailX kernel: afe_send_cal_block: AFE cal for port 0x4000 failed -22
Apr 09 13:34:49 SailX flatpak[11676]: user: Uninstalled app/org.kde.okular/arm/master
Apr 09 13:34:49 SailX flatpak[11676]: user: Uninstalled runtime/org.kde.okular.Locale/arm/master
Apr 09 13:34:49 SailX kernel: devpts: called with bogus options
Apr 09 13:34:49 SailX kernel: devpts: called with bogus options


Maybe I messed up sth with my installation. I installed flatpak and flatpak-runner before upgrading to 3.3.0 Rokua. (I mixed my SailX up with another device I already upgraded before.)

Should I do a clean install of flatpak(-runner)? If yes, how?

rinigus
2020-04-09, 12:35
Hi and thanks for all the (angel)fish.

Angelfish runs like expected.
Installing and uninstalling flatpaks works, BUT every time I do one of these actions my phone crashes and reboots:

journalctl -fa shows the follwoing when uninstalling org.kde.okular

Apr 09 13:34:43 SailX polkitd(authority=local)[852]: Registered Authentication Agent for unix-process:11676:360590 (system bus name :1.123 [flatpak uninstall --user org.kde.okular], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
Apr 09 13:34:44 SailX kernel: afe_callback: cmd = 0x100ef returned error = 0x2
Apr 09 13:34:44 SailX kernel: afe_apr_send_pkt: DSP returned error[ADSP_EBADPARAM]
Apr 09 13:34:44 SailX kernel: afe_send_cal_block: AFE cal for port 0x4000 failed -22
Apr 09 13:34:49 SailX flatpak[11676]: user: Uninstalled app/org.kde.okular/arm/master
Apr 09 13:34:49 SailX flatpak[11676]: user: Uninstalled runtime/org.kde.okular.Locale/arm/master
Apr 09 13:34:49 SailX kernel: devpts: called with bogus options
Apr 09 13:34:49 SailX kernel: devpts: called with bogus options


Maybe I messed up sth with my installation. I installed flatpak and flatpak-runner before upgrading to 3.3.0 Rokua. (I mixed my SailX up with another device I already upgraded before.)

Should I do a clean install of flatpak(-runner)? If yes, how?

Sounds like its an issue with 3.3 and flatpak-runner. See earlier messages in this thread and try to remove setuid for flatpak-bwrap. Seems that it helps with crashes.

coderus
2020-04-09, 16:25
seems angelfish is not built for i386. can you build it please? want to try on my Jolla Tablet.

same for keyboard plugin. telegram installed and starting fine

rinigus
2020-04-09, 16:55
seems angelfish is not built for i386. can you build it please? want to try on my Jolla Tablet.

same for keyboard plugin. telegram installed and starting fine

The problem is that KDE 5.14 platform has i386 discontinued (5.12 is fine). So, you have to build it yourself by changing https://invent.kde.org/kde/plasma-angelfish/-/blob/master/org.kde.mobile.angelfish.json#L4 to 5.12. Same goes for Maliit plugin - cannot build it against discontinued platform/arch combo.

Shift to 5.14 came as Plasma is moving to 5.14 by default.

Building is not difficult, you have to install platforms+SDK with correct arch on your PC and then use flatpak-builder.

rinigus
2020-04-09, 16:57
In addition there were few other changes as well. Better use https://invent.kde.org/kde/plasma-angelfish/-/blob/9b33bd58f5f9b647edfd5d30f3b7db96a394658a/org.kde.mobile.angelfish.json

rinigus
2020-04-09, 17:18
@Nekron: I checked the loaded libs and they seem to be the same for Flatpak and SFOS native. So, can't tell on the basis of that and its not why Xperia X is slower than XA2

try to run

flatpak-runner org.kde.mobile.angelfish chrome://gpu

(until corresponding issue is fixed, have to start new angelfish for it). I have HW accelerated canvas, flash and few others (not all). compare X and XA2 and see if there is some major difference.

vbelloir
2020-04-09, 17:21
Due to QtWayland limitations, only Qt/QML applications run well with Gdk apps refusing to start due to the absence of currently standard Wayland extensions.

Is there a way to know on flathub which app is designed with QT/QML. It is not clear for me.

For example, nothing about than on
https://flathub.org/apps/details/org.telegram.desktop

rinigus
2020-04-09, 17:26
Is there a way to know on flathub which app is designed with QT/QML. It is not clear for me.

For example, nothing about than on
https://flathub.org/apps/details/org.telegram.desktop

No, not visually shown on Flathub. you have to dig into the app source

vbelloir
2020-04-09, 17:28
Ok, thanks.

coderus
2020-04-09, 17:33
The problem is that KDE 5.14 platform has i386 discontinued (5.12 is fine). So, you have to build it yourself by changing https://invent.kde.org/kde/plasma-angelfish/-/blob/master/org.kde.mobile.angelfish.json#L4 to 5.12. Same goes for Maliit plugin - cannot build it against discontinued platform/arch combo.

Shift to 5.14 came as Plasma is moving to 5.14 by default.

Building is not difficult, you have to install platforms+SDK with correct arch on your PC and then use flatpak-builder.

which arch is available then? 486? what is the limit really?

rinigus
2020-04-09, 17:49
which arch is available then? 486? what is the limit really?

good questions. i386 was available for org.freedesktop.Platform 18.08 (used by KDE 5.12), not 19.08 (used by KDE 5.14). available arches are x86_64, arm, aarch64. They plan to discontinue ARM for the next platform, so we better get ready for running AARCH64 or to start compiling our own Flatpaks for ARM. Security updates for 19.08 will be done for some time, will stop in 2021 Aug (I think).

Why they drop platforms I don't know. Please feel free to ping them around on IRC (#freedesktop-sdk) or find the issue tracker and complain. I am somewhat tired of doing complaining and asking there :( [as I did regarding i386 and ARM already; don't remember where was issue tracker]

rinigus
2020-04-09, 18:20
Question to those who know about web:

When I open TMO in Sailfish browser, the page is shown in full width. Not very readable, but all is there and we can zoom as we need. Same with Chrome on Android.

In Angelfish, I get it shown with readable fonts, but only part of it. Same is if I use Chrome or Firefox on desktop.

Hence the question, is it a bug on Angelfish or web site side? If it's Angelfish, any idea how to fix it?