Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions recipes/core/seatd.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
inherit: [meson, init]

metaEnvironment:
PKG_VERSION: "0.8.0"
PKG_LICENSE: "MIT"

checkoutSCM:
scm: url
url: https://git.sr.ht/~kennylevinsen/seatd/archive/${PKG_VERSION}.tar.gz
digestSHA1: e33c99d9b0dce48f82618de2849ef3128305d28a
stripComponents: 1

buildScript: |
mesonBuild $1 \
-Dman-pages=disabled \
-Dexamples=disabled \
-Dwerror=false \
-Dlibseat-logind=disabled \
-Dlibseat-builtin=enabled

# add init script
if initIsAnySysvinit; then
install -D -m 0755 $<@seatd/S70seatd.sh@> \
install/etc/init.d/S70seatd.sh
fi

multiPackage:
"":
packageScript: mesonPackageBin

libseat:
multiPackage:
dev:
packageScript: mesonPackageDev
tgt:
depends:
- name: core::seatd
use: []
packageScript: mesonPackageLib
provideDeps: [ "core::seatd" ]
48 changes: 48 additions & 0 deletions recipes/core/seatd/S70seatd.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
#! /bin/sh

# This file comes from buildroot and is licensed under GPLv2.

DAEMON="seatd"
DAEMON_EXE="/usr/bin/${DAEMON}"
PIDFILE="/run/${DAEMON}.pid"

start() {
printf 'Starting %s: ' "${DAEMON}"
start-stop-daemon -S -x "${DAEMON_EXE}" -p "${PIDFILE}" -m -b -- -g video
status=$?
if [ "$status" -eq 0 ]; then
echo OK
else
echo FAIL
fi
return "$status"
}

stop() {
printf 'Stopping %s: ' "${DAEMON}"
start-stop-daemon -K -x "${DAEMON_EXE}" -p "${PIDFILE}"
status=$?
if [ "$status" -eq 0 ]; then
echo OK
else
echo FAIL
fi
return "$status"
}

restart() {
stop
sleep 1
start
}

case "${1}" in
start|stop|restart)
"${1}";;
reload)
restart;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
38 changes: 38 additions & 0 deletions recipes/graphics/glmark2.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
inherit: [meson, cmake, wayland-scanner]

metaEnvironment:
PKG_VERSION: "2023.01"
PKG_LICENSE: "GPL-3.0+, SGIv1"

depends:
- libs::libpng-dev
- virtual::libs::libjpeg-dev
- virtual::libs::libegl-dev
- virtual::libs::libgles-dev
- virtual::libs::libdrm-dev
- graphics::wayland::wayland-protocols
- graphics::wayland::wayland-dev

- use: []
depends:
- libs::libpng-tgt
- virtual::libs::libjpeg-tgt
- virtual::libs::libegl-tgt
- virtual::libs::libgles-tgt
- virtual::libs::libdrm-tgt
- graphics::wayland::wayland-tgt

checkoutSCM:
scm: url
url: ${GITHUB_MIRROR}/glmark2/glmark2/archive/refs/tags/${PKG_VERSION}.tar.gz
digestSHA1: 0493f28122fd01dd7398eb4b6726dd3236ef30d0
stripComponents: 1

buildScript: |
mesonBuild $1 \
-Dflavors=drm-glesv2,wayland-glesv2

packageScript: |
mesonPackageTgt

provideDeps: [ "*-tgt" ]
84 changes: 84 additions & 0 deletions recipes/graphics/wayland/weston.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
inherit: [meson, wayland-scanner, init]

metaEnvironment:
PKG_VERSION: "14.0.2"
PKG_LICENSE: "MIT"

depends:
- libs::libpng-dev
- virtual::libs::libjpeg-dev
- virtual::libs::libegl-dev
- virtual::libs::libgles-dev
- virtual::libs::libdrm-dev
- libs::libxkbcommon-dev
- libs::libinput-dev
- libs::pixman-dev
- libs::cairo-dev
- libs::pango-dev
- libs::libdisplay-info-dev
- core::seatd-libseat-dev
- graphics::wayland::wayland-dev
- graphics::wayland::wayland-protocols

- use: []
depends:
- libs::libpng-tgt
- virtual::libs::libjpeg-tgt
- virtual::libs::libegl-tgt
- virtual::libs::libgles-tgt
- virtual::libs::libdrm-tgt
- libs::libxkbcommon-tgt
- libs::libinput-tgt
- libs::pixman-tgt
- libs::cairo-tgt
- libs::pango-tgt
- libs::libdisplay-info-tgt
- core::seatd-libseat-tgt
- graphics::wayland::wayland-tgt

checkoutSCM:
scm: url
url: https://gitlab.freedesktop.org/wayland/weston/-/releases/${PKG_VERSION}/downloads/weston-${PKG_VERSION}.tar.xz
digestSHA1: f744163d71d046fa898bc4aa0df25a57c3ff470b
stripComponents: 1

buildScript: |
mesonBuild $1 \
-Ddoc=false \
-Dtest-junit-xml=false \
-Dremoting=false \
-Dbackend-drm-screencast-vaapi=false \
-Dbackend-x11=false \
-Dbackend-vnc=false \
-Dbackend-rdp=false \
-Dbackend-pipewire=false \
-Dbackend-headless=false \
-Dscreenshare=false \
-Dxwayland=false \
-Dsystemd=false \
-Dpipewire=false \
-Dimage-webp=false \
-Dwcap-decode=false \
-Dcolor-management-lcms=false \
-Dtools=calibrator,debug,info,terminal,touch-calibrator \
-Dsimple-clients=all \
-Ddemo-clients=true \
-Dshell-desktop=true \
-Dshell-ivi=true \
-Dbackend-drm=true \
-Drenderer-gl=true

# install profile file
install -D -m 0644 $<@weston/weston.sh@> \
install/etc/profile.d/weston.sh

# add init script
if initIsAnySysvinit; then
install -D -m 0755 $<@weston/S80weston.sh@> \
install/etc/init.d/S80weston.sh
fi

packageScript: |
mesonPackageTgt

provideDeps: [ "*-tgt" ]
54 changes: 54 additions & 0 deletions recipes/graphics/wayland/weston/S80weston.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
#!/bin/sh

# This file comes from buildroot and is licensed under GPLv2.

DAEMON="weston"
DAEMON_ARGS="--continue-without-input --log=/var/log/$DAEMON.log"

[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON"

start() {
printf 'Starting %s: ' "$DAEMON"
export XDG_RUNTIME_DIR=/run/user/`id -u ${WESTON_USER}`
if ! test -d "$XDG_RUNTIME_DIR"; then
mkdir -p $XDG_RUNTIME_DIR
chmod 0700 $XDG_RUNTIME_DIR
fi
if ! test -d "/tmp/.X11-unix"; then
mkdir -p /tmp/.X11-unix
fi
export WESTON_DISABLE_GBM_MODIFIERS=1
unset DISPLAY
unset WAYLAND_DISPLAY
# shellcheck source=/dev/null
start-stop-daemon -b -m -S -q -p "$PIDFILE" -x "/usr/bin/$DAEMON" -- $DAEMON_ARGS
status=$?
if [ "$status" -eq 0 ]; then
echo "OK"
else
echo "FAIL"
fi
return "$status"
}

stop() {
printf 'Stopping %s: ' "$DAEMON"
echo "OK"
}

restart() {
stop
sleep 1
start
}

case "$1" in
start|stop|restart)
"$1";;
reload)
# Restart, since there is no true "reload" feature.
restart;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
2 changes: 2 additions & 0 deletions recipes/graphics/wayland/weston/weston.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export XDG_RUNTIME_DIR=/run/user/`id -u ${WESTON_USER}`
export WAYLAND_DISPLAY=wayland-1
20 changes: 20 additions & 0 deletions recipes/graphics/xorg/xkeyboard-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
inherit: [meson]

metaEnvironment:
PKG_VERSION: "2.45"
PKG_LICENSE: "MIT"

checkoutSCM:
scm: url
url: https://www.x.org/releases/individual/data/xkeyboard-config/xkeyboard-config-${PKG_VERSION}.tar.xz
digestSHA1: 1166b85b82ffb13ee1010563249a2edef718a3df
stripComponents: 1

buildTools: [bison, m4, perl]
buildScript: |
mesonBuild $1

ln -sf ../xkeyboard-config-2 install/usr/share/X11/xkb

packageScript: |
mesonPackageTgt
34 changes: 34 additions & 0 deletions recipes/libs/libdisplay-info.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
inherit: [meson]

metaEnvironment:
PKG_VERSION: "0.2.0"
PKG_LICENSE: "MIT"

depends:
- core::hwdata

checkoutSCM:
scm: url
url: "https://gitlab.freedesktop.org/emersion/libdisplay-info/-/releases/${PKG_VERSION}/downloads/\
libdisplay-info-${PKG_VERSION}.tar.xz"
digestSHA1: 87c1c2e9ece3c012e69633c778f7be5265187302
stripComponents: 1

buildScript: |
mesonBuild $1

multiPackage:
"":
depends:
- name: libs::libdisplay-info-tgt
use: []
packageScript: mesonPackageBin
provideDeps: [ "*-tgt" ]

dev:
packageScript: mesonPackageDev
provideDeps: [ "*hwdata" ]

tgt:
packageScript: mesonPackageLib
provideDeps: [ "*hwdata" ]
38 changes: 38 additions & 0 deletions recipes/libs/libinput.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
inherit: [meson]

metaEnvironment:
PKG_VERSION: "1.26.1"
PKG_LICENSE: "MIT"

depends:
- libs::mtdev-dev
- libs::libevdev-dev
- virtual::core::udev-dev

- use: []
depends:
- libs::mtdev-tgt
- libs::libevdev-tgt
- virtual::core::udev-tgt

checkoutSCM:
scm: url
url: https://gitlab.freedesktop.org/libinput/libinput/-/archive/${PKG_VERSION}/libinput-${PKG_VERSION}.tar.bz2
digestSHA1: 1fe73b4e30d01e1d6b18b8815cc93316d1a51de3
stripComponents: 1

buildScript: |
mesonBuild $1 \
-Dtests=false \
-Ddocumentation=false \
-Ddebug-gui=false \
-Dlibwacom=false

multiPackage:
dev:
packageScript: mesonPackageDev
provideDeps: [ "*-dev" ]

tgt:
packageScript: mesonPackageTgt
provideDeps: [ "*-tgt" ]
6 changes: 3 additions & 3 deletions recipes/libs/libxkbcommon.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ depends:
- use: []
depends:
- libs::libxml2-tgt
- graphics::xorg::xkeyboard-config

checkoutSCM:
scm: url
Expand All @@ -24,12 +25,11 @@ buildScript: |
-Denable-tools=false \
-Denable-wayland=true

# this will not work without this dir; even when X11 is disabled
mkdir -p install/usr/share/X11/xkb

multiPackage:
dev:
packageScript: mesonPackageDev

tgt:
packageScript: mesonPackageTgt

provideDeps: [ "*-tgt", "*xkeyboard-config" ]