gui running in qemu
This commit is contained in:
@@ -9,7 +9,7 @@ BBFILE_PATTERN_meta-fcb-looper = "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_meta-fcb-looper = "10"
|
||||
|
||||
LAYERVERSION_meta-fcb-looper = "1"
|
||||
LAYERSERIES_COMPAT_meta-fcb-looper = "whinlatter"
|
||||
LAYERSERIES_COMPAT_meta-fcb-looper = "scarthgap"
|
||||
|
||||
# Dependencies
|
||||
LAYERDEPENDS_meta-fcb-looper = "core"
|
||||
LAYERDEPENDS_meta-fcb-looper = "core openembedded-layer rust-bin-layer"
|
||||
@@ -0,0 +1,24 @@
|
||||
[Unit]
|
||||
Description=FCB Looper GUI Application
|
||||
After=weston.service
|
||||
Wants=weston.service
|
||||
Requires=graphical.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
Environment="WAYLAND_DISPLAY=wayland-0"
|
||||
Environment="XDG_RUNTIME_DIR=/run/user/0"
|
||||
Environment="RUST_LOG=info"
|
||||
ExecStartPre=/bin/sleep 3
|
||||
ExecStart=/usr/bin/gui
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
WatchdogSec=30
|
||||
|
||||
# Resource limits
|
||||
MemoryMax=256M
|
||||
CPUQuota=80%
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical.target
|
||||
@@ -0,0 +1,36 @@
|
||||
SUMMARY = "FCB Looper GUI Application"
|
||||
DESCRIPTION = "Rust egui GUI for FCB1010 looper pedal"
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
|
||||
|
||||
inherit cargo_bin systemd externalsrc
|
||||
|
||||
# Network access required for cargo dependencies (Yocto 4.0+)
|
||||
do_compile[network] = "1"
|
||||
|
||||
# Remove debug function - clean recipe
|
||||
#CARGO_BUILD_FLAGS = "--target x86_64-poky-linux-gnu --release"
|
||||
|
||||
# Use external source directory
|
||||
EXTERNALSRC = "/repo/gui"
|
||||
EXTERNALSRC_BUILD = "${WORKDIR}/build"
|
||||
|
||||
# Disable externalsrc debug symlinks
|
||||
EXTERNALSRC_SYMLINKS = ""
|
||||
|
||||
# Dependencies for GUI
|
||||
DEPENDS += "wayland wayland-protocols libxkbcommon fontconfig"
|
||||
RDEPENDS:${PN} += "weston liberation-fonts systemd"
|
||||
|
||||
# Systemd service
|
||||
SRC_URI += "file://gui-app.service"
|
||||
|
||||
do_install:append() {
|
||||
install -d ${D}${systemd_system_unitdir}
|
||||
install -m 0644 ${WORKDIR}/gui-app.service ${D}${systemd_system_unitdir}/
|
||||
}
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "gui-app.service"
|
||||
SYSTEMD_AUTO_ENABLE:${PN} = "enable"
|
||||
|
||||
FILES:${PN} += "${systemd_system_unitdir}/gui-app.service"
|
||||
@@ -0,0 +1,29 @@
|
||||
SUMMARY = "FCB1010 Looper System Image"
|
||||
DESCRIPTION = "Minimal embedded Linux system with GUI for audio looper"
|
||||
|
||||
require recipes-core/images/core-image-base.bb
|
||||
|
||||
IMAGE_INSTALL += "\
|
||||
packagegroup-core-boot \
|
||||
gui-app \
|
||||
weston \
|
||||
weston-init \
|
||||
liberation-fonts \
|
||||
systemd \
|
||||
openssh \
|
||||
ssh-keys \
|
||||
${CORE_IMAGE_EXTRA_INSTALL} \
|
||||
"
|
||||
|
||||
# Optimize for embedded use
|
||||
IMAGE_FEATURES += "read-only-rootfs ssh-server-openssh"
|
||||
SYSTEMD_DEFAULT_TARGET = "graphical.target"
|
||||
|
||||
# Size optimization
|
||||
IMAGE_ROOTFS_SIZE ?= "1048576"
|
||||
IMAGE_OVERHEAD_FACTOR = "1.1"
|
||||
|
||||
# Image formats
|
||||
IMAGE_FSTYPES += "ext4 tar.bz2"
|
||||
|
||||
LICENSE = "MIT"
|
||||
@@ -13,7 +13,7 @@ do_compile[noexec] = "1"
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${ROOT_HOME}/.ssh
|
||||
install -m 0600 ${UNPACKDIR}/authorized_keys ${D}${ROOT_HOME}/.ssh/authorized_keys
|
||||
install -m 0600 ${WORKDIR}/authorized_keys ${D}${ROOT_HOME}/.ssh/authorized_keys
|
||||
}
|
||||
|
||||
FILES:${PN} = "${ROOT_HOME}/.ssh/authorized_keys"
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
# Disable xwayland for embedded system
|
||||
PACKAGECONFIG:remove = "xwayland"
|
||||
@@ -0,0 +1,2 @@
|
||||
# Enable DRM backend for VirtIO GPU
|
||||
PACKAGECONFIG:append = " drm"
|
||||
Reference in New Issue
Block a user