aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/package
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-05-20 05:57:13 +0900
committerOphestra <cat@gensokyo.uk>2026-05-20 05:57:26 +0900
commit656059278d96c86987c261ae842592617ee17962 (patch)
tree469c3e195589e7f4005477bfe391707472ef4c29 /internal/rosa/package
parent1a9974ffdc63e9deb24e4c83f4b4ce566311360f (diff)
internal/rosa/package: migrate remaining trivial packages
The rest are migrated individually. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/rosa/package')
-rw-r--r--internal/rosa/package/rdfind.az20
-rw-r--r--internal/rosa/package/rsync.az27
-rw-r--r--internal/rosa/package/squashfs-tools.az51
-rw-r--r--internal/rosa/package/stage0.az17
-rw-r--r--internal/rosa/package/strace.az38
-rw-r--r--internal/rosa/package/util-linux.az59
-rw-r--r--internal/rosa/package/vim.az30
-rw-r--r--internal/rosa/package/xz.az18
-rw-r--r--internal/rosa/package/zlib.az28
-rw-r--r--internal/rosa/package/zstd.az31
10 files changed, 319 insertions, 0 deletions
diff --git a/internal/rosa/package/rdfind.az b/internal/rosa/package/rdfind.az
new file mode 100644
index 00000000..f464faff
--- /dev/null
+++ b/internal/rosa/package/rdfind.az
@@ -0,0 +1,20 @@
+package rdfind {
+ description = "a program that finds duplicate files";
+ website = "https://rdfind.pauldreik.se";
+ anitya = 231641;
+
+ version* = "1.8.0";
+ source = remoteTar {
+ url = "https://rdfind.pauldreik.se/rdfind-"+version+".tar.gz";
+ checksum = "PoaeJ2WIG6yyfe5VAYZlOdAQiR3mb3WhAUMj2ziTCx_IIEal4640HMJUb4SzU9U3";
+ compress = gzip;
+ };
+
+ exec = make {
+ // test suite hard codes /bin/echo
+ preCheck = "\nln -s ../system/bin/toybox /bin/echo\n";
+ };
+
+ inputs = [ nettle ];
+ runtime = [ nettle ];
+}
diff --git a/internal/rosa/package/rsync.az b/internal/rosa/package/rsync.az
new file mode 100644
index 00000000..009ac4ba
--- /dev/null
+++ b/internal/rosa/package/rsync.az
@@ -0,0 +1,27 @@
+package rsync {
+ description = "an open source utility that provides fast incremental file transfer";
+ website = "https://rsync.samba.org";
+ anitya = 4217;
+
+ version* = "3.4.2";
+ source = remoteTar {
+ url = "https://download.samba.org/pub/rsync/src/"+
+ "rsync-"+version+".tar.gz";
+ checksum = "t7PxS4WHXzefLMKKc_3hJgxUmlGG6KgHMZ8i4DZvCQAUAizxbclNKwfLyOHyq5BX";
+ compress = gzip;
+ };
+
+ toyboxEarly = true;
+
+ exec = make {
+ configure = {
+ "disable-openssl";
+ "disable-xxhash";
+ "disable-zstd";
+ "disable-lz4";
+ };
+
+ // circular dependency
+ skipCheck = true;
+ };
+}
diff --git a/internal/rosa/package/squashfs-tools.az b/internal/rosa/package/squashfs-tools.az
new file mode 100644
index 00000000..a9d40e99
--- /dev/null
+++ b/internal/rosa/package/squashfs-tools.az
@@ -0,0 +1,51 @@
+package squashfs-tools {
+ description = "tools to create and extract Squashfs filesystems";
+ website = "https://github.com/plougher/squashfs-tools";
+ anitya = 4879;
+
+ version* = "4.7.5";
+ source = remoteGitHubRelease {
+ suffix = "plougher/squashfs-tools";
+ tag = version;
+ name = "squashfs-tools-"+version+".tar.gz";
+ checksum = "rF52wLQP-jeAmcD-48wqJcck8ZWRFwkax3T-7snaRf5EBnCQQh0YypMY9lwcivLz";
+ compress = gzip;
+ };
+
+ // uses source tree as scratch space
+ writable = true;
+ chmod = true;
+
+ env = [
+ "CONFIG=1",
+ "XZ_SUPPORT=0",
+ "LZO_SUPPORT=0",
+ "LZ4_SUPPORT=0",
+ "COMP_DEFAULT=zstd",
+ "USE_PREBUILT_MANPAGES=y",
+ ];
+
+ early = "cd squashfs-tools";
+
+ exec = make {
+ skipConfigure = true;
+ inPlace = true;
+
+ skipCheck = true;
+ install = "make INSTALL_PREFIX=/work/system install";
+ };
+
+ inputs = [
+ sed,
+
+ zstd,
+ gzip,
+ zlib,
+ ];
+
+ runtime = [
+ zstd,
+ gzip,
+ zlib,
+ ];
+}
diff --git a/internal/rosa/package/stage0.az b/internal/rosa/package/stage0.az
new file mode 100644
index 00000000..02930657
--- /dev/null
+++ b/internal/rosa/package/stage0.az
@@ -0,0 +1,17 @@
+package stage0-dist {
+ description = "Rosa OS stage0 bootstrap seed";
+
+ version* = "20260504";
+ output = remoteTar {
+ url = "https://hakurei.app/seed/"+version+"/"+
+ "stage0-"+triple+".tar.bz2";
+ checksum = arch {
+ amd64 = "IQjFDkiAVLo1XzflgMMiLP3gnVY2hhDMTzl-QqJDCQhcLQ3lLtRzjI5WCxGyW_lk";
+ arm64 = "6fmwl2Umx2QssKQvxxb1JOGkAjzfA_MXKku0jVdGjYGb35OvwEVA5NYtd0HIy3yH";
+ riscv64 = "Z2ODV0rIoo9iQRUIu35bsaOBeXc_9qQfGcyb2aGneatzNUJlXh5emSpEV2bOklUL";
+
+ default = 0;
+ };
+ compress = bzip2;
+ };
+}
diff --git a/internal/rosa/package/strace.az b/internal/rosa/package/strace.az
new file mode 100644
index 00000000..fa10a749
--- /dev/null
+++ b/internal/rosa/package/strace.az
@@ -0,0 +1,38 @@
+package strace {
+ description = "a diagnostic, debugging and instructional userspace utility";
+ website = "https://strace.io";
+ anitya = 4897;
+
+ version* = "6.19";
+ source = remoteFile {
+ url = "https://strace.io/files/"+version+"/strace-"+version+".tar.xz";
+ checksum = "XJFJJ9XLh_1rHS3m_QNjLKzkkBAooE-QT9p9lJNNWowAmd54IJop_fI4-IFtjeeL";
+ };
+
+ early = `
+sed -i 's/off64_t/off_t/g' \
+ tests/readahead.c \
+ tests/sync_file_range.c \
+ tests/sync_file_range2.c
+sed -i 's/unsigned int msg_len;$/uint32_t msg_len;/g' \
+ tests/nlattr.c
+`;
+
+ exec = make {
+ configure = {
+ // tests broken on clang
+ "disable-gcc-Werror";
+
+ "enable-mpers": "no";
+ };
+
+ // does not compile on musl
+ skipCheck = true;
+ };
+
+ inputs = [
+ xz,
+
+ kernel-headers,
+ ];
+}
diff --git a/internal/rosa/package/util-linux.az b/internal/rosa/package/util-linux.az
new file mode 100644
index 00000000..b2055583
--- /dev/null
+++ b/internal/rosa/package/util-linux.az
@@ -0,0 +1,59 @@
+package util-linux {
+ description = "a random collection of Linux utilities";
+ website = "https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git";
+ anitya = 8179;
+ // release candidates confuse Anitya
+ latest = anityaFallback;
+
+ version* = "2.42";
+ source = remoteTar {
+ url = "https://www.kernel.org/pub/linux/utils/util-linux/"+
+ "v"+join {
+ elems = slice {
+ elems = split {
+ s = version;
+ sep = ".";
+ n = 3;
+ };
+ end = 2;
+ };
+ sep = ".";
+ }+"/util-linux-"+version+".tar.gz";
+ checksum = "Uy8Nxg9DsW5YwDoeaZeZTyQJ2YmnaaL_fSsQXsLUiFFUd7wnZeD_3SEaVO7ClJlk";
+ compress = gzip;
+ };
+
+ early = "\nln -s ../system/bin/bash /bin/\n";
+
+ exec = make {
+ configure = {
+ "disable-use-tty-group";
+ "disable-makeinstall-setuid";
+ "disable-makeinstall-chown";
+
+ "enable-fs-paths-default": join {
+ elems = [
+ "/system/sbin",
+ "/system/sbin/fs.d",
+ "/system/sbin/fs",
+ ];
+ sep = ":";
+ };
+
+ "disable-su";
+ "disable-liblastlog2";
+ "disable-pam-lastlog2";
+ };
+
+ // check script claims:
+ // For development purpose only.
+ // Don't execute on production system!
+ skipCheck = true;
+ };
+
+ inputs = [
+ bash,
+
+ kernel-headers,
+ ];
+}
diff --git a/internal/rosa/package/vim.az b/internal/rosa/package/vim.az
new file mode 100644
index 00000000..7a5b3d0d
--- /dev/null
+++ b/internal/rosa/package/vim.az
@@ -0,0 +1,30 @@
+package vim {
+ description = "a greatly improved version of the good old UNIX editor Vi";
+ website = "https://www.vim.org";
+ anitya = 5092;
+
+ version* = "9.2.0461";
+ source = remoteGitHub {
+ suffix = "vim/vim";
+ tag = "v"+version;
+ checksum = "18Rr_5oIf_PkKuqVkN4CMZIGkZEgpN1vamlrsvPLBjn4mN98CRuoJmhzRZ7MoVYM";
+ };
+
+ writable = true;
+ chmod = true;
+ enterSource = true;
+
+ exec = make {
+ inPlace = true;
+ configure = {
+ "with-tlib": "ncursesw";
+ };
+ check = [ "test" ];
+
+ // very expensive
+ skipCheck = true;
+ };
+
+ inputs = [ ncurses ];
+ runtime = [ ncurses ];
+}
diff --git a/internal/rosa/package/xz.az b/internal/rosa/package/xz.az
new file mode 100644
index 00000000..41f53ba0
--- /dev/null
+++ b/internal/rosa/package/xz.az
@@ -0,0 +1,18 @@
+package xz {
+ description = "XZ Utils";
+ website = "https://tukaani.org/xz";
+ anitya = 5277;
+
+ version* = "5.8.3";
+ source = remoteGitHubRelease {
+ suffix = "tukaani-project/xz";
+ tag = "v"+version;
+ name = "xz-"+version+".tar.bz2";
+ checksum = "nCdayphPGdIdVoAZ2hR4vYlhDG9LeVKho_i7ealTud4Vxy5o5dWe0VwFlN7utuUL";
+ compress = bzip2;
+ };
+
+ exec = make {};
+
+ inputs = [ diffutils ];
+}
diff --git a/internal/rosa/package/zlib.az b/internal/rosa/package/zlib.az
new file mode 100644
index 00000000..39d64a77
--- /dev/null
+++ b/internal/rosa/package/zlib.az
@@ -0,0 +1,28 @@
+package zlib {
+ description = "lossless data-compression library";
+ website = "https://zlib.net";
+ anitya = 5303;
+
+ version* = "1.3.2";
+ source = remoteTar {
+ url = "https://www.zlib.net/fossils/zlib-"+version+".tar.gz";
+ checksum = "KHZrePe42vL2XvOUE3KlJkp1UgWhWkl0jjT_BOvFhuM4GzieEH9S7CioepOFVGYB";
+ compress = gzip;
+ };
+
+ exec = cmake {
+ cache = {
+ "CMAKE_C_FLAGS": "-fPIC";
+ "ZLIB_BUILD_TESTING": "ON";
+ "ZLIB_BUILD_SHARED": "ON";
+ "ZLIB_BUILD_STATIC": "ON";
+ "ZLIB_BUILD_MINIZIP": "OFF";
+
+ "ZLIB_INSTALL": "ON";
+ "ZLIB_PREFIX": "OFF";
+ };
+
+ // ninja dependency loop
+ make = true;
+ };
+}
diff --git a/internal/rosa/package/zstd.az b/internal/rosa/package/zstd.az
new file mode 100644
index 00000000..7f965d72
--- /dev/null
+++ b/internal/rosa/package/zstd.az
@@ -0,0 +1,31 @@
+package zstd {
+ description = "a fast compression algorithm";
+ website = "https://facebook.github.io/zstd";
+ anitya = 12083;
+
+ version* = "1.5.7";
+ source = remoteGitHubRelease {
+ suffix = "facebook/zstd";
+ tag = "v"+version;
+ name = "zstd-"+version+".tar.gz";
+ checksum = "4XhfR7DwVkwo1R-TmYDAJOcx9YXv9WSFhcFUe3hWEAMmdMLPhFaznCqYIA19_xxV";
+ compress = gzip;
+ };
+
+ // tests Makefile assumes writable source
+ writable = true;
+ chmod = true;
+
+ exec = cmake {
+ append = [ "build", "cmake" ];
+ test = `
+make -C /usr/src/zstd/tests datagen
+ZSTD_BIN=/cure/programs/zstd /usr/src/zstd/tests/playTests.sh
+`;
+ };
+
+ inputs = [
+ make,
+ diffutils,
+ ];
+}