aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-02-05 18:15:16 +0900
committerOphestra <cat@gensokyo.uk>2026-02-05 18:15:16 +0900
commitd77ad3bb6ed27a30df3d666aacb1477dced912ed (patch)
tree6b1d9afd9c0d1f035f728d5dc75e63dd91cd0cb2
parent0142fc90b0bf966a6ecf4acddc4d25f038ed98b6 (diff)
internal/rosa: curl artifact
Required for http support in git. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--internal/rosa/all.go2
-rw-r--r--internal/rosa/curl.go31
2 files changed, 33 insertions, 0 deletions
diff --git a/internal/rosa/all.go b/internal/rosa/all.go
index 9ff5798a..f82841ea 100644
--- a/internal/rosa/all.go
+++ b/internal/rosa/all.go
@@ -17,6 +17,7 @@ const (
Bash
CMake
Coreutils
+ Curl
Diffutils
Findutils
Fuse
@@ -103,6 +104,7 @@ func ResolveName(name string) (p PArtifact, ok bool) {
"bash": Bash,
"cmake": CMake,
"coreutils": Coreutils,
+ "curl": Curl,
"diffutils": Diffutils,
"findutils": Findutils,
"fuse": Fuse,
diff --git a/internal/rosa/curl.go b/internal/rosa/curl.go
new file mode 100644
index 00000000..ae53885f
--- /dev/null
+++ b/internal/rosa/curl.go
@@ -0,0 +1,31 @@
+package rosa
+
+import "hakurei.app/internal/pkg"
+
+func (t Toolchain) newCurl() pkg.Artifact {
+ const (
+ version = "8.18.0"
+ checksum = "YpOolP_sx1DIrCEJ3elgVAu0wTLDS-EZMZFvOP0eha7FaLueZUlEpuMwDzJNyi7i"
+ )
+ return t.NewViaMake("curl", version, pkg.NewHTTPGetTar(
+ nil, "https://curl.se/download/curl-"+version+".tar.bz2",
+ mustDecode(checksum),
+ pkg.TarBzip2,
+ ), &MakeAttr{
+ Env: []string{
+ "TFLAGS=-j256",
+ },
+ Configure: [][2]string{
+ {"with-openssl"},
+ },
+ ScriptConfigured: `
+make "-j$(nproc)"
+`,
+ },
+ t.Load(Perl),
+
+ t.Load(Libpsl),
+ t.Load(OpenSSL),
+ )
+}
+func init() { artifactsF[Curl] = Toolchain.newCurl }