Files
hakurei/internal/rosa/package/gnu/package.az
Ophestra 34822925e1
All checks were successful
Test / Create distribution (push) Successful in 1m5s
Test / Sandbox (push) Successful in 2m48s
Test / Hakurei (push) Successful in 3m46s
Test / ShareFS (push) Successful in 3m47s
Test / Sandbox (race detector) (push) Successful in 5m21s
Test / Hakurei (race detector) (push) Successful in 6m35s
Test / Flake checks (push) Successful in 1m21s
internal/rosa: migrate GNU software
These are quite trivial, so migrate them in one pass.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18 21:23:19 +09:00

665 lines
14 KiB
Plaintext

// GNU software with trivial packaging.
package m4 {
description = "a macro processor with GNU extensions";
website = "https://www.gnu.org/software/m4";
anitya = 1871;
version* = "1.4.21";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/m4/m4-"+version+".tar.bz2";
checksum = "pPa6YOo722Jw80l1OsH1tnUaklnPFjFT-bxGw5iAVrZTm1P8FQaWao_NXop46-pm";
compress = bzip2;
};
writable = true;
early = `
chmod +w tests/test-c32ispunct.sh && echo '#!/bin/sh' > tests/test-c32ispunct.sh
`;
exec = make {};
inputs = [
diffutils,
kernel-headers,
];
}
package autoconf {
description = "M4 macros to produce self-contained configure script";
website = "https://www.gnu.org/software/autoconf";
anitya = 141;
version* = "2.73";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/autoconf/autoconf-"+version+".tar.gz";
checksum = "yGabDTeOfaCUB0JX-h3REYLYzMzvpDwFmFFzHNR7QilChCUNE4hR6q7nma4viDYg";
compress = gzip;
};
// test suite is very expensive
exclusive = true;
exec = make {
check = [
"TESTSUITEFLAGS=" + jobsFlagE,
"check",
];
};
inputs = [
m4,
perl,
bash,
diffutils,
];
runtime = [
m4,
perl,
];
}
package automake {
description = "a tool for automatically generating Makefile.in files";
website = "https://www.gnu.org/software/automake";
anitya = 144;
version* = "1.18.1";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/automake/automake-"+version+".tar.gz";
checksum = "FjvLG_GdQP7cThTZJLDMxYpRcKdpAVG-YDs1Fj1yaHlSdh_Kx6nRGN14E0r_BjcG";
compress = gzip;
};
writable = true;
early = `
test_disable() { chmod +w "$2" && echo "$1" > "$2"; }
test_disable '#!/bin/sh' t/objcxx-minidemo.sh
test_disable '#!/bin/sh' t/objcxx-deps.sh
test_disable '#!/bin/sh' t/dist-no-built-sources.sh
test_disable '#!/bin/sh' t/distname.sh
test_disable '#!/bin/sh' t/pr9.sh
`;
exec = make {};
inputs = [
grep,
gzip,
autoconf,
diffutils,
];
runtime = [ autoconf ];
}
package libtool {
description = "a generic library support script";
website = "https://www.gnu.org/software/libtool";
anitya = 1741;
version* = "2.5.4";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/libtool/libtool-"+version+".tar.gz";
checksum = "pa6LSrQggh8mSJHQfwGjysAApmZlGJt8wif2cCLzqAAa2jpsTY0jZ-6stS3BWZ2Q";
compress = gzip;
};
exec = make {
// _Z2a2c: symbol not found
skipEarlyStageCheck = true;
check = [
"TESTSUITEFLAGS=" + jobsFlagE,
"check",
];
};
inputs = [
m4,
diffutils,
];
}
package gzip {
description = "a popular data compression program";
website = "https://www.gnu.org/software/gzip";
anitya = 1290;
version* = "1.14";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/gzip/gzip-"+version+".tar.gz";
checksum = "NWhjUavnNfTDFkZJyAUonL9aCOak8GVajWX2OMlzpFnuI0ErpBFyj88mz2xSjz0q";
compress = gzip;
};
exec = make {
// dependency loop
skipCheck = true;
};
}
package sed {
description = "a non-interactive command-line text editor";
website = "https://www.gnu.org/software/sed";
anitya = 4789;
version* = "4.10";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/sed/sed-"+version+".tar.gz";
checksum = "TXTRFQJCyflb-bpBRI2S5Y1DpplwvT7-KfXtpqN4AdZgZ5OtI6yStn1-bkhDKx51";
compress = gzip;
};
exec = make {};
inputs = [
diffutils,
kernel-headers,
];
}
package diffutils {
description = "several programs related to finding differences between files";
website = "https://www.gnu.org/software/diffutils";
anitya = 436;
version* = "3.12";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/diffutils/diffutils-"+version+".tar.gz";
checksum = "9J5VAq5oA7eqwzS1Yvw-l3G5o-TccUrNQR3PvyB_lgdryOFAfxtvQfKfhdpquE44";
compress = gzip;
};
writable = true;
early = `
test_disable() { chmod +w "$2" && echo "$1" > "$2"; }
test_disable '#!/bin/sh' gnulib-tests/test-c32ispunct.sh
test_disable 'int main(){return 0;}' gnulib-tests/test-c32ispunct.c
test_disable '#!/bin/sh' tests/cmp
`;
toyboxEarly = true;
exec = make {};
}
package patch {
description = "a program to apply diff output to files";
website = "https://savannah.gnu.org/projects/patch";
anitya = 2597;
version* = "2.8";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/patch/patch-"+version+".tar.gz";
checksum = "MA0BQc662i8QYBD-DdGgyyfTwaeALZ1K0yusV9rAmNiIsQdX-69YC4t9JEGXZkeR";
compress = gzip;
};
writable = true;
early = `
test_disable() { chmod +w "$2" && echo "$1" > "$2"; }
test_disable '#!/bin/sh' tests/ed-style
test_disable '#!/bin/sh' tests/need-filename
`;
toyboxEarly = true;
exec = make {};
}
package gawk {
description = "an implementation of awk with GNU extensions";
website = "https://www.gnu.org/software/gawk";
anitya = 868;
version* = "5.4.0";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/gawk/gawk-"+version+".tar.gz";
checksum = "m0RkIolC-PI7EY5q8pcx5Y-0twlIW0Yp3wXXmV-QaHorSdf8BhZ7kW9F8iWomz0C";
compress = gzip;
};
toyboxEarly = true;
exec = make {
// dependency loop
skipCheck = true;
};
}
package grep {
description = "searches input for lines containing a match to a pattern";
website = "https://www.gnu.org/software/grep";
anitya = 1251;
version* = "3.12";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/grep/grep-"+version+".tar.gz";
checksum = "qMB4RjaPNRRYsxix6YOrjE8gyAT1zVSTy4nW4wKW9fqa0CHYAuWgPwDTirENzm_1";
compress = gzip;
};
writable = true;
early = `
test_disable() { chmod +w "$2" && echo "$1" > "$2"; }
test_disable '#!/bin/sh' gnulib-tests/test-c32ispunct.sh
test_disable 'int main(){return 0;}' gnulib-tests/test-c32ispunct.c
`;
exec = make {};
inputs = [ diffutils ];
}
package gettext {
description = "tools for producing multi-lingual messages";
website = "https://www.gnu.org/software/gettext";
anitya = 898;
version* = "1.0";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/gettext/gettext-"+version+".tar.gz";
checksum = "3MasKeEdPeFEgWgzsBKk7JqWqql1wEMbgPmzAfs-mluyokoW0N8oQVxPQoOnSdgC";
compress = gzip;
};
writable = true;
early = `
test_disable() { chmod +w "$2" && echo "$1" > "$2"; }
test_disable '#!/bin/sh' gettext-tools/tests/msgcat-22
test_disable '#!/bin/sh' gettext-tools/tests/msgconv-2
test_disable '#!/bin/sh' gettext-tools/tests/msgconv-8
test_disable '#!/bin/sh' gettext-tools/tests/xgettext-python-3
test_disable '#!/bin/sh' gettext-tools/tests/msgmerge-compendium-6
test_disable '#!/bin/sh' gettext-tools/tests/gettextpo-1
test_disable '#!/bin/sh' gettext-tools/tests/format-c-5
test_disable '#!/bin/sh' gettext-tools/gnulib-tests/test-c32ispunct.sh
test_disable 'int main(){return 0;}' gettext-tools/gnulib-tests/test-stdcountof-h.c
touch gettext-tools/autotools/archive.dir.tar
`;
exec = make {};
inputs = [
diffutils,
gzip,
sed,
kernel-headers,
];
}
package findutils {
description = "the basic directory searching utilities";
website = "https://www.gnu.org/software/findutils";
anitya = 812;
version* = "4.10.0";
source = remoteFile {
url = "https://ftpmirror.gnu.org/gnu/findutils/findutils-"+version+".tar.xz";
checksum = "ZXABdNBQXL7QjTygynRRTdXYWxQKZ0Wn5eMd3NUnxR0xaS0u0VfcKoTlbo50zxv6";
};
early = `
echo '#!/bin/sh' > gnulib-tests/test-c32ispunct.sh
echo 'int main(){return 0;}' > tests/xargs/test-sigusr.c
`;
exec = make {};
inputs = [
diffutils,
xz,
sed,
];
}
package bash {
description = "the Bourne Again SHell";
website = "https://www.gnu.org/software/bash";
anitya = 166;
version* = "5.3";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/bash/bash-"+version+".tar.gz";
checksum = "4LQ_GRoB_ko-Ih8QPf_xRKA02xAm_TOxQgcJLmFDT6udUPxTAWrsj-ZNeuTusyDq";
compress = gzip;
};
toyboxEarly = true;
exec = make {
configure = {
"without-bash-malloc";
};
postInstall = "ln -s bash /work/system/bin/sh\n";
};
}
package coreutils {
description = "the basic file, shell and text manipulation utilities";
website = "https://www.gnu.org/software/coreutils";
anitya = 343;
version* = "9.11";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/coreutils/coreutils-"+version+".tar.gz";
checksum = "t8UMed5wpFEoC56aa42_yidfOAaRGzOfj7MRtQkkqgGbpXiskNA8bd-EmVSQkZie";
compress = gzip;
};
toyboxEarly = true;
writable = true;
early = `
test_disable() { chmod +w "$2" && echo "$1" > "$2"; }
test_disable '#!/bin/sh' gnulib-tests/test-c32ispunct.sh
test_disable '#!/bin/sh' tests/ls/hyperlink.sh
test_disable '#!/bin/sh' tests/misc/user.sh
test_disable 'int main(){return 0;}' gnulib-tests/test-chown.c
test_disable 'int main(){return 0;}' gnulib-tests/test-fchownat.c
test_disable 'int main(){return 0;}' gnulib-tests/test-lchown.c
`;
exec = make {
configure = {
"enable-single-binary": "symlinks";
};
};
inputs = [
perl,
bash,
kernel-headers,
];
}
package tar {
description = "provides the ability to create tar archives";
website = "https://www.gnu.org/software/tar";
anitya = 4939;
version* = "1.35";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/tar/tar-"+version+".tar.gz";
checksum = "zSaoSlVUDW0dSfm4sbL4FrXLFR8U40Fh3zY5DWhR5NCIJ6GjU6Kc4VZo2-ZqpBRA";
compress = gzip;
};
exec = make {
configure = {
"disable-acl";
"without-posix-acls";
"without-xattrs";
};
check = [
// very expensive
"TARTEST_SKIP_LARGE_FILES=1",
"TESTSUITEFLAGS=" + jobsFlagE,
"check",
];
};
inputs = [
diffutils,
gzip,
bzip2,
zstd,
];
}
package texinfo {
description = "the GNU square-wheel-reinvension of man pages";
website = "https://www.gnu.org/software/texinfo";
anitya = 4958;
version* = "7.3";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/texinfo/texinfo-"+version+".tar.gz";
checksum = "RRmC8Xwdof7JuZJeWGAQ_GeASIHAuJFQMbNONXBz5InooKIQGmqmWRjGNGEr5n4-";
compress = gzip;
};
exec = make {
// nonstandard glibc extension
skipCheck = true;
};
inputs = [ perl ];
runtime = [
perl,
gawk,
];
}
package gperf {
description = "a perfect hash function generator";
website = "https://www.gnu.org/software/gperf";
anitya = 1237;
version* = "3.3";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gperf/gperf-"+version+".tar.gz";
checksum = "RtIy9pPb_Bb8-31J2Nw-rRGso2JlS-lDlVhuNYhqR7Nt4xM_nObznxAlBMnarJv7";
compress = gzip;
};
exec = make {};
inputs = [ diffutils ];
}
package bc {
description = "an arbitrary precision numeric processing language";
website = "https://www.gnu.org/software/bc";
anitya = 170;
version* = "1.08.2";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/bc/bc-"+version+".tar.gz";
checksum = "8h6f3hjV80XiFs6v9HOPF2KEyg1kuOgn5eeFdVspV05ODBVQss-ey5glc8AmneLy";
compress = gzip;
};
// source expected to be writable
writable = true;
chmod = true;
exec = make {};
inputs = [
texinfo,
];
}
package libiconv {
description = "iconv implementation independent of glibc";
website = "https://www.gnu.org/software/libiconv";
anitya = 10656;
version* = "1.19";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/libiconv/libiconv-"+version+".tar.gz";
checksum = "UibB6E23y4MksNqYmCCrA3zTFO6vJugD1DEDqqWYFZNuBsUWMVMcncb_5pPAr88x";
compress = gzip;
};
exec = make {};
}
package parallel {
description = "a shell tool for executing jobs in parallel using one or more computers";
website = "https://www.gnu.org/software/parallel";
anitya = 5448;
version* = "20260422";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/parallel/parallel-"+version+".tar.bz2";
checksum = "eTsepxgqhXpMEhPd55qh-W5y4vjKn0x9TD2mzbJCNZYtFf4lT4Wzoqr74HGJYBEH";
compress = bzip2;
};
early = `
ln -s ../system/bin/bash /bin/
`;
exec = make {};
inputs = [
perl,
bash,
];
runtime = [ perl ];
}
package libunistring {
description = "provides functions for manipulating Unicode strings";
website = "https://www.gnu.org/software/libunistring";
anitya = 1747;
version* = "1.4.2";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/libunistring/libunistring-"+version+".tar.gz";
checksum = "iW9BbfLoVlXjWoLTZ4AekQSu4cFBnLcZ4W8OHWbv0AhJNgD3j65_zqaLMzFKylg2";
compress = gzip;
};
writable = true;
early = `
test_disable() { chmod +w "$2" && echo "$1" > "$2"; }
test_disable '#!/bin/sh' tests/test-c32ispunct.sh
test_disable 'int main(){return 0;}' tests/test-c32ispunct.c
`;
exec = make {};
inputs = [
diffutils,
];
}
package libtasn1 {
description = "the ASN.1 library used by GnuTLS, p11-kit and some other packages";
website = "https://www.gnu.org/software/libtasn1";
anitya = 1734;
version* = "4.21.0";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/libtasn1/libtasn1-"+version+".tar.gz";
checksum = "9DYI3UYbfYLy8JsKUcY6f0irskbfL0fHZA91Q-JEOA3kiUwpodyjemRsYRjUpjuq";
compress = gzip;
};
exec = make {};
}
package readline {
description = "provides a set of functions for use by applications that allow users to edit command lines as they are typed in";
website = "https://tiswww.cwru.edu/php/chet/readline/rltop.html";
anitya = 4173;
version* = "8.3";
source = remoteTar {
url = "https://ftpmirror.gnu.org/gnu/readline/readline-"+version+".tar.gz";
checksum = "r-lcGRJq_MvvBpOq47Z2Y1OI2iqrmtcqhTLVXR0xWo37ZpC2uT_md7gKq5o_qTMV";
compress = gzip;
};
exec = make {
configure = {
"with-curses";
"with-shared-termcap-library";
};
};
inputs = [ ncurses ];
runtime = [ ncurses ];
}
package gmp {
description = "a free library for arbitrary precision arithmetic";
website = "https://gmplib.org";
anitya = 1186;
version* = "6.3.0";
source = remoteTar {
url = "https://gcc.gnu.org/pub/gcc/infrastructure/"+
"gmp-"+version+".tar.bz2";
checksum = "yrgbgEDWKDdMWVHh7gPbVl56-sRtVVhfvv0M_LX7xMUUk_mvZ1QOJEAnt7g4i3k5";
compress = bzip2;
};
env = [
"CC=cc",
];
exec = make {};
inputs = [ m4 ];
}
package mpfr {
description = "a C library for multiple-precision floating-point computations";
website = "https://www.mpfr.org";
anitya = 2019;
version* = "4.2.2";
source = remoteTar {
url = "https://gcc.gnu.org/pub/gcc/infrastructure/"+
"mpfr-"+version+".tar.bz2";
checksum = "wN3gx0zfIuCn9r3VAn_9bmfvAYILwrRfgBjYSD1IjLqyLrLojNN5vKyQuTE9kA-B";
compress = bzip2;
};
exec = make {};
inputs = [ gmp ];
runtime = [ gmp ];
}
package mpc {
description = "a C library for the arithmetic of complex numbers";
website = "https://www.multiprecision.org";
anitya = 1667;
version* = "1.4.1";
source = remoteGitLab {
domain = "gitlab.inria.fr";
suffix = "mpc/mpc";
ref = version;
checksum = "ZffaZyWkvIw0iPvRe5EJ7O-VvHtSkbbb3K_7SgPtK810NvGan7nbF0T5-6tozjQN";
};
// does not find mpc-impl.h otherwise
enterSource = true;
exec = make {
inPlace = true;
generate = "autoreconf -vfi";
};
inputs = [
automake,
libtool,
texinfo,
mpfr,
];
runtime = [ mpfr ];
}