I am using Debian Bullseye. I would like to run Weston as a user from a systemd service. I need default drm backend, thus I assume it needs to be started as root using weston-launch. However, I have tried several configurations and can't get it running. Currently I am trying to use weston-launch, but get the following error:
Date: 2023-02-16 CET
[14:32:56.381] weston 9.0.0
https://wayland.freedesktop.org
Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Build: 9.0.0
[14:32:56.381] Command line: /usr/bin/weston --log=/tmp/weston.log
[14:32:56.381] OS: Linux, 5.10.52-gba9ade6851ca-dirty, #1 SMP PREEMPT Thu Feb 16 10:37:31 UTC 2023, aarch64
[14:32:56.381] Using config file '/etc/xdg/weston/weston.ini'
[14:32:56.382] Output repaint window is 16 ms maximum.
[14:32:56.382] Loading module '/usr/lib/aarch64-linux-gnu/libweston-9/drm-backend.so'
[14:32:56.388] initializing drm backend
[14:32:56.393] logind: cannot take control over session 8
[14:32:56.394] logind: cannot setup systemd-logind helper (-5), using legacy fallback
[14:32:56.397] using /dev/dri/card1
[14:32:56.397] DRM: supports atomic modesetting
[14:32:56.397] DRM: does not support GBM modifiers
[14:32:56.397] DRM: supports picture aspect ratio
[14:32:56.398] Loading module '/usr/lib/aarch64-linux-gnu/libweston-9/g2d-renderer.so'
/lib/systemd/system/weston.service:
[Unit]
Description=Weston Wayland Compositor (on tty7)
RequiresMountsFor=/run
Conflicts=getty@tty7.service plymouth-quit.service
After=systemd-user-sessions.service getty@tty7.service plymouth-quit-wait.service
[Service]
User=root
PermissionsStartOnly=true
# Log us in via PAM so we get our XDG & co. environment and
# are treated as logged in so we can use the tty:
PAMName=login
# Grab tty7
UtmpIdentifier=tty7
TTYPath=/dev/tty7
TTYReset=yes
TTYVHangup=yes
TTYVTDisallocate=yes
# stderr to journal so our logging doesn't get thrown into /dev/null
StandardOutput=tty
StandardInput=tty
StandardError=journal
EnvironmentFile=-/etc/default/weston
# Weston does not successfully change VT, nor does systemd place us on
# the VT it just activated for us. Switch manually:
ExecStartPre=/bin/chvt 7
ExecStart=/usr/bin/weston-launch --tty /dev/tty7 --user tavla-run -- --log=/var/log/weston.log $OPTARGS
IgnoreSIGPIPE=no
[Install]
WantedBy=multi-user.target
/etc/profile.d/weston.sh:
if test -z "$XDG_RUNTIME_DIR"; then
export XDG_RUNTIME_DIR=/run/user/
id -u
if ! test -d "${XDG_RUNTIME_DIR}"; then
mkdir --parents "${XDG_RUNTIME_DIR}"
chmod 0700 "${XDG_RUNTIME_DIR}"
fi
fi
/etc/xdg/weston/weston.ini:
[core]
#gbm-format=argb8888
idle-time=0
use-g2d=1
xwayland=true
#drm-device=card0
repaint-window=16
#enable-overlay-view=1
#[shell]
#size=1920x1080
[libinput]
touchscreen_calibrator=true
#[output]
#name=HDMI-A-1
#mode=1920x1080@60
#transform=rotate-90
#[output]
#name=HDMI-A-2
#mode=off
# WIDTHxHEIGHT Resolution size width and height in pixels
# off Disables the output
# preferred Uses the preferred mode
# current Uses the current crt controller mode
#transform=rotate-90
[screen-share]
command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize
[shell]
background-image=/usr/share/images/desktop-base/default
background-type=scale-crop
Asked by Martin
(11 rep)
Feb 16, 2023, 01:37 PM
Last activity: Jul 2, 2025, 04:05 AM
Last activity: Jul 2, 2025, 04:05 AM