aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-09-05 05:44:33 +0900
committerOphestra <cat@gensokyo.uk>2026-09-05 06:25:41 +0900
commit5a32f8f9b2f2540495e79cb39ce4a6861553fe79 (patch)
tree47b25144af5edead669b615f3abcc51aedd81096
parent871c701fdbce4a3d43e6e8edc436a2ae93322540 (diff)
internal/rosa: separate native tools from libraries
This removes most redundant runtime arguments and is useful for cross-compilation. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--cmd/mbf/info.go4
-rw-r--r--internal/rosa/azalea/evaluate.go10
-rw-r--r--internal/rosa/cmake.go7
-rw-r--r--internal/rosa/llvm.go2
-rw-r--r--internal/rosa/make.go7
-rw-r--r--internal/rosa/meson.go7
-rw-r--r--internal/rosa/package/acl/package.az8
-rw-r--r--internal/rosa/package/argp-standalone.az3
-rw-r--r--internal/rosa/package/awk.az2
-rw-r--r--internal/rosa/package/bison.az2
-rw-r--r--internal/rosa/package/buildcatrust.az1
-rw-r--r--internal/rosa/package/cairo.az13
-rw-r--r--internal/rosa/package/check.az2
-rw-r--r--internal/rosa/package/connman/package.az11
-rw-r--r--internal/rosa/package/cryptsetup.az13
-rw-r--r--internal/rosa/package/curl.az7
-rw-r--r--internal/rosa/package/dbus.az5
-rw-r--r--internal/rosa/package/dtc.az2
-rw-r--r--internal/rosa/package/e2fsprogs.az6
-rw-r--r--internal/rosa/package/elfutils/package.az12
-rw-r--r--internal/rosa/package/fcft.az6
-rw-r--r--internal/rosa/package/firmware.az2
-rw-r--r--internal/rosa/package/flex.az2
-rw-r--r--internal/rosa/package/fontconfig.az8
-rw-r--r--internal/rosa/package/foot.az10
-rw-r--r--internal/rosa/package/fuse/package.az7
-rw-r--r--internal/rosa/package/gawk/package.az2
-rw-r--r--internal/rosa/package/gcc/package.az15
-rw-r--r--internal/rosa/package/git.az10
-rw-r--r--internal/rosa/package/glib/package.az8
-rw-r--r--internal/rosa/package/glslang.az2
-rw-r--r--internal/rosa/package/gnu.az65
-rw-r--r--internal/rosa/package/gnutls/package.az13
-rw-r--r--internal/rosa/package/go.az2
-rw-r--r--internal/rosa/package/hakurei.az16
-rw-r--r--internal/rosa/package/harfbuzz.az5
-rw-r--r--internal/rosa/package/hwdata.az2
-rw-r--r--internal/rosa/package/images/package.az4
-rw-r--r--internal/rosa/package/ipmitool.az7
-rw-r--r--internal/rosa/package/iproute2.az11
-rw-r--r--internal/rosa/package/kernel/package.az16
-rw-r--r--internal/rosa/package/kmod.az6
-rw-r--r--internal/rosa/package/libaio.az5
-rw-r--r--internal/rosa/package/libarchive/package.az2
-rw-r--r--internal/rosa/package/libbpf.az2
-rw-r--r--internal/rosa/package/libbsd.az7
-rw-r--r--internal/rosa/package/libcap.az2
-rw-r--r--internal/rosa/package/libdisplay-info.az8
-rw-r--r--internal/rosa/package/libdrm.az6
-rw-r--r--internal/rosa/package/libepoxy.az2
-rw-r--r--internal/rosa/package/libevdev.az6
-rw-r--r--internal/rosa/package/libexpat.az2
-rw-r--r--internal/rosa/package/libgd.az1
-rw-r--r--internal/rosa/package/libglvnd.az6
-rw-r--r--internal/rosa/package/libinput.az9
-rw-r--r--internal/rosa/package/libliftoff.az2
-rw-r--r--internal/rosa/package/libmd.az2
-rw-r--r--internal/rosa/package/libpng.az1
-rw-r--r--internal/rosa/package/libpsl.az2
-rw-r--r--internal/rosa/package/libseccomp.az6
-rw-r--r--internal/rosa/package/libtirpc.az6
-rw-r--r--internal/rosa/package/libva.az7
-rw-r--r--internal/rosa/package/libxml2.az2
-rw-r--r--internal/rosa/package/libxslt.az6
-rw-r--r--internal/rosa/package/lit.az1
-rw-r--r--internal/rosa/package/lm_sensors.az3
-rw-r--r--internal/rosa/package/lua/package.az2
-rw-r--r--internal/rosa/package/lvm2/package.az6
-rw-r--r--internal/rosa/package/meson/package.az2
-rw-r--r--internal/rosa/package/mksh.az2
-rw-r--r--internal/rosa/package/muon.az7
-rw-r--r--internal/rosa/package/musl-fts.az2
-rw-r--r--internal/rosa/package/musl-obstack.az2
-rw-r--r--internal/rosa/package/musl/package.az4
-rw-r--r--internal/rosa/package/ncurses.az2
-rw-r--r--internal/rosa/package/net-tools/package.az7
-rw-r--r--internal/rosa/package/netfilter/package.az14
-rw-r--r--internal/rosa/package/nettle.az6
-rw-r--r--internal/rosa/package/ninja.az2
-rw-r--r--internal/rosa/package/noto.az2
-rw-r--r--internal/rosa/package/nss.az2
-rw-r--r--internal/rosa/package/openssl.az6
-rw-r--r--internal/rosa/package/p11-kit.az6
-rw-r--r--internal/rosa/package/pango/package.az7
-rw-r--r--internal/rosa/package/pcre2.az2
-rw-r--r--internal/rosa/package/perl.az20
-rw-r--r--internal/rosa/package/pipewire.az7
-rw-r--r--internal/rosa/package/pkg-config.az2
-rw-r--r--internal/rosa/package/popt.az2
-rw-r--r--internal/rosa/package/procps.az2
-rw-r--r--internal/rosa/package/python/package.az57
-rw-r--r--internal/rosa/package/qemu/package.az13
-rw-r--r--internal/rosa/package/rdfind.az1
-rw-r--r--internal/rosa/package/rename.az2
-rw-r--r--internal/rosa/package/spirv.az15
-rw-r--r--internal/rosa/package/squashfs-tools.az10
-rw-r--r--internal/rosa/package/stage0.az2
-rw-r--r--internal/rosa/package/strace/package.az6
-rw-r--r--internal/rosa/package/sway/package.az8
-rw-r--r--internal/rosa/package/tamago.az2
-rw-r--r--internal/rosa/package/tllist.az2
-rw-r--r--internal/rosa/package/toybox.az12
-rw-r--r--internal/rosa/package/unzip.az2
-rw-r--r--internal/rosa/package/util-linux/package.az6
-rw-r--r--internal/rosa/package/vim.az1
-rw-r--r--internal/rosa/package/wayland.az10
-rw-r--r--internal/rosa/package/wlroots.az14
-rw-r--r--internal/rosa/package/x.az152
-rw-r--r--internal/rosa/package/xkbcommon.az9
-rw-r--r--internal/rosa/package/xz.az4
-rw-r--r--internal/rosa/package/zstd.az2
-rw-r--r--internal/rosa/perl.go9
-rw-r--r--internal/rosa/python.go9
-rw-r--r--internal/rosa/rosa.go36
-rw-r--r--internal/rosa/state.go46
115 files changed, 414 insertions, 571 deletions
diff --git a/cmd/mbf/info.go b/cmd/mbf/info.go
index a4bc7c02..d8691f60 100644
--- a/cmd/mbf/info.go
+++ b/cmd/mbf/info.go
@@ -56,9 +56,9 @@ func commandInfo(
mustPrintln("website : " +
strings.TrimSuffix(meta.Website, "/"))
}
- if len(meta.Dependencies) > 0 {
+ if len(meta.Runtimes) > 0 {
mustPrint("depends on :")
- for _, d := range meta.Dependencies {
+ for _, d := range meta.Runtimes {
_meta, _ := rosa.MustLoad(d)
s := _meta.Name
if _meta.Version != rosa.Unversioned {
diff --git a/internal/rosa/azalea/evaluate.go b/internal/rosa/azalea/evaluate.go
index 26a02c02..cb5e8d12 100644
--- a/internal/rosa/azalea/evaluate.go
+++ b/internal/rosa/azalea/evaluate.go
@@ -200,12 +200,15 @@ func (e EvaluationError) Error() string {
}
var (
- // IdentInputs is a special array argument in a package declaration whose
+
+ // IdentTools is a special array argument in a package declaration whose
// values of [Ident] are kept as is when passed to a [PF].
+ IdentTools = unique.Make(Ident("tools"))
+ // IdentInputs has the same semantics as [IdentTools].
IdentInputs = unique.Make(Ident("inputs"))
- // IdentRuntime has the same semantics as [IdentInputs].
+ // IdentRuntime has the same semantics as [IdentTools].
IdentRuntime = unique.Make(Ident("runtime"))
- // IdentExtra has the same semantics as [IdentInputs].
+ // IdentExtra has the same semantics as [IdentTools].
IdentExtra = unique.Make(Ident("extra"))
// IdentSource is a special argument in a package declaration where an
// assignment of a [Val] with a single [Ident] passes through the evaluator.
@@ -356,6 +359,7 @@ func evaluateAny(d PF, s []Frame, expr, rp any) bool {
farg := FArg{R: arg.R}
if e.Package {
for _, special := range [...]unique.Handle[Ident]{
+ IdentTools,
IdentInputs,
IdentRuntime,
IdentExtra,
diff --git a/internal/rosa/cmake.go b/internal/rosa/cmake.go
index 8a67f4bc..f9e5e38c 100644
--- a/internal/rosa/cmake.go
+++ b/internal/rosa/cmake.go
@@ -34,14 +34,17 @@ type CMakeHelper struct {
var _ Helper = new(CMakeHelper)
-// extra returns the cmake handle alongside either ninja or make.
-func (attr *CMakeHelper) extra() P {
+// tools returns the cmake handle alongside either ninja or make.
+func (attr *CMakeHelper) tools() P {
if attr != nil && attr.Make {
return P{_cmake, _make}
}
return P{_cmake, _ninja}
}
+// inputs is a noop.
+func (*CMakeHelper) inputs() P { return nil }
+
// wantsChmod returns false.
func (*CMakeHelper) wantsChmod() bool { return false }
diff --git a/internal/rosa/llvm.go b/internal/rosa/llvm.go
index 0882e7d8..6d1dcf0b 100644
--- a/internal/rosa/llvm.go
+++ b/internal/rosa/llvm.go
@@ -54,7 +54,7 @@ func init() {
Description: "a collection of modular and reusable compiler and toolchain technologies",
Website: "https://llvm.org",
- Dependencies: P{
+ Runtimes: P{
_zlib,
_zstd,
_musl,
diff --git a/internal/rosa/make.go b/internal/rosa/make.go
index 710225a2..1c0e52d6 100644
--- a/internal/rosa/make.go
+++ b/internal/rosa/make.go
@@ -51,8 +51,8 @@ type MakeHelper struct {
var _ Helper = new(MakeHelper)
-// extra returns make and other optional dependencies.
-func (attr *MakeHelper) extra() P {
+// tools returns make and other optional dependencies.
+func (attr *MakeHelper) tools() P {
if attr == nil || !attr.OmitDefaults {
return P{
_make,
@@ -64,6 +64,9 @@ func (attr *MakeHelper) extra() P {
return P{_make}
}
+// inputs is a noop.
+func (*MakeHelper) inputs() P { return nil }
+
// wantsChmod returns whether the build system needs to be generated.
func (attr *MakeHelper) wantsChmod() bool {
return attr != nil && attr.Generate != ""
diff --git a/internal/rosa/meson.go b/internal/rosa/meson.go
index 65e9fde9..97262fbb 100644
--- a/internal/rosa/meson.go
+++ b/internal/rosa/meson.go
@@ -34,14 +34,17 @@ type MesonHelper struct {
var _ Helper = new(MesonHelper)
-// extra returns hardcoded meson runtime dependencies.
-func (attr *MesonHelper) extra() P {
+// tools returns hardcoded meson runtime dependencies.
+func (attr *MesonHelper) tools() P {
if !attr.isPython() {
return P{_muon}
}
return P{_meson}
}
+// inputs is a noop.
+func (*MesonHelper) inputs() P { return nil }
+
// wantsChmod returns false.
func (*MesonHelper) wantsChmod() bool { return false }
diff --git a/internal/rosa/package/acl/package.az b/internal/rosa/package/acl/package.az
index 6908ff88..0e06f227 100644
--- a/internal/rosa/package/acl/package.az
+++ b/internal/rosa/package/acl/package.az
@@ -17,11 +17,8 @@ package attr {
populateUsrBin = true;
exec = make {};
- inputs = [
- perl,
-
- kernel-headers,
- ];
+ tools = [ perl ];
+ inputs = [ kernel-headers ];
}
package acl {
@@ -43,5 +40,4 @@ package acl {
};
inputs = [ attr, kernel-headers ];
- runtime = [ attr ];
}
diff --git a/internal/rosa/package/argp-standalone.az b/internal/rosa/package/argp-standalone.az
index 13433ac8..c8a2943e 100644
--- a/internal/rosa/package/argp-standalone.az
+++ b/internal/rosa/package/argp-standalone.az
@@ -21,5 +21,6 @@ install -D -m755 libargp.a /work/system/lib/libargp.a
`;
};
- inputs = [ diffutils ];
+ tools = [ diffutils ];
+ unlikely = true;
}
diff --git a/internal/rosa/package/awk.az b/internal/rosa/package/awk.az
index 2b2dc4a4..b572f7a4 100644
--- a/internal/rosa/package/awk.az
+++ b/internal/rosa/package/awk.az
@@ -23,7 +23,7 @@ package awk {
install = "install -vD a.out /work/system/bin/awk";
};
- inputs = [
+ tools = [
m4,
byacc,
diffutils,
diff --git a/internal/rosa/package/bison.az b/internal/rosa/package/bison.az
index 67aed088..9a75032e 100644
--- a/internal/rosa/package/bison.az
+++ b/internal/rosa/package/bison.az
@@ -26,5 +26,5 @@ package bison {
];
};
- inputs = [ m4 ];
+ tools = [ m4 ];
}
diff --git a/internal/rosa/package/buildcatrust.az b/internal/rosa/package/buildcatrust.az
index 362ec13c..4c9f94ff 100644
--- a/internal/rosa/package/buildcatrust.az
+++ b/internal/rosa/package/buildcatrust.az
@@ -15,5 +15,4 @@ package buildcatrust {
exec = pip {};
inputs = [ python-flit-core ];
- runtime = [ python ];
}
diff --git a/internal/rosa/package/cairo.az b/internal/rosa/package/cairo.az
index 46102c19..7ffbb304 100644
--- a/internal/rosa/package/cairo.az
+++ b/internal/rosa/package/cairo.az
@@ -30,18 +30,9 @@ package cairo {
test = false;
};
- inputs = [
- awk,
-
- zlib,
- libpng,
- fontconfig,
- freetype,
- pixman,
- xcb,
- ];
+ tools = [ awk ];
- runtime = [
+ inputs = [
zlib,
libpng,
fontconfig,
diff --git a/internal/rosa/package/check.az b/internal/rosa/package/check.az
index 8b4d6268..2598483f 100644
--- a/internal/rosa/package/check.az
+++ b/internal/rosa/package/check.az
@@ -16,5 +16,5 @@ package check {
};
};
- inputs = [ coreutils ];
+ tools = [ coreutils ];
}
diff --git a/internal/rosa/package/connman/package.az b/internal/rosa/package/connman/package.az
index e4b09aa5..0d8eb5af 100644
--- a/internal/rosa/package/connman/package.az
+++ b/internal/rosa/package/connman/package.az
@@ -16,22 +16,17 @@ package connman {
generate = "./bootstrap";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
-
- dbus,
- iptables,
- gnutls,
- readline,
- kernel-headers,
];
- runtime = [
+ inputs = [
dbus,
iptables,
gnutls,
readline,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/cryptsetup.az b/internal/rosa/package/cryptsetup.az
index 94a9309e..0886d222 100644
--- a/internal/rosa/package/cryptsetup.az
+++ b/internal/rosa/package/cryptsetup.az
@@ -20,24 +20,19 @@ package cryptsetup {
};
};
- inputs = [
+ tools = [
bash,
gettext,
coreutils,
-
- popt,
- lvm2,
- json-c,
- e2fsprogs,
- argp-standalone,
- kernel-headers,
];
- runtime = [
+ inputs = [
popt,
lvm2,
json-c,
e2fsprogs,
openssl,
+ argp-standalone,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/curl.az b/internal/rosa/package/curl.az
index 58a0ad72..a54deccc 100644
--- a/internal/rosa/package/curl.az
+++ b/internal/rosa/package/curl.az
@@ -28,17 +28,14 @@ package curl {
];
};
- inputs = [
+ tools = [
perl,
python,
pkg-config,
diffutils,
-
- libpsl,
- openssl,
];
- runtime = [
+ inputs = [
zlib,
zstd,
libpsl,
diff --git a/internal/rosa/package/dbus.az b/internal/rosa/package/dbus.az
index aacf2f81..4d2dd6ec 100644
--- a/internal/rosa/package/dbus.az
+++ b/internal/rosa/package/dbus.az
@@ -29,11 +29,6 @@ package dbus {
glib,
libexpat,
];
-
- runtime = [
- glib,
- libexpat,
- ];
}
package xdg-dbus-proxy {
diff --git a/internal/rosa/package/dtc.az b/internal/rosa/package/dtc.az
index e894ad48..62f58560 100644
--- a/internal/rosa/package/dtc.az
+++ b/internal/rosa/package/dtc.az
@@ -22,7 +22,7 @@ package dtc {
};
};
- inputs = [
+ tools = [
flex,
bison,
m4,
diff --git a/internal/rosa/package/e2fsprogs.az b/internal/rosa/package/e2fsprogs.az
index 5e799de3..833d6e14 100644
--- a/internal/rosa/package/e2fsprogs.az
+++ b/internal/rosa/package/e2fsprogs.az
@@ -17,12 +17,12 @@ package e2fsprogs {
};
};
- inputs = [
+ tools = [
perl,
gzip,
bzip2,
diffutils,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/elfutils/package.az b/internal/rosa/package/elfutils/package.az
index 89db25ff..5f35670e 100644
--- a/internal/rosa/package/elfutils/package.az
+++ b/internal/rosa/package/elfutils/package.az
@@ -27,10 +27,12 @@ package elfutils {
check = nil;
};
- inputs = [
+ tools = [
m4,
pkgconf,
+ ];
+ inputs = [
zlib,
bzip2,
zstd,
@@ -39,12 +41,4 @@ package elfutils {
musl-obstack,
kernel-headers,
];
-
- runtime = [
- zlib,
- bzip2,
- zstd,
- musl-fts,
- musl-obstack,
- ];
}
diff --git a/internal/rosa/package/fcft.az b/internal/rosa/package/fcft.az
index 51e742fe..55b4b80c 100644
--- a/internal/rosa/package/fcft.az
+++ b/internal/rosa/package/fcft.az
@@ -19,10 +19,4 @@ package fcft {
utf8proc,
tllist,
];
-
- runtime = [
- pixman,
- fontconfig,
- utf8proc,
- ];
}
diff --git a/internal/rosa/package/firmware.az b/internal/rosa/package/firmware.az
index a1cc64b3..f04b39e9 100644
--- a/internal/rosa/package/firmware.az
+++ b/internal/rosa/package/firmware.az
@@ -37,7 +37,7 @@ package firmware {
install = "make " + jobsFlagE + " " + loadFlagE + " DESTDIR=/work/system dedup";
};
- inputs = [
+ tools = [
parallel,
rdfind,
zstd,
diff --git a/internal/rosa/package/flex.az b/internal/rosa/package/flex.az
index 2358b1d3..78bba323 100644
--- a/internal/rosa/package/flex.az
+++ b/internal/rosa/package/flex.az
@@ -14,5 +14,5 @@ package flex {
exec = make {};
- inputs = [ m4 ];
+ tools = [ m4 ];
}
diff --git a/internal/rosa/package/fontconfig.az b/internal/rosa/package/fontconfig.az
index 07c4499e..ad46b158 100644
--- a/internal/rosa/package/fontconfig.az
+++ b/internal/rosa/package/fontconfig.az
@@ -15,7 +15,7 @@ package fontconfig {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
@@ -23,13 +23,9 @@ package fontconfig {
gperf,
gzip,
python,
-
- zlib,
- libexpat,
- freetype,
];
- runtime = [
+ inputs = [
zlib,
libexpat,
freetype,
diff --git a/internal/rosa/package/foot.az b/internal/rosa/package/foot.az
index 78ec76bb..90d3cbe3 100644
--- a/internal/rosa/package/foot.az
+++ b/internal/rosa/package/foot.az
@@ -13,17 +13,13 @@ package foot {
exec = meson {};
- inputs = [
- ncurses,
+ tools = [ ncurses ];
+ inputs = [
xkbcommon,
tllist,
fcft,
+ wayland-protocols,
kernel-headers,
];
-
- runtime = [
- xkbcommon,
- fcft,
- ];
}
diff --git a/internal/rosa/package/fuse/package.az b/internal/rosa/package/fuse/package.az
index 398fe0df..31000e07 100644
--- a/internal/rosa/package/fuse/package.az
+++ b/internal/rosa/package/fuse/package.az
@@ -26,9 +26,6 @@ package fuse {
test = false;
};
- inputs = [
- python-pytest,
-
- kernel-headers,
- ];
+ tools = [ python-pytest ];
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/gawk/package.az b/internal/rosa/package/gawk/package.az
index adb6761b..18215337 100644
--- a/internal/rosa/package/gawk/package.az
+++ b/internal/rosa/package/gawk/package.az
@@ -19,7 +19,7 @@ package gawk {
exec = make {};
- inputs = [
+ tools = [
diffutils,
util-linux,
];
diff --git a/internal/rosa/package/gcc/package.az b/internal/rosa/package/gcc/package.az
index e9a908bc..b6dc9692 100644
--- a/internal/rosa/package/gcc/package.az
+++ b/internal/rosa/package/gcc/package.az
@@ -12,8 +12,7 @@ package binutils {
patches = [ "binutils-remove-unused.patch" ];
exec = make {};
-
- inputs = [ bash ];
+ tools = [ bash ];
}
package gcc {
@@ -69,21 +68,15 @@ ln -s system/lib /work/
check = nil;
};
- inputs = [
- binutils,
+ tools = [ binutils ];
- mpc,
- zlib,
- libucontext,
- kernel-headers,
- ];
-
- runtime = [
+ inputs = [
binutils,
mpc,
zlib,
zstd,
libucontext,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/git.az b/internal/rosa/package/git.az
index 6eee0d43..07abe88e 100644
--- a/internal/rosa/package/git.az
+++ b/internal/rosa/package/git.az
@@ -79,23 +79,19 @@ disable_test t7527-builtin-fsmonitor
install`;
};
- inputs = [
+ tools = [
// test suite hangs on mksh
bash,
diffutils,
autoconf,
gettext,
-
- zlib,
- curl,
- libexpat,
- kernel-headers,
];
- runtime = [
+ inputs = [
zlib,
curl,
libexpat,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/glib/package.az b/internal/rosa/package/glib/package.az
index fc0ad64b..14ff0450 100644
--- a/internal/rosa/package/glib/package.az
+++ b/internal/rosa/package/glib/package.az
@@ -23,16 +23,12 @@ package glib {
skipTests = [ "gio" ];
};
- inputs = [
+ tools = [
python-packaging,
bash,
-
- pcre2,
- libffi,
- zlib,
];
- runtime = [
+ inputs = [
pcre2,
libffi,
zlib,
diff --git a/internal/rosa/package/glslang.az b/internal/rosa/package/glslang.az
index 39674f98..3cbd4fa0 100644
--- a/internal/rosa/package/glslang.az
+++ b/internal/rosa/package/glslang.az
@@ -21,7 +21,7 @@ package glslang {
};
};
- inputs = [
+ tools = [
python,
bash,
diffutils,
diff --git a/internal/rosa/package/gnu.az b/internal/rosa/package/gnu.az
index b2a0fd8f..3eb48ab5 100644
--- a/internal/rosa/package/gnu.az
+++ b/internal/rosa/package/gnu.az
@@ -22,11 +22,8 @@ chmod +w tests/test-c32ispunct.sh && echo '#!/bin/sh' > tests/test-c32ispunct.sh
defaults = false;
};
- inputs = [
- diffutils,
-
- kernel-headers,
- ];
+ tools = [ diffutils ];
+ inputs = [ kernel-headers ];
}
package autoconf {
@@ -51,7 +48,7 @@ package autoconf {
];
};
- inputs = [
+ tools = [
m4,
perl,
bash,
@@ -90,7 +87,7 @@ test_disable '#!/bin/sh' t/pr9.sh
exec = make {};
- inputs = [
+ tools = [
grep,
gzip,
autoconf,
@@ -122,7 +119,7 @@ package libtool {
];
};
- inputs = [
+ tools = [
m4,
diffutils,
];
@@ -166,12 +163,8 @@ test_disable '#!/bin/sh' testsuite/read-error-stale-errno.sh
`;
exec = make {};
-
- inputs = [
- diffutils,
-
- kernel-headers,
- ];
+ tools = [ diffutils ];
+ inputs = [ kernel-headers ];
}
package diffutils {
@@ -248,8 +241,7 @@ test_disable 'int main(){return 0;}' gnulib-tests/test-c32ispunct.c
`;
exec = make {};
-
- inputs = [ diffutils ];
+ tools = [ diffutils ];
}
package gettext {
@@ -283,13 +275,13 @@ touch gettext-tools/autotools/archive.dir.tar
exec = make {};
- inputs = [
+ tools = [
diffutils,
gzip,
sed,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
package findutils {
@@ -314,7 +306,7 @@ echo 'int main(){return 0;}' > tests/xargs/test-sigusr.c
exec = make {};
- inputs = [
+ tools = [
diffutils,
sed,
];
@@ -377,12 +369,12 @@ test_disable 'int main(){return 0;}' gnulib-tests/test-lchown.c
};
};
- inputs = [
+ tools = [
perl,
bash,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
package tar {
@@ -413,7 +405,7 @@ package tar {
];
};
- inputs = [
+ tools = [
diffutils,
gzip,
@@ -439,7 +431,7 @@ package texinfo {
check = nil;
};
- inputs = [ perl ];
+ tools = [ perl ];
runtime = [
perl,
@@ -461,7 +453,7 @@ package gperf {
exec = make {};
- inputs = [ diffutils ];
+ tools = [ diffutils ];
}
package bc {
@@ -482,9 +474,7 @@ package bc {
exec = make {};
- inputs = [
- texinfo,
- ];
+ tools = [ texinfo ];
}
package libiconv {
@@ -517,7 +507,7 @@ package parallel {
bin = [ "bash" ];
exec = make {};
- inputs = [
+ tools = [
perl,
bash,
];
@@ -546,10 +536,7 @@ test_disable 'int main(){return 0;}' tests/test-c32ispunct.c
`;
exec = make {};
-
- inputs = [
- diffutils,
- ];
+ tools = [ diffutils ];
}
package libtasn1 {
@@ -587,7 +574,6 @@ package readline {
};
inputs = [ ncurses ];
- runtime = [ ncurses ];
}
package gmp {
@@ -609,7 +595,7 @@ package gmp {
exec = make {};
- inputs = [ m4 ];
+ tools = [ m4 ];
}
package mpfr {
@@ -628,7 +614,6 @@ package mpfr {
exec = make {};
inputs = [ gmp ];
- runtime = [ gmp ];
}
package mpc {
@@ -652,13 +637,11 @@ package mpc {
generate = "autoreconf -vfi";
};
- inputs = [
+ tools = [
automake,
libtool,
texinfo,
-
- mpfr,
];
- runtime = [ mpfr ];
+ inputs = [ mpfr ];
}
diff --git a/internal/rosa/package/gnutls/package.az b/internal/rosa/package/gnutls/package.az
index 833b614f..9ab17176 100644
--- a/internal/rosa/package/gnutls/package.az
+++ b/internal/rosa/package/gnutls/package.az
@@ -40,7 +40,7 @@ echo 'int main(){return 0;}' > tests/mini-dtls-fragments.c
};
};
- inputs = [
+ tools = [
gzip,
automake,
libtool,
@@ -54,20 +54,15 @@ echo 'int main(){return 0;}' > tests/mini-dtls-fragments.c
diffutils,
nss-cacert,
- libev,
- zlib,
- zstd,
- p11-kit,
- nettle,
- libunistring,
- kernel-headers,
];
- runtime = [
+ inputs = [
zlib,
zstd,
p11-kit,
nettle,
+ libev,
libunistring,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/go.az b/internal/rosa/package/go.az
index 6efca245..89d3732d 100644
--- a/internal/rosa/package/go.az
+++ b/internal/rosa/package/go.az
@@ -53,5 +53,5 @@ ln -s \
`;
};
- inputs = [ bash, go-bootstrap ];
+ tools = [ bash, go-bootstrap ];
}
diff --git a/internal/rosa/package/hakurei.az b/internal/rosa/package/hakurei.az
index 0448c0f3..4e9a8d2c 100644
--- a/internal/rosa/package/hakurei.az
+++ b/internal/rosa/package/hakurei.az
@@ -61,11 +61,14 @@ mkdir -p /work/system/bin/
`;
};
- inputs = [
+ tools = [
go,
pkgconf,
net-tools,
+ acl,
+ ];
+ inputs = [
libseccomp,
acl,
fuse,
@@ -74,6 +77,8 @@ mkdir -p /work/system/bin/
wayland-protocols,
kernel-headers,
];
+
+ runtime = nil;
}
package hakurei-dist {
@@ -102,11 +107,14 @@ DESTDIR=/work "./${NAME}.sh"
`;
};
- inputs = [
+ tools = [
go,
pkgconf,
net-tools,
+ acl,
+ ];
+ inputs = [
libseccomp,
acl,
fuse,
@@ -115,6 +123,8 @@ DESTDIR=/work "./${NAME}.sh"
wayland-protocols,
kernel-headers,
];
+
+ runtime = nil;
}
package earlyinit {
@@ -145,5 +155,5 @@ go build -trimpath -v -o /work/ -ldflags="-s -w
echo`;
};
- inputs = [ go ];
+ tools = [ go ];
}
diff --git a/internal/rosa/package/harfbuzz.az b/internal/rosa/package/harfbuzz.az
index 20b000b7..7e10f0f2 100644
--- a/internal/rosa/package/harfbuzz.az
+++ b/internal/rosa/package/harfbuzz.az
@@ -23,9 +23,4 @@ package harfbuzz {
zlib,
cairo,
];
-
- runtime = [
- zlib,
- cairo,
- ];
}
diff --git a/internal/rosa/package/hwdata.az b/internal/rosa/package/hwdata.az
index 4d552d5d..57bde7e8 100644
--- a/internal/rosa/package/hwdata.az
+++ b/internal/rosa/package/hwdata.az
@@ -20,4 +20,6 @@ package hwdata {
// lspci: Unknown option 'A' (see "lspci --help")
check = nil;
};
+
+ unlikely = true;
}
diff --git a/internal/rosa/package/images/package.az b/internal/rosa/package/images/package.az
index 5c67fbaa..631f5622 100644
--- a/internal/rosa/package/images/package.az
+++ b/internal/rosa/package/images/package.az
@@ -14,7 +14,7 @@ package initramfs-image {
"zstd > /work/initramfs.zst";
};
- inputs = [
+ tools = [
zstd,
gen_init_cpio,
];
@@ -40,5 +40,5 @@ package system-image {
build = "mksquashfs /mnt/system /work/system.img";
};
- inputs = [ squashfs-tools ];
+ tools = [ squashfs-tools ];
}
diff --git a/internal/rosa/package/ipmitool.az b/internal/rosa/package/ipmitool.az
index 4a6dd38b..90e6c3c2 100644
--- a/internal/rosa/package/ipmitool.az
+++ b/internal/rosa/package/ipmitool.az
@@ -30,11 +30,10 @@ package ipmitool {
generate = "./bootstrap";
};
- inputs = [
+ tools = [
automake,
libtool,
-
- readline,
];
- runtime = [ readline ];
+
+ inputs = [ readline ];
}
diff --git a/internal/rosa/package/iproute2.az b/internal/rosa/package/iproute2.az
index 2a31fc4b..0730e9b3 100644
--- a/internal/rosa/package/iproute2.az
+++ b/internal/rosa/package/iproute2.az
@@ -33,23 +33,18 @@ package iproute2 {
check = nil;
};
- inputs = [
+ tools = [
pkgconf,
m4,
byacc,
flex,
-
- libbpf,
- libmnl,
- db,
- libcap,
- kernel-headers,
];
- runtime = [
+ inputs = [
libbpf,
libmnl,
db,
libcap,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/kernel/package.az b/internal/rosa/package/kernel/package.az
index b3af55d3..f2be2890 100644
--- a/internal/rosa/package/kernel/package.az
+++ b/internal/rosa/package/kernel/package.az
@@ -50,7 +50,9 @@ cat \
arm64 = "A9EWzTGEChVLJVm5BP1GzpibdUddXUN2hIjAGkD-KQr5sc6RuEeIQle8VAiAYUqp";
riscv64 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
};
- inputs = [ rsync ];
+
+ tools = [ rsync ];
+ unlikely = true;
}
package kernel {
@@ -127,7 +129,7 @@ rm -v "/work/system/lib/modules/$(make -f /usr/src/kernel/Makefile kernelversion
`;
};
- inputs = [
+ tools = [
flex,
bison,
m4,
@@ -141,13 +143,19 @@ rm -v "/work/system/lib/modules/$(make -f /usr/src/kernel/Makefile kernelversion
bash,
python,
- xz,
- gzip,
kmod,
elfutils,
util-linux,
+ ];
+
+ inputs = [
+ xz,
+ gzip,
kernel-headers,
];
+
+ runtime = nil;
+ unlikely = true;
}
package gen_init_cpio {
diff --git a/internal/rosa/package/kmod.az b/internal/rosa/package/kmod.az
index c56ba846..732d3340 100644
--- a/internal/rosa/package/kmod.az
+++ b/internal/rosa/package/kmod.az
@@ -31,10 +31,4 @@ package kmod {
openssl,
kernel-headers,
];
-
- runtime = [
- zlib,
- zstd,
- openssl,
- ];
}
diff --git a/internal/rosa/package/libaio.az b/internal/rosa/package/libaio.az
index 5b7072eb..ee408872 100644
--- a/internal/rosa/package/libaio.az
+++ b/internal/rosa/package/libaio.az
@@ -29,9 +29,10 @@ package libaio {
install = "make prefix=/work/system install";
};
- inputs = [
+ tools = [
bash,
e2fsprogs,
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/libarchive/package.az b/internal/rosa/package/libarchive/package.az
index cb6c080f..b06daaf3 100644
--- a/internal/rosa/package/libarchive/package.az
+++ b/internal/rosa/package/libarchive/package.az
@@ -17,7 +17,7 @@ package libarchive {
exec = cmake {};
- runtime = [
+ inputs = [
zlib,
zstd,
];
diff --git a/internal/rosa/package/libbpf.az b/internal/rosa/package/libbpf.az
index 9a10bc45..33df95e4 100644
--- a/internal/rosa/package/libbpf.az
+++ b/internal/rosa/package/libbpf.az
@@ -26,6 +26,4 @@ package libbpf {
elfutils,
kernel-headers,
];
-
- runtime = [ elfutils ];
}
diff --git a/internal/rosa/package/libbsd.az b/internal/rosa/package/libbsd.az
index 4acc520b..27d2fc77 100644
--- a/internal/rosa/package/libbsd.az
+++ b/internal/rosa/package/libbsd.az
@@ -14,10 +14,11 @@ package libbsd {
generate = "echo '" + version + "' > .dist-version && ./autogen";
};
- inputs = [
+ tools = [
automake,
libtool,
-
- libmd,
];
+
+ inputs = [ libmd ];
+ runtime = nil;
}
diff --git a/internal/rosa/package/libcap.az b/internal/rosa/package/libcap.az
index be48ed01..86bdc63a 100644
--- a/internal/rosa/package/libcap.az
+++ b/internal/rosa/package/libcap.az
@@ -29,7 +29,7 @@ package libcap {
check = [ "CC=cc", "test" ];
};
- inputs = [
+ tools = [
bash,
diffutils,
];
diff --git a/internal/rosa/package/libdisplay-info.az b/internal/rosa/package/libdisplay-info.az
index da563d01..8780bc10 100644
--- a/internal/rosa/package/libdisplay-info.az
+++ b/internal/rosa/package/libdisplay-info.az
@@ -12,10 +12,6 @@ package libdisplay-info {
};
exec = meson {};
-
- inputs = [
- diffutils,
-
- hwdata,
- ];
+ tools = [ diffutils ];
+ inputs = [ hwdata ];
}
diff --git a/internal/rosa/package/libdrm.az b/internal/rosa/package/libdrm.az
index efa6f166..6491da28 100644
--- a/internal/rosa/package/libdrm.az
+++ b/internal/rosa/package/libdrm.az
@@ -17,13 +17,13 @@ package libdrm {
};
};
- inputs = [
+ tools = [
// symbols check fail with llvm nm
binutils,
+ ];
+ inputs = [
libpciaccess,
kernel-headers,
];
-
- runtime = [ libpciaccess ];
}
diff --git a/internal/rosa/package/libepoxy.az b/internal/rosa/package/libepoxy.az
index f8762a00..4c0efab0 100644
--- a/internal/rosa/package/libepoxy.az
+++ b/internal/rosa/package/libepoxy.az
@@ -21,4 +21,6 @@ package libepoxy {
libglvnd,
libX11,
];
+
+ runtime = nil;
}
diff --git a/internal/rosa/package/libevdev.az b/internal/rosa/package/libevdev.az
index bb6ffc16..85c9b674 100644
--- a/internal/rosa/package/libevdev.az
+++ b/internal/rosa/package/libevdev.az
@@ -17,10 +17,10 @@ package libevdev {
};
};
- inputs = [
+ tools = [
check,
bash,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/libexpat.az b/internal/rosa/package/libexpat.az
index a79dcd30..acb8445b 100644
--- a/internal/rosa/package/libexpat.az
+++ b/internal/rosa/package/libexpat.az
@@ -18,5 +18,5 @@ package libexpat {
exec = make {};
- inputs = [ bash ];
+ tools = [ bash ];
}
diff --git a/internal/rosa/package/libgd.az b/internal/rosa/package/libgd.az
index 8ce41894..b1b7b327 100644
--- a/internal/rosa/package/libgd.az
+++ b/internal/rosa/package/libgd.az
@@ -21,5 +21,4 @@ package libgd {
exec = make {};
inputs = [ zlib ];
- runtime = [ zlib ];
}
diff --git a/internal/rosa/package/libglvnd.az b/internal/rosa/package/libglvnd.az
index 02ce0bd7..dbcf198b 100644
--- a/internal/rosa/package/libglvnd.az
+++ b/internal/rosa/package/libglvnd.az
@@ -25,14 +25,12 @@ trap 'kill $XVFB_PID && wait $XVFB_PID' EXIT
`;
};
- inputs = [
+ tools = [
// symbols check fail with llvm nm
binutils,
// test suite wants X server
xserver,
-
- libXext,
];
- runtime = [ libXext ];
+ inputs = [ libXext ];
}
diff --git a/internal/rosa/package/libinput.az b/internal/rosa/package/libinput.az
index 4cb1b764..aeb54f77 100644
--- a/internal/rosa/package/libinput.az
+++ b/internal/rosa/package/libinput.az
@@ -20,18 +20,15 @@ package libinput {
};
};
- inputs = [
+ tools = [
bash,
diffutils,
python-pytest,
-
- libudev-zero,
- libevdev,
- kernel-headers,
];
- runtime = [
+ inputs = [
libudev-zero,
libevdev,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/libliftoff.az b/internal/rosa/package/libliftoff.az
index 16e34aed..a1c23fd8 100644
--- a/internal/rosa/package/libliftoff.az
+++ b/internal/rosa/package/libliftoff.az
@@ -17,4 +17,6 @@ package libliftoff {
libdrm,
kernel-headers,
];
+
+ runtime = nil;
}
diff --git a/internal/rosa/package/libmd.az b/internal/rosa/package/libmd.az
index 1cdc4b65..e618d11e 100644
--- a/internal/rosa/package/libmd.az
+++ b/internal/rosa/package/libmd.az
@@ -15,7 +15,7 @@ package libmd {
preMake = "\ninstall -D /usr/src/libmd/src/helper.c src/helper.c\n";
};
- inputs = [
+ tools = [
automake,
libtool,
];
diff --git a/internal/rosa/package/libpng.az b/internal/rosa/package/libpng.az
index 9fdea1d6..4711cbce 100644
--- a/internal/rosa/package/libpng.az
+++ b/internal/rosa/package/libpng.az
@@ -23,5 +23,4 @@ package libpng {
exec = make {};
inputs = [ zlib ];
- runtime = [ zlib ];
}
diff --git a/internal/rosa/package/libpsl.az b/internal/rosa/package/libpsl.az
index 2a45cf20..343a2bf6 100644
--- a/internal/rosa/package/libpsl.az
+++ b/internal/rosa/package/libpsl.az
@@ -21,7 +21,7 @@ test_disable 'int main(){return 0;}' tests/test-is-public-builtin.c
exec = make {};
- inputs = [
+ tools = [
pkgconf,
python,
];
diff --git a/internal/rosa/package/libseccomp.az b/internal/rosa/package/libseccomp.az
index 37231185..9089db83 100644
--- a/internal/rosa/package/libseccomp.az
+++ b/internal/rosa/package/libseccomp.az
@@ -15,11 +15,11 @@ package libseccomp {
bin = [ "bash" ];
exec = make {};
- inputs = [
+ tools = [
bash,
diffutils,
gperf,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/libtirpc.az b/internal/rosa/package/libtirpc.az
index a05b75df..0b12a92e 100644
--- a/internal/rosa/package/libtirpc.az
+++ b/internal/rosa/package/libtirpc.az
@@ -25,12 +25,16 @@ package libtirpc {
};
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
libbsd,
kernel-headers,
];
+
+ runtime = nil;
}
diff --git a/internal/rosa/package/libva.az b/internal/rosa/package/libva.az
index 5cb3a9b4..463220d6 100644
--- a/internal/rosa/package/libva.az
+++ b/internal/rosa/package/libva.az
@@ -25,11 +25,4 @@ package libva {
wayland,
kernel-headers,
];
-
- runtime = [
- libdrm,
- libXfixes,
- libglvnd,
- wayland,
- ];
}
diff --git a/internal/rosa/package/libxml2.az b/internal/rosa/package/libxml2.az
index 39146e8b..4c578525 100644
--- a/internal/rosa/package/libxml2.az
+++ b/internal/rosa/package/libxml2.az
@@ -16,7 +16,7 @@ package libxml2 {
exec = meson {};
- inputs = [
+ tools = [
git,
diffutils,
];
diff --git a/internal/rosa/package/libxslt.az b/internal/rosa/package/libxslt.az
index 34ba7a71..8518c325 100644
--- a/internal/rosa/package/libxslt.az
+++ b/internal/rosa/package/libxslt.az
@@ -18,14 +18,12 @@ package libxslt {
check = nil;
};
- inputs = [
+ tools = [
automake,
libtool,
python,
pkgconf,
-
- libxml2,
];
- runtime = [ libxml2 ];
+ inputs = [ libxml2 ];
}
diff --git a/internal/rosa/package/lit.az b/internal/rosa/package/lit.az
index 846b5fe6..dc02bdbb 100644
--- a/internal/rosa/package/lit.az
+++ b/internal/rosa/package/lit.az
@@ -11,5 +11,4 @@ package lit {
};
inputs = [ python-setuptools ];
- runtime = [ python ];
}
diff --git a/internal/rosa/package/lm_sensors.az b/internal/rosa/package/lm_sensors.az
index 8edc2447..2b6b58dc 100644
--- a/internal/rosa/package/lm_sensors.az
+++ b/internal/rosa/package/lm_sensors.az
@@ -24,8 +24,7 @@ package lm_sensors {
install = "make DESTDIR=/work PREFIX=/system install";
};
- inputs = [
- perl,
+ tools = [
perl-Test-Cmd,
m4,
diff --git a/internal/rosa/package/lua/package.az b/internal/rosa/package/lua/package.az
index ab74dfdd..54d5abe6 100644
--- a/internal/rosa/package/lua/package.az
+++ b/internal/rosa/package/lua/package.az
@@ -33,4 +33,6 @@ sed \
../lua.pc > /work/system/lib/pkgconfig/lua.pc
`;
};
+
+ unlikely = true;
}
diff --git a/internal/rosa/package/lvm2/package.az b/internal/rosa/package/lvm2/package.az
index bb683509..3a363b54 100644
--- a/internal/rosa/package/lvm2/package.az
+++ b/internal/rosa/package/lvm2/package.az
@@ -19,10 +19,12 @@ package lvm2 {
check = nil;
};
- inputs = [
- pkgconf,
+ tools = [ pkgconf ];
+ inputs = [
libaio,
kernel-headers,
];
+
+ runtime = nil;
}
diff --git a/internal/rosa/package/meson/package.az b/internal/rosa/package/meson/package.az
index 6fd06923..78fa2035 100644
--- a/internal/rosa/package/meson/package.az
+++ b/internal/rosa/package/meson/package.az
@@ -43,7 +43,7 @@ python3 ./run_project_tests.py \
`;
};
- inputs = [
+ tools = [
python-setuptools,
pkg-config,
cmake,
diff --git a/internal/rosa/package/mksh.az b/internal/rosa/package/mksh.az
index 6e728285..878bba83 100644
--- a/internal/rosa/package/mksh.az
+++ b/internal/rosa/package/mksh.az
@@ -31,7 +31,7 @@ ln -vs ../system/bin/sh /work/bin/
`;
};
- inputs = [
+ tools = [
perl,
coreutils,
];
diff --git a/internal/rosa/package/muon.az b/internal/rosa/package/muon.az
index 512844a9..dc183591 100644
--- a/internal/rosa/package/muon.az
+++ b/internal/rosa/package/muon.az
@@ -53,10 +53,7 @@ sed -i '/common.220 fs module/d' subprojects/meson-tests/meson.build
install = "./muon install -d /work\n";
};
- inputs = [
- python-early,
- kernel-headers,
- ];
-
+ tools = [ python-early ];
+ inputs = [ kernel-headers ];
runtime = [ pkg-config ];
}
diff --git a/internal/rosa/package/musl-fts.az b/internal/rosa/package/musl-fts.az
index cce1ea1f..195928f5 100644
--- a/internal/rosa/package/musl-fts.az
+++ b/internal/rosa/package/musl-fts.az
@@ -18,7 +18,7 @@ package musl-fts {
generate = "./bootstrap.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
diff --git a/internal/rosa/package/musl-obstack.az b/internal/rosa/package/musl-obstack.az
index 218a718d..95388e33 100644
--- a/internal/rosa/package/musl-obstack.az
+++ b/internal/rosa/package/musl-obstack.az
@@ -18,7 +18,7 @@ package musl-obstack {
generate = "./bootstrap.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
diff --git a/internal/rosa/package/musl/package.az b/internal/rosa/package/musl/package.az
index 3207ecde..c264c782 100644
--- a/internal/rosa/package/musl/package.az
+++ b/internal/rosa/package/musl/package.az
@@ -29,7 +29,7 @@ package musl-headers {
install = "# headers installed during make";
};
- inputs = [ coreutils ];
+ tools = [ coreutils ];
}
package musl {
@@ -61,5 +61,5 @@ rmdir -v /work/lib
`;
};
- inputs = [ coreutils ];
+ tools = [ coreutils ];
}
diff --git a/internal/rosa/package/ncurses.az b/internal/rosa/package/ncurses.az
index 189d8fb5..b4d8e26e 100644
--- a/internal/rosa/package/ncurses.az
+++ b/internal/rosa/package/ncurses.az
@@ -29,5 +29,5 @@ find /work/system/lib \
`;
};
- inputs = [ pkg-config ];
+ tools = [ pkg-config ];
}
diff --git a/internal/rosa/package/net-tools/package.az b/internal/rosa/package/net-tools/package.az
index 62a50289..0f2ac828 100644
--- a/internal/rosa/package/net-tools/package.az
+++ b/internal/rosa/package/net-tools/package.az
@@ -25,9 +25,6 @@ package net-tools {
check = nil;
};
- inputs = [
- bash,
-
- kernel-headers,
- ];
+ tools = [ bash ];
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/netfilter/package.az b/internal/rosa/package/netfilter/package.az
index 9b6fedc1..5e5e1624 100644
--- a/internal/rosa/package/netfilter/package.az
+++ b/internal/rosa/package/netfilter/package.az
@@ -22,6 +22,8 @@ package libmnl {
libbsd,
kernel-headers,
];
+
+ runtime = nil;
}
package libnftnl {
@@ -47,16 +49,16 @@ package libnftnl {
};
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
libmnl,
kernel-headers,
];
-
- runtime = [ libmnl ];
}
package iptables {
@@ -92,16 +94,16 @@ chmod +w /etc/ && ln -s ../usr/src/iptables/etc/ethertypes /etc/
`;
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
bash,
python,
+ ];
+ inputs = [
libnftnl,
kernel-headers,
];
-
- runtime = [ libnftnl ];
}
diff --git a/internal/rosa/package/nettle.az b/internal/rosa/package/nettle.az
index 1ce1f9ec..e30696a2 100644
--- a/internal/rosa/package/nettle.az
+++ b/internal/rosa/package/nettle.az
@@ -12,12 +12,10 @@ package nettle {
exec = make {};
- inputs = [
+ tools = [
m4,
diffutils,
-
- gmp,
];
- runtime = [ gmp ];
+ inputs = [ gmp ];
}
diff --git a/internal/rosa/package/ninja.az b/internal/rosa/package/ninja.az
index 2c1bd8b3..da5fa715 100644
--- a/internal/rosa/package/ninja.az
+++ b/internal/rosa/package/ninja.az
@@ -33,7 +33,7 @@ mkdir -p /work/system/bin/
cp ninja /work/system/bin/`;
};
- inputs = [
+ tools = [
python-early,
bash,
];
diff --git a/internal/rosa/package/noto.az b/internal/rosa/package/noto.az
index e3bcc80b..7481b5e7 100644
--- a/internal/rosa/package/noto.az
+++ b/internal/rosa/package/noto.az
@@ -28,5 +28,5 @@ rename -v 's/\[.*\]//' $DEST/*
`;
};
- inputs = [ rename ];
+ tools = [ rename ];
}
diff --git a/internal/rosa/package/nss.az b/internal/rosa/package/nss.az
index 32110d04..fb9c1a33 100644
--- a/internal/rosa/package/nss.az
+++ b/internal/rosa/package/nss.az
@@ -32,7 +32,7 @@ buildcatrust \
`;
};
- inputs = [
+ tools = [
bash,
buildcatrust,
diff --git a/internal/rosa/package/openssl.az b/internal/rosa/package/openssl.az
index 907d394a..cb76d0fa 100644
--- a/internal/rosa/package/openssl.az
+++ b/internal/rosa/package/openssl.az
@@ -38,11 +38,15 @@ package openssl {
];
};
- inputs = [
+ tools = [
perl,
coreutils,
+ ];
+ inputs = [
zlib,
kernel-headers,
];
+
+ runtime = nil;
}
diff --git a/internal/rosa/package/p11-kit.az b/internal/rosa/package/p11-kit.az
index bb96c4dd..3fa9ceb7 100644
--- a/internal/rosa/package/p11-kit.az
+++ b/internal/rosa/package/p11-kit.az
@@ -17,14 +17,12 @@ package p11-kit {
};
};
- inputs = [
+ tools = [
coreutils,
diffutils,
-
- libtasn1,
];
- runtime = [
+ inputs = [
libffi,
libtasn1,
];
diff --git a/internal/rosa/package/pango/package.az b/internal/rosa/package/pango/package.az
index e1d91a7d..d1b78387 100644
--- a/internal/rosa/package/pango/package.az
+++ b/internal/rosa/package/pango/package.az
@@ -28,11 +28,4 @@ package pango {
fribidi,
harfbuzz,
];
-
- runtime = [
- glib,
- cairo,
- fribidi,
- harfbuzz,
- ];
}
diff --git a/internal/rosa/package/pcre2.az b/internal/rosa/package/pcre2.az
index 0e7d1c68..85f603a9 100644
--- a/internal/rosa/package/pcre2.az
+++ b/internal/rosa/package/pcre2.az
@@ -23,5 +23,5 @@ package pcre2 {
};
};
- inputs = [ diffutils ];
+ tools = [ diffutils ];
}
diff --git a/internal/rosa/package/perl.az b/internal/rosa/package/perl.az
index c2539ee3..8d21c8ca 100644
--- a/internal/rosa/package/perl.az
+++ b/internal/rosa/package/perl.az
@@ -81,8 +81,8 @@ perl Build.PL --prefix=/system
`;
};
+ tools = [ perl ];
inputs = [ perl ];
- runtime = [ perl ];
}
package perl-Locale-gettext {
@@ -99,8 +99,6 @@ package perl-Locale-gettext {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
package perl-Pod-Parser {
@@ -117,8 +115,6 @@ package perl-Pod-Parser {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
package perl-SGMLS {
@@ -136,8 +132,6 @@ package perl-SGMLS {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
package perl-Term-ReadKey {
@@ -154,8 +148,6 @@ package perl-Term-ReadKey {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
package perl-Text-CharWidth {
@@ -172,8 +164,6 @@ package perl-Text-CharWidth {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
package perl-Text-WrapI18N {
@@ -192,7 +182,6 @@ package perl-Text-WrapI18N {
exec = makeMaker {};
inputs = [ perl-Text-CharWidth ];
- runtime = [ perl-Text-CharWidth ];
}
package perl-MIME-Charset {
@@ -209,8 +198,6 @@ package perl-MIME-Charset {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
package perl-Unicode-LineBreak {
@@ -229,7 +216,6 @@ package perl-Unicode-LineBreak {
exec = makeMaker {};
inputs = [ perl-MIME-Charset ];
- runtime = [ perl-MIME-Charset ];
}
package perl-YAML-Tiny {
@@ -246,8 +232,6 @@ package perl-YAML-Tiny {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
package perl-Test-Cmd {
@@ -264,6 +248,4 @@ package perl-Test-Cmd {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
diff --git a/internal/rosa/package/pipewire.az b/internal/rosa/package/pipewire.az
index 2b971244..06153a9f 100644
--- a/internal/rosa/package/pipewire.az
+++ b/internal/rosa/package/pipewire.az
@@ -30,11 +30,6 @@ package wireplumber {
glib,
pipewire,
];
-
- runtime = [
- glib,
- pipewire,
- ];
}
package pipewire {
@@ -66,6 +61,4 @@ package pipewire {
kernel-headers,
];
-
- runtime = [ dbus ];
}
diff --git a/internal/rosa/package/pkg-config.az b/internal/rosa/package/pkg-config.az
index 6bde89b7..b8e91958 100644
--- a/internal/rosa/package/pkg-config.az
+++ b/internal/rosa/package/pkg-config.az
@@ -19,7 +19,7 @@ package pkg-config {
};
};
- inputs = [
+ tools = [
automake,
libtool,
];
diff --git a/internal/rosa/package/popt.az b/internal/rosa/package/popt.az
index 964533a8..c063bcb0 100644
--- a/internal/rosa/package/popt.az
+++ b/internal/rosa/package/popt.az
@@ -14,7 +14,7 @@ package popt {
generate = "./autogen.sh";
};
- inputs = [
+ tools = [
gzip,
automake,
libtool,
diff --git a/internal/rosa/package/procps.az b/internal/rosa/package/procps.az
index 23ba5c80..5152076b 100644
--- a/internal/rosa/package/procps.az
+++ b/internal/rosa/package/procps.az
@@ -18,7 +18,7 @@ package procps {
};
};
- inputs = [
+ tools = [
automake,
gettext,
libtool,
diff --git a/internal/rosa/package/python/package.az b/internal/rosa/package/python/package.az
index 8182576d..aef3ecda 100644
--- a/internal/rosa/package/python/package.az
+++ b/internal/rosa/package/python/package.az
@@ -56,24 +56,18 @@ package python {
postInstall = "ln -s python3 /work/system/bin/python";
};
+ tools = [ pkg-config ];
+
inputs = [
zlib,
bzip2,
libffi,
openssl,
- pkg-config,
xz,
kernel-headers,
];
-
- runtime = [
- zlib,
- bzip2,
- libffi,
- openssl,
- ];
}
package python-early {
@@ -138,12 +132,6 @@ package python-early {
kernel-headers,
];
-
- runtime = [
- zlib,
- bzip2,
- libffi,
- ];
}
package python-setuptools {
@@ -165,7 +153,7 @@ package python-setuptools {
check = nil;
};
- runtime = [ python ];
+ unlikely = true;
}
package python-wheel {
@@ -188,8 +176,6 @@ package python-wheel {
python-flit-core,
python-setuptools,
];
-
- runtime = [ python ];
}
package python-vcs-versioning {
@@ -219,11 +205,6 @@ package python-vcs-versioning {
python-setuptools,
python-packaging,
];
-
- runtime = [
- python-setuptools,
- python-packaging,
- ];
}
package python-setuptools-scm {
@@ -258,6 +239,8 @@ package python-setuptools-scm {
python-setuptools,
python-vcs-versioning,
];
+
+ unlikely = true;
}
package python-flit-core {
@@ -279,7 +262,7 @@ package python-flit-core {
check = nil;
};
- runtime = [ python ];
+ unlikely = true;
}
package python-packaging {
@@ -300,7 +283,6 @@ package python-packaging {
};
inputs = [ python-flit-core ];
- runtime = [ python ];
}
package python-pathspec {
@@ -321,7 +303,6 @@ package python-pathspec {
};
inputs = [ python-flit-core ];
- runtime = [ python ];
}
package python-trove-classifiers {
@@ -342,7 +323,6 @@ package python-trove-classifiers {
};
inputs = [ python-setuptools ];
- runtime = [ python ];
}
package python-pluggy {
@@ -367,7 +347,6 @@ package python-pluggy {
};
inputs = [ python-setuptools-scm ];
- runtime = [ python ];
}
package python-poetry-core {
@@ -386,6 +365,8 @@ package python-poetry-core {
// pytest circular dependency
check = nil;
};
+
+ unlikely = true;
}
package python-tomlkit {
@@ -435,13 +416,7 @@ package python-hatchling {
python-tomlkit,
];
- runtime = [
- python-packaging,
- python-pathspec,
- python-trove-classifiers,
- python-pluggy,
- python-tomlkit,
- ];
+ unlikely = true;
}
package python-pygments {
@@ -462,7 +437,6 @@ package python-pygments {
};
inputs = [ python-hatchling ];
- runtime = [ python ];
}
package python-iniconfig {
@@ -487,7 +461,6 @@ package python-iniconfig {
};
inputs = [ python-setuptools-scm ];
- runtime = [ python ];
}
package python-pytest {
@@ -519,13 +492,6 @@ package python-pytest {
python-setuptools-scm,
];
-
- runtime = [
- python-iniconfig,
- python-packaging,
- python-pluggy,
- python-pygments,
- ];
}
package python-markupsafe {
@@ -546,7 +512,6 @@ package python-markupsafe {
};
inputs = [ python-setuptools ];
- runtime = [ python ];
}
package python-mako {
@@ -576,8 +541,6 @@ package python-mako {
python-setuptools,
];
-
- runtime = [ python-markupsafe ];
}
package python-pyyaml {
@@ -598,7 +561,6 @@ package python-pyyaml {
};
inputs = [ python-setuptools ];
- runtime = [ python ];
}
package python-pycparser {
@@ -621,5 +583,4 @@ ln -s clang /system/bin/gcc
exec = pip {};
inputs = [ python-setuptools ];
- runtime = [ python ];
}
diff --git a/internal/rosa/package/qemu/package.az b/internal/rosa/package/qemu/package.az
index e18794ca..3e7b8fcf 100644
--- a/internal/rosa/package/qemu/package.az
+++ b/internal/rosa/package/qemu/package.az
@@ -62,7 +62,7 @@ sed -i \
];
};
- inputs = [
+ tools = [
bash,
python-setuptools,
python-wheel,
@@ -70,22 +70,17 @@ sed -i \
ninja,
pkgconf,
diffutils,
-
openssl,
- xz,
-
flex,
bison,
m4,
-
- glib,
- zstd,
dtc,
- kernel-headers,
];
- runtime = [
+ inputs = [
+ xz,
glib,
zstd,
+ kernel-headers,
];
}
diff --git a/internal/rosa/package/rdfind.az b/internal/rosa/package/rdfind.az
index 5c16548d..7d737eab 100644
--- a/internal/rosa/package/rdfind.az
+++ b/internal/rosa/package/rdfind.az
@@ -15,5 +15,4 @@ package rdfind {
exec = make {};
inputs = [ nettle ];
- runtime = [ nettle ];
}
diff --git a/internal/rosa/package/rename.az b/internal/rosa/package/rename.az
index 9e98ae0f..f6c36204 100644
--- a/internal/rosa/package/rename.az
+++ b/internal/rosa/package/rename.az
@@ -12,6 +12,4 @@ package rename {
};
exec = makeMaker {};
-
- runtime = [ perl ];
}
diff --git a/internal/rosa/package/spirv.az b/internal/rosa/package/spirv.az
index 21c07689..79ac5a8d 100644
--- a/internal/rosa/package/spirv.az
+++ b/internal/rosa/package/spirv.az
@@ -36,13 +36,8 @@ package spirv-tools {
};
};
- inputs = [
- python,
-
- spirv-headers,
- ];
-
- runtime = [ spirv-headers ];
+ tools = [ python ];
+ inputs = [ spirv-headers ];
}
package spirv-llvm-translator {
@@ -157,12 +152,10 @@ package spirv-llvm-translator {
};
};
- inputs = [
+ tools = [
bash,
lit,
-
- spirv-tools,
];
- runtime = [ spirv-tools ];
+ inputs = [ spirv-tools ];
}
diff --git a/internal/rosa/package/squashfs-tools.az b/internal/rosa/package/squashfs-tools.az
index b266e3fe..145c1cb9 100644
--- a/internal/rosa/package/squashfs-tools.az
+++ b/internal/rosa/package/squashfs-tools.az
@@ -34,15 +34,9 @@ package squashfs-tools {
install = "make INSTALL_PREFIX=/work/system install";
};
- inputs = [
- sed,
+ tools = [ sed ];
- zstd,
- gzip,
- zlib,
- ];
-
- runtime = [
+ inputs = [
zstd,
gzip,
zlib,
diff --git a/internal/rosa/package/stage0.az b/internal/rosa/package/stage0.az
index e415bbbe..d79851ef 100644
--- a/internal/rosa/package/stage0.az
+++ b/internal/rosa/package/stage0.az
@@ -19,7 +19,7 @@ tar -vc -C /stage0 . | \
`;
};
- inputs = [ zstd ];
+ tools = [ zstd ];
}
package stage0-dist {
diff --git a/internal/rosa/package/strace/package.az b/internal/rosa/package/strace/package.az
index 7e46147d..6173ae38 100644
--- a/internal/rosa/package/strace/package.az
+++ b/internal/rosa/package/strace/package.az
@@ -25,11 +25,11 @@ package strace {
};
};
- inputs = [
+ tools = [
bash,
gawk,
automake,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/sway/package.az b/internal/rosa/package/sway/package.az
index 6ff1b365..cd7f1f7f 100644
--- a/internal/rosa/package/sway/package.az
+++ b/internal/rosa/package/sway/package.az
@@ -21,12 +21,4 @@ package sway {
wlroots,
kernel-headers,
];
-
- runtime = [
- json-c,
- pcre2,
- pango,
- libinput,
- wlroots,
- ];
}
diff --git a/internal/rosa/package/tamago.az b/internal/rosa/package/tamago.az
index 358c52a4..d784c85a 100644
--- a/internal/rosa/package/tamago.az
+++ b/internal/rosa/package/tamago.az
@@ -43,5 +43,5 @@ set -u
install = "../bin/go tool dist banner # print build info";
};
- inputs = [ bash, go ];
+ tools = [ bash, go ];
}
diff --git a/internal/rosa/package/tllist.az b/internal/rosa/package/tllist.az
index a02196b8..acce550e 100644
--- a/internal/rosa/package/tllist.az
+++ b/internal/rosa/package/tllist.az
@@ -12,4 +12,6 @@ package tllist {
};
exec = meson {};
+
+ unlikely = true;
}
diff --git a/internal/rosa/package/toybox.az b/internal/rosa/package/toybox.az
index f54db3d2..bd3dc966 100644
--- a/internal/rosa/package/toybox.az
+++ b/internal/rosa/package/toybox.az
@@ -60,12 +60,12 @@ ln -s ../../system/bin/env /work/usr/bin
`;
};
- inputs = [
+ tools = [
bash,
gzip,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
package toybox-early {
@@ -125,10 +125,10 @@ ln -s ../../system/bin/env /work/usr/bin
`;
};
- inputs = [
+ tools = [
bash,
gzip,
-
- kernel-headers,
];
+
+ inputs = [ kernel-headers ];
}
diff --git a/internal/rosa/package/unzip.az b/internal/rosa/package/unzip.az
index 6fda9763..3bc8ae8b 100644
--- a/internal/rosa/package/unzip.az
+++ b/internal/rosa/package/unzip.az
@@ -29,7 +29,7 @@ mv unzip /work/system/bin/
`;
};
- inputs = [
+ tools = [
make,
coreutils,
];
diff --git a/internal/rosa/package/util-linux/package.az b/internal/rosa/package/util-linux/package.az
index f065718a..1317e50f 100644
--- a/internal/rosa/package/util-linux/package.az
+++ b/internal/rosa/package/util-linux/package.az
@@ -51,12 +51,10 @@ package util-linux {
check = nil;
};
- inputs = [
- bash,
+ tools = [ bash ];
+ inputs = [
ncurses,
kernel-headers,
];
-
- runtime = [ ncurses ];
}
diff --git a/internal/rosa/package/vim.az b/internal/rosa/package/vim.az
index 1ea7883c..81e1cab3 100644
--- a/internal/rosa/package/vim.az
+++ b/internal/rosa/package/vim.az
@@ -28,5 +28,4 @@ package vim {
};
inputs = [ ncurses ];
- runtime = [ ncurses ];
}
diff --git a/internal/rosa/package/wayland.az b/internal/rosa/package/wayland.az
index b4d755a1..3b240994 100644
--- a/internal/rosa/package/wayland.az
+++ b/internal/rosa/package/wayland.az
@@ -25,16 +25,12 @@ echo 'int main(){}' > tests/sanity-test.c
};
};
- inputs = [
+ tools = [
awk,
diffutils,
-
- libffi,
- libexpat,
- libxml2,
];
- runtime = [
+ inputs = [
libffi,
libexpat,
libxml2,
@@ -57,4 +53,6 @@ package wayland-protocols {
exec = meson {};
inputs = [ wayland ];
+ runtime = nil;
+ unlikely = true;
}
diff --git a/internal/rosa/package/wlroots.az b/internal/rosa/package/wlroots.az
index 62593779..7cfeb261 100644
--- a/internal/rosa/package/wlroots.az
+++ b/internal/rosa/package/wlroots.az
@@ -24,6 +24,7 @@ package wlroots {
libglvnd,
hwdata,
wayland,
+ wayland-protocols,
xwayland,
libxcb-wm,
xkbcommon,
@@ -34,15 +35,6 @@ package wlroots {
kernel-headers,
];
- runtime = [
- mesa,
- libglvnd,
- wayland,
- libxcb-wm,
- xkbcommon,
- pixman,
- seatd,
- libinput,
- libliftoff,
- ];
+ join = true;
+ runtime = [ wayland-protocols ];
}
diff --git a/internal/rosa/package/x.az b/internal/rosa/package/x.az
index a36febd0..73b82981 100644
--- a/internal/rosa/package/x.az
+++ b/internal/rosa/package/x.az
@@ -12,6 +12,7 @@ package util-macros {
};
exec = make {};
+ unlikely = true;
}
package libxtrans {
@@ -31,13 +32,15 @@ package libxtrans {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
-
- util-macros,
];
+
+ inputs = [ util-macros ];
+
+ unlikely = true;
}
package xorgproto {
@@ -57,12 +60,14 @@ package xorgproto {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
pkgconf,
-
- util-macros,
];
+
+ inputs = [ util-macros ];
+
+ unlikely = true;
}
package libXau {
@@ -102,7 +107,7 @@ package xcb-proto {
exec = make {};
- inputs = [ python ];
+ tools = [ python ];
}
package xcb {
@@ -119,15 +124,12 @@ package xcb {
exec = make {};
- inputs = [
+ tools = [
python,
pkgconf,
-
- xcb-proto,
- libXau,
];
- runtime = [
+ inputs = [
xcb-proto,
libXau,
];
@@ -146,14 +148,8 @@ package libxcb-keysyms {
};
exec = make {};
-
- inputs = [
- pkgconf,
-
- xcb,
- ];
-
- runtime = [ xcb ];
+ tools = [ pkgconf ];
+ inputs = [ xcb ];
}
package libxcb-wm {
@@ -170,14 +166,12 @@ package libxcb-wm {
exec = make {};
- inputs = [
+ tools = [
m4,
pkgconf,
-
- xcb,
];
- runtime = [ xcb ];
+ inputs = [ xcb ];
}
package libxcb-util {
@@ -195,14 +189,12 @@ package libxcb-util {
exec = make {};
- inputs = [
- pkgconf,
+ tools = [ pkgconf ];
+ inputs = [
util-macros,
xcb,
];
-
- runtime = [ xcb ];
}
package libxcb-image {
@@ -218,14 +210,8 @@ package libxcb-image {
};
exec = make {};
-
- inputs = [
- pkgconf,
-
- libxcb-util,
- ];
-
- runtime = [ libxcb-util ];
+ tools = [ pkgconf ];
+ inputs = [ libxcb-util ];
}
package libxcb-render-util {
@@ -243,14 +229,12 @@ package libxcb-render-util {
exec = make {};
- inputs = [
- pkgconf,
+ tools = [ pkgconf ];
+ inputs = [
util-macros,
xcb,
];
-
- runtime = [ xcb ];
}
package libX11 {
@@ -275,18 +259,18 @@ package libX11 {
};
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
libxtrans,
xorgproto,
xcb,
];
-
- runtime = [ xcb ];
}
package libXext {
@@ -306,16 +290,16 @@ package libXext {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
libX11,
];
-
- runtime = [ libX11 ];
}
package libXfixes {
@@ -335,17 +319,17 @@ package libXfixes {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
xorgproto,
libX11,
];
-
- runtime = [ libX11 ];
}
package libXrender {
@@ -365,16 +349,16 @@ package libXrender {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
libX11,
];
-
- runtime = [ libX11 ];
}
package libxshmfence {
@@ -394,11 +378,13 @@ package libxshmfence {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
xorgproto,
];
@@ -421,17 +407,17 @@ package libXxf86vm {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
libXext,
xorgproto,
];
-
- runtime = [ libXext ];
}
package libXrandr {
@@ -451,21 +437,18 @@ package libXrandr {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
libXext,
libXrender,
xorgproto,
];
-
- runtime = [
- libXext,
- libXrender,
- ];
}
package font-util {
@@ -485,13 +468,13 @@ package font-util {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
-
- util-macros,
];
+
+ inputs = [ util-macros ];
}
package libfontenc {
@@ -511,13 +494,15 @@ package libfontenc {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ font-util,
+ ];
+ inputs = [
util-macros,
- font-util,
xorgproto,
];
}
@@ -538,7 +523,6 @@ package libxkbfile {
exec = meson {};
inputs = [ libX11 ];
- runtime = [ libX11 ];
}
package xkbcomp {
@@ -558,17 +542,17 @@ package xkbcomp {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
byacc,
+ ];
+ inputs = [
util-macros,
libxkbfile,
];
-
- runtime = [ libxkbfile ];
}
package libXfont2 {
@@ -588,22 +572,19 @@ package libXfont2 {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
freetype,
xorgproto,
libxtrans,
libfontenc,
];
-
- runtime = [
- freetype,
- libfontenc,
- ];
}
package libxcvt {
@@ -639,11 +620,13 @@ package libXdmcp {
generate = "NOCONFIGURE=1 ./autogen.sh";
};
- inputs = [
+ tools = [
automake,
libtool,
pkgconf,
+ ];
+ inputs = [
util-macros,
xorgproto,
];
@@ -663,8 +646,7 @@ package xkeyboard-config {
};
exec = meson {};
-
- inputs = [ perl ];
+ tools = [ perl ];
}
package libpciaccess {
@@ -687,7 +669,6 @@ package libpciaccess {
};
inputs = [ zlib ];
- runtime = [ zlib ];
}
package xserver {
@@ -719,9 +700,9 @@ package xserver {
};
};
- inputs = [
- awk,
+ tools = [ awk ];
+ inputs = [
xorgproto,
libxtrans,
libxshmfence,
@@ -730,7 +711,6 @@ package xserver {
xkbcomp,
xkeyboard-config,
libXfont2,
- dbus,
font-util,
libxcvt,
libXext,
@@ -789,10 +769,12 @@ package xwayland {
};
};
- inputs = [
+ tools = [
bash,
awk,
+ ];
+ inputs = [
mesa,
libglvnd,
libepoxy,
diff --git a/internal/rosa/package/xkbcommon.az b/internal/rosa/package/xkbcommon.az
index a07d4d94..d6eb1512 100644
--- a/internal/rosa/package/xkbcommon.az
+++ b/internal/rosa/package/xkbcommon.az
@@ -21,17 +21,12 @@ package xkbcommon {
};
};
- inputs = [
+ tools = [
m4,
bison,
-
- libxml2,
- wayland,
- wayland-protocols,
- xkeyboard-config,
];
- runtime = [
+ inputs = [
libxml2,
wayland,
wayland-protocols,
diff --git a/internal/rosa/package/xz.az b/internal/rosa/package/xz.az
index a02916b4..0a186c28 100644
--- a/internal/rosa/package/xz.az
+++ b/internal/rosa/package/xz.az
@@ -14,5 +14,7 @@ package xz {
exec = make {};
- inputs = [ diffutils ];
+ tools = [ diffutils ];
+
+ unlikely = true;
}
diff --git a/internal/rosa/package/zstd.az b/internal/rosa/package/zstd.az
index ec1e21b1..29e2c51f 100644
--- a/internal/rosa/package/zstd.az
+++ b/internal/rosa/package/zstd.az
@@ -24,7 +24,7 @@ ZSTD_BIN=/cure/programs/zstd /usr/src/zstd/tests/playTests.sh
`;
};
- inputs = [
+ tools = [
make,
diffutils,
];
diff --git a/internal/rosa/perl.go b/internal/rosa/perl.go
index a828609b..705b1b8d 100644
--- a/internal/rosa/perl.go
+++ b/internal/rosa/perl.go
@@ -2,14 +2,19 @@ package rosa
var _perl = H("perl")
+var _ Helper = new(MakeMakerHelper)
+
// MakeMakerHelper builds projects using the included MakeMaker script.
type MakeMakerHelper struct {
// Whether to skip the check target.
SkipCheck bool
}
-// extra returns perl.
-func (*MakeMakerHelper) extra() P { return P{_perl, _make} }
+// tools returns perl and make.
+func (*MakeMakerHelper) tools() P { return P{_perl, _make} }
+
+// inputs returns perl.
+func (*MakeMakerHelper) inputs() P { return P{_perl} }
// wantsChmod returns true.
func (*MakeMakerHelper) wantsChmod() bool { return true }
diff --git a/internal/rosa/python.go b/internal/rosa/python.go
index 96f7714c..54022bd7 100644
--- a/internal/rosa/python.go
+++ b/internal/rosa/python.go
@@ -25,14 +25,17 @@ type PipHelper struct {
var _ Helper = new(PipHelper)
-// extra returns python, or pytest if defaults are assumed.
-func (attr *PipHelper) extra() P {
+// tools returns python and pytest if defaults are assumed.
+func (attr *PipHelper) tools() P {
if attr == nil || (!attr.SkipCheck && attr.Check == "") {
- return P{_pythonPyTest}
+ return P{_python, _pythonPyTest}
}
return P{_python}
}
+// inputs returns python.
+func (*PipHelper) inputs() P { return P{_python} }
+
// wantsChmod returns true.
func (*PipHelper) wantsChmod() bool { return true }
diff --git a/internal/rosa/rosa.go b/internal/rosa/rosa.go
index 1ad15100..beffb3ff 100644
--- a/internal/rosa/rosa.go
+++ b/internal/rosa/rosa.go
@@ -277,10 +277,12 @@ function apply {
// helperInPlace is a special directory value for omitting the cd statement.
const helperInPlace = "\x00"
-// Helper is a build system helper for [Toolchain.NewPackage].
+// Helper is a build system helper for [Toolchain.New].
type Helper interface {
- // extra returns helper-specific dependencies.
- extra() P
+ // tools returns helper-specific tool handles.
+ tools() P
+ // inputs returns helper-specific input handles.
+ inputs() P
// wantsChmod returns whether the source directory should be made writable.
wantsChmod() bool
@@ -335,6 +337,8 @@ type PackageAttr struct {
// Whether to create [pkg.KindExecNet] instead of [pkg.KindExec].
HostNet bool
+ // Native utilities used by the build process.
+ Tools P
// Unregistered extras.
Extra []pkg.Artifact
// Passed through to [Toolchain.New], before source.
@@ -362,7 +366,7 @@ func (t Toolchain) appendHandle(a []pkg.Artifact, pv pa, p ArtifactH) []pkg.Arti
pv[p] = struct{}{}
meta, u := t.MustLoad(p)
- for _, d := range meta.Dependencies {
+ for _, d := range meta.Runtimes {
a = t.appendHandle(a, pv, d)
}
return append(a, u)
@@ -393,7 +397,7 @@ func (t Toolchain) New(
source pkg.Artifact,
attr *PackageAttr,
helper Helper,
- extra ...ArtifactH,
+ inputs ...ArtifactH,
) pkg.Artifact {
if attr == nil {
attr = new(PackageAttr)
@@ -411,7 +415,10 @@ func (t Toolchain) New(
rn = name + "-" + version
}
- root := make([]pkg.Artifact, 0, 1<<3+len(attr.Extra)+len(extra))
+ root := make([]pkg.Artifact, 0, 1<<3+
+ len(attr.Extra)+
+ len(attr.Tools)+
+ len(inputs))
root = append(root, attr.Extra...)
const lcMessages = "LC_MESSAGES=C.UTF-8"
@@ -485,10 +492,16 @@ func (t Toolchain) New(
wantsChmod, wantsWrite := helper.wantsChmod(), helper.wantsWrite()
{
pv := paGet()
- for _, p := range helper.extra() {
+ for _, p := range helper.tools() {
root = t.appendHandle(root, pv, p)
}
- for _, p := range extra {
+ for _, p := range helper.inputs() {
+ root = t.appendHandle(root, pv, p)
+ }
+ for _, p := range attr.Tools {
+ root = t.appendHandle(root, pv, p)
+ }
+ for _, p := range inputs {
root = t.appendHandle(root, pv, p)
}
boot := t.S.New(t.stage - 1)
@@ -592,8 +605,11 @@ type GenericHelper struct {
var _ Helper = new(GenericHelper)
-// extra is a noop.
-func (*GenericHelper) extra() P { return nil }
+// tools is a noop.
+func (*GenericHelper) tools() P { return nil }
+
+// inputs is a noop.
+func (*GenericHelper) inputs() P { return nil }
// wantsChmod returns false.
func (*GenericHelper) wantsChmod() bool { return false }
diff --git a/internal/rosa/state.go b/internal/rosa/state.go
index fca1aa48..f2ba2059 100644
--- a/internal/rosa/state.go
+++ b/internal/rosa/state.go
@@ -91,7 +91,9 @@ type Metadata struct {
Website string `json:"website,omitempty"`
// Runtime dependencies.
- Dependencies P `json:"dependencies"`
+ Runtimes P `json:"runtime"`
+ // Whether this package is unlike to be a runtime dependency.
+ Unlikely bool `json:"unlikely,omitempty"`
// Package version.
Version string `json:"version"`
@@ -1028,6 +1030,12 @@ func (t Toolchain) evalArtifact(v any, meta *Metadata) pkg.Artifact {
}
}
+// isUnlikely returns whether p is unlikely to be a runtime dependency.
+func (t Toolchain) isUnlikely(handle ArtifactH) bool {
+ meta, _ := t.MustLoad(handle)
+ return meta.Unlikely
+}
+
// pf implements [azalea.PF].
func (ctx *evalContext) pf(
name azalea.Ident,
@@ -1049,9 +1057,11 @@ func (ctx *evalContext) pf(
source any
helper Helper
overlay string
+ join bool
- inputs, runtimes, extra azalea.Array
+ tools, inputs, extra azalea.Array
+ runtimes = azalea.Array{}
bootstrap = true
)
if err = args.Apply(map[unique.Handle[azalea.Ident]]any{
@@ -1082,7 +1092,10 @@ func (ctx *evalContext) pf(
k("source"): &source,
k("exec"): &helper,
k("inputs"): &inputs,
+ k("tools"): &tools,
k("runtime"): &runtimes,
+ k("join"): &join,
+ k("unlikely"): &meta.Unlikely,
k("extra"): &extra,
k("overlay"): &overlay,
}); err != nil {
@@ -1092,12 +1105,39 @@ func (ctx *evalContext) pf(
var inputsH, extraH P
if inputsH, err = toHandles(inputs); err != nil {
return
- } else if meta.Dependencies, err = toHandles(runtimes); err != nil {
+ } else if attr.Tools, err = toHandles(tools); err != nil {
return
} else if extraH, err = toHandles(extra); err != nil {
return
}
+ if join || (runtimes != nil && len(runtimes) == 0 && helper != nil) {
+ hi := helper.inputs()
+ meta.Runtimes = make(P, 0, len(hi)+len(inputsH)+len(runtimes))
+ for _, h := range hi {
+ if ctx.t.isUnlikely(h) {
+ continue
+ }
+ meta.Runtimes = append(meta.Runtimes, h)
+ }
+ for _, h := range inputsH {
+ if ctx.t.isUnlikely(h) {
+ continue
+ }
+ meta.Runtimes = append(meta.Runtimes, h)
+ }
+
+ if join {
+ var extraRuntimes P
+ if extraRuntimes, err = toHandles(runtimes); err != nil {
+ return
+ }
+ meta.Runtimes = append(meta.Runtimes, extraRuntimes...)
+ }
+ } else if meta.Runtimes, err = toHandles(runtimes); err != nil {
+ return
+ }
+
meta.ID = int(anitya)
for _, pathname := range patches {
var p []byte