aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-04-13 15:18:49 +0900
committerOphestra <cat@gensokyo.uk>2026-04-13 15:20:51 +0900
commiteeaf26e7a24c5c51c64fc333284015224e851e8c (patch)
tree88c24355b0b4d9ea3bf2b5548c63282d50c44729 /internal
parentb587caf2e863902eb04a6540462db5852fd1a0b5 (diff)
internal/rosa: wrapper around git helper
This results in much cleaner call site for the majority of use cases. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal')
-rw-r--r--internal/rosa/git.go5
-rw-r--r--internal/rosa/gnu.go10
-rw-r--r--internal/rosa/gtk.go5
-rw-r--r--internal/rosa/libbsd.go10
-rw-r--r--internal/rosa/libxml2.go5
-rw-r--r--internal/rosa/libxslt.go5
-rw-r--r--internal/rosa/netfilter.go10
-rw-r--r--internal/rosa/p11.go4
8 files changed, 25 insertions, 29 deletions
diff --git a/internal/rosa/git.go b/internal/rosa/git.go
index e39e0c31..9b9fa2d6 100644
--- a/internal/rosa/git.go
+++ b/internal/rosa/git.go
@@ -114,3 +114,8 @@ git \
rm -rf /work/.git
`, resolvconf())
}
+
+// newTagRemote is a helper around NewViaGit for a tag on a git remote.
+func (t Toolchain) newTagRemote(url, tag, checksum string) pkg.Artifact {
+ return t.NewViaGit(url, "refs/tags/"+tag, mustDecode(checksum))
+}
diff --git a/internal/rosa/gnu.go b/internal/rosa/gnu.go
index 61f64122..3bbc612f 100644
--- a/internal/rosa/gnu.go
+++ b/internal/rosa/gnu.go
@@ -888,10 +888,9 @@ func (t Toolchain) newGnuTLS() (pkg.Artifact, string) {
}
}
- return t.NewPackage("gnutls", version, t.NewViaGit(
+ return t.NewPackage("gnutls", version, t.newTagRemote(
"https://gitlab.com/gnutls/gnutls.git",
- "refs/tags/"+version,
- mustDecode(checksum),
+ version, checksum,
), &PackageAttr{
Patches: []KV{
{"bootstrap-remove-gtk-doc", `diff --git a/bootstrap.conf b/bootstrap.conf
@@ -1146,10 +1145,9 @@ func (t Toolchain) newMPC() (pkg.Artifact, string) {
version = "1.4.0"
checksum = "TbrxLiE3ipQrHz_F3Xzz4zqBAnkMWyjhNwIK6wh9360RZ39xMt8rxfW3LxA9SnvU"
)
- return t.NewPackage("mpc", version, t.NewViaGit(
+ return t.NewPackage("mpc", version, t.newTagRemote(
"https://gitlab.inria.fr/mpc/mpc.git",
- "refs/tags/"+version,
- mustDecode(checksum),
+ version, checksum,
), &PackageAttr{
// does not find mpc-impl.h otherwise
EnterSource: true,
diff --git a/internal/rosa/gtk.go b/internal/rosa/gtk.go
index 902d6975..0ddfeb8a 100644
--- a/internal/rosa/gtk.go
+++ b/internal/rosa/gtk.go
@@ -10,10 +10,9 @@ func (t Toolchain) newGLib() (pkg.Artifact, string) {
version = "2.88.0"
checksum = "T79Cg4z6j-sDZ2yIwvbY4ccRv2-fbwbqgcw59F5NQ6qJT6z4v261vbYp3dHO6Ma3"
)
- return t.NewPackage("glib", version, t.NewViaGit(
+ return t.NewPackage("glib", version, t.newTagRemote(
"https://gitlab.gnome.org/GNOME/glib.git",
- "refs/tags/"+version,
- mustDecode(checksum),
+ version, checksum,
), &PackageAttr{
Paths: []pkg.ExecPath{
pkg.Path(fhs.AbsEtc.Append(
diff --git a/internal/rosa/libbsd.go b/internal/rosa/libbsd.go
index e07e10fc..6b223007 100644
--- a/internal/rosa/libbsd.go
+++ b/internal/rosa/libbsd.go
@@ -7,10 +7,9 @@ func (t Toolchain) newLibmd() (pkg.Artifact, string) {
version = "1.1.0"
checksum = "9apYqPPZm0j5HQT8sCsVIhnVIqRD7XgN7kPIaTwTqnTuUq5waUAMq4M7ev8CODJ1"
)
- return t.NewPackage("libmd", version, t.NewViaGit(
+ return t.NewPackage("libmd", version, t.newTagRemote(
"https://git.hadrons.org/git/libmd.git",
- "refs/tags/"+version,
- mustDecode(checksum),
+ version, checksum,
), nil, &MakeHelper{
Generate: "echo '" + version + "' > .dist-version && ./autogen",
ScriptMakeEarly: `
@@ -38,10 +37,9 @@ func (t Toolchain) newLibbsd() (pkg.Artifact, string) {
version = "0.12.2"
checksum = "NVS0xFLTwSP8JiElEftsZ-e1_C-IgJhHrHE77RwKt5178M7r087waO-zYx2_dfGX"
)
- return t.NewPackage("libbsd", version, t.NewViaGit(
+ return t.NewPackage("libbsd", version, t.newTagRemote(
"https://gitlab.freedesktop.org/libbsd/libbsd.git",
- "refs/tags/"+version,
- mustDecode(checksum),
+ version, checksum,
), nil, &MakeHelper{
Generate: "echo '" + version + "' > .dist-version && ./autogen",
},
diff --git a/internal/rosa/libxml2.go b/internal/rosa/libxml2.go
index 9eb767f5..9a0e67df 100644
--- a/internal/rosa/libxml2.go
+++ b/internal/rosa/libxml2.go
@@ -7,10 +7,9 @@ func (t Toolchain) newLibxml2() (pkg.Artifact, string) {
version = "2.15.2"
checksum = "zwQvCIBnjzUFY-inX5ckfNT3mIezsCRV55C_Iztde5OnRTB3u33lfO5h03g7DK_8"
)
- return t.NewPackage("libxml2", version, t.NewViaGit(
+ return t.NewPackage("libxml2", version, t.newTagRemote(
"https://gitlab.gnome.org/GNOME/libxml2.git",
- "refs/tags/v"+version,
- mustDecode(checksum),
+ "v"+version, checksum,
), &PackageAttr{
// can't create shell.out: Read-only file system
Writable: true,
diff --git a/internal/rosa/libxslt.go b/internal/rosa/libxslt.go
index c905d68c..f7e6812c 100644
--- a/internal/rosa/libxslt.go
+++ b/internal/rosa/libxslt.go
@@ -7,10 +7,9 @@ func (t Toolchain) newLibxslt() (pkg.Artifact, string) {
version = "1.1.45"
checksum = "MZc_dyUWpHChkWDKa5iycrECxBsRd4ZMbYfL4VojTbung593mlH2tHGmxYB6NFYT"
)
- return t.NewPackage("libxslt", version, t.NewViaGit(
+ return t.NewPackage("libxslt", version, t.newTagRemote(
"https://gitlab.gnome.org/GNOME/libxslt.git",
- "refs/tags/v"+version,
- mustDecode(checksum),
+ "v"+version, checksum,
), nil, &MakeHelper{
Generate: "NOCONFIGURE=1 ./autogen.sh",
diff --git a/internal/rosa/netfilter.go b/internal/rosa/netfilter.go
index bbbc460e..08512681 100644
--- a/internal/rosa/netfilter.go
+++ b/internal/rosa/netfilter.go
@@ -55,10 +55,9 @@ func (t Toolchain) newLibnftnl() (pkg.Artifact, string) {
version = "1.3.1"
checksum = "91ou66K-I17iX6DB6hiQkhhC_v4DFW5iDGzwjVRNbJNEmKqowLZBlh3FY-ZDO0r9"
)
- return t.NewPackage("libnftnl", version, t.NewViaGit(
+ return t.NewPackage("libnftnl", version, t.newTagRemote(
"https://git.netfilter.org/libnftnl",
- "refs/tags/libnftnl-"+version,
- mustDecode(checksum),
+ "libnftnl-"+version, checksum,
), &PackageAttr{
Env: []string{
"CFLAGS=-D_GNU_SOURCE",
@@ -98,10 +97,9 @@ func (t Toolchain) newIPTables() (pkg.Artifact, string) {
version = "1.8.13"
checksum = "TUA-cFIAsiMvtRR-XzQvXzoIhJUOc9J2gQDJCbBRjmgmVfGfPTCf58wL7e-cUKVQ"
)
- return t.NewPackage("iptables", version, t.NewViaGit(
+ return t.NewPackage("iptables", version, t.newTagRemote(
"https://git.netfilter.org/iptables",
- "refs/tags/v"+version,
- mustDecode(checksum),
+ "v"+version, checksum,
), &PackageAttr{
ScriptEarly: `
rm \
diff --git a/internal/rosa/p11.go b/internal/rosa/p11.go
index 70fe9419..4e7630cd 100644
--- a/internal/rosa/p11.go
+++ b/internal/rosa/p11.go
@@ -7,9 +7,9 @@ func (t Toolchain) newP11Kit() (pkg.Artifact, string) {
version = "0.26.2"
checksum = "3ei-6DUVtYzrRVe-SubtNgRlweXd6H2qHmUu-_5qVyIn6gSTvZbGS2u79Y8IFb2N"
)
- return t.NewPackage("p11-kit", version, t.NewViaGit(
+ return t.NewPackage("p11-kit", version, t.newTagRemote(
"https://github.com/p11-glue/p11-kit.git",
- "refs/tags/"+version, mustDecode(checksum),
+ version, checksum,
), nil, &MesonHelper{
Setup: []KV{
{"Dsystemd", "disabled"},