21 Commits
Author SHA1 Message Date
cat d9803e5be7 release: 0.4.7
Release / Create release (push) Successful in 55s
Test / Hakurei (push) Successful in 4m58s
Test / Hakurei (race detector) (push) Successful in 7m26s
Test / Sandbox (push) Successful in 3m17s
Test / Sandbox (race detector) (push) Successful in 6m4s
Test / ShareFS (push) Successful in 8m3s
Test / Flake checks (push) Successful in 1m28s
Test / Create distribution (push) Successful in 1m9s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-21 18:40:42 +09:00
cat a28e01b863 internal/rosa/package/mesa: 26.2.0 to 26.2.1
Test / Create distribution (push) Successful in 59s
Test / Sandbox (push) Successful in 3m15s
Test / Hakurei (push) Successful in 7m28s
Test / Sandbox (race detector) (push) Successful in 6m46s
Test / Hakurei (race detector) (push) Successful in 8m35s
Test / ShareFS (push) Successful in 8m23s
Test / Flake checks (push) Successful in 1m7s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-21 13:47:28 +09:00
cat 84ab8daf6a internal/rosa/package/tamago: 1.26.6 to 1.27.0
Test / Create distribution (push) Successful in 1m11s
Test / Sandbox (push) Successful in 3m51s
Test / Hakurei (push) Successful in 6m30s
Test / Sandbox (race detector) (push) Successful in 8m1s
Test / Hakurei (race detector) (push) Successful in 9m29s
Test / ShareFS (push) Successful in 9m56s
Test / Flake checks (push) Successful in 1m11s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-21 13:50:49 +09:00
cat 2ca57764a3 internal/rosa/package/git: disable flaky test
Test / Create distribution (push) Successful in 2m10s
Test / Sandbox (push) Successful in 5m8s
Test / Sandbox (race detector) (push) Successful in 6m36s
Test / Hakurei (push) Successful in 6m55s
Test / Hakurei (race detector) (push) Successful in 8m13s
Test / ShareFS (push) Successful in 10m12s
Test / Flake checks (push) Successful in 1m51s
This one blew up on the aarch64 builder, seems very low probability of failure. Disabling anyway.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-21 13:40:22 +09:00
cat f189cc25c6 test: synchronise before copying from vm
Test / ShareFS (push) Successful in 31s
Test / Sandbox (push) Successful in 37s
Test / Sandbox (race detector) (push) Successful in 38s
Test / Create distribution (push) Successful in 56s
Test / Hakurei (push) Successful in 3m24s
Test / Hakurei (race detector) (push) Successful in 4m0s
Test / Flake checks (push) Successful in 1m12s
The swaymsg calls do not wait for process to terminate.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 19:32:29 +09:00
cat fa7e06ebd6 internal/rosa/package/kernel: 6.18.44 to 6.18.45
Test / Create distribution (push) Successful in 53s
Test / Sandbox (push) Successful in 2m57s
Test / Hakurei (push) Successful in 4m45s
Test / Sandbox (race detector) (push) Successful in 6m9s
Test / Hakurei (race detector) (push) Successful in 7m40s
Test / ShareFS (push) Successful in 7m52s
Test / Flake checks (push) Successful in 1m37s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 19:11:03 +09:00
cat 142152f6b8 Revert "internal/rosa/package/elfutils: 0.195 to 0.196"
Test / Hakurei (push) Successful in 50s
Test / Sandbox (push) Successful in 1m43s
Test / Create distribution (push) Successful in 1m6s
Test / Sandbox (race detector) (push) Successful in 2m46s
Test / Hakurei (race detector) (push) Successful in 4m5s
Test / ShareFS (push) Successful in 6m3s
Test / Flake checks (push) Successful in 1m17s
Does not compile on arm:

In file included from /usr/src/elfutils/backends/aarch64_initreg.c:36:
/system/include/linux/uio.h:17:8: error: redefinition of 'iovec'
   17 | struct iovec
      |        ^
/system/include/bits/alltypes.h:363:8: note: previous definition is here
  363 | struct iovec { void *iov_base; size_t iov_len; };
      |        ^
1 error generated.

This reverts commit 5313ea627b.
2026-08-20 18:45:20 +09:00
cat b3ac03059f internal/rosa/package/python: remove broken tests from mako
Test / Sandbox (push) Successful in 3m32s
Test / Create distribution (push) Successful in 1m1s
Test / Sandbox (race detector) (push) Successful in 2m41s
Test / Hakurei (push) Successful in 3m27s
Test / Hakurei (race detector) (push) Successful in 4m13s
Test / ShareFS (push) Successful in 5m53s
Test / Flake checks (push) Successful in 1m9s
The two bumps somehow broke these tests.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:39:01 +09:00
cat cbd95294ba go: 1.27
Test / Hakurei (race detector) (push) Successful in 4m20s
Test / Sandbox (push) Successful in 3m12s
Test / Sandbox (race detector) (push) Successful in 2m43s
Test / ShareFS (push) Successful in 5m40s
Test / Create distribution (push) Successful in 56s
Test / Hakurei (push) Successful in 3m28s
Test / Flake checks (push) Successful in 1m12s
This fixes test cases affected by jsonv2 changes.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 19:05:29 +09:00
cat ace59607f2 internal/pkg: eliminate gzip-derived identifiers
Test / Flake checks (push) Successful in 1m27s
Test / Hakurei (push) Successful in 8m40s
Test / Hakurei (race detector) (push) Successful in 12m2s
Test / Sandbox (push) Successful in 4m24s
Test / Sandbox (race detector) (push) Successful in 7m58s
Test / ShareFS (push) Successful in 37s
Test / Create distribution (push) Successful in 1m2s
These test cases are fragile to changes in package compress/gzip.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:19:38 +09:00
cat 692c28ad29 internal/rosa/package/x: xwayland 24.1.13 to 26.0.99.901
Test / ShareFS (push) Successful in 11m0s
Test / Hakurei (push) Successful in 7m9s
Test / Create distribution (push) Successful in 1m0s
Test / Sandbox (race detector) (push) Successful in 7m38s
Test / Flake checks (push) Successful in 1m40s
Test / Hakurei (race detector) (push) Successful in 12m2s
Test / Sandbox (push) Successful in 3m25s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:17:59 +09:00
cat df04ad592e internal/rosa/package/x: xserver 21.1.24 to 26.0.99.901
Test / Hakurei (push) Successful in 3m8s
Test / Flake checks (push) Successful in 1m23s
Test / Hakurei (race detector) (push) Successful in 9m36s
Test / Sandbox (push) Successful in 2m6s
Test / Sandbox (race detector) (push) Successful in 5m45s
Test / ShareFS (push) Successful in 9m13s
Test / Create distribution (push) Successful in 1m0s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:17:36 +09:00
cat 7737fd03ae internal/rosa/package/tamago: 1.26.5 to 1.26.6
Test / ShareFS (push) Successful in 10m44s
Test / Flake checks (push) Successful in 1m41s
Test / Hakurei (push) Successful in 8m3s
Test / Create distribution (push) Successful in 1m7s
Test / Sandbox (race detector) (push) Successful in 7m41s
Test / Sandbox (push) Successful in 4m8s
Test / Hakurei (race detector) (push) Successful in 11m0s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:17:05 +09:00
cat 476945da23 internal/rosa/package/nss: 3.126.1 to 3.127
Test / Create distribution (push) Successful in 1m30s
Test / Flake checks (push) Successful in 1m43s
Test / Sandbox (push) Successful in 3m49s
Test / ShareFS (push) Successful in 9m31s
Test / Hakurei (push) Successful in 7m26s
Test / Hakurei (race detector) (push) Successful in 11m7s
Test / Sandbox (race detector) (push) Successful in 7m52s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:16:34 +09:00
cat 85860c858a internal/rosa/package/libpsl: 0.23.2 to 0.23.3
Test / Sandbox (push) Successful in 4m55s
Test / Create distribution (push) Successful in 1m2s
Test / ShareFS (push) Successful in 11m15s
Test / Flake checks (push) Successful in 1m41s
Test / Sandbox (race detector) (push) Successful in 7m33s
Test / Hakurei (push) Successful in 6m52s
Test / Hakurei (race detector) (push) Successful in 10m16s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:16:00 +09:00
cat 60a62ae5f7 internal/rosa/package/libevdev: 1.13.6 to 1.13.7
Test / Sandbox (race detector) (push) Successful in 3m6s
Test / Hakurei (push) Successful in 7m36s
Test / Hakurei (race detector) (push) Successful in 11m8s
Test / Sandbox (push) Successful in 3m36s
Test / ShareFS (push) Successful in 10m34s
Test / Create distribution (push) Successful in 1m2s
Test / Flake checks (push) Successful in 1m17s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:15:30 +09:00
cat 5313ea627b internal/rosa/package/elfutils: 0.195 to 0.196
Test / Hakurei (race detector) (push) Successful in 10m47s
Test / Hakurei (push) Successful in 7m54s
Test / Flake checks (push) Successful in 1m45s
Test / Sandbox (race detector) (push) Successful in 7m41s
Test / ShareFS (push) Successful in 11m20s
Test / Sandbox (push) Successful in 3m36s
Test / Create distribution (push) Successful in 1m3s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:15:02 +09:00
cat 5352598c68 internal/rosa/package/python: pygments 2.20.0 to 2.21.0
Test / Sandbox (race detector) (push) Successful in 8m38s
Test / Create distribution (push) Successful in 1m13s
Test / Sandbox (push) Successful in 5m6s
Test / Flake checks (push) Successful in 2m1s
Test / Hakurei (race detector) (push) Successful in 11m23s
Test / ShareFS (push) Successful in 11m5s
Test / Hakurei (push) Successful in 8m48s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:14:36 +09:00
cat 9331a5cbeb internal/rosa/package/python: vcs-versioning 2.2.4 to 2.3.1
Test / Hakurei (race detector) (push) Successful in 12m1s
Test / Sandbox (push) Successful in 5m10s
Test / Sandbox (race detector) (push) Successful in 7m19s
Test / ShareFS (push) Successful in 11m11s
Test / Flake checks (push) Successful in 1m40s
Test / Create distribution (push) Successful in 1m55s
Test / Hakurei (push) Successful in 6m50s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:14:11 +09:00
cat 9b675c45ff internal/rosa/package/strace: 7.1 to 7.2
Test / Hakurei (race detector) (push) Successful in 7m25s
Test / Hakurei (push) Successful in 14m30s
Test / Sandbox (push) Successful in 10m24s
Test / ShareFS (push) Successful in 18m2s
Test / Sandbox (race detector) (push) Successful in 4m13s
Test / Create distribution (push) Successful in 2m38s
Test / Flake checks (push) Successful in 1m30s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:13:30 +09:00
cat 5cf1d70c7b internal/rosa/package/go: 1.26.6 to 1.27.0
Test / Sandbox (race detector) (push) Successful in 5m29s
Test / Hakurei (push) Successful in 14m39s
Test / Hakurei (race detector) (push) Successful in 8m8s
Test / Sandbox (push) Successful in 10m4s
Test / ShareFS (push) Successful in 20m6s
Test / Create distribution (push) Successful in 2m55s
Test / Flake checks (push) Successful in 1m18s
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-08-20 18:12:32 +09:00
28 changed files with 76 additions and 146 deletions
+1 -1
View File
@@ -1 +1 @@
v0.4.6 v0.4.7
+1 -1
View File
@@ -66,7 +66,7 @@ func TestEncodeJSON(t *testing.T) {
want string want string
}{ }{
{"marshaler", errorJSONMarshaler{}, {"marshaler", errorJSONMarshaler{},
`cannot encode json for main.errorJSONMarshaler: unique error 3735928559 injected by the test suite`}, `cannot encode json for *main.errorJSONMarshaler: unique error 3735928559 injected by the test suite`},
{"default", func() {}, {"default", func() {},
`cannot write json: json: unsupported type: func()`}, `cannot write json: json: unsupported type: func()`},
} }
+1 -1
View File
@@ -1,3 +1,3 @@
module hakurei.app module hakurei.app
go 1.26 go 1.27
+8 -6
View File
@@ -36,6 +36,12 @@ func TestDecompress(t *testing.T) {
return (pkg.Checksum)(h.Sum(nil)) return (pkg.Checksum)(h.Sum(nil))
}() }()
gh := pkg.NewDecompress(pkg.NewHTTPGet(
&client,
"file:///testdata",
testdataChecksum,
), pkg.Gzip)
checkWithCache(t, []cacheTestCase{ checkWithCache(t, []cacheTestCase{
{"decompress", 0, nil, func(t *testing.T, base *check.Absolute, c *pkg.Cache) { {"decompress", 0, nil, func(t *testing.T, base *check.Absolute, c *pkg.Cache) {
cureMany(t, c, []cureStep{ cureMany(t, c, []cureStep{
@@ -48,11 +54,7 @@ func TestDecompress(t *testing.T) {
Want: pkg.Checksum{0xfd}, Want: pkg.Checksum{0xfd},
}}, }},
{"gzip", pkg.NewDecompress(pkg.NewHTTPGet( {"gzip", gh, ignorePathname, expectsChecksum(sha512.Sum384([]byte{0})), pkg.WNew, nil},
&client,
"file:///testdata",
testdataChecksum,
), pkg.Gzip), ignorePathname, expectsChecksum(sha512.Sum384([]byte{0})), pkg.WNew, nil},
}) })
}, expectsFS{ }, expectsFS{
".": {Mode: fs.ModeDir | 0700}, ".": {Mode: fs.ModeDir | 0700},
@@ -61,7 +63,7 @@ func TestDecompress(t *testing.T) {
"checksum/" + pkg.Encode(sha512.Sum384([]byte{0})): {Mode: 0400, Data: []byte{0}}, "checksum/" + pkg.Encode(sha512.Sum384([]byte{0})): {Mode: 0400, Data: []byte{0}},
"identifier": {Mode: fs.ModeDir | 0700}, "identifier": {Mode: fs.ModeDir | 0700},
"identifier/mae-iR_9LFT_BOEJ2IRzKsAlI754SalMjjt95fZeMd3gEyAzsrvuOXnXN0bFZJi4": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/vsAhtPNo4waRNOASwrQwcIPTqb3SBuJOXw2G4T1mNmVZM-wrQTRllmgXqcIIoRcX")}, "identifier/" + pkg.Encode(pkg.NewIR().Ident(gh).Value()): {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/vsAhtPNo4waRNOASwrQwcIPTqb3SBuJOXw2G4T1mNmVZM-wrQTRllmgXqcIIoRcX")},
"substitute": {Mode: fs.ModeDir | 0700}, "substitute": {Mode: fs.ModeDir | 0700},
"work": {Mode: fs.ModeDir | 0700}, "work": {Mode: fs.ModeDir | 0700},
+10 -29
View File
@@ -3,7 +3,6 @@ package pkg_test
import ( import (
"archive/tar" "archive/tar"
"bytes" "bytes"
"compress/gzip"
"crypto/sha512" "crypto/sha512"
"errors" "errors"
"io/fs" "io/fs"
@@ -80,8 +79,8 @@ func TestTar(t *testing.T) {
"checksum/" + wantEncode + "/work": {Mode: fs.ModeDir | 0500}, "checksum/" + wantEncode + "/work": {Mode: fs.ModeDir | 0500},
"identifier": {Mode: fs.ModeDir | 0700}, "identifier": {Mode: fs.ModeDir | 0700},
"identifier/7OZ5ErCxUJyRnaaFvUKhTryjsJAoOBUR2MZpUB1DD57jRa09Xxsh9BUs0dM9z5uH": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantEncode)}, "identifier/snWp53xxNdx6cV5KSJqzyVWzLlTsFd8udOisIu8Rgxly09mGcxufYCoQ5CQrHDyZ": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantEncode)},
"identifier/paWdPW_BowV3345c4GP4xxSNgxVs_7F09m9m7OaH5XbyuI3dTGZ-kFPOXFbwgr5O": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantEncode)}, "identifier/v9DUj2R4YK_3ae0m9VuUYI-HJysDDCENu1k10thxioycRzFH1Qejw5bBGukm4IdL": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantEncode)},
"substitute": {Mode: fs.ModeDir | 0700}, "substitute": {Mode: fs.ModeDir | 0700},
@@ -104,8 +103,8 @@ func TestTar(t *testing.T) {
"checksum/" + wantExpandEncode + "/libedac.so": {Mode: fs.ModeSymlink | 0777, Data: []byte("/proc/nonexistent/libedac.so")}, "checksum/" + wantExpandEncode + "/libedac.so": {Mode: fs.ModeSymlink | 0777, Data: []byte("/proc/nonexistent/libedac.so")},
"identifier": {Mode: fs.ModeDir | 0700}, "identifier": {Mode: fs.ModeDir | 0700},
"identifier/1g2Tcg7pOJkZFxlKploBm4U0vIyMYbxDkcwwydwsF9BMs-w-knFJS41jnqOt16jT": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantExpandEncode)}, "identifier/1SuvgGltcsgqps9tWqjULG8RCdpx_6KVWXdsMd5xPKvdtysOxqpE-3bLu4j0WpGk": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantExpandEncode)},
"identifier/7OZ5ErCxUJyRnaaFvUKhTryjsJAoOBUR2MZpUB1DD57jRa09Xxsh9BUs0dM9z5uH": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantExpandEncode)}, "identifier/snWp53xxNdx6cV5KSJqzyVWzLlTsFd8udOisIu8Rgxly09mGcxufYCoQ5CQrHDyZ": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + wantExpandEncode)},
"substitute": {Mode: fs.ModeDir | 0700}, "substitute": {Mode: fs.ModeDir | 0700},
@@ -132,16 +131,7 @@ func checkTarHTTP(
if err := w.Close(); err != nil { if err := w.Close(); err != nil {
t.Fatalf("Close: error = %v", err) t.Fatalf("Close: error = %v", err)
} }
testdata = buf.String()
var zbuf bytes.Buffer
gw := gzip.NewWriter(&zbuf)
if _, err := gw.Write(buf.Bytes()); err != nil {
t.Fatalf("Write: error = %v", err)
}
if err := gw.Close(); err != nil {
t.Fatalf("Close: error = %v", err)
}
testdata = zbuf.String()
} }
testdataChecksum := func() pkg.Checksum { testdataChecksum := func() pkg.Checksum {
@@ -208,28 +198,19 @@ func checkTarHTTP(
defer newDestroyArtifactFunc(&tarDirType)(t, base, c) defer newDestroyArtifactFunc(&tarDirType)(t, base, c)
cureMany(t, c, []cureStep{ cureMany(t, c, []cureStep{
{"file", pkg.NewTar(pkg.NewDecompress(pkg.NewHTTPGet( {"file", pkg.NewTar(pkg.NewHTTPGet(
&client, &client,
"file:///testdata", "file:///testdata",
testdataChecksum, testdataChecksum,
), pkg.Gzip)), ignorePathname, want, pkg.WNew, nil},
{"directory", pkg.NewTar(pkg.NewDecompress(
&tarDir,
pkg.Gzip,
)), ignorePathname, want, pkg.WNew, nil}, )), ignorePathname, want, pkg.WNew, nil},
{"multiple entries", pkg.NewTar(pkg.NewDecompress( {"directory", pkg.NewTar(&tarDir), ignorePathname, want, pkg.WNew, nil},
&tarDirMulti,
pkg.Gzip, {"multiple entries", pkg.NewTar(&tarDirMulti), nil, nil, pkg.WNew, errors.New(
)), nil, nil, pkg.WNew, errors.New(
"input directory does not contain a single regular file", "input directory does not contain a single regular file",
)}, )},
{"bad type", pkg.NewTar(pkg.NewDecompress( {"bad type", pkg.NewTar(&tarDirType), nil, nil, pkg.WNew, errors.New(
&tarDirType,
pkg.Gzip,
)), nil, nil, pkg.WNew, errors.New(
"input directory does not contain a single regular file", "input directory does not contain a single regular file",
)}, )},
+1 -1
View File
@@ -55,7 +55,7 @@ func TestDispatch(t *testing.T) {
}), }),
}, },
}, true, []string{`{"kind":"fatal","message":"rejecting coldboot loop","error":"unique error 51966 injected by the test suite"} }, true, []string{`{"kind":"fatal","message":"rejecting coldboot loop","error":"unique error 51966 injected by the test suite"}
`, `{"kind":"inconsistent","message":"processed inconsistent uevent","error":{"fault":1,"event":{"action":"add","devpath":"\u0000","env":{"V":"\ufffd"},"seqnum":2,"subsystem":""},"object":{"state":1,"devpath":"\u0000","subsystem":"","env":{"V":"\ufffd"}}}} `, `{"kind":"inconsistent","message":"processed inconsistent uevent","error":{"fault":1,"event":{"action":"add","devpath":"\u0000","env":{"V":"` + "\ufffd" + `"},"seqnum":2,"subsystem":""},"object":{"state":1,"devpath":"\u0000","subsystem":"","env":{"V":"` + "\ufffd" + `"}}}}
`}, `dispatch: rejecting coldboot loop: unique error 51966 injected by the test suite `}, `dispatch: rejecting coldboot loop: unique error 51966 injected by the test suite
dispatch: processed inconsistent uevent: duplicate add event on devpath "\x00" dispatch: processed inconsistent uevent: duplicate add event on devpath "\x00"
`, nil}, `, nil},
+2 -2
View File
@@ -56,8 +56,8 @@ ln -s \
func init() { func init() {
const ( const (
version = "1.25.12" version = "1.25.14"
checksum = "XNrGD_boJl2-El_a_T3BuTcMin_WPoU-FGddcNG8dcXA8n2QuxZB7kaUaCWu60QX" checksum = "QKYjKzziCmD1eboU__Oi8VjqbPjaHrHAI9ceWyF3D9ORm7cPHN8muZuiGsoLKjCJ"
) )
meta := Metadata{ meta := Metadata{
Name: "go-bootstrap", Name: "go-bootstrap",
+1
View File
@@ -62,6 +62,7 @@ disable_test t4200-rerere
disable_test t5515-fetch-merge-logic disable_test t5515-fetch-merge-logic
disable_test t4124-apply-ws-rule disable_test t4124-apply-ws-rule
disable_test t3404-rebase-interactive disable_test t3404-rebase-interactive
disable_test t7527-builtin-fsmonitor
`; `;
check = [ check = [
@@ -3,18 +3,13 @@ package go {
website = "https://go.dev"; website = "https://go.dev";
anitya = 1227; anitya = 1227;
version# = "1.26.6"; version# = "1.27.0";
source = remoteTar { source = remoteTar {
url = "https://go.dev/dl/go"+version+".src.tar.gz"; url = "https://go.dev/dl/go"+version+".src.tar.gz";
checksum = "BJQz9rGJ7ElMsZGURH7lw48Hw0x88RwdQJpINMomtgGCMK3AtwGCxDRkLE9REh5r"; checksum = "Ookl2vP6KMfJuxaxX6nXZ1gnL43wZPl5GjpVsrI7IJiB4b3xr1PbnbYIOJ8v5jzG";
compress = gzip; compress = gzip;
}; };
patches = [
// https://go.dev/issue/77674
"746640.patch",
];
env = [ env = [
"CC=cc", "CC=cc",
"GOCACHE=/tmp/gocache", "GOCACHE=/tmp/gocache",
-29
View File
@@ -1,29 +0,0 @@
From 45929774c3d5c084cc478afba63c77cf67a68bd7 Mon Sep 17 00:00:00 2001
From: khr@golang.org <khr@golang.org>
Date: Wed, 18 Feb 2026 09:09:57 -0800
Subject: [PATCH] internal/runtime/gc/scan: require popcnt for x86
The GOAMD64=v1 test disables popcnt instructions, which is a feature
this package's amd64 assembly uses.
Fixes #77674
Change-Id: I7be9bb665838f5da50275f96ef3df398412bb44a
Reviewed-on: https://go-review.googlesource.com/c/go/+/746640
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Reviewed-by: Keith Randall <khr@google.com>
Auto-Submit: Keith Randall <khr@golang.org>
---
diff --git a/src/internal/runtime/gc/scan/scan_amd64.go b/src/internal/runtime/gc/scan/scan_amd64.go
index c03021c7d4..544b237770 100644
--- a/src/internal/runtime/gc/scan/scan_amd64.go
+++ b/src/internal/runtime/gc/scan/scan_amd64.go
@@ -39,4 +39,5 @@ var avx512ScanPackedReqsMet = cpu.X86.HasAVX512VL &&
cpu.X86.HasGFNI &&
cpu.X86.HasAVX512BITALG &&
cpu.X86.HasAVX512DQ && // for kmovb, see #79871
- cpu.X86.HasAVX512VBMI
+ cpu.X86.HasAVX512VBMI &&
+ cpu.X86.HasPOPCNT
+1 -1
View File
@@ -1,6 +1,6 @@
# #
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Linux/x86 6.18.44 Kernel Configuration # Linux/x86 6.18.45 Kernel Configuration
# #
CONFIG_CC_VERSION_TEXT="clang version 22.1.8" CONFIG_CC_VERSION_TEXT="clang version 22.1.8"
CONFIG_GCC_VERSION=0 CONFIG_GCC_VERSION=0
+1 -1
View File
@@ -1,6 +1,6 @@
# #
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Linux/arm64 6.18.44 Kernel Configuration # Linux/arm64 6.18.45 Kernel Configuration
# #
CONFIG_CC_VERSION_TEXT="clang version 22.1.8" CONFIG_CC_VERSION_TEXT="clang version 22.1.8"
CONFIG_GCC_VERSION=0 CONFIG_GCC_VERSION=0
+2 -2
View File
@@ -3,11 +3,11 @@ package kernel-source {
website = "https://kernel.org"; website = "https://kernel.org";
exclude = true; exclude = true;
version# = "6.18.44"; version# = "6.18.45";
output = remoteTar { output = remoteTar {
url = "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/"+ url = "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/"+
"snapshot/linux-"+version+".tar.gz"; "snapshot/linux-"+version+".tar.gz";
checksum = "yNPGMl3A-EgU6LgD37PAcXIa9iUtP-AmoJuQozfGRSq6Eg1Eq4fdbpKy3iWewU9_"; checksum = "yI15OXBcDSWVnozq7ilLiiKMbn2xGIuZWa73luYAjcHK12e8R9n_n_am43hnhNAZ";
compress = gzip; compress = gzip;
}; };
} }
+1 -1
View File
@@ -1,6 +1,6 @@
# #
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Linux/riscv 6.18.44 Kernel Configuration # Linux/riscv 6.18.45 Kernel Configuration
# #
CONFIG_CC_VERSION_TEXT="clang version 22.1.8" CONFIG_CC_VERSION_TEXT="clang version 22.1.8"
CONFIG_GCC_VERSION=0 CONFIG_GCC_VERSION=0
+2 -2
View File
@@ -3,12 +3,12 @@ package libevdev {
website = "https://www.freedesktop.org/software/libevdev"; website = "https://www.freedesktop.org/software/libevdev";
anitya = 20540; anitya = 20540;
version# = "1.13.6"; version# = "1.13.7";
source = remoteGitLab { source = remoteGitLab {
domain = "gitlab.freedesktop.org"; domain = "gitlab.freedesktop.org";
suffix = "libevdev/libevdev"; suffix = "libevdev/libevdev";
ref = "libevdev-"+version; ref = "libevdev-"+version;
checksum = "HJbLafbpqPaKvQitt0t484DiHPeg3t_CNv-45MluNUT66vYIdF7FSfrK0vSpUCdi"; checksum = "zmN9kkbYkrwr1YdzeMxlZIuiMkRQ9-mZ9DTcBufMckYWUq2IutSt9ZtRE4Agl75D";
}; };
exec = meson { exec = meson {
+2 -2
View File
@@ -3,12 +3,12 @@ package libpsl {
website = "https://rockdaboot.github.io/libpsl"; website = "https://rockdaboot.github.io/libpsl";
anitya = 7305; anitya = 7305;
version# = "0.23.2"; version# = "0.23.3";
source = remoteGitHubRelease { source = remoteGitHubRelease {
suffix = "rockdaboot/libpsl"; suffix = "rockdaboot/libpsl";
tag = version; tag = version;
name = "libpsl-"+version+".tar.gz"; name = "libpsl-"+version+".tar.gz";
checksum = "-XIKaQK0QoyzXpwezyvGzDdIBCUTqPyd8jU6axIusrnma-qsYxhLUO1Oycwcelr2"; checksum = "DlEm2FHGDe3KaZxWxTgApEVIvxN5nTVs5-XsfomnO9a0EfsS46l7hZZPKGCS2uIf";
compress = gzip; compress = gzip;
}; };
+2 -2
View File
@@ -4,12 +4,12 @@ package mesa {
anitya = 1970; anitya = 1970;
latest = anityaFallback; latest = anityaFallback;
version# = "26.2.0"; version# = "26.2.1";
source = remoteGitLab { source = remoteGitLab {
domain = "gitlab.freedesktop.org"; domain = "gitlab.freedesktop.org";
suffix = "mesa/mesa"; suffix = "mesa/mesa";
ref = "mesa-"+version; ref = "mesa-"+version;
checksum = "UPnIdpo5wUsE938GXY-YyYDzfF62enRoEzCYRyLLPvzBhBbP4wZ8nDiKsjivcs5v"; checksum = "WZYAysQFZt8KMFAxQheKFZHarR1isgOeSw4LyfqAcmaHwXMCLiVao6eGuEuhJTJv";
}; };
exec = meson { exec = meson {
+2 -2
View File
@@ -17,7 +17,7 @@ package nss {
website = "https://firefox-source-docs.mozilla.org/security/nss/index.html"; website = "https://firefox-source-docs.mozilla.org/security/nss/index.html";
anitya = 2503; anitya = 2503;
version# = "3.126.1"; version# = "3.127";
source = remoteGitHub { source = remoteGitHub {
suffix = "nss-dev/nss"; suffix = "nss-dev/nss";
tag = "NSS_"+join { tag = "NSS_"+join {
@@ -28,7 +28,7 @@ package nss {
}; };
sep = "_"; sep = "_";
}+"_RTM"; }+"_RTM";
checksum = "3J7o7P3KlE8Cen4fzHLwvDKA1rrcJ84yBTniJHcIBw59LPT-7Q0NxL2CC4BKGW3F"; checksum = "lzeKROXahSWqIgxYtm29lTxIfo-nmNYaS-cE-FFKp1C58wIBhmGhwVsRh-4xiQi7";
}; };
extra = [ nspr ]; extra = [ nspr ];
+4 -2
View File
@@ -5,12 +5,14 @@ package openssl {
// strange malformed tags treated as pre-releases in Anitya // strange malformed tags treated as pre-releases in Anitya
latest = anityaFallback; latest = anityaFallback;
version# = "4.0.1"; block = "python";
version# = "3.6.2";
source = remoteGitHubRelease { source = remoteGitHubRelease {
suffix = "openssl/openssl"; suffix = "openssl/openssl";
tag = "openssl-"+version; tag = "openssl-"+version;
name = "openssl-"+version+".tar.gz"; name = "openssl-"+version+".tar.gz";
checksum = "8FLTB0bZAKyjpmgO4kU5Og-XuSb2_77fxDfEbpOMPKTnIWxQDo7n8e4UdUuc2YIc"; checksum = "jH004dXTiE01Hp0kyShkWXwrSHEksZi4i_3v47D9H9Uz9LQ1aMwF7mrl2Tb4t_XA";
compress = gzip; compress = gzip;
}; };
+8 -8
View File
@@ -6,11 +6,11 @@ package python {
// too many inputs; early variant available // too many inputs; early variant available
bootstrap = false; bootstrap = false;
version# = "3.15.0"; version# = "3.14.7";
source = remoteTar { source = remoteTar {
url = "https://www.python.org/ftp/python/"+version+ url = "https://www.python.org/ftp/python/"+version+
"/Python-"+version+"rc1.tgz"; "/Python-"+version+".tgz";
checksum = "llRZNKCqDOxnAiLU-2bSneXZcssNtdzG9bBgfyfiGchLSbT7gNvls4ekdmMklgKl"; checksum = "hXLV7_BGEFZvQ04DNIlk5IdoRZd9DkQt4abKhc8rWsLXHTeSboAWTewJ6l0-LxVz";
compress = gzip; compress = gzip;
}; };
patches = [ "zipfile-no-default-strict_timestamps.patch" ]; patches = [ "zipfile-no-default-strict_timestamps.patch" ];
@@ -179,7 +179,6 @@ package python-wheel {
tag = version; tag = version;
checksum = "h-UZQHS-NwB3b9YxYpJePR5cbDGZaKxz4bdhYjilWdQXAE46SV7A1CwZKzZcuZFh"; checksum = "h-UZQHS-NwB3b9YxYpJePR5cbDGZaKxz4bdhYjilWdQXAE46SV7A1CwZKzZcuZFh";
}; };
patches = [ "wheel-test-colour.patch" ];
exec = pip { exec = pip {
install = true; install = true;
@@ -198,11 +197,11 @@ package python-vcs-versioning {
website = "https://setuptools-scm.readthedocs.io/en/latest"; website = "https://setuptools-scm.readthedocs.io/en/latest";
anitya = 389421; anitya = 389421;
version# = "2.2.4"; version# = "2.3.1";
source = remoteGitHub { source = remoteGitHub {
suffix = "pypa/setuptools-scm"; suffix = "pypa/setuptools-scm";
tag = "vcs-versioning-v"+version; tag = "vcs-versioning-v"+version;
checksum = "HJ63LCMRd-KkXI1dWwBzK1AwkmjNZGISbhaJ7TbAlbI2eC55aX6i640n3Rt4RUMY"; checksum = "rcbu8LlWlY6jmhC95pfnEKgGQuRxHY8_Pvo2jjmlJWSlyHSs1tFIRQ_FoMfi8YXo";
}; };
env = [ env = [
@@ -450,11 +449,11 @@ package python-pygments {
website = "https://pygments.org"; website = "https://pygments.org";
anitya = 3986; anitya = 3986;
version# = "2.20.0"; version# = "2.21.0";
source = remoteGitHub { source = remoteGitHub {
suffix = "pygments/pygments"; suffix = "pygments/pygments";
tag = version; tag = version;
checksum = "L-2P6vn7c_CNZYliE5CJAWLxO1ziDQVVkf8bnZbHj8aSCQ43oWv11wC9KzU9MeCa"; checksum = "a9lSiHKLk_wA_rhaSaegYFhslE7L8GdqtIsbU3nbAk9A0xxkw0KvZOSNle4FZENu";
}; };
exec = pip { exec = pip {
@@ -569,6 +568,7 @@ package python-mako {
checksum = "OYVVx9PxvZLSvA1C-lX-xElq5TvThYRElzDDKUHYU1tZMM7XlCtHSMGmdgqlbYxd"; checksum = "OYVVx9PxvZLSvA1C-lX-xElq5TvThYRElzDDKUHYU1tZMM7XlCtHSMGmdgqlbYxd";
}; };
early = "rm test/test_exceptions.py";
exec = pip {}; exec = pip {};
inputs = [ inputs = [
@@ -1,21 +0,0 @@
diff --git a/tests/commands/util.py b/tests/commands/util.py
index 5d139d9..d18d103 100644
--- a/tests/commands/util.py
+++ b/tests/commands/util.py
@@ -2,7 +2,7 @@ from __future__ import annotations
import sys
from io import StringIO
-from os import PathLike
+from os import PathLike, environ
from subprocess import CalledProcessError
from unittest.mock import patch
@@ -10,6 +10,7 @@ import pytest
from wheel._commands import main
+environ["NO_COLOR"] = "1"
def run_command(
command: str, *args: str | PathLike, catch_systemexit: bool = True
+2 -2
View File
@@ -3,11 +3,11 @@ package strace {
website = "https://strace.io"; website = "https://strace.io";
anitya = 4897; anitya = 4897;
version# = "7.1"; version# = "7.2";
source = remoteGit { source = remoteGit {
url = "https://github.com/strace/strace.git"; url = "https://github.com/strace/strace.git";
tag = "v"+version; tag = "v"+version;
checksum = "vGwgAAi_mGsoICDYHK9Vhbn2hBR0JIoUEkCKhLA2JHFg8NFvGsYEWGIafdnsN0_v"; checksum = "_vIfkx9C8Q-F4Q1WE1jBMPFeDv3f2h-L1BTCokKqw3G993H2i5NYtBArIDo2Sx_O";
}; };
patches = [ patches = [
"tests-musl.patch", "tests-musl.patch",
+2 -5
View File
@@ -3,11 +3,11 @@ package tamago {
website = "https://github.com/usbarmory/tamago-go"; website = "https://github.com/usbarmory/tamago-go";
anitya = 388872; anitya = 388872;
version# = "1.26.5"; version# = "1.27.0";
source = remoteGitHub { source = remoteGitHub {
suffix = "usbarmory/tamago-go"; suffix = "usbarmory/tamago-go";
tag = "tamago-go"+version; tag = "tamago-go"+version;
checksum = "QESl24dveM1jniFx_PkPGbxQe7daHcnMlMQXC1MXz6EEmxSeYyrI-tMLi0NEu8QE"; checksum = "PV8a5fccqZifVUG7HJ6jTFk_0x6YIu1BSgYByCdJoTllm4NuQc9-Ngk_nuS7Nb3i";
}; };
env = [ env = [
@@ -29,9 +29,6 @@ chmod -R +w ..
sed -i \ sed -i \
's,/lib/ld-musl-` + linuxArch + `.so.1,/system/bin/linker,' \ 's,/lib/ld-musl-` + linuxArch + `.so.1,/system/bin/linker,' \
cmd/link/internal/` + arch + `/obj.go cmd/link/internal/` + arch + `/obj.go
sed -i \
's/cpu.X86.HasAVX512VBMI/& \&\& cpu.X86.HasPOPCNT/' \
internal/runtime/gc/scan/scan_amd64.go
rm \ rm \
os/root_unix_test.go \ os/root_unix_test.go \
+4 -4
View File
@@ -695,12 +695,12 @@ package xserver {
website = "https://gitlab.freedesktop.org/xorg/xserver"; website = "https://gitlab.freedesktop.org/xorg/xserver";
anitya = 5250; anitya = 5250;
version# = "21.1.24"; version# = "26.0.99.901";
source = remoteGitLab { source = remoteGitLab {
domain = "gitlab.freedesktop.org"; domain = "gitlab.freedesktop.org";
suffix = "xorg/xserver"; suffix = "xorg/xserver";
ref = "xorg-server-"+version; ref = "xorg-server-"+version;
checksum = "ueBiwKIOHZkSmJPzxAeze_SJHt4QxEHQTk1kMkic-GYxC7Fs41ckwgVzcwr2N3ca"; checksum = "2Liwqj-tu_NuD8BuWZR0PyYVJ_A0nj_sgx-LZWtdVpKAKQHtN-dSWCl-IPVOlcHG";
}; };
exec = meson { exec = meson {
@@ -773,12 +773,12 @@ package xwayland {
website = "https://gitlab.freedesktop.org/xorg/xserver"; website = "https://gitlab.freedesktop.org/xorg/xserver";
anitya = 180949; anitya = 180949;
version# = "24.1.13"; version# = "26.0.99.901";
source = remoteGitLab { source = remoteGitLab {
domain = "gitlab.freedesktop.org"; domain = "gitlab.freedesktop.org";
suffix = "xorg/xserver"; suffix = "xorg/xserver";
ref = "xwayland-"+version; ref = "xwayland-"+version;
checksum = "dZpEGlcPJ72TBCtnR1mvquvN4iUypGvGJ4tN9hpa-ljux28EkSCQRlQHLPRijz36"; checksum = "Vgtnwme2HU3CCeLE_xNScV_uJ55kPMremaOyVWRUFaRpwpaOQxsNB2fde_9Rx5zm";
}; };
bin = [ "bash" ]; bin = [ "bash" ];
+6 -6
View File
@@ -7,11 +7,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780361225, "lastModified": 1787146702,
"narHash": "sha256-wnV9ttf4fPWNonBIQmvlrSlNpQYgx5HgWWd007mwIFA=", "narHash": "sha256-YbRcLdU/yK4gWsQg7V8WTKZHfXL33g8+wSFUX3wyevs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "e28654b71096e08c019d4861ca26acb646f583d8", "rev": "173b7e8d40fdc8c296a9c99854314f17a3a1704c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -23,11 +23,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1780453794, "lastModified": 1787101114,
"narHash": "sha256-bXMRa9VTsHSPXL4Cw8R6JJLQeY3Y/IP4+YJCYVmQ7FY=", "narHash": "sha256-gwrPcFf/rDjHPaVflbDZ040ZDmBTRj/7+s8ZmE2SaIM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "6b316287bae2ee04c9b93c8c858d930fd07d7338", "rev": "b18a4b905f8d028dc4476412e6d6891728695379",
"type": "github" "type": "github"
}, },
"original": { "original": {
+2 -2
View File
@@ -99,7 +99,7 @@
hakurei = pkgs.pkgsStatic.callPackage ./package.nix { hakurei = pkgs.pkgsStatic.callPackage ./package.nix {
inherit (pkgs) inherit (pkgs)
# passthru.buildInputs # passthru.buildInputs
go_1_26 go_1_27
clang clang
# nativeBuildInputs # nativeBuildInputs
@@ -180,7 +180,7 @@
let let
# this is used for interactive vm testing during development, where tests might be broken # this is used for interactive vm testing during development, where tests might be broken
package = self.packages.${pkgs.stdenv.hostPlatform.system}.hakurei.override { package = self.packages.${pkgs.stdenv.hostPlatform.system}.hakurei.override {
buildGo126Module = previousArgs: pkgs.pkgsStatic.buildGo126Module (previousArgs // { doCheck = false; }); buildGo127Module = previousArgs: pkgs.pkgsStatic.buildGo127Module (previousArgs // { doCheck = false; });
}; };
in in
{ {
+6 -6
View File
@@ -1,7 +1,7 @@
{ {
lib, lib,
stdenv, stdenv,
buildGo126Module, buildGo127Module,
makeBinaryWrapper, makeBinaryWrapper,
xdg-dbus-proxy, xdg-dbus-proxy,
pkg-config, pkg-config,
@@ -20,7 +20,7 @@
fuse3, fuse3,
# for passthru.buildInputs # for passthru.buildInputs
go_1_26, go_1_27,
clang, clang,
xorgproto, xorgproto,
@@ -32,7 +32,7 @@
withStatic ? stdenv.hostPlatform.isStatic, withStatic ? stdenv.hostPlatform.isStatic,
}: }:
buildGo126Module rec { buildGo127Module rec {
pname = "hakurei"; pname = "hakurei";
version = with lib.strings; removePrefix "v" (trim (builtins.readFile ../cmd/dist/VERSION)); version = with lib.strings; removePrefix "v" (trim (builtins.readFile ../cmd/dist/VERSION));
@@ -55,7 +55,7 @@ buildGo126Module rec {
]; ];
nativeBuildInputs = [ nativeBuildInputs = [
go_1_26 go_1_27
pkg-config pkg-config
wayland-scanner wayland-scanner
]; ];
@@ -126,10 +126,10 @@ buildGo126Module rec {
''; '';
passthru = { passthru = {
go = go_1_26; go = go_1_27;
targetPkgs = [ targetPkgs = [
go_1_26 go_1_27
clang clang
xorgproto xorgproto
util-linux util-linux
+2
View File
@@ -46,8 +46,10 @@ def wait_for_window(pattern):
def collect_state_ui(name): def collect_state_ui(name):
swaymsg(f"exec hakurei ps > '/tmp/{name}.ps'") swaymsg(f"exec hakurei ps > '/tmp/{name}.ps'")
machine.wait_for_file(f"/tmp/{name}.ps")
machine.copy_from_vm(f"/tmp/{name}.ps", "") machine.copy_from_vm(f"/tmp/{name}.ps", "")
swaymsg(f"exec hakurei --json ps > '/tmp/{name}.json'") swaymsg(f"exec hakurei --json ps > '/tmp/{name}.json'")
machine.wait_for_file(f"/tmp/{name}.json")
machine.copy_from_vm(f"/tmp/{name}.json", "") machine.copy_from_vm(f"/tmp/{name}.json", "")
machine.screenshot(name) machine.screenshot(name)