gioser

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 1389Shell 137Markdown 80Rust 802602 Definiciones

Etapa G (GUI): libsass 3.6.6 + sassc 3.6.2 (C++ vía zig c++) — compilador SCSS para los estilos de libadwaita

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

dfdddf062a931f5eac239c74b2d558892c66d1a1 · por sergio · (hace 3 meses) · padre 82dfbcebf · ver el árbol en este commit

Delta semántico

Ninguna definición cambió: el cambio es de texto, documentación o datos.

2 archivos · +48 −0

diff --git a/recipes/incoming-clib/libsass.toml b/recipes/incoming-clib/libsass.toml
new file mode 100644
index 00000000..6c72cfc3
--- /dev/null
+++ b/recipes/incoming-clib/libsass.toml
@@ -0,0 +1,21 @@
+# libsass 3.6.6 — compilador SCSS→CSS (C++); lo usa sassc, que a su vez compila los estilos de libadwaita.
+# Makefile propio; BUILD=static + CXX=zig c++. Primer ladrillo C++ del stack GUI.
+name    = "libsass"
+version = "3.6.6"
+
+[source]
+tarball = "https://github.com/sass/libsass/archive/refs/tags/3.6.6.tar.gz"
+sha256  = "11f0bb3709a4f20285507419d7618f3877a425c0131ea8df40fe6196129df15d"
+
+[build]
+compiler = "zig-cc"
+target   = "x86_64-linux-musl"
+link     = "static"
+
+[build.phases]
+configure = "true"
+compile   = "make -j4 BUILD=static CC='zig cc' CXX='zig c++' lib/libsass.a"
+install   = "mkdir -p /out/usr/lib /out/usr/include && cp lib/libsass.a /out/usr/lib/ && cp -r include/* /out/usr/include/"
+
+[deps]
+build = []
diff --git a/recipes/incoming-clib/sassc.toml b/recipes/incoming-clib/sassc.toml
new file mode 100644
index 00000000..d9e984b5
--- /dev/null
+++ b/recipes/incoming-clib/sassc.toml
@@ -0,0 +1,27 @@
+# sassc 3.6.2 — CLI sobre libsass (compila SCSS→CSS); libadwaita lo usa en build para sus estilos.
+# Linkea libsass (C++) ⇒ CC='zig c++' (trae libc++ al link). SASS_LIBSASS_PATH=/usr halla headers+lib.
+name    = "sassc"
+version = "3.6.2"
+
+[source]
+tarball = "https://github.com/sass/sassc/archive/refs/tags/3.6.2.tar.gz"
+sha256  = "608dc9002b45a91d11ed59e352469ecc05e4f58fc1259fc9a9f5b8f0f8348a03"
+
+[build]
+compiler = "zig-cc"
+target   = "x86_64-linux-musl"
+link     = "static"
+
+[build.phases]
+# el Makefile de sassc intenta RECOMPILAR libsass (target libsass-static → make -C $SASS_LIBSASS_PATH);
+# salteo eso y linkeo a mano contra el libsass.a ya instalado. Genero sassc_version.h como el Makefile.
+configure = "true"
+compile   = '''
+make sassc_version.h 2>/dev/null || printf '#define SASSC_VERSION "3.6.2"\n' > sassc_version.h
+zig c++ -O2 -I/usr/include -c sassc.c -o sassc.o
+zig c++ -static sassc.o -o sassc -L/usr/lib -lsass
+'''
+install   = "mkdir -p /out/usr/bin && cp sassc /out/usr/bin/sassc"
+
+[deps]
+build = ["libsass"]