aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/hakurei.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/rosa/hakurei.go')
-rw-r--r--internal/rosa/hakurei.go121
1 files changed, 0 insertions, 121 deletions
diff --git a/internal/rosa/hakurei.go b/internal/rosa/hakurei.go
deleted file mode 100644
index ff56c1ea..00000000
--- a/internal/rosa/hakurei.go
+++ /dev/null
@@ -1,121 +0,0 @@
-package rosa
-
-import "hakurei.app/internal/pkg"
-
-func (t Toolchain) newHakurei(
- suffix, build, check, install string,
- withHostname bool,
-) pkg.Artifact {
- hostname := `
-echo 'Building test helper (hostname).'
-go build -o /bin/hostname /usr/src/hostname/main.go
-`
- if !withHostname {
- hostname = ""
- }
-
- name := "hakurei" + suffix
- return t.NewPackage(name, hakureiVersion, t.NewPatchedSource(
- "hakurei-"+hakureiVersion, hakureiSource, false, hakureiPatches...,
- ), &PackageAttr{
- EnterSource: true,
- Writable: true,
- Env: []string{
- "CGO_ENABLED=1",
- "GOCACHE=/tmp/gocache",
- "CC=clang -O3 -Werror",
- },
-
- Paths: []pkg.ExecPath{pkg.Path(AbsUsrSrc.Append("hostname", "main.go"), false, pkg.NewFile(
- "hostname.go",
- []byte(`
-package main
-
-import "os"
-
-func main() {
- if name, err := os.Hostname(); err != nil {
- panic(err)
- } else {
- os.Stdout.WriteString(name)
- }
-}
-`),
- ))},
- }, &GenericHelper{
- InPlace: true,
- Build: hostname + `
-HAKUREI_VERSION='v` + hakureiVersion + `'
-` + build,
- Check: check,
- Install: install,
- },
- _go,
- H("pkg-config"),
-
- H("libseccomp"),
- H("acl"),
- H("fuse"),
- H("xcb"),
- H("wayland"),
- H("wayland-protocols"),
-
- _kernelHeaders,
- )
-}
-func init() {
- meta := Metadata{
- Name: "hakurei",
- Description: "low-level userspace tooling for Rosa OS",
- Website: "https://hakurei.app",
- Version: hakureiVersion,
-
- ID: 388834,
- }
- native.MustRegister(meta.Name, func(t Toolchain) (*Metadata, pkg.Artifact) {
- return &meta, t.newHakurei("", `
-mkdir -p /work/system/libexec/hakurei/
-
-echo "Building hakurei for $(go env GOOS)/$(go env GOARCH)."
-go generate ./...
-go build -trimpath -tags=rosa -o /work/system/libexec/hakurei -ldflags="-s -w
- -buildid=
- -linkmode external
- -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= -linkmode external -extldflags=-static' ./...
-echo
-`, `
-mkdir -p /work/system/bin/
-(cd /work/system/libexec/hakurei && mv \
- hakurei \
- sharefs \
- ../../bin/)
-`, true)
- })
-}
-func init() {
- meta := Metadata{
- Name: "hakurei-dist",
- Description: "low-level userspace tooling for Rosa OS (distribution tarball)",
- Website: "https://hakurei.app",
- Version: hakureiVersion,
- }
- native.MustRegister(meta.Name, func(t Toolchain) (*Metadata, pkg.Artifact) {
- name := "all"
- if t.opts&OptSkipCheck != 0 {
- name = "make"
- }
- return &meta, t.newHakurei("-dist", `
-export HAKUREI_VERSION
-DESTDIR=/work ./`+name+`.sh
-`, "", "", true)
- })
-}