tawasuyu

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 1436Shell 145Markdown 88Rust 853000 Definitions

⎇ a425a55ab928fa5e2273caec7be721de09cb1b91 recipes/incoming-kde/kwindowsystem.toml TOML · 51 lines · 2.6 KB History raw

kde: kwindowsystem KWINDOWSYSTEM_QML=ON — construye el módulo QML org.kde.kwindowsystem 44d06a899 · sergio ·

1# kwindowsystem 6.27.0 — KDE Frameworks 6 (Capa 2, ADR 0011). Patrón KF6: dynamic, wrapper zig que filtra
2# -Wl,--fatal-warnings (ECM lo agrega, zig lo rechaza), CMAKE_PREFIX_PATH=/usr, ECM + qttools + dbus.
3#
4# QML=ON (2026-07-18): construye el módulo QML org.kde.kwindowsystem (usr/lib/qt6/qml/org/kde/
5# kwindowsystem/: qmldir + libKWindowSystem.so plugin). Ese módulo lo IMPORTA Desktop.qml de
6# plasma-workspace ⇒ sin él plasmashell falla "module not installed" y no monta el containment del
7# escritorio. Antes estaba OFF y se destrabó la sesión Plasma anidada INJERTANDO el módulo de un
8# artefacto viejo (compat por soname libKF6WindowSystem.so.6); esto elimina ese injerto. qtdeclarative
9# ya está en [deps].build. Rebuild en la granja (zig-skew: NO en el laptop).
10name    = "kwindowsystem"
11version = "6.27.0"
12
13[source]
14tarball = "https://download.kde.org/stable/frameworks/6.27/kwindowsystem-6.27.0.tar.xz"
15sha256  = "401e5700ab36530a605410464268bf726c898da42c6f7d7bf05a9db00ccfe172"
16
17[build]
18compiler = "zig-cc"
19target   = "x86_64-linux-musl"
20link     = "dynamic"
21flags    = []
22
23[build.phases]
24configure = '''
25ZW="$PWD/.zwrap"; mkdir -p "$ZW"
26cat > "$ZW/cc"  <<'W'
27#!/bin/sh
28a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
29exec /opt/zig/zig cc -mcpu=baseline $a
30W
31cat > "$ZW/cxx" <<'W'
32#!/bin/sh
33a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
34exec /opt/zig/zig c++ -mcpu=baseline $a
35W
36chmod +x "$ZW/cc" "$ZW/cxx"
37cmake -B build -G Ninja -Wno-dev \
38  -DCMAKE_C_COMPILER="$ZW/cc" -DCMAKE_CXX_COMPILER="$ZW/cxx" -DCMAKE_ASM_COMPILER="$ZW/cc" \
39  -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_PREFIX_PATH=/usr \
40  -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF \
41  -DBUILD_TESTING=OFF -DBUILD_PYTHON_BINDINGS=OFF \
42  -DKWINDOWSYSTEM_QML=ON -DKWINDOWSYSTEM_X11=ON -DKWINDOWSYSTEM_WAYLAND=ON
43'''
44compile = "cmake --build build"
45install = "DESTDIR=/out cmake --install build"
46
47[deps]
48# X11+WAYLAND (Qt-xcb ya saldado): X11 provee KX11Extras (que libplasma/theme_p exige) vía XCB con
49# KEYSYMS/RES/ICCCM + qtx11extras_p.h (Qt6::GuiPrivate, ahora con xcb=ON). Wayland: plasma-wayland-protocols
50# + Qt6WaylandClient (bundleado en qtbase). Cadena X11: libxcb/libX11/xcb-util-keysyms/wm + libXau/libXdmcp.
51build = ["cmake", "samurai", "python3", "pkgconf", "qtbase", "dbus", "extra-cmake-modules", "qttools", "qtdeclarative", "mesa", "libdrm", "libxkbcommon", "wayland", "wayland-protocols", "plasma-wayland-protocols", "libxcb", "libX11", "libXau", "libXdmcp", "xcb-util-keysyms", "xcb-util-wm", "xorgproto", "libXfixes", "libXext", "libXrender", "libXi"]