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 188Rust 55Shell 30Markdown 281211 Definitions

⎇ fb6cb05aab989f7813ae3becba7a3a4754d5ecee recipes/tzdata.toml TOML · 36 lines · 1.4 KB History raw

base-system: promover 17 esenciales a canónicas + repo firmado (713→730) fb6cb05aa · sergio ·

1# Base de zonas horarias (IANA tz).
2#
3# El tarball `tzcode2026b.tar.gz` de IANA trae SÓLO el código (zic.c, Makefile) y el
4# `tzdata2026b.tar.gz` SÓLO los datos (africa, asia, ...). Como hammer fija una única
5# fuente por receta y el tarball combinado de IANA es `.tar.lz` (lzip no disponible),
6# usamos el árbol git de eggert/tz —que contiene código + datos juntos— pineado al tag
7# 2026b (ADR 0006: commit fijo, nunca HEAD).
8#
9# Objetivo: poblar /usr/share/zoneinfo/* con `zic`. NO empaquetamos el binario
10# zic/zdump/posixtz, sólo las zonas compiladas. Por eso quitamos los parches de Alpine
11# de `posixtz` (no lo construimos).
12name    = "tzdata"
13version = "2026b"
14
15[source]
16repo   = "https://github.com/eggert/tz"
17commit = "48c25a1ba86cb602990c0573aba7795417931bb4"  # tag 2026b (annotated → commit)
18
19[build]
20compiler = "zig-cc"
21target   = "x86_64-linux-musl"
22link     = "static"
23flags    = []
24
25[build.phases]
26# El Makefile de tz compila `zic` (C estándar, sin deps externas). VERSION lo pasamos a
27# mano porque el árbol se materializa vía `git archive` (sin .git para `git describe`).
28compile = '''
29make CC="$CC" LDFLAGS="$LDFLAGS" VERSION=2026b zic
30'''
31# `posix_only` genera tzdata.zi + leapseconds (vía awk, que busybox awk resuelve) y corre
32# `zic -d $DESTDIR$TZDIR tzdata.zi` → deja las zonas en /out/usr/share/zoneinfo.
33install = '''
34make CC="$CC" LDFLAGS="$LDFLAGS" VERSION=2026b \
35     DESTDIR=/out TZDIR=/usr/share/zoneinfo posix_only
36'''