diff options
Diffstat (limited to 'meta-agl-ic-container/recipes-graphics')
6 files changed, 168 insertions, 0 deletions
diff --git a/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test.bb b/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test.bb new file mode 100644 index 00000000..15b44ed2 --- /dev/null +++ b/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test.bb @@ -0,0 +1,43 @@ +SUMMARY = "Configuration files for the Weston compositors for DRM lease testing" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = " \ + file://weston.ini.ivi \ + file://weston.ini.cluster \ +" + +S = "${WORKDIR}" + +inherit allarch update-alternatives + +# On-target weston.ini directory +weston_ini_dir = "${sysconfdir}/xdg/weston" + +do_install() { + install -d ${D}${weston_ini_dir} + install -m 0644 ${WORKDIR}/weston.ini.ivi ${D}${weston_ini_dir}/ + install -m 0644 ${WORKDIR}/weston.ini.cluster ${D}${weston_ini_dir}/ +} + +ALTERNATIVE_LINK_NAME[weston.ini] = "${weston_ini_dir}/weston.ini" + +RDEPENDS:${PN} = "${BPN}-ivi" +ALLOW_EMPTY:${PN} = "1" + +PACKAGE_BEFORE_PN += "${PN}-ivi" + +FILES:${PN}-ivi = "${weston_ini_dir}/weston.ini.ivi" + +RPROVIDES:${PN}-ivi = "weston-ini" +ALTERNATIVE:${PN}-ivi = "weston.ini" +ALTERNATIVE_TARGET_${PN}-ivi = "${weston_ini_dir}/weston.ini.ivi" + +PACKAGE_BEFORE_PN += "${PN}-cluster" + +FILES:${PN}-cluster = "${weston_ini_dir}/weston.ini.cluster" + +RPROVIDES:${PN}-cluster = "weston-ini" +RCONFLICTS:${PN}-cluster = "${PN}-ivi" +ALTERNATIVE:${PN}-cluster = "weston.ini" +ALTERNATIVE_TARGET_${PN}-cluster = "${weston_ini_dir}/weston.ini.cluster" diff --git a/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test/weston.ini.cluster b/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test/weston.ini.cluster new file mode 100644 index 00000000..13347577 --- /dev/null +++ b/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test/weston.ini.cluster @@ -0,0 +1,26 @@ +[core] +backend=drm-backend.so +require-input=false +idle-time=0 +modules=systemd-notify.so + +[shell] +locking=false +panel-position=none +background-color=0xff00ff00 + +[output] +name=Virtual-1 +mode=1920x1080 + +[output] +name=Virtual-2 +mode=1920x1080 + +[output] +name=HDMI-A-1 +mode=1920x1080 + +[output] +name=HDMI-A-2 +mode=1920x1080 diff --git a/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test/weston.ini.ivi b/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test/weston.ini.ivi new file mode 100644 index 00000000..24d4ee29 --- /dev/null +++ b/meta-agl-ic-container/recipes-graphics/wayland/weston-ini-conf-drm-lease-test/weston.ini.ivi @@ -0,0 +1,26 @@ +[core] +backend=drm-backend.so +require-input=false +idle-time=0 +modules=systemd-notify.so + +[shell] +locking=false +panel-position=none +background-color=0xffff0000 + +[output] +name=Virtual-1 +mode=1920x1080 + +[output] +name=Virtual-2 +mode=1920x1080 + +[output] +name=HDMI-A-1 +mode=1920x1080 + +[output] +name=HDMI-A-2 +mode=1920x1080 diff --git a/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest/weston.env b/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest/weston.env new file mode 100644 index 00000000..7df25aa2 --- /dev/null +++ b/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest/weston.env @@ -0,0 +1,6 @@ +XDG_RUNTIME_DIR=/run/user/0 +DLM_RUNTIME_PATH=/var/display/drm-lease-manager +DRM_LEASE_DEVICE=lease +WAYLAND_DISPLAY=wayland-1 +LIBSEAT_BACKEND=builtin +SEATD_VTBOUND=0 diff --git a/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest/weston.service b/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest/weston.service new file mode 100644 index 00000000..94a2a530 --- /dev/null +++ b/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest/weston.service @@ -0,0 +1,21 @@ +[Unit] +Description=Weston Wayland Compositor +RequiresMountsFor=/run +After=multi-user.target +Wants=multi-user.target + +[Service] +User=root +PAMName=login +EnvironmentFile=-/etc/default/weston +StandardError=journal +PermissionsStartOnly=true +IgnoreSIGPIPE=no +Type=notify +Restart=on-failure +StartLimitInterval=0 + +ExecStart=/usr/bin/weston --config /etc/xdg/weston/weston.ini --idle-time=0 --drm-lease=${DRM_LEASE_DEVICE} --log=/var/log/weston.log + +[Install] +WantedBy=multi-user.target diff --git a/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest_0.1.bb b/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest_0.1.bb new file mode 100644 index 00000000..d444317b --- /dev/null +++ b/meta-agl-ic-container/recipes-graphics/wayland/weston-init-guest_0.1.bb @@ -0,0 +1,46 @@ +SUMMARY = "Startup script and systemd unit file for the Weston Wayland compositor in guest cotainer" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = "file://weston.env \ + file://weston.service \ + " + +S = "${WORKDIR}" + +inherit features_check systemd + +do_install() { + install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston + + # Install Weston systemd service and accompanying udev rule + install -D -p -m0644 ${WORKDIR}/weston.service ${D}${systemd_system_unitdir}/weston.service + sed -i -e s:/etc:${sysconfdir}:g \ + -e s:/usr/bin:${bindir}:g \ + -e s:/var:${localstatedir}:g \ + ${D}${systemd_unitdir}/system/weston.service +} + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +# rdepends on weston-init-guest which depends on wayland +REQUIRED_DISTRO_FEATURES = "wayland" + +FILES:${PN} += " \ + ${sysconfdir}/xdg/weston/weston.ini \ + ${systemd_system_unitdir}/weston.service \ + ${sysconfdir}/default/weston \ + " +CONFFILES:${PN} += " \ + ${sysconfdir}/xdg/weston/weston.ini \ + ${sysconfdir}/default/weston \ + " +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE:${PN} = "weston.service" +SYSTEMD_AUTO_ENABLE = "enable" + +RDEPENDS:${PN} = " \ + weston \ + weston-ini \ + " +RCONFLICTS:${PN} = "weston-init" |