Michael Stapelberg
848ce3c054
pull in latest gokrazy/internal
2020-05-31 23:23:22 +02:00
Janis Streib
17bec15432
Added proof of concept TLS support ( #7 ) ( #53 )
...
If there is a certificate and key in /etc/ssl/gokrazy-web.{pem,key.pem},
the webinterface will serve and redirect to https.
2020-05-31 21:58:03 +02:00
Michael Stapelberg
a457d8e04a
start a userguide, with an entry about remote syslog
...
related to https://github.com/gokrazy/gokrazy/issues/51
2020-05-31 21:17:01 +02:00
Michael Stapelberg
9a6d5dfd7b
import website into main repository
...
related to https://github.com/gokrazy/gokrazy/issues/51
2020-05-31 20:29:57 +02:00
Michael Stapelberg
87609f10c7
switch from travis to GitHub actions
2020-05-30 20:33:51 +02:00
Michael Stapelberg
8c74716f04
pull in recent enough gokrazy/internal
2020-05-30 19:05:15 +02:00
Michael Stapelberg
2398e37f70
status: use partuuid-based path in mkfs instruction
...
fixes https://github.com/gokrazy/gokrazy/issues/12
2020-05-30 18:47:48 +02:00
Michael Stapelberg
b93a58e5c8
status: print module info details
...
fixes https://github.com/gokrazy/gokrazy/issues/59
2020-05-30 18:17:38 +02:00
Michael Stapelberg
32f88999da
set HOME=/perm/$basename when starting services
...
Previously, HOME was inherited from the environment of the init process, which
has HOME=/ set. Of course, / is not writable on gokrazy, so this change makes
things less strict and should therefore not break any deployments.
2020-05-27 18:50:52 +02:00
Michael Stapelberg
9e57e3cf2e
dhcp: make network interface name configurable
...
related to https://github.com/gokrazy/gokrazy/issues/57
2020-05-27 08:24:50 +02:00
Michael Stapelberg
c2116a79ed
README: FAT16B → SquashFS
...
related to #10
closes #56
2020-05-25 18:56:08 +02:00
Michael Stapelberg
7e02056689
status: include service status and GOARCH in HTTP headers
...
This will come in handy in https://github.com/gokrazy/breakglass
2020-05-25 09:29:58 +02:00
Michael Stapelberg
727ba0f371
serial console: also try /tmp/serial-busybox/ash
...
This path is provided by the github.com/gokrazy/serial-busybox package.
related to https://github.com/gokrazy/gokrazy/issues/54
2020-05-21 23:12:15 +02:00
Michael Stapelberg
f3445e01a9
fix switchRootPartition on non-PARTUUID installations
...
The first update always worked, but a subsequent update would not.
To manually switch an installation to PARTUUID, mount its boot partition and
replace the root= kernel parameter in cmdline.txt, like so:
/tmp/breakglass669384965 # mkdir boot
/tmp/breakglass669384965 # mount /dev/mmcblk0p1 boot
/tmp/breakglass669384965 # cat boot/cmdline.txt
console=ttyAMA0,115200 root=/dev/mmcblk0p2 init=/gokrazy/init elevator=deadline rootwait
/tmp/breakglass669384965 # sed -i 's,root=/dev/mmcblk0p,root=PARTUUID=471cad93-0,g' boot/cmdline.txt
/tmp/breakglass669384965 # cat boot/cmdline.txt
console=ttyAMA0,115200 root=PARTUUID=471cad93-02 init=/gokrazy/init elevator=deadline rootwait
/tmp/breakglass669384965 # umount boot
/tmp/breakglass669384965 # reboot
The PARTUUID= for your installation is printed by gokr-packer:
[…]
2020/05/01 10:05:34 write.go:366: writing MBR (LBAs: vmlinuz=51789, cmdline.txt=119561, PARTUUID=471cad93)
[…]
2020-05-01 10:06:17 +02:00
Michael Stapelberg
3a6c5f85d2
header: include model name on supported platforms
2020-04-08 15:24:36 +02:00
Michael Stapelberg
6bbd4a085c
pull in new-enough version of gokrazy/internal
2020-04-07 10:00:01 +02:00
Michael Stapelberg
3c0f8141ee
travis: switch to Go 1.14
2020-04-07 09:54:31 +02:00
Michael Stapelberg
057fc9dcb0
add /update/features handler for feature negotiation
...
related to https://github.com/gokrazy/gokrazy/issues/52
2020-04-07 09:52:12 +02:00
Michael Stapelberg
ffc8928d2e
update to new rootdev API
...
related to https://github.com/gokrazy/gokrazy/issues/52
2020-04-07 09:00:10 +02:00
Michael Stapelberg
6beb2e16aa
implement remote syslog as a platform feature
...
To configure, run the following command in an interactive shell (e.g. via
breakglass, or when mounting the permanent partition of the SD card on the
host):
mkdir /perm/remote_syslog
echo 10.0.0.76:514 > /perm/remote_syslog/target
I recommend using a (static) IP address for increased reliability, so that
remote syslog works even when DNS does not.
fixes #50
2019-12-10 22:15:42 +01:00
Michael Stapelberg
25d06ba514
gofmt GENERATED_bundled.go
2019-11-09 09:59:25 +01:00
Michael Stapelberg
09fbdb123e
bundle bootstrap, bootstrap-table and jquery assets
...
This way, the UI works even when the user is offline, which is handy for
router7.
2019-11-09 09:37:23 +01:00
Michael Stapelberg
520b8ca41d
dhcp: use SetReadDeadline, not SetDeadline
...
related to https://github.com/mdlayher/raw/issues/42
2019-03-21 09:16:44 +01:00
Michael Stapelberg
d5bd78d555
travis: test with go1.12
...
github.com/mdlayher/raw requires go1.12.
2019-03-04 17:47:55 +01:00
Michael Stapelberg
107f6fe098
start /perm/sh if it exists upon any byte on the serial console
...
This allows debugging when the network is down.
2019-02-19 07:46:07 +01:00
Michael Stapelberg
4af394b99e
README: use sdx to prevent mistakes
2019-02-07 14:39:40 +01:00
Michael Stapelberg
7fe27df5ed
listeners: support github.com/gokrazy/gdns, export IsInPrivateNet
2019-01-16 21:01:01 +01:00
Michael Stapelberg
856c5b62d4
dhcp: request domain name, too
2019-01-01 17:17:02 +01:00
Michael Stapelberg
25dc781a8e
Set Access-Control-Allow-Origin header to load external CSS
...
With Chrome 70, I didn’t get the bootstrap CSS files anymore.
2018-12-26 16:15:14 +01:00
Michael Stapelberg
2216841c80
travis: update to more recent Go version
2018-11-21 08:49:51 +01:00
Michael Stapelberg
3af32e1d14
dhcp: resolve a few TODOs in comments
2018-11-21 08:46:16 +01:00
Michael Stapelberg
14287515bc
dhcp: switch to github.com/rtr7/dhcp4
...
All existing DHCPv4 packages I looked at were unappealing for one reason or
another, so we’re now using a little helper to glue github.com/google/gopacket
and github.com/mdlayher/raw together, which suffices for our use-case and gives
us more control.
2018-11-21 08:43:49 +01:00
Michael Stapelberg
a6ce446055
format GENERATED_bundled.go with newer gofmt
2018-11-01 18:44:10 +01:00
Michael Stapelberg
63803ab95e
update listeners when netlink reports an address change
...
related to issue #21
2018-11-01 18:41:57 +01:00
Michael Stapelberg
5fb3d517ed
listeners: improve logging
2018-11-01 18:41:55 +01:00
Michael Stapelberg
99287f68e3
update rootRe for running in user-mode linux
2018-11-01 17:54:23 +01:00
Michael Stapelberg
389a515555
README: update to reflect quickstart
...
https://gokrazy.org/quickstart.html
2018-11-01 17:07:53 +01:00
Tobias Klauser
b6086c6f88
reboot: use KexecFileLoad and KEXEC_* from golang.org/x/sys/unix ( #42 )
...
The KexecFileLoad syscall wrapper and the KEXEC_* constants were added
to golang.org/x/sys/unix. Use them instead of open-coding them.
2018-10-05 18:05:53 +02:00
Michael Stapelberg
1c16b3b4eb
serve favicon.ico
2018-07-15 18:32:46 +02:00
Michael Stapelberg
504f06b15f
issue template: add missing *
2018-07-15 17:24:03 +02:00
Michael Stapelberg
6ac0eb2ced
add issue template asking for the hardware target
2018-07-15 17:23:07 +02:00
Michael Stapelberg
fc8dd9e2f2
reboot: use cmdline from boot/cmdline.txt
...
For bootonly updates, switching to the inactive root partition is incorrect.
2018-07-15 10:40:19 +02:00
Michael Stapelberg
9770d4408f
move root device finding function to internal/rootdev
2018-07-14 23:37:12 +02:00
Michael Stapelberg
d8206c507c
/update/mbr: strip p suffix from mmcblk0p
2018-07-13 23:53:46 +02:00
Michael Stapelberg
835dae6a18
add randomd (carries entropy across restarts)
2018-07-13 23:44:47 +02:00
Michael Stapelberg
24c8ad07b5
streamRequestTo: call f.Sync()
...
When calling reboot shortly after /update/*, the kernel should flush its cache,
but if you’re not calling reboot, it would be good to persist the data on disk
nevertheless.
2018-07-13 23:16:26 +02:00
Michael Stapelberg
0f8d40d7f6
add /update/mbr
2018-07-12 09:27:32 +02:00
Michael Stapelberg
c74265523b
implement XSRF/CSRF protection for /stop and /restart
...
While stopping/restarting processes seems like a nuisance at best, it’s good
style to prevent these attacks.
This commit the Double-Submit Cookie protection, which seems appropriate for our
architecture and demands. See also:
https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet#Double_Submit_Cookie
2018-06-25 18:38:08 +02:00
Michael Stapelberg
7dc7a36757
supervise: refactor to use one HTTP handler
2018-06-25 18:27:23 +02:00
Michael Stapelberg
9a14ab0d8d
dhcp: add note to prevent future mistakes
2018-06-22 09:02:53 +02:00