aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--internal/rosa/hakurei.go51
1 files changed, 29 insertions, 22 deletions
diff --git a/internal/rosa/hakurei.go b/internal/rosa/hakurei.go
index afe0adce..bc9aa2ae 100644
--- a/internal/rosa/hakurei.go
+++ b/internal/rosa/hakurei.go
@@ -4,7 +4,7 @@ import (
"hakurei.app/internal/pkg"
)
-func (t Toolchain) newHakurei() pkg.Artifact {
+func (t Toolchain) newHakurei(script string) pkg.Artifact {
const (
version = "0.3.4"
checksum = "wVwSLo75a2OnH5tgxNWXR_YhiOJUFnYM_9-sJtxAEOKhcPE0BJafs6PU8o5JzyCT"
@@ -39,27 +39,9 @@ echo
chmod -R +w /usr/src/hakurei
cd /usr/src/hakurei
-mkdir -p /work/system/{bin,libexec/hakurei}
-echo '# Building hakurei.'
-go generate -v ./...
-go build -trimpath -v -o /work/system/libexec/hakurei -ldflags="-s -w
- -buildid=
- -extldflags=-static
- -X hakurei.app/internal/info.buildVersion='v`+version+`'
- -X hakurei.app/internal/info.hakureiPath=/system/bin/hakurei
- -X hakurei.app/internal/info.hsuPath=/system/bin/hsu
- -X main.hakureiPath=/system/bin/hakurei" ./...
-echo
-
-echo '# Testing hakurei.'
-go test -ldflags='-buildid= -extldflags=-static' ./...
-echo
-
-mv \
- /work/system/libexec/hakurei/{hakurei,hpkg} \
- /work/system/bin
-`, pkg.Path(AbsUsrSrc.Append("hakurei"), true, pkg.NewHTTPGetTar(
+HAKUREI_VERSION='v`+version+`'
+`+script, pkg.Path(AbsUsrSrc.Append("hakurei"), true, pkg.NewHTTPGetTar(
nil, "https://git.gensokyo.uk/security/hakurei/archive/"+
"v"+version+".tar.gz",
mustDecode(checksum),
@@ -81,4 +63,29 @@ func main() {
`),
)))
}
-func init() { artifactsF[Hakurei] = Toolchain.newHakurei }
+func init() {
+ artifactsF[Hakurei] = func(t Toolchain) pkg.Artifact {
+ return t.newHakurei(`
+mkdir -p /work/system/{bin,libexec/hakurei}
+
+echo '# Building hakurei.'
+go generate -v ./...
+go build -trimpath -v -o /work/system/libexec/hakurei -ldflags="-s -w
+ -buildid=
+ -extldflags=-static
+ -X hakurei.app/internal/info.buildVersion="$HAKUREI_VERSION"
+ -X hakurei.app/internal/info.hakureiPath=/system/bin/hakurei
+ -X hakurei.app/internal/info.hsuPath=/system/bin/hsu
+ -X main.hakureiPath=/system/bin/hakurei" ./...
+echo
+
+echo '# Testing hakurei.'
+go test -ldflags='-buildid= -extldflags=-static' ./...
+echo
+
+mv \
+ /work/system/libexec/hakurei/{hakurei,sharefs} \
+ /work/system/bin
+`)
+ }
+}