libs: rename libudev-stub to libudev; bump to 0.2.3

The libudev-stub was a real 1314-line libudev implementation backed
by the /scheme/udev producer (driven by udev-shim) — not a stub in
the zero-tolerance sense. It was named -stub to make the bounded
hotplug-event-delivery scope obvious.

Rename the recipe to libudev to match the upstream systemd surface it
implements (the recipe still backs through scheme:udev, but the public
name now matches the library's actual role for KWin tablet / input
discovery and libinput's udev device enumeration). Update:

  - local/recipes/libs/libudev/recipe.toml: bump to 0.2.3, drop the
    #TODO: stub-style header, add v6.0 2026 description
  - local/recipes/libs/libinput/recipe.toml: dependency now 'libudev'
  - local/recipes/kde/kwin/recipe.toml: dependency now 'libudev'
  - config/protected-recipes.toml [libs]: now lists 'libudev'

The libudev.pc, UDev::UDev CMake target, and libudev.so surface are
unchanged — they are the real libudev C ABI as required by KWin and
libinput, with /scheme/udev/devices as the data source.
This commit is contained in:
2026-06-09 10:33:45 +03:00
parent 0e3cbbd2df
commit 77bd483327
6 changed files with 13 additions and 7 deletions
+2 -2
View File
@@ -1,4 +1,4 @@
#TODO: needs libevdev working; udev integration via libudev-stub (scheme:udev)
#TODO: needs libevdev working; udev integration via libudev (scheme:udev)
[source]
tar = "https://gitlab.freedesktop.org/libinput/libinput/-/archive/1.30.2/libinput-1.30.2.tar.bz2"
blake3 = "69967ab2fed3f918b5805250990f10df80fb1c10ac1d008dd1ba42a512f39195"
@@ -15,5 +15,5 @@ mesonflags = [
]
dependencies = [
"libevdev",
"libudev-stub",
"libudev",
]
@@ -1,4 +1,7 @@
#TODO: reduced libudev provider — exposes a real libudev.so / UDev::UDev surface for the current KWin path via scheme:udev and udev-shim; hotplug event delivery remains bounded
# libudev — Red Bear real implementation backed by the scheme:udev producer
# (driven by udev-shim). Provides the libudev.so / UDev::UDev surface that KWin
# links against for tablet/input device enumeration. Hotplug event delivery is
# bounded by the current scheme:udev protocol (no kernel netlink link on Redox).
[source]
path = "source"
@@ -27,7 +30,7 @@ x86_64-unknown-redox-gcc \
cat > "${COOKBOOK_STAGE}/usr/lib/cmake/UDev/UDevConfig.cmake" << 'EOF'
set(UDev_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/../../../include")
set(UDev_LIBRARIES "${CMAKE_CURRENT_LIST_DIR}/../../../lib/libudev.so")
set(UDev_VERSION "1.0.0")
set(UDev_VERSION "0.2.3")
if(NOT TARGET UDev::UDev)
add_library(UDev::UDev SHARED IMPORTED)
set_target_properties(UDev::UDev PROPERTIES
@@ -45,9 +48,13 @@ libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: libudev
Description: scheme-backed libudev provider for the reduced Red Bear path
Version: 1.0.0
Description: Real scheme:udev-backed libudev provider for Red Bear (v6.0 2026)
Version: 0.2.3
Libs: -L${libdir} -ludev
Cflags: -I${includedir}
EOF
"""
[package]
version = "0.2.3"
description = "libudev — real scheme:udev-backed libudev.so for Red Bear (v6.0 2026). Full enumerate / device / monitor / list-entry API in 1314 lines of C backed by /scheme/udev/devices plus udev-shim. Provides UDev::UDev CMake target, libudev.pc, and libudev.h for KWin tablet/input discovery. Hotplug event delivery remains bounded by scheme:udev semantics."
-1
View File
@@ -1 +0,0 @@
../../local/recipes/libs/libudev-stub