newcompositor

Rating: 
0
No votes yet

Nesting Wayland compositor for Sailfish OS that attempts to transparently handle xdg_shell clients. Each client window gets its own window under Lipstick. It's almost as if newcompositor wasn't there.

How to use:

  1. Enable the Qt 5.15 repos:
    ssu ar qt515 https://repo.sailfishos.org/obs/home:/rinigus:/qt515:/packaging/sailfish_latest_aarch64/
    ssu ur
    pkcon refresh
  2. Install
  3. Run:
    /opt/newcompositor/bin/newcompositor --wayland-socket-name <socket name>
  4. Note the output
    Compositor running on WAYLAND_DISPLAY=<socket name>
  5. Run applications with:
    WAYLAND_DISPLAY=<socket name> yourapp

How to use within a container:

  1. Create a directory /run/user/100000/newcompositor
  2. Add to your container config file:
    • lxc.mount.entry = /run/user/100000/newcompositor mnt/newcompositor none bind,ro,create=dir 0 0
  3. Run:
    /opt/newcompositor/bin/newcompositor --wayland-socket-name newcompositor/wayland-0
  4. Run your applications in the container with:
    QT_WAYLAND_FORCE_DPI=240 QT_QPA_PLATFORM=wayland-egl WAYLAND_DISPLAY=/mnt/newcompositor/wayland-0 yourapp
    • The QT_* variables are optional but recommended for Qt apps.

TODO:

  • armv7hl build
  • Support for the onscreen keyboard (maybe always bring up the Sailfish keyboard on focus, then let the user hide it if he wants?)
    • Keyboard should (?) just work if the client independently has Maliit integration.
  • Screen orientation
  • Xwayland

Source: https://github.com/ArturGaspar/newcompositor

Screenshots: 

Keywords:

Application versions: 
AttachmentSizeDate
File newcompositor-0.0.0a-1.aarch64.rpm24.77 KB25/03/2023 - 20:33
Changelog: 

(none)