Possible reason why MANY applications dont work properly in Manjaro on the PinePhone
#1
Shocked 
Hello everybody,

I think that I might have found a clue on why does so many linux applications does not work correctly, or sometimes not at all on PinePhone with Manjaro-arm (and possibly other PinePhone linux distros).

It might not have anything to do with how the developer of the software have developed the application, but a lot to do with the certain libs that were used - which are sometimes compiled differently for different linux distributions.

The clue came from a comment left by a creator of a certain linux application, to a bug report that was targeted at a PinePhone:
https://github.com/johnfactotum/foliate/issues/635

I quote the developer:

"The file chooser dialog is not part of Foliate. It's provided by whatever xdg-desktop-portal backend you're using, or else it will use the default GTK dialog.

For the GTK bug, see https://gitlab.gnome.org/GNOME/gtk/-/issues/2194


On the Librem5, I believe they're shipping a patched version of GTK, the result of which can be seen in this screenshot."


(the discussed screenshot can be seen here: https://puri.sm/wp-content/uploads/2020/...-11-15.png)

The developer of the Foliate application points out to the guy who have opened a bug report, that the bug has nothing to do with the software it self, and that he is using some type of component of GTK in his application, so what people will see on the screen depends on what is supplied with their operating system.

So probably certain application which fail to work, or are unable to adjust their UI to a mobile device, is because certain GUI libraries that are supplied / compiled together with the said linux distro needs to be tweaked for a mobile screen.

If anybody from the Manjaro-arm team get to see this thread, please let us know, what can be done? could the GTK version that ships with Manjaro can be tweaked / patched to have applications built using GTK (many) to display correctly on the PinePhone' screen?



EDIT: just had a look on this source code: https://source.puri.sm/Librem5/debs/gtk
This is gtk tweaked to work with a phone interface


kern707
#2
(12-04-2020, 04:54 AM)kern707 Wrote: Hello everybody,

I think that I might have found a clue on why does so many linux applications does not work correctly, or sometimes not at all on PinePhone with Manjaro-arm (and possibly other PinePhone linux distros).

It might not have anything to do with how the developer of the software have developed the application, but a lot to do with the certain libs that were used - which are sometimes compiled differently for different linux distributions.

The clue came from a comment left by a creator of a certain linux application, to a bug report that was targeted at a PinePhone:
https://github.com/johnfactotum/foliate/issues/635

I quote the developer:

"The file chooser dialog is not part of Foliate. It's provided by whatever xdg-desktop-portal backend you're using, or else it will use the default GTK dialog.

For the GTK bug, see https://gitlab.gnome.org/GNOME/gtk/-/issues/2194


On the Librem5, I believe they're shipping a patched version of GTK, the result of which can be seen in this screenshot."


(the discussed screenshot can be seen here: https://puri.sm/wp-content/uploads/2020/...-11-15.png)

The developer of the Foliate application points out to the guy who have opened a bug report, that the bug has nothing to do with the software it self, and that he is using some type of component of GTK in his application, so what people will see on the screen depends on what is supplied with their operating system.

So probably certain application which fail to work, or are unable to adjust their UI to a mobile device, is because certain GUI libraries that are supplied / compiled together with the said linux distro needs to be tweaked for a mobile screen.

If anybody from the Manjaro-arm team get to see this thread, please let us know, what can be done? could the GTK version that ships with Manjaro can be tweaked / patched to have applications built using GTK (many) to display correctly on the PinePhone' screen?



EDIT: just had a look on this source code: https://source.puri.sm/Librem5/debs/gtk
This is gtk tweaked to work with a phone interface


kern707

It's just the platform isn't yet mature enough. Almost all linux apps you can find in pacman repo or AUR are for generic ARM64 platform so they're not developed for a small screen.
As for foliate there's already a gtk-mobile package installed in manjaro. If librem team has done other change to gtk source then they will publish them at some time and it will reach manjaro since AFAIK all phosh UI is derived from purism work.
Keep in mind that at this moment no UI for mobile phone is stable enough and apps needs to be designed with screen size in mind.
Also this phone was intended mainly for developers to help the platform development.
Apps written using libhandy works pretty well in gnome/phosh but there aren't too many yet.
The same situation happens with other distro too, so it's not manjaro to blame here, just look at mobian compatibility list to get the idea:
Mobian Wiki: apps

If you're interested in manga and comics you can try komikku from AUR which uses libhandy and works pretty well
#3
(12-04-2020, 06:21 AM)nightranger73 Wrote:
(12-04-2020, 04:54 AM)kern707 Wrote: Hello everybody,

I think that I might have found a clue on why does so many linux applications does not work correctly, or sometimes not at all on PinePhone with Manjaro-arm (and possibly other PinePhone linux distros).

It might not have anything to do with how the developer of the software have developed the application, but a lot to do with the certain libs that were used - which are sometimes compiled differently for different linux distributions.

The clue came from a comment left by a creator of a certain linux application, to a bug report that was targeted at a PinePhone:
https://github.com/johnfactotum/foliate/issues/635

I quote the developer:

"The file chooser dialog is not part of Foliate. It's provided by whatever xdg-desktop-portal backend you're using, or else it will use the default GTK dialog.

For the GTK bug, see https://gitlab.gnome.org/GNOME/gtk/-/issues/2194


On the Librem5, I believe they're shipping a patched version of GTK, the result of which can be seen in this screenshot."


(the discussed screenshot can be seen here: https://puri.sm/wp-content/uploads/2020/...-11-15.png)

The developer of the Foliate application points out to the guy who have opened a bug report, that the bug has nothing to do with the software it self, and that he is using some type of component of GTK in his application, so what people will see on the screen depends on what is supplied with their operating system.

So probably certain application which fail to work, or are unable to adjust their UI to a mobile device, is because certain GUI libraries that are supplied / compiled together with the said linux distro needs to be tweaked for a mobile screen.

If anybody from the Manjaro-arm team get to see this thread, please let us know, what can be done? could the GTK version that ships with Manjaro can be tweaked / patched to have applications built using GTK (many) to display correctly on the PinePhone' screen?



EDIT: just had a look on this source code: https://source.puri.sm/Librem5/debs/gtk
This is gtk tweaked to work with a phone interface


kern707

It's just the platform isn't yet mature enough. Almost all linux apps you can find in pacman repo or AUR are for generic ARM64 platform so they're not developed for a small screen.
As for foliate there's already a gtk-mobile package installed in manjaro. If librem team has done other change to gtk source then they will publish them at some time and it will reach manjaro since AFAIK all phosh UI is derived from purism work.
Keep in mind that at this moment no UI for mobile phone is stable enough and apps needs to be designed with screen size in mind.
Also this phone was intended mainly for developers to help the platform development.
Apps written using libhandy works pretty well in gnome/phosh but there aren't too many yet.
The same situation happens with other distro too, so it's not manjaro to blame here, just look at mobian compatibility list to get the idea:
Mobian Wiki: apps

If you're interested in manga and comics you can try komikku from AUR which uses libhandy and works pretty well

thanks for the input.
I am aware that the phone is currently intended for developers in order to help push the project forward, I happen to be one (two decades as a hobby, over a decade for a living) and I fully aware of the restrictions. but this is why I make such inputs.

I am not sure what packages of gtk are currently bundled with Manjaro-arm for the PinePhone, but at least from what I see, as an example: the file browser / dialog components that are based on gtk are the standard widgets (in compare to desktop), many applications are pretty usable on PinePhone already, and only lack those few key components to be really useful.

If you read my original post thoroughly, you can see that I did not blame Manjaro or anybody.
(I did mention that this issue probably exist on any other PinePhone oriented linux distros)
I post the feedback here because my PinePhone is running Manjaro, and I have decided to focus on this distro, so- the more input and feedback - the more we can know / learn what needs to be done / fixed / improved. 

I am not a linux developer, but since I have some experience in linux development, I actually consider developing something for the PinePhone, thanks for the tip on libhandy  Cool
#4
This is one of my biggest problems in integrating a Voice Assistant into the phone. I need to talk to various applications, the D-Bus, and sensors. Many times there are different versions of libraries within a distro, and in between distros, different libraries within distros and between distros, on aarch64, which limits choice Tongue. Mobian is both the easiest and the hardest to get everything running. Easiest, because it has more libraries than any other distro, and harder, because the libraries tend to be older and more stable so missing functionality that I need.

I wrap, hack, and patch a lot of stuff Tongue

YMMV
LF
#5
(12-04-2020, 08:55 AM)Lousy Fisherman Wrote: This is one of my biggest problems in integrating a Voice Assistant into the phone. I need to talk to various applications, the D-Bus, and sensors. Many times there are different versions of libraries within a distro, and in between distros, different libraries within distros and between distros, on aarch64, which limits choice Tongue. Mobian is both the easiest and the hardest to get everything running. Easiest, because it has more libraries than any other distro, and harder, because the libraries tend to be older and more stable so missing functionality that I need.

I wrap, hack, and patch a lot of stuff Tongue

YMMV
LF

Sounds like fun, and a lot of time invested in that fun Smile are you developing something right now?


Possibly Related Threads…
Thread Author Replies Views Last Post
  New PinePhone user issues greenpineuser 8 942 12-19-2024, 09:47 PM
Last Post: emilianojay
  PinePhone Beta Edition will not boot from MicroSD card Timothy_Ecc 10 8,966 10-04-2024, 12:01 AM
Last Post: spazz
  Pinephone with KDE plasma - Battery drain when phone is not used Daniello 1 476 07-03-2024, 08:38 PM
Last Post: Kevin Kofler
  link for supported pinephone os manjharo et all penguins_rule 3 1,079 05-09-2024, 03:02 AM
Last Post: Eugo
  systemic issue pinephone penguins_rule 3 1,234 04-02-2024, 11:52 AM
Last Post: Kevin Kofler
  Manjaro: Settings doesnt open nbh 0 926 09-24-2023, 05:25 PM
Last Post: nbh
  Can't get ring on Manjaro Pine Phone thorensjubilee 12 6,087 06-09-2023, 04:40 AM
Last Post: thorensjubilee
  Is Manjaro ARM a Rolling Release? jojuma 4 2,476 05-10-2023, 09:27 PM
Last Post: Kevin Kofler
  new PinePhone upgrade issue WhiteHexagon 5 2,918 05-09-2023, 04:09 PM
Last Post: WhiteHexagon
  Where Does Manjaro Phosh Store Its Custom Keystrokes? jakfish 0 1,130 04-25-2023, 09:49 AM
Last Post: jakfish

Forum Jump:


Users browsing this thread: 1 Guest(s)