3.0 KiB
3.0 KiB
LubanCat1 安装 Weston
系统:Ubuntu 22.04
apt install libcolord-dev liblcms2-dev libva-dev libinput-dev libdrm-dev libpango1.0-dev libpam0g-dev libgbm-dev freerdp2-dev libxkbcommon-dev libpixman-1-dev libcairo2-dev libjpeg-dev libwebp-dev libsystemd-dev libdbus-1-dev libseat-dev libx11-xcb-dev libxcb-xkb-dev libxcb-composite0-dev libgstreamer-plugins-base1.0-dev libxml2-dev libxcursor-dev
apt install meson cmake git graphviz doxygen xsltproc xmlto pkg-config
# apt install libegl-dev libgegl-common libpam0g libgles2 libpipewire-0.2-dev
/etc/environment:
XDG_RUNTIME_DIR="/run/user/0"
DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/0/bus"
RUNLEVEL=3
WESTON_DISABLE_ATOMIC=1
WESTON_DRM_MIRROR=1
WESTON_DRM_KEEP_RATIO=1
WESTON_FREEZE_DISPLAY=/tmp/.freeze_weston
/etc/xdg/weston/weston.ini.d/pixman.ini
[core]
use-pixman=true
/etc/xdg/weston/weston.ini
[core]
xwayland=false
backend=drm-backend.so
idle-time=0
[keyboard]
keymap_layout=gb
[output]
name=HDMI-A-1
mode=2560x1080
[shell]
locking=false
panel-color=0x88882244
panel-position=bottom
panel-scale=2
background-color=0x88882244
[launcher]
icon=/usr/share/icons/locolor/32x32/apps/gvim.png
path=/usr/bin/weston-terminal
#[autolaunch]
#path=/usr/bin/weston-terminal
git clone https://gitlab.freedesktop.org/wayland/wayland.git
git clone https://gitlab.freedesktop.org/wayland/wayland-protocols.git
git clone https://gitlab.freedesktop.org/wayland/weston.git
# opengl 源码从 buildroot 中拷贝
wayland:
git checkout 1.21.0
meson build/ --prefix=/usr
sudo ninja -C build/ install
wayland-protocols:
git checkout 1.24
meson build/ --prefix=/usr
sudo ninja -C build/ install
opengl:
meson build/ --prefix=/usr -Dwith-overlay=true -Dopencl-icd=false -Dkhr-header=true -Dplatform=wayland -Dgpu=bifrost-g52 -Dversion=g2p0
sudo ninja -C build/ install
weston:
git checkout 10.0.2
# meson build/ --prefix=/usr -Dpipewire=false
meson build/ --prefix=/usr -Dpipewire=false -Ddeprecated-wl-shell=true -Dcolor-management-colord=false -Ddoc=false -Dremoting=false -Dtools=calibrator,debug,info,terminal,touch-calibrator -Dlauncher-logind=true -Dimage-jpeg=true -Dimage-webp=true -Ddeprecated-weston-launch=true -Drenderer-gl=true -Dbackend-rdp=true -Dbackend-drm=true -Dbackend-headless=true -Dbackend-wayland=true -Dbackend-drm-screencast-vaapi=true -Dcolor-management-lcms=true -Dsystemd=true -Dtest-junit-xml=true -Dshell-desktop=true -Dshell-fullscreen=true -Dshell-ivi=true -Dsimple-clients=all
sudo ninja -C build/ install
启动 weston,root 账户下执行:
weston --tty=2
systemd service(/usr/lib/systemd/system/weston.service)如下:
[Unit]
Description=Weston
# After=syslog.target
# After=network.target
# After=multi-user.target
# After=graphical.target
After=plymouth-quit-wait.service
# After=systemd-logind.service
[Service]
RestartSec=2s
Type=simple
User=root
Group=root
ExecStart=weston-launch --tty=/dev/tty2 --user=root
Restart=always
[Install]
WantedBy=multi-user.target