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…
⎇ 4ed01d0e91e8184ddcfc8d00b45481b4b16e8cf3
recipes/incoming-kde/kwindowsystem.toml
Ñawpa willay
ch'uya
kde/Capa1: quitar qtwayland.toml redundante (qtbase ya bundlea Qt6WaylandClient)
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.
3name = "kwindowsystem"
4version = "6.27.0"
5
6[source]
7tarball = "https://download.kde.org/stable/frameworks/6.27/kwindowsystem-6.27.0.tar.xz"
8sha256 = "401e5700ab36530a605410464268bf726c898da42c6f7d7bf05a9db00ccfe172"
9
10[build]
11compiler = "zig-cc"
12target = "x86_64-linux-musl"
13link = "dynamic"
14flags = []
15
16[build.phases]
17configure = '''
18ZW="$PWD/.zwrap"; mkdir -p "$ZW"
19cat > "$ZW/cc" <<'W'
20#!/bin/sh
21a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
22exec /opt/zig/zig cc -mcpu=baseline $a
23W
24cat > "$ZW/cxx" <<'W'
25#!/bin/sh
26a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
27exec /opt/zig/zig c++ -mcpu=baseline $a
28W
29chmod +x "$ZW/cc" "$ZW/cxx"
30cmake -B build -G Ninja -Wno-dev \
31 -DCMAKE_C_COMPILER="$ZW/cc" -DCMAKE_CXX_COMPILER="$ZW/cxx" -DCMAKE_ASM_COMPILER="$ZW/cc" \
32 -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_PREFIX_PATH=/usr \
33 -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF \
34 -DBUILD_TESTING=OFF -DBUILD_PYTHON_BINDINGS=OFF \
35 -DKWINDOWSYSTEM_QML=OFF -DKWINDOWSYSTEM_X11=OFF -DKWINDOWSYSTEM_WAYLAND=ON
36'''
37compile = "cmake --build build"
38install = "DESTDIR=/out cmake --install build"
39
40[deps]
41# WAYLAND-ONLY (KWINDOWSYSTEM_X11=OFF): el path X11 pedía XCB con KEYSYMS/RES/ICCCM + Qt-xcb (deuda Capa 0
42# diferida). Plasma es Wayland-first. plasma-wayland-protocols p/ find_package(PlasmaWaylandProtocols).
43# Qt6WaylandClient viene BUNDLEADO en qtbase (libQt6WaylandClient.so.6.11.1 + Qt6WaylandClientConfig.cmake
44# dentro del artefacto qtbase, verificado) ⇒ NO se necesita receta qtwayland separada (duplicaría la .so).
45build = ["cmake", "samurai", "python3", "pkgconf", "qtbase", "dbus", "extra-cmake-modules", "qttools", "qtdeclarative", "mesa", "libdrm", "libxkbcommon", "wayland", "wayland-protocols", "plasma-wayland-protocols"]