diff options
| author | Adam Duskett <adam.duskett@amarulasolutions.com> | 2026-01-14 18:25:53 +0100 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2026-01-14 16:59:51 -0800 |
| commit | 882622c7e5d2d394dac2632056fdca500b8c4a6a (patch) | |
| tree | bd88f7c0831036d8f5791c2ff3b33dec21aa01b8 | |
| parent | 29298838b513f1eafeff1fa7e2e2485e5940d767 (diff) | |
| download | meta-openembedded-882622c7e5d2d394dac2632056fdca500b8c4a6a.tar.gz | |
kmscon: Add recipe
Provide sane defaults that do not have dependencies, such as
a dummy and terminal session support and basic fbdev support.
kmsconvt@.service must be added separatly or else
do_rootfs fails with the following error:
```
do_rootfs: Postinstall scriptlets of ['kmscon'] have failed. If the intention
is to defer them to first boot, then please place them into
pkg_postinst_ontarget:${PN} (). Deferring to first boot via 'exit 1' is no
longer supported.
```
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
| -rw-r--r-- | meta-oe/recipes-graphics/kmscon/kmscon_9.2.1.bb | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/kmscon/kmscon_9.2.1.bb b/meta-oe/recipes-graphics/kmscon/kmscon_9.2.1.bb new file mode 100644 index 0000000000..9f19bd18e6 --- /dev/null +++ b/meta-oe/recipes-graphics/kmscon/kmscon_9.2.1.bb | |||
| @@ -0,0 +1,63 @@ | |||
| 1 | SUMMARY = "Simple terminal emulator based on linux kernel mode setting (KMS)." | ||
| 2 | DESCRIPTION = "\ | ||
| 3 | Kmscon is a simple terminal emulator based on linux kernel mode setting \ | ||
| 4 | (KMS). It is an attempt to replace the in-kernel VT implementation with \ | ||
| 5 | a userspace console. \ | ||
| 6 | " | ||
| 7 | HOMEPAGE = "https://github.com/kmscon/kmscon" | ||
| 8 | BUGTRACKER = "https://github.com/kmscon/kmscon/issues" | ||
| 9 | CVE_PRODUCT = "kmscon" | ||
| 10 | |||
| 11 | SECTION = "graphics" | ||
| 12 | |||
| 13 | LICENSE = "MIT" | ||
| 14 | LIC_FILES_CHKSUM = "file://COPYING;md5=6d4602d249f8a3401040238e98367d9e" | ||
| 15 | |||
| 16 | DEPENDS = "\ | ||
| 17 | libtsm \ | ||
| 18 | libxkbcommon \ | ||
| 19 | udev \ | ||
| 20 | " | ||
| 21 | |||
| 22 | SRC_URI = "git://github.com/kmscon/kmscon;branch=main;protocol=https" | ||
| 23 | SRCREV = "7d46650dbb0826f9b89de42f879be879391c14fd" | ||
| 24 | |||
| 25 | inherit meson pkgconfig systemd | ||
| 26 | |||
| 27 | PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" | ||
| 28 | |||
| 29 | PACKAGECONFIG[backspace_sends_delete] = "-Dbackspace_sends_delete=true, -Dbackspace_sends_delete=false" | ||
| 30 | PACKAGECONFIG[font_pango] = "-Dfont_pango=enabled, -Dfont_pango=disabled, pango" | ||
| 31 | PACKAGECONFIG[multi_seat] = "-Dmulti_seat=enabled, -Dmulti_seat=disabled, systemd" | ||
| 32 | PACKAGECONFIG[opengl] = "-Drenderer_gltex=enabled -Dvideo_drm3d=enabled, -Drenderer_gltex=disabled -Dvideo_drm3d=disabled, libdrm virtual/egl virtual/libgles2 virtual/libgbm" | ||
| 33 | PACKAGECONFIG[video_drm2d] = "-Dvideo_drm2d=enabled, -Dvideo_drm2d=disabled, libdrm" | ||
| 34 | |||
| 35 | EXTRA_OEMESON = "\ | ||
| 36 | -Delogind=disabled \ | ||
| 37 | -Dextra_debug=false \ | ||
| 38 | -Dfont_unifont=enabled \ | ||
| 39 | -Dsession_dummy=enabled \ | ||
| 40 | -Dsession_terminal=enabled \ | ||
| 41 | -Dtests=false \ | ||
| 42 | -Dvideo_fbdev=enabled \ | ||
| 43 | " | ||
| 44 | |||
| 45 | SYSTEMD_SERVICE:${PN} = "kmscon.service" | ||
| 46 | FILES:${PN} += "${systemd_system_unitdir}/kmsconvt@.service" | ||
| 47 | |||
| 48 | do_install:append() { | ||
| 49 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | ||
| 50 | install -d ${D}${sysconfdir}/systemd/system | ||
| 51 | ln -sf ${systemd_system_unitdir}/kmsconvt@.service \ | ||
| 52 | ${D}${sysconfdir}/systemd/system/autovt@.service | ||
| 53 | fi | ||
| 54 | |||
| 55 | if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'true', 'false', d)}; then | ||
| 56 | sed -e "s@#drm@drm@g" \ | ||
| 57 | -e "s@#hwaccel@hwaccel@g" \ | ||
| 58 | -e "s@#render-engine=gltex@render-engine=gltex@g" \ | ||
| 59 | -i ${D}${sysconfdir}/kmscon/kmscon.conf | ||
| 60 | fi | ||
| 61 | } | ||
| 62 | |||
| 63 | RDEPENDS:${PN} = "xkeyboard-config" | ||
