Our great sponsors
-
router7
router7 is a small home internet router completely written in Go. It is implemented as a gokrazy appliance.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
u-root
A fully Go userland with Linux bootloaders! u-root can create a one-binary root file system (initramfs) containing a busybox-like set of tools written in Go.
-
piku
The tiniest PaaS you've ever seen. Piku allows you to do git push deployments to your own servers.
-
ground-init
Install a Linux machine locally with something that is almost, but not quite, cloud-init
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
I'm also a fan of router7[0] which is based on gokrazy. I'd love to build my own router like it some day.
[0] https://router7.org/
What a coincidence! I've just been playing with Gokrazy a couple weeks ago, and just kept thinking "this is so cool". If you're building some sort of an appliance, and want the least amount of reliance on / hassle maintaining the base OS, it definitely is a viable choice.
It can also run programs that are not written in go, by using a little neat hack to build/embed a binary inside a Go package; this is e.g. how Gokrazy sets up persistent storage: https://github.com/gokrazy/mkfs
I don't think it's for everyone; if you're relying on your base OS / package manager for a lot of stuff, or just want to run Docker containers, I think there are simpler/better ways to set things up. But it's absolutely great at what it's made for; doubly so with the Raspberry Pi's finally being back in stock.
I never had any serious issue with SD cards since the Pi 2B (and I've kept Pis running for years).
Anyway, for those wanting to deploy more generic apps, that is why I initially wrote https://github.com/piku/piku - you still have to flash the OS (and rpi-imager does that with sane defaults these days), but once you're done you have Heroku-like deployments for any language runtime you install on the Pi.
I also have https://github.com/rcarmo/ground-init, a cloud-init like shim that simplifies setting up machines (I'm a big fan of cloud-init, but since Raspbian doesn't support it and Ubuntu on ARM requires some fiddling to make it work I decided it wasn't too hard to roll my own).
(I probably should look into glueing that into rpi-imager, but there is are only so many hours in the day...)
I never had any serious issue with SD cards since the Pi 2B (and I've kept Pis running for years).
Anyway, for those wanting to deploy more generic apps, that is why I initially wrote https://github.com/piku/piku - you still have to flash the OS (and rpi-imager does that with sane defaults these days), but once you're done you have Heroku-like deployments for any language runtime you install on the Pi.
I also have https://github.com/rcarmo/ground-init, a cloud-init like shim that simplifies setting up machines (I'm a big fan of cloud-init, but since Raspbian doesn't support it and Ubuntu on ARM requires some fiddling to make it work I decided it wasn't too hard to roll my own).
(I probably should look into glueing that into rpi-imager, but there is are only so many hours in the day...)