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…
Etapa G: fuel-5 — recarga la cola del VPS (parado 14h sin producir)
1# Importada de Alpine aports por `hammer import-alpine` (Etapa G). PUNTO DE PARTIDA — pero
2# YA trae los parches de musl de Alpine (lo que un import de nix pierde). Pendiente: el
3# sha256 del tarball (el wrapper lo calcula), y adaptar build/install del shell de abuild.
4name = "rsync"
5version = "3.4.4"
6
7[source]
8tarball = "https://download.samba.org/pub/rsync/rsync-3.4.4.tar.gz"
9# FIXME sha256: el wrapper lo calcula (Alpine publica sha512). sha512 de Alpine:
10# sha512 = "cf9a838b1f019b70fd67fa2c293f267be3f24e579c2ea33177ec7afc502c97ce0b613ff0854088c0eb28acd14ee0a75706ae8445115cef4669bd586c505d8453"
11sha256 = "bd88cf82fa653da32314fb229136407c5c90f80d1758d8f4b091767877d8fa96"
12patches = ["dont-use-nobody.patch"]
13
14[build]
15compiler = "zig-cc"
16target = "x86_64-linux-musl"
17link = "static"
18flags = []
19
20[build.phases]
21# de build() de Alpine (traducido; el lab provee $CBUILD/$CHOST — Etapa G Fase 3; revisá --shared para estático):
22compile = '''
23_abuild_phase() {
24cp rrsync.1 support/rrsync.1
25 CFLAGS="$CFLAGS -flto=auto" \
26 ./configure \
27 --build=$CBUILD \
28 --host=$CHOST \
29 --prefix=/usr \
30 --sysconfdir=/etc \
31 --mandir=/usr/share/man \
32 --localstatedir=/var \
33 --enable-acl-support \
34 --enable-xattr-support \
35 --enable-xxhash \
36 --with-rrsync \
37 --without-included-popt \
38 --without-included-zlib \
39 --disable-md2man \
40 --disable-openssl
41 # openssl is disabled since xxh checksums are faster anyway
42 make
43}
44_abuild_phase
45'''
46# de package() de Alpine (traducido $pkgdir→/out):
47install = '''
48_abuild_phase() {
49make DESTDIR="/out" install
50
51 install -Dm755 "$srcdir"/rsyncd.initd "/out"/etc/init.d/rsyncd
52 install -Dm644 "$srcdir"/rsyncd.conf "/out"/etc/rsyncd.conf
53 install -Dm644 "$srcdir"/rsyncd.confd "/out"/etc/conf.d/rsyncd
54 install -Dm644 "$srcdir"/rsyncd.logrotate "/out"/etc/logrotate.d/rsyncd
55}
56_abuild_phase
57'''
58
59# depends de runtime de Alpine (NO build-deps): python3
60
61[deps]
62build = ["acl", "attr", "linux-headers", "lz4", "perl", "popt", "xxhash", "zlib", "zstd"]