Timmy Welch
b8fc58bd9f
Add support for defining package capabilities
gokrazy CI / CI (macos-latest) (push) Has been cancelled
gokrazy CI / CI (ubuntu-latest) (push) Has been cancelled
gokrazy CI / CI (windows-latest) (push) Has been cancelled
2025-12-28 14:51:38 -08:00
Michael Stapelberg
ba6a8936f4
packer: do not check for HTTP→HTTPS redirect
...
This check was broken: it tried to construct a http URL
by changing the updateBaseUrl schema instead of constructing
such a URL based on the configured HTTPPort.
I also don’t think this check is useful:
HTTPS will be used for updates regardless of the check.
Even if an attacker intercepted HTTP traffic and removed the redirect,
that has no bearing on the update, so why bother checking.
One thing the check (implicitly) did is the required fallback
on initial installation when --insecure is specified.
We now solve that by falling back from HTTPS to HTTP explicitly
(only when --insecure is specified, of course).
related to https://github.com/gokrazy/tools/pull/94
2025-12-09 17:11:22 +01:00
Michael Stapelberg
0daf1b1ae4
packer: stop using tlsflag global state
2025-12-08 21:32:59 +01:00
Michael Stapelberg
8320e69ccc
packer: move error check closer to error assignment
2025-12-08 20:58:14 +01:00
Michael Stapelberg
0a82ebcb52
remove stale comment
...
git commit 87444dca50 accidentally
removed the code (partuuid = 0), but not the comment.
2025-12-08 20:57:45 +01:00
Michael Stapelberg
715673f4b5
packer: clean up sbomHook hack
2025-12-06 21:54:52 +01:00
Michael Stapelberg
2848fa1a69
packer: move findPackageFiles to packerprepare.go
2025-12-06 21:38:46 +01:00
Michael Stapelberg
ab66901132
packer: move find* to packerprepare.go
2025-12-06 21:37:13 +01:00
Michael Stapelberg
0bb33e2ae8
packer: move addToFileInfo to write.go
2025-12-06 21:35:56 +01:00
Michael Stapelberg
6ae03bee7a
packer: move countingWriter to packerwrite.go
2025-12-06 21:32:21 +01:00
Michael Stapelberg
4fab9e7759
packer: move find* to packerprepare.go
2025-12-06 21:28:53 +01:00
Michael Stapelberg
cfba731eae
packer: move partitionPath to packerwrite.go
2025-12-06 21:23:36 +01:00
Michael Stapelberg
bd1faa7647
packer: move overwrite{File,Device} to packerwrite.go
2025-12-06 21:21:00 +01:00
Michael Stapelberg
3def6ed054
packer: move printHowToInteract to packerwrite.go
2025-12-06 21:17:15 +01:00
Michael Stapelberg
8b448cc312
packer: move update into packerupdate.go
2025-12-06 21:16:38 +01:00
Michael Stapelberg
df53492c98
packer: move write into packerwrite.go
2025-12-06 21:14:44 +01:00
Michael Stapelberg
f5ddd27c7e
packer: move build into packerbuild.go
2025-12-06 21:12:44 +01:00
Michael Stapelberg
23ac917f5b
packer: move prepare into packerprepare.go
2025-12-06 21:11:31 +01:00
Michael Stapelberg
485405edac
cleanup: remove unused parameters
2025-12-06 21:09:00 +01:00
Michael Stapelberg
45b2b940f6
cleanup: move write{Boot,Root}File next to write{Boot,Root}
2025-12-06 21:04:34 +01:00
Michael Stapelberg
67382a6dbe
cleanup: move kernel GOARCH validation code into its own file
2025-12-06 20:59:01 +01:00
Michael Stapelberg
b513356080
refactor: split printHowToInteract into its own method
...
Also remove duplicate URL construction code
2025-12-06 20:55:30 +01:00
Michael Stapelberg
cbfacd97a6
refactor: split logicUpdate into a separate method
2025-12-06 20:42:09 +01:00
Michael Stapelberg
1921f918ee
cleanup: inline programName now that the old packer is gone
2025-12-06 20:23:57 +01:00
Michael Stapelberg
9e3ab11076
packer: add test for losing HTTPS certificates
...
related to https://github.com/gokrazy/tools/pull/68
2025-12-06 08:49:22 +01:00
julienrbrt
9c9a33515b
fix partuuid probing with --insecure after losing HTTPS certificates ( #68 )
2025-12-06 08:48:38 +01:00
Michael Stapelberg
52cab9f145
packer: stop using updateflag global state
...
related to https://github.com/gokrazy/tools/pull/68
2025-12-06 08:37:24 +01:00
Michael Stapelberg
91c487c959
packer: use HTTPS client despite -insecure (post-update) (+test)
...
While adding the integration test for
https://gokrazy.org/userguide/tls-for-untrusted-networks/ ,
I noticed that the packer does not actually successfully complete
the initial HTTPS deployment (where -insecure is used).
After writing the image to disk and rebooting, the packer was stuck at:
device not yet reachable: Get "https://localhost:9080/ ": http:
server gave HTTP response to HTTPS client
related to https://github.com/gokrazy/tools/pull/94
2025-11-29 12:39:22 +01:00
Michael Stapelberg
50ceea79c7
internal/packer: apply BootloaderExtraEEPROM
...
related to https://github.com/gokrazy/gokrazy/issues/338
2025-11-16 19:09:52 +01:00
Michael Stapelberg
57f559232c
packer: eeprom: only write vl805-*.bin if present (Pi 4)
...
The rpi5-eeprom package no longer contains vl805, which is Pi 4-specific.
related to https://github.com/gokrazy/gokrazy/issues/332
2025-11-16 09:57:09 +01:00
Michael Stapelberg
2f0aac76a0
packer: include timestamp (ts: unixtime) in firmware .sig files
...
Otherwise the Pi 5 firmware will default to a timestamp of 0
and skip the update always.
related to https://github.com/gokrazy/gokrazy/issues/332
2025-11-16 09:08:03 +01:00
Michael Stapelberg
9a9519186b
integration: add 'gok update' test
gokrazy CI / CI (macos-latest) (push) Has been cancelled
gokrazy CI / CI (ubuntu-latest) (push) Has been cancelled
gokrazy CI / CI (windows-latest) (push) Has been cancelled
2025-10-03 19:12:17 +02:00
Michael Stapelberg
5675dbb2eb
packer: set Accept header (request), not Content-Type (response)
2025-10-03 19:11:55 +02:00
Michael Stapelberg
19d09ffb32
switch from breml/rootcerts to x/crypto fallback bundle
...
related to https://github.com/golang/go/issues/69898
2025-09-12 09:34:42 +02:00
Michael Stapelberg
ab76ef531d
update to latest gokrazy/updater (now needs a context)
2025-06-01 08:57:36 +02:00
Michael Stapelberg
5b15ffbd42
packer: move unix-specific code into build tag guarded files
...
related to https://github.com/gokrazy/tools/issues/89
2025-05-29 16:17:58 +02:00
Michael Stapelberg
105d190cbc
internal/packer: introduce Pack.Env (with a logger) and log to it
...
related to https://github.com/gokrazy/tools/issues/91
2025-05-29 15:26:31 +02:00
Michael Stapelberg
fc2e1562e8
packer: include KernelExtraArgs in the kernel cmdline
...
related to https://github.com/gokrazy/gokrazy/issues/312
2025-05-20 23:01:12 +02:00
Michael Stapelberg
97ed031a8e
packer: refactor write phase out of logic()
2025-04-17 22:59:29 +02:00
Michael Stapelberg
e1ed8d681f
packer: refactor build phase out of logic()
2025-04-17 22:57:40 +02:00
Michael Stapelberg
4868f92932
packer: refactor preparation phase out of logic()
2025-04-17 22:48:39 +02:00
Michael Stapelberg
ff72417a88
packer: add missing error assignment
2025-04-17 22:36:41 +02:00
Michael Stapelberg
9a554ea21e
check whether partitions are mounted early on, improve error message
...
related to https://github.com/gokrazy/gokrazy/discussions/308
2025-04-17 22:30:32 +02:00
Michael Stapelberg
640a6ea131
clearly label errors as such
...
related to https://github.com/gokrazy/gokrazy/discussions/308
2025-04-17 22:30:19 +02:00
Michael Stapelberg
4f97436034
implement Package.GoBuildEnvironment option
...
This allows setting e.g. CGO_ENABLED=1 for only specific programs.
2025-03-30 11:14:56 +02:00
Olivier Mengué #openToWork-Paris
b8127bc462
overwrite: show setfacl suggestion only on Linux ( #90 )
...
When acquiring access to partition the device, show message about use of
"setfacl" only on Linux. Not on Darwin where it is irrelevant.
2025-03-21 21:36:30 +01:00
thielepaul
b0f9892141
allow overriding basename in package config ( #86 )
...
related to https://github.com/gokrazy/gokrazy/issues/303
2025-02-27 20:28:19 +01:00
Michael Stapelberg
ceba4a4391
delete cmd/gokr-packer and cmd/gokr-updater
...
Users who need to use gokr-packer to migrate an existing setup to the
instance-centric config can use the following command to install the
last version before it was deleted:
go install github.com/gokrazy/tools/cmd/gokr-packer@703a8605028963d13a9d00815ccedfae13f0ce6d
fixes https://github.com/gokrazy/gokrazy/issues/301
2025-02-21 20:10:23 +01:00
Michael Stapelberg
703a860502
sbom: do not hash source files, record buildid of binaries instead
...
Before this commit, the mere presence of files with certain names in local
package directories would make the build fail (see nonmodulefiles_test.go).
With this commit, we now record the buildinfo and buildid of all built Go
programs of this gokrazy instance.
related to https://github.com/gokrazy/gokrazy/issues/297
fixes https://github.com/gokrazy/gokrazy/issues/299
2025-02-21 18:51:16 +01:00
Michael Stapelberg
1b3cfe35b3
packer: do not compute SBOM twice when writing a GAF file
...
related to https://github.com/gokrazy/gokrazy/issues/299
2025-02-21 17:53:55 +01:00