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 1572Shell 203Rust 109Markdown 993728 Definiciones

⎇ main recipes/incoming-kde/okular.toml TOML · 67 líneas · 3.5 KB Historia crudo

purpose: el último hueco de la frontera, y enganchado a las tres apps 3c628deeb · Sergio ·

1# okular 25.04.3 — el visor de documentos de KDE. 8va APP del escritorio.
2# Patrón KF6 app (dynamic, wrapper zig, ECM). Dep nueva clave: poppler 25.02.0 (Qt6) = el generador PDF.
3# ZLIB es REQUIRED. okular marca sus generadores TYPE REQUIRED pero ofrece el flag OFICIAL
4# `FORCE_NOT_REQUIRED_DEPENDENCIES` (lo sugiere el propio feature_summary al abortar) ⇒ se degradan los que
5# no tenemos sellados: DocTools, TIFF, LibSpectre (PS), KExiv2Qt6, DjVuLibre, EPub, Discount
6# (markdown), QMobipocket6. ⚠ Purpose SALIÓ de esa lista el 2026-09-09: ya hay receta, así que
7# el menú «Compartir» vuelve. Sí entran: poppler (PDF, lo importante), kimgio (imágenes), txt, comicbook
8# (pide KF6Pty), fictionbook, xps. Aprovechados por estar ya sellados: kwallet (claves de PDF), phonon
9# (sonido), qtspeech (lectura en voz), plasma-activities (REQUIRED).
10#
11# GOTCHA musl: core/synctex/synctex_parser.c usa vasprintf (extensión GNU) y compila con -std=c99; en modo
12# estricto (__STRICT_ANSI__) musl NO declara vasprintf en stdio.h (sólo bajo _GNU_SOURCE/_BSD_SOURCE) ⇒
13# "call to undeclared function 'vasprintf'" con -Werror=implicit-function-declaration. Fix: CMAKE_C_FLAGS=-D_GNU_SOURCE.
14name    = "okular"
15version = "25.04.3"
16license = "GPL-2.0-or-later"
17
18[source]
19tarball = "https://download.kde.org/stable/release-service/25.04.3/src/okular-25.04.3.tar.xz"
20sha256  = "d0b5bb0b0eeab46aa2367c8d81096185bd2261710701c84f1c6e2398e5058bfb"
21
22[build]
23compiler = "zig-cc"
24target   = "x86_64-linux-musl"
25link     = "dynamic"
26flags    = []
27
28[build.phases]
29configure = '''
30rm -rf po doc
31sed -i '/add_subdirectory(doc)/d' CMakeLists.txt
32sed -i '/kdoctools_install/d' CMakeLists.txt
33ZW="$PWD/.zwrap"; mkdir -p "$ZW"
34cat > "$ZW/cc"  <<'W'
35#!/bin/sh
36a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
37exec /opt/zig/zig cc -mcpu=baseline $a
38W
39cat > "$ZW/cxx" <<'W'
40#!/bin/sh
41a=""; for x in "$@"; do [ "$x" = "-Wl,--fatal-warnings" ] && continue; a="$a $x"; done
42exec /opt/zig/zig c++ -mcpu=baseline $a
43W
44chmod +x "$ZW/cc" "$ZW/cxx"
45cmake -B build -G Ninja -Wno-dev \
46  -DCMAKE_C_COMPILER="$ZW/cc" -DCMAKE_CXX_COMPILER="$ZW/cxx" -DCMAKE_ASM_COMPILER="$ZW/cc" \
47  -DCMAKE_C_FLAGS="-D_GNU_SOURCE" \
48  -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_PREFIX_PATH=/usr \
49  -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF -DBUILD_TESTING=OFF \
50  -DFORCE_NOT_REQUIRED_DEPENDENCIES="KF6DocTools;TIFF;LibSpectre;KExiv2Qt6;DjVuLibre;EPub;Discount;QMobipocket6"
51'''
52compile = "cmake --build build"
53install = "DESTDIR=/out cmake --install build"
54
55[deps]
56build = ["purpose", "cmake", "samurai", "python3", "pkgconf", "qtbase", "qtsvg", "dbus", "extra-cmake-modules",
57  "qttools", "gettext-tiny", "mesa", "libdrm", "libxkbcommon", "wayland", "qtdeclarative",
58  "poppler", "freetype-shared", "fontconfig-shared", "zlib-shared", "lcms2",
59  "libjpeg-turbo-shared", "libpng-shared", "expat", "phonon", "qtspeech", "qtmultimedia",
60  "karchive", "kbookmarks", "kcompletion", "kconfig", "kconfigwidgets", "kcoreaddons", "ki18n",
61  "kio", "threadweaver", "kwindowsystem", "kxmlgui", "kparts", "kcolorscheme", "kcrash",
62  "kiconthemes", "kitemviews", "ktextwidgets", "kwidgetsaddons",
63  "kservice", "kjobwidgets", "kcodecs", "kguiaddons", "solid", "sonnet", "attica", "kpackage",
64  "kirigami", "kglobalaccel", "kauth", "icu4c", "knotifications", "kitemmodels", "plasma-activities",
65  "kpty", "kwallet",
66  "libX11", "xorgproto", "libXau", "libXdmcp", "libXext", "libXrender", "libXfixes", "libXi",
67  "libxcb", "xcb-util", "xcb-util-keysyms", "xcb-util-wm", "xcb-util-image", "xcb-util-renderutil"]