diff --git a/recipes-qt/qt-multi-screen-compositor/files/qt-multi-screen-compositor@.service b/recipes-qt/qt-multi-screen-compositor/files/qt-multi-screen-compositor@.service new file mode 100644 index 0000000000000000000000000000000000000000..2650598c3591c62eb962b622dd1463bfeb17da1f --- /dev/null +++ b/recipes-qt/qt-multi-screen-compositor/files/qt-multi-screen-compositor@.service @@ -0,0 +1,24 @@ +[Unit] +Description=Qt multi-screen Compositor +RequiresMountsFor=/run +Conflicts=plymouth-quit.service +After=systemd-user-sessions.service plymouth-quit-wait.service systemd-logind.service + +[Service] +User=%i +PAMName=login +Environment=XDG_RUNTIME_DIR=/var/run/user/0 +Environment=QT_QPA_FONTDIR=/usr/share/fonts/truetype +Environment=QT_QPA_PLATFORM=wayland +Environment=QT_QPA_EGLFS_KMS_CONFIG=/etc/kms.conf +Environment=QT_QPA_EGLFS_INTEGRATION=eglfs_kms +Environment=QT_QPA_EGLFS_KMS_ATOMIC=1 +Environment=QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=rotate=180 +StandardError=journal +PermissionsStartOnly=true +IgnoreSIGPIPE=no + +#Type=notify +#NotifyAccess=all +Type=simple +ExecStart=/usr/bin/multi-screen -platform eglfs diff --git a/recipes-qt/qt-multi-screen-compositor/qt-multi-screen-compositor.bb b/recipes-qt/qt-multi-screen-compositor/qt-multi-screen-compositor.bb new file mode 100644 index 0000000000000000000000000000000000000000..cac6e3ee84fe8ecd8f0caadf852cdd7fa17a8ecd --- /dev/null +++ b/recipes-qt/qt-multi-screen-compositor/qt-multi-screen-compositor.bb @@ -0,0 +1,50 @@ +SUMMARY = "Modified Qt multi-screen compositor example" +HOMEPAGE = "https://git.seco.com/seco-ne/tools/qt-multi-screen-compositor" + +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9" + +DEPENDS = "qtbase qtquickcontrols" +RDEPENDS_${PN} += "qtwayland" + +SRCREV = "${AUTOREV}" +SRC_URI = "git://git@git.seco.com:4444/seco-ne/tools/qt-multi-screen-compositor.git;protocol=ssh;branch=master;nobranch=1 \ + file://qt-multi-screen-compositor@.service \ + " + +# Create a <tag>-<number of commits since tag>-<hash> Version string +inherit gitpkgv +PKGV = "${GITPKGVTAG}" + +S = "${WORKDIR}/git" + +inherit autotools +inherit systemd + +require recipes-qt/qt5/qt5.inc + +FILESEXTRAPATHS_prepend := "${THISDIR}:" + +# ${PN}-tools added by qt5.inc, but we do not need it +PACKAGES_remove = "${PN}-tools" + +QMAKE_PROFILES = "${S}/multi-screen.pro" + +do_install () { + #Application + install -d ${D}${bindir} + install -m 0755 multi-screen ${D}${bindir} + + if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then + #Systemd unit + install -d ${D}${systemd_system_unitdir}/ + install -D -p -m 0644 ${WORKDIR}/qt-multi-screen-compositor@.service ${D}${systemd_system_unitdir}/qt-multi-screen-compositor@.service + fi +} + +FILES_${PN} += " \ + ${systemd_system_unitdir}/qt-multi-screen-compositor@.service \ + " + +SYSTEMD_SERVICE_${PN} = "qt-multi-screen-compositor@%i.service" +