summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/kazoe-project-git.bbclass7
-rw-r--r--classes/kazoe-project.bbclass2
-rw-r--r--conf/distro/kazoe.conf76
-rw-r--r--conf/layer.conf2
-rw-r--r--conf/templates/default/local.conf.sample2
-rw-r--r--recipes-core/images/kazoe-image.bb19
-rw-r--r--recipes-core/kzsettings/kzsettings.inc19
-rw-r--r--recipes-core/kzsettings/kzsettings_git.bb3
-rw-r--r--recipes-core/kzxdg/kzxdg.inc12
-rw-r--r--recipes-core/kzxdg/kzxdg_git.bb3
-rw-r--r--recipes-core/packagegroups/packagegroups-kazoe.bb5
-rw-r--r--recipes-desktop/kzdesktop/kzdesktop.inc28
-rw-r--r--recipes-desktop/kzdesktop/kzdesktop_git.bb3
13 files changed, 143 insertions, 38 deletions
diff --git a/classes/kazoe-project-git.bbclass b/classes/kazoe-project-git.bbclass
new file mode 100644
index 0000000..8283428
--- /dev/null
+++ b/classes/kazoe-project-git.bbclass
@@ -0,0 +1,7 @@
+inherit kazoe-project
+
+MAIN_BRANCH ?= "master"
+SRC_URI = "git://kazoe.org/cgit/kazoe/${PROJECT_NAME}.git;protocol=https;branch=${MAIN_BRANCH}"
+S = "${WORKDIR}/git"
+SRCREV = "${AUTOREV}"
+DEFAULT_PREFERENCE = "-1"
diff --git a/classes/kazoe-project.bbclass b/classes/kazoe-project.bbclass
new file mode 100644
index 0000000..3d8c5a5
--- /dev/null
+++ b/classes/kazoe-project.bbclass
@@ -0,0 +1,2 @@
+# Project kzfoo is KzFoo on the git server
+PROJECT_NAME = "${@ '${PN}'[0].upper() + '${PN}'[1] + '${PN}'[2].upper() + '${PN}'[3:] }"
diff --git a/conf/distro/kazoe.conf b/conf/distro/kazoe.conf
index dfecc4c..cea1d09 100644
--- a/conf/distro/kazoe.conf
+++ b/conf/distro/kazoe.conf
@@ -1,33 +1,36 @@
-DISTRO = "kazoe"
-DISTRO_NAME = "kazoe"
-DISTRO_CODENAME = "KaZoe"
-MAINTAINER = "Fabien Proriol <fabien.proriol@kazoe.org>"
-
DISTRO_VERSION_RELEASE = "0"
-DISTRO_VERSION_FLAG = ""
-DISTRO_VERSION_HOTFIX = ""
-
-SDK_VERSION_MINOR = "0"
-SDK_VERSION_RELEASE = "1"
-SDK_REVISION = "10"
-SDK_DESCRIPTION = "SDK for KaZoe"
-SDK_FORMAT = "deb"
-
-
-DISTRO_FEATURES_COMMON = " pam polkit xdg waylan "
+SDK_VERSION_RELEASE = "0"
DISTRO_VERSION_MAJOR_scarthgap = "5"
+DISTRO_VERSION_MAJOR_styhead = "5"
+DISTRO_VERSION_MAJOR_walnascar = "5"
DISTRO_VERSION_MINOR_scarthgap = "0"
-
+DISTRO_VERSION_MINOR_styhead = "1"
+DISTRO_VERSION_MINOR_walnascar = "2"
DISTRO_VERSION_MAJOR = "${DISTRO_VERSION_MAJOR_${LAYERSERIES_CORENAMES}}"
DISTRO_VERSION_MINOR = "${DISTRO_VERSION_MINOR_${LAYERSERIES_CORENAMES}}"
-DISTRO_VERSION = "${DISTRO_VERSION_MAJOR}.${DISTRO_VERSION_MINOR}.${DISTRO_VERSION_RELEASE}${DISTRO_VERSION_FLAG}${DISTRO_VERSION_HOTFIX}"
+DISTRO = "kazoe"
+DISTRO_NAME = "KaZoe"
+DISTRO_VERSION = "${DISTRO_VERSION_MAJOR}.${DISTRO_VERSION_MINOR}.${DISTRO_VERSION_RELEASE}"
+DISTRO_CODENAME = "${LAYERSERIES_CORENAMES}"
SDK_VENDOR = "-kazoe"
-SDK_VERSION = "${@d.getVar('DISTRO_CODENAME', 1).upper()}-${DISTRO_VERSION_MAJOR}.${DISTRO_VERSION_MINOR}.${SDK_VERSION_MINOR}"
-TARGET_VENDOR = "-kazoe"
+SDK_VERSION = "${@d.getVar('DISTRO_NAME')}-${DISTRO_VERSION}.${SDK_VERSION_RELEASE}"
+SDK_VERSION[vardepvalue] = "${SDK_VERSION}"
+
+MAINTAINER = "Fabien Proriol <fabien.proriol@kazoe.org>"
+
+TARGET_VENDOR = "-poky"
+
+LOCALCONF_VERSION = "2"
+
+SDK_DESCRIPTION = "SDK for KaZoe"
+SDK_FORMAT = "deb"
ROOT_HOME = "/root"
+KAZOE_DEFAULT_DISTRO_FEATURES = "opengl wayland vulkan pam polkit xdg kms gbm gles2 eglfs systemd"
+DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} ${KAZOE_DEFAULT_DISTRO_FEATURES}"
+
SDK_NAME = "${DISTRO}-${TCLIBC}-${SDK_ARCH}-${TARGET_ARCH}"
SDKPATH = "/opt/sdk/kazoe-{SDK_VERSION}"
@@ -35,27 +38,28 @@ TOOLCHAIN_HOST_TASK = "nativesdk-packagegroup-sdk-host packagegroup-cross-canadi
TOOLCHAIN_TARGET_TASK = "packagegroup-core-standalone-sdk-target packagegroup-core-standalone-sdk-target-dbg"
SDKIMAGE_FEATURES = "dev-pkgs staticdev-pkgs"
-USER_CLASSES ?= "buildstats"
-
-DISTRO_INIT_MODE ?= "SYSTEMD"
-DISTRO_FEATURES_COMMON ?= " ${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} largefile opengl "
-DISTRO_FEATURES_SYSTEMD ?= " systemd "
-DISTRO_FEATURES_SYSTEMV ?= " sysvinit "
-DISTRO_FEATURES = "${DISTRO_FEATURES_COMMON} ${DISTRO_FEATURES_EXTENDS} ${DISTRO_FEATURES_${DISTRO_INIT_MODE}}"
-INIT_MANAGER = "${@bb.utils.contains('DISTRO_INIT_MODE', 'SYSTEMD', 'systemd', 'sysvinit', d)}"
+# Allow single libc distros to disable this code
+TCLIBCAPPEND = ""
-# By default disable interactive patch resolution (tasks will just fail instead):
-PATCHRESOLVE = "noop"
-
-
-PACKAGE_CLASSES = "package_deb"
-
-QEMU_TARGETS = "aarch64 x86_64"
-TOOLCHAIN = "gcc"
+USER_CLASSES ?= ""
+PACKAGE_CLASSES ?= "package_deb"
+INIT_MANAGER = "systemd"
+DISTRO_FEATURES_NATIVE:append = " opengl"
+DISTRO_FEATURES_NATIVESDK:append = " opengl"
KAZOE_USER ?= "root"
# Manage Qt6
QT_QPA_DEFAULT_PLATFORM:pn-qtbase:class-target = "eglfs"
PACKAGECONFIG_GRAPHICS:pn-qtbase:class-target = " wayland opengl kms gbm gles2 eglfs "
+PACKAGECONFIG:append:pn-qemu-system-native = " sdl gtk+ virglrenderer glx"
+
+
+require conf/distro/include/no-static-libs.inc
+require conf/distro/include/yocto-uninative.inc
+require conf/distro/include/security_flags.inc
+INHERIT += "uninative"
+
+# Enable creation of SPDX manifests by default
+INHERIT += "create-spdx"
diff --git a/conf/layer.conf b/conf/layer.conf
index 6ec38ab..1b5d2d0 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -10,4 +10,4 @@ BBFILE_COLLECTIONS += "meta-kazoe"
BBFILE_PATTERN_meta-kazoe := "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-kazoe = "10"
-LAYERSERIES_COMPAT_meta-kazoe = "scarthgap"
+LAYERSERIES_COMPAT_meta-kazoe = "scarthgap styhead walnascar"
diff --git a/conf/templates/default/local.conf.sample b/conf/templates/default/local.conf.sample
index 0605211..b2893b1 100644
--- a/conf/templates/default/local.conf.sample
+++ b/conf/templates/default/local.conf.sample
@@ -1,6 +1,6 @@
#
# Machine Selection
-MACHINE ??= "qemux86"
+MACHINE ??= "qemux86-64"
#
# Where to place downloads
diff --git a/recipes-core/images/kazoe-image.bb b/recipes-core/images/kazoe-image.bb
new file mode 100644
index 0000000..e0e1ade
--- /dev/null
+++ b/recipes-core/images/kazoe-image.bb
@@ -0,0 +1,19 @@
+SUMMARY = "KaZoe Image."
+
+IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL}"
+
+IMAGE_LINGUAS = " "
+
+LICENSE = "MIT"
+
+inherit core-image
+
+IMAGE_ROOTFS_SIZE ?= "8192"
+IMAGE_ROOTFS_EXTRA_SPACE:append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "", d)}"
+
+
+IMAGE_INSTALL += " packagegroups-kazoe "
+ROOT_PASSWORD ?= "KaZoe"
+inherit extrausers
+DEPENDS += " openssl-native "
+EXTRA_USERS_PARAMS = "usermod -p '''$(echo ${ROOT_PASSWORD} | openssl passwd -1 -stdin)''' root; "
diff --git a/recipes-core/kzsettings/kzsettings.inc b/recipes-core/kzsettings/kzsettings.inc
new file mode 100644
index 0000000..dacd4c6
--- /dev/null
+++ b/recipes-core/kzsettings/kzsettings.inc
@@ -0,0 +1,19 @@
+SUMMARY = "KaZoe Settings library"
+DESCRIPTION = "KaZoe Settings library"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=84657d0be71d6615481bbbde593d3c88"
+
+inherit kazoe-project python3-dir qt6-cmake
+
+DEPENDS += " qtdeclarative qtdeclarative-native "
+
+PACKAGES += " ${PN}-python ${PN}-qt ${PN}-qmlplugin "
+
+PACKAGECONFIG ??= "python3 "
+PACKAGECONFIG[python3] = "-DWITH_PYTHON=ON,,python3-pybind11,python3-pybind11"
+
+EXTRA_OECMAKE += " -DPYTHONPATH=${PYTHON_SITEPACKAGES_DIR} "
+
+FILES:${PN}-qt = "/usr/lib/libKzQSettings*"
+FILES:${PN}-qmlplugin = "/usr/lib/qml/org/kazoe/settings/libKzQSettingsPlugin.so /usr/lib/qml/org/kazoe/settings/qmldir"
+FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
diff --git a/recipes-core/kzsettings/kzsettings_git.bb b/recipes-core/kzsettings/kzsettings_git.bb
new file mode 100644
index 0000000..f00c306
--- /dev/null
+++ b/recipes-core/kzsettings/kzsettings_git.bb
@@ -0,0 +1,3 @@
+require ${PN}.inc
+
+inherit kazoe-project-git
diff --git a/recipes-core/kzxdg/kzxdg.inc b/recipes-core/kzxdg/kzxdg.inc
new file mode 100644
index 0000000..7af1de8
--- /dev/null
+++ b/recipes-core/kzxdg/kzxdg.inc
@@ -0,0 +1,12 @@
+DESCRIPTION = "KaZoe Desktop Wayland server based on Qt Wayland Compositor"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=84657d0be71d6615481bbbde593d3c88"
+
+inherit kazoe-project qt6-cmake
+
+DEPENDS = " qtbase qtdeclarative qtdeclarative-native "
+RDEPENDS:${PN} += " qtbase "
+
+FILES:${PN} += " ${QT6_INSTALL_QMLDIR}/org/kazoe/xdg "
+
+EXTRA_OECMAKE += " -DQML_MODULE_INSTALL_PATH=${QT6_INSTALL_QMLDIR} "
diff --git a/recipes-core/kzxdg/kzxdg_git.bb b/recipes-core/kzxdg/kzxdg_git.bb
new file mode 100644
index 0000000..f00c306
--- /dev/null
+++ b/recipes-core/kzxdg/kzxdg_git.bb
@@ -0,0 +1,3 @@
+require ${PN}.inc
+
+inherit kazoe-project-git
diff --git a/recipes-core/packagegroups/packagegroups-kazoe.bb b/recipes-core/packagegroups/packagegroups-kazoe.bb
new file mode 100644
index 0000000..0ca23b0
--- /dev/null
+++ b/recipes-core/packagegroups/packagegroups-kazoe.bb
@@ -0,0 +1,5 @@
+SUMMARY = "KaZoe Desktop environement"
+
+inherit packagegroup
+
+RDEPENDS:${PN} = "kzdesktop kzsettings"
diff --git a/recipes-desktop/kzdesktop/kzdesktop.inc b/recipes-desktop/kzdesktop/kzdesktop.inc
new file mode 100644
index 0000000..69930a1
--- /dev/null
+++ b/recipes-desktop/kzdesktop/kzdesktop.inc
@@ -0,0 +1,28 @@
+DESCRIPTION = "XDG Free Desktop Qt implementation"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=84657d0be71d6615481bbbde593d3c88"
+
+inherit kazoe-project qt6-cmake systemd
+
+DEPENDS += " qtwayland qtdeclarative qtdeclarative-native qtwayland-native kzxdg "
+RDEPENDS:${PN} += " qtvirtualkeyboard "
+
+SYSTEMD_PACKAGES = "${PN}"
+
+
+do_install:append() {
+ install -d ${D}/var/lib/systemd/linger
+ touch ${D}/var/lib/systemd/linger/${KAZOE_USER}
+
+ if [ "u${KAZOE_USER}" = "uroot" ]
+ then
+ install -d ${D}${ROOT_HOME}/.config/systemd/user/default.target.wants
+ ln -s /usr/lib/systemd/user/desktopmgr.service ${D}${ROOT_HOME}/.config/systemd/user/default.target.wants/desktopmgr.service
+ else
+ install -d ${D}/home/${KAZOE_USER}/.config/systemd/user/default.target.wants
+ ln -s /usr/lib/systemd/user/desktopmgr.service ${D}/home/${KAZOE_USER}/.config/systemd/user/default.target.wants/desktopmgr.service
+ fi
+}
+
+FILES:${PN} += " ${ROOT_HOME} /usr/lib/qt6/qml/org/kazoe/xdg /home/${KAZOE_USER} ${systemd_user_unitdir} "
+FILES:${PN}-dev += "/usr/share/dbus-1/interfaces"
diff --git a/recipes-desktop/kzdesktop/kzdesktop_git.bb b/recipes-desktop/kzdesktop/kzdesktop_git.bb
new file mode 100644
index 0000000..f00c306
--- /dev/null
+++ b/recipes-desktop/kzdesktop/kzdesktop_git.bb
@@ -0,0 +1,3 @@
+require ${PN}.inc
+
+inherit kazoe-project-git