maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   SailfishOS (https://talk.maemo.org/forumdisplay.php?f=52)
-   -   Full linux distros on Sailfish OS (https://talk.maemo.org/showthread.php?t=101080)

levone1 2021-10-20 15:02

Re: Full linux distros on Sailfish OS
 
Quote:

Originally Posted by edp17 (Post 1572793)
@levone1
I've checked my install on the device and still can start the desktop distro. (SFOS 4.1)
I slightly needed to amend the script that I wrote to start it because the installed Waydroid interferes with the Debian container.

If you run the following commands in a terminal, you should be able to start the Desktop distro: (my container name is Debian, so I use this in the example, you can replace it with your container name)

Before you do this, please ensure the container is not running!

1. Start the container:
sudo lxc-start -n Debian -d &
(or start it with devel-su if you don't have sudo installed)
2. Start the compositor in landscape mode:
/usr/bin/qxcompositor --wayland-socket-name "../../display/wayland-container-0" &
or in portrait:
/usr/bin/qxcompositor -o portrait --wayland-socket-name "../../display/wayland-container-0" &
3. finally attach the container and start the distro:
sudo lxc-attach -n Debian -- /mnt/guest/start_desktop.sh 0 &

(I've made a script that is doing all in one go, so that can be used as an icon on the app drawer.)

For example - if I open telegram desktop from within Debian desktop, a new card opens in Sailfish, with telegram desktop app open.
This is the terminal output :

(kdeconnect-app:5194): Gdk-WARNING **: 14:55:50.385: The Wayland compositor does not provide any supported shell interface, not using Wayland display
Could not create scene graph context for backend 'customcontext' - check that plugins are installed correctly in /usr/lib/aarch64-linux-gnu/qt5/plugins
kf.kirigami: Warning: Theme implementations should use Kirigami.BasicThemeDefinition for its root item
kf.kirigami: Failed to find a Kirigami platform plugin
kf.kirigami: Units.devicePixelRatio is deprecated (since 5.86 ): This returns 1 when using Qt HiDPI scaling.
qt.qpa.wayland: "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
qt.qpa.wayland: Minimizing is not supported on wl-shell. Consider using xdg-shell instead.

But when the start_desktop sh script used to work, that app would open in the same desktop. I can't figure out the difference ...

edp17 2021-10-21 07:10

Re: Full linux distros on Sailfish OS
 
Quote:

Originally Posted by levone1 (Post 1572836)
For example - if I open telegram desktop from within Debian desktop, a new card opens in Sailfish, with telegram desktop app open.
This is the terminal output :

(kdeconnect-app:5194): Gdk-WARNING **: 14:55:50.385: The Wayland compositor does not provide any supported shell interface, not using Wayland display
Could not create scene graph context for backend 'customcontext' - check that plugins are installed correctly in /usr/lib/aarch64-linux-gnu/qt5/plugins
kf.kirigami: Warning: Theme implementations should use Kirigami.BasicThemeDefinition for its root item
kf.kirigami: Failed to find a Kirigami platform plugin
kf.kirigami: Units.devicePixelRatio is deprecated (since 5.86 ): This returns 1 when using Qt HiDPI scaling.
qt.qpa.wayland: "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
qt.qpa.wayland: Minimizing is not supported on wl-shell. Consider using xdg-shell instead.

But when the start_desktop sh script used to work, that app would open in the same desktop. I can't figure out the difference ...

Hm, on my treltexx, it opens up the apps within the desktop screen. I use sfos4.1 on there. Could it be the reason?
How do you start the desktop distro, using multiple Fingerterm sessions and command line, or with one script from Shellex/command line, or with an icon on your desktop? (I've used to use Shellex, but then created an icon in sfos for it.)

levone1 2021-10-21 14:59

Re: Full linux distros on Sailfish OS
 
Quote:

Originally Posted by edp17 (Post 1572839)
Hm, on my treltexx, it opens up the apps within the desktop screen. I use sfos4.1 on there. Could it be the reason?
How do you start the desktop distro, using multiple Fingerterm sessions and command line, or with one script from Shellex/command line, or with an icon on your desktop? (I've used to use Shellex, but then created an icon in sfos for it.)

- open Containers app
- start container, (works), tap "start xsession", (doesn't open window, but something happens - it won't work if I don't do it), then tap "attach", (works, and terminal opens with shell)
- in shell, enter some of the commands from 'start_desktop' script, (e.g. "export $(dbus-launch)", "export XDG_RUNTIME_DIR", etc), finishing with "su user -c startx".

Then window opens with debian desktop. All functions normally, except that some user-installed apps open in a separate window, and won't stay open if a different window is opened.

One thing I discovered is that all of the commands from start_desktop script run successfully when entered individually, except for export $(dbuslaunch). That one gives error about how xdg runtime is owned by uid 100000. The only way I can get it to work is to mkdir /run/user/1001, then set 1001 as runtime dir.

I did try to chown on xdg runtime dir, and then dbus launch command worked without error, but startx fails with "cannot open display server refused..."

edp17 2021-11-03 15:55

Re: Full linux distros on Sailfish OS
 
Quote:

Originally Posted by levone1 (Post 1572843)
- open Containers app
- start container, (works), tap "start xsession", (doesn't open window, but something happens - it won't work if I don't do it), then tap "attach", (works, and terminal opens with shell)
- in shell, enter some of the commands from 'start_desktop' script, (e.g. "export $(dbus-launch)", "export XDG_RUNTIME_DIR", etc), finishing with "su user -c startx".

Then window opens with debian desktop. All functions normally, except that some user-installed apps open in a separate window, and won't stay open if a different window is opened.

One thing I discovered is that all of the commands from start_desktop script run successfully when entered individually, except for export $(dbuslaunch). That one gives error about how xdg runtime is owned by uid 100000. The only way I can get it to work is to mkdir /run/user/1001, then set 1001 as runtime dir.

I did try to chown on xdg runtime dir, and then dbus launch command worked without error, but startx fails with "cannot open display server refused..."

Unfortunately, the app never worked well on that device. I only used the command line for all. Have you tried to start the container and the desktop distro from the command line? What is the default user on the host SFOS (nemo or defaultuser)?
Try to use one of the scripts I uploaded to the main page (e.g debian-mouse.sh) and see what happens.

levone1 2021-11-03 17:42

Re: Full linux distros on Sailfish OS
 
Quote:

Originally Posted by edp17 (Post 1572885)
Unfortunately, the app never worked well on that device. I only used the command line for all. Have you tried to start the container and the desktop distro from the command line? What is the default user on the host SFOS (nemo or defaultuser)?
Try to use one of the scripts I uploaded to the main page (e.g debian-mouse.sh) and see what happens.

This is what happens when trying fo run scripts (that previously worked fine until 4.2) - https://talk.maemo.org/showpost.php?...&postcount=192

The default user is defaultuser, and I have nemo symlink in /home...

I have a feeling that the apps opening in separate window could be just some missing package, but not sure. I think it's a particular type of app, (maybe xdg, or... [I don't know Linux stuff too well]), so maybe just requires some support package ...

edp17 2021-11-09 01:06

Re: Full linux distros on Sailfish OS
 
Quote:

Originally Posted by levone1 (Post 1572886)
This is what happens when trying fo run scripts (that previously worked fine until 4.2) - https://talk.maemo.org/showpost.php?...&postcount=192

The default user is defaultuser, and I have nemo symlink in /home...

I have a feeling that the apps opening in separate window could be just some missing package, but not sure. I think it's a particular type of app, (maybe xdg, or... [I don't know Linux stuff too well]), so maybe just requires some support package ...

This might help, I have the following installed:
from official repo:
  • nemo-qml-plugin-dbus-qt5
  • sailfish-polkit-agent
  • python3-base
  • python3-gobject
  • dbus-python3
  • lxc
  • lxc-templates
from downloaded .rpm:
  • lxc-templates-desktop-1.1-4.noarch.rpm
  • qxdisplay-0.1-2.armv7hl.rpm
  • harbour-containers-0.4-1.armv7hl.rpm
  • qxcompositor-0.0.5+cursor_test2.20200816190630.86af352-1.2.1.jolla.armv7hl.rpm

levone1 2021-11-12 01:44

Re: Full linux distros on Sailfish OS
 
Quote:

Originally Posted by edp17 (Post 1572904)
This might help, I have the following installed:
from official repo:
  • nemo-qml-plugin-dbus-qt5
  • sailfish-polkit-agent
  • python3-base
  • python3-gobject
  • dbus-python3
  • lxc
  • lxc-templates
from downloaded .rpm:
  • lxc-templates-desktop-1.1-4.noarch.rpm
  • qxdisplay-0.1-2.armv7hl.rpm
  • harbour-containers-0.4-1.armv7hl.rpm
  • qxcompositor-0.0.5+cursor_test2.20200816190630.86af352-1.2.1.jolla.armv7hl.rpm

Thanks - I'll check it out ... One thing is that I'm on aarch64, so my apps are home-built. Maybe some issue there...

megamaced 2021-11-23 22:33

Re: Full linux distros on Sailfish OS
 
Hi, is the harbour containers project still going?

The qxdisplay binary has symbol lookup error on Sailfish X 4.3.0

"/usr/bin/qxdisplay: symbol lookup error: /usr/
bin/qxdisplay: undefined symbol"

I did try to compile it from the RPM spec directly on my device but it failed to compile

I saw that flatpak-runner is a fork of qxdisplay. I was able to run flatpak-runner without any arguments to start a wayland display server, and then attach inside my lxc container and modify the scripts to point to the flatpak-runner wayland server location. Using this method I was able to get XFCE on openSUSE Leap 15.3 running, however I could not resolve the DPI and scaling issue. Desktop was not a usable size and also the touch pointer was off

elros34 2021-11-24 17:47

Re: Full linux distros on Sailfish OS
 
Didn't try it on aarch64 but amrv7hl works fine on sfos 4.3.0: https://github.com/elros34/qxcomposi.../qtwayland-5.6. I guess qxdisplay do not have any relevant changes compared to qxcompositor. Also version for sfos >= 4.2.0 in my use case support dynamic orientation for chromium + matchbox ("-x -o auto" arguments) so maybe it will also works for full desktop environment like xfce.

Maemish 2021-11-24 19:43

Re: Full linux distros on Sailfish OS
 
I find these posts entertaining. To understand linux is hard for me cause even though I have used it over ten years I am a mere end user. and tweaking mainly how to get it snappier. But these sailfish relates posts, these are something else, so cryptic if you don't know enough, even though they are just linux language. Feeling like listening someones from a different planet.


All times are GMT. The time now is 21:26.

vBulletin® Version 3.8.8