aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa/go.go
AgeCommit message (Collapse)Author
12 hourspkg: move from internalHEADstagingmasterdevelopOphestra
Closes #43. Signed-off-by: Ophestra <cat@gensokyo.uk>
3 daysinternal/rosa/go: disable bootstrap testsOphestra
These are very expensive and mostly pointless: it only matters that the final toolchain passes its tests. Signed-off-by: Ophestra <cat@gensokyo.uk>
5 daysinternal/rosa: read-only access to built-insOphestra
This removes potential footguns caused by mutable builtins without requiring unnecessary clones. Signed-off-by: Ophestra <cat@gensokyo.uk>
10 daysinternal/rosa/package/go: 1.26.6 to 1.27.0Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-30internal/rosa: remove legacy exec helperOphestra
This change also adds a fourth stage to the bootstrap machinery, offering more correct toolchain validation that works around LLVM dynamic linking flaws. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-10internal/rosa/go: migrate to azaleaOphestra
Bootstrap still remains native, however the final toolchain is migrated to azalea. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-10internal/rosa/package/go: bootstrap 1.25.11 to 1.25.12Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-04internal/pkg: remove tar built-in decompressorOphestra
This is replaced by decompressArtifact and is no longer necessary. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-03internal/rosa/go: 1.26.3 to 1.26.4Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-22internal/rosa/go: runtime dependencies for alterative pathOphestra
The GCC toolchain is not dependency-free, so append them here. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa/go: migrate to generic helperOphestra
The go toolchain predates all abstractions currently available. This migration causes rebuilds due to internal cleanups affecting the final build script. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa/package: migrate nssOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20internal/rosa: remove global handlesOphestra
These no longer serve any purpose. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19internal/rosa: create metadata alongside artifactOphestra
This enables deferring evaluation of azalea-based packages and fixes the longstanding quirk of version being disjoint from other metadata. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17internal/rosa: pass stage alongside stateOphestra
This cleans up many function signatures. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17internal/rosa: key metadata by stringOphestra
For upcoming azalea integration. The API is quite ugly right now to ease migration. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-10internal/rosa/go: respect check flagOphestra
These tests are also quite expensive, so optionally skip them. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-08internal/rosa/go: 1.26.2 to 1.26.3Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-08internal/rosa/go: bootstrap 1.25.9 to 1.25.10Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-07internal/rosa: configurable architectureOphestra
This enables curing via binfmt. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-02internal/rosa/go: disable tsan testOphestra
The newly enabled tsan does not play well with go126, so disable for now. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-01internal/rosa/go: bootstrap 1.25.7 to 1.25.9Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-28internal/rosa/go: require popcnt for x86Ophestra
This backports https://go.dev/cl/746640. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-13internal/rosa: helpers for common url formatsOphestra
This cleans up call site of NewPackage. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-10internal/rosa/go: 1.26.1 to 1.26.2Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-07internal/rosa/go: enable riscv64 bootstrap pathOphestra
This is quite expensive, but no other option, unfortunately. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-20internal/rosa/go: disable go1.25.7 smtp testOphestra
This uses certs that had just expired. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-13internal/rosa: populate runtime dependenciesOphestra
This also removes manually resolved indirect dependencies. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-06internal/rosa/go: 1.26.0 to 1.26.1Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-05internal/rosa: populate Anitya project idsOphestra
This enables release monitoring for all applicable projects. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-05internal/rosa: provide package metadataOphestra
This had to be done out-of-band because there was no way to efficiently represent these within Artifact. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-18internal/rosa: tamago toolchain artifactOphestra
Currently used by the (wip) bootloader, might not make it into the final OS. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-17internal/rosa/go: 1.25.7 to 1.26.0Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-08internal/rosa/go: 1.25.6 to 1.25.7Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-02-08internal/rosa/go: alternative bootstrap pathOphestra
For targets where the bootstrap toolchain is not available. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-31internal/rosa/llvm: add rosa vendorOphestra
This cleans up checks specific to Rosa OS, and fixes stack overflow in llvm under certain conditions. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-31internal/rosa: disable broken testsOphestra
These fail when running as users with supplementary groups, since they are unmapped in the container. This was not the case in the development container where all groups were dropped, so the failure was missed. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-30internal/rosa: fix up dependenciesOphestra
These are no longer provided by the (incomplete) toybox implementations, so they need to be specified explicitly. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-29internal/rosa: flags for toolchain-dependent artifactOphestra
This is much cleaner to add extra flags to. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-29internal/rosa: replace busybox with toyboxOphestra
The busybox artifact does not run on aarch64, and the workarounds required for it to compile successfully on x86_64 is unacceptably shaky. This change fully replaces it with toybox. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-27internal/pkg: exclusive artifactsOphestra
This alleviates scheduler overhead when curing many artifacts. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-25internal/rosa/go: symlink executablesOphestra
This avoids having to fix up $PATH for every artifact. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-25internal/rosa/go: run toolchain testsOphestra
LLVM patches and a TMPDIR backed by tmpfs fixed most tests. Broken tests in older versions are disabled. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-25internal/rosa: lazy initialise all artifactsOphestra
This improves performance, though not as drastically as lazy initialising llvm. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-24internal/rosa: patch library pathsOphestra
This removes the need for reference LDFLAGS in the standard toolchain. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-23internal/rosa: patch header search pathsOphestra
This removes the need for reference CFLAGS in the standard toolchain. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-22internal/rosa/go: run bootstrap toolchain testsOphestra
The objdump test will be re-enabled after fixing llvm search paths. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-01-20internal/rosa: bootstrap go toolchainOphestra
This runs without tests for now. Will be fixed in a later commit. Signed-off-by: Ophestra <cat@gensokyo.uk>