Sample Header Ad - 728x90

How to start Weston as user in a systemd service

1 vote
1 answer
5625 views
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