kde/Plasma: libtool+libcanberra (backend null, Canberra::Canberra REQUIRED por 4 subdirs) + plasma-workspace quita xembed-sni-proxy (X11)

This commit is contained in:
2026-07-13 19:52:17 -04:00
parent 3db93d837d
commit 9e79d20d2f
3 changed files with 45 additions and 1 deletions
+22
View File
@@ -0,0 +1,22 @@
# libcanberra 0.30 — biblioteca de sonido de eventos. plasma-workspace la linkea INCONDICIONAL en 4 subdirs
# (notificationmanager/startup-sound/kcm_notifications/kcm_soundtheme) ⇒ debe existir Canberra::Canberra.
# Backend NULL solo (--disable-alsa/oss/pulse/gstreamer): satisface el target SIN traer el stack de audio
# (deuda Capa 0 audio). find_package(Canberra) usa FindCanberra.cmake (pkg-config libcanberra.pc → target).
name = "libcanberra"
version = "0.30"
[source]
tarball = "http://0pointer.de/lennart/projects/libcanberra/libcanberra-0.30.tar.xz"
sha256 = "c2b671e67e0c288a69fc33dc1b6f1b534d07882c2aceed37004bf48c601afa72"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "dynamic"
zig_version = "0.13.0"
[build.phases]
configure = '''./configure --build=$CBUILD --host=$CHOST --prefix=/usr \
--disable-alsa --disable-oss --disable-pulse --disable-gstreamer --disable-udev \
--disable-gtk --disable-gtk3 --disable-gtk-doc --without-systemd'''
compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
build = ["pkgconf", "libtool"]
+18
View File
@@ -0,0 +1,18 @@
# GNU libtool 2.5.4 — provee libltdl (carga de plugins .so), dep de libcanberra. De-Alpinizado.
# Sólo nos interesa libltdl (ltdl.h + libltdl.so + libltdl.pc); el script libtool en sí no lo usa hammer.
name = "libtool"
version = "2.5.4"
[source]
tarball = "https://ftpmirror.gnu.org/libtool/libtool-2.5.4.tar.xz"
sha256 = "f81f5860666b0bc7d84baddefa60d1cb9fa6fceb2398cc3baca6afaa60266675"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "dynamic"
zig_version = "0.13.0"
[build.phases]
configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --enable-ltdl-install --disable-static --enable-shared'
compile = 'make -j"$(nproc)"'
install = "make install DESTDIR=/out && find /out -name '*.la' -delete"
[deps]
build = ["pkgconf", "m4"]
+5 -1
View File
@@ -85,6 +85,10 @@ sed -i '/find_package(KF6NetworkManagerQt/ s/ REQUIRED)/)/' CMakeLists.txt
# TYPE REQUIRED)` (L134-136) lo hace obligatorio en feature_summary. Es cosmético ("preview notification
# sounds") ⇒ lo bajamos a OPTIONAL (acotado al bloque Canberra para no tocar el de Breeze que sigue).
sed -i '/set_package_properties(Canberra/,/)/ s/TYPE REQUIRED/TYPE OPTIONAL/' CMakeLists.txt
# xembed-sni-proxy: `ecm_optional_add_subdirectory(xembed-sni-proxy)` (L458) NO está gated por WITH_X11
# (oversight upstream) y linkea X11::Xtst, inexistente en Wayland-puro (WITH_X11=OFF) ⇒ falla el Generate.
# Es un shim SNI para apps XEmbed legacy (bandeja X11), irrelevante sin X11. Lo removemos.
sed -i '/ecm_optional_add_subdirectory(xembed-sni-proxy)/d' CMakeLists.txt
ZW="$PWD/.zwrap"; mkdir -p "$ZW"
cat > "$ZW/cc" <<'W'
#!/bin/sh
@@ -116,7 +120,7 @@ build = ["cmake", "samurai", "python3", "pkgconf", "qtbase", "qtdeclarative", "q
# Qt6 módulos (SELLADO):
"qtlocation",
# Terceros (SELLADOS; libcanberra=opcional en CMakeLists, fuera):
"qcoro", "icu4c", "libqalculate",
"qcoro", "icu4c", "libqalculate", "libcanberra",
# Frameworks KF6 COMPONENTS (SELLADOS):
"kded", "prison", "krunner", "kstatusnotifieritem", "ktexteditor",
# KDE Plasma libs (SELLADAS; networkmanager-qt patcheado a opcional, fuera):