talkkonnect
gokrazy
| talkkonnect | gokrazy | |
|---|---|---|
| 1 | 23 | |
| 344 | 3,465 | |
| 1.5% | 0.2% | |
| 8.0 | 7.7 | |
| 2 days ago | 11 days ago | |
| Go | JavaScript | |
| Mozilla Public License 2.0 | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
talkkonnect
gokrazy
-
Booting Linux in QEMU and Writing PID 1 in Go to Illustrate Kernel as Program
Gokrazy is a minimal linux distro that just boots into a go init program. You can run on a raspberry pi or pc. It has a little init system that just takes a path you normally use in `go run` and just runs them and restarts as needed. Its been a joy for me to play around with. Has A/B updates as well.
https://gokrazy.org/
-
My Ultimate Self-Hosting Setup
I don't have a very complex setup but I've been super happy with gokrazy for my rpis:
https://gokrazy.org/
OS upgrades are easy now and it's declarative but I don't have to learn Nix
-
How to optimize boot time in user space on a Raspberry Pi 4 / Boot2Qt
> What wins big is to remove useless stuff entirely.
This. And there's even a project (targeting mainly RasPi) that does just that: https://gokrazy.org
(And yes, you can also deploy code that wasn't written in Go, although it's quite clunky.)
-
Ask HN: What are you working on (August 2024)?
Been working on a small temperature and humidity sensor using cheap components and a Raspberry Pi Zero 2 W. Using https://gokrazy.org/ to turn it in to a little appliance.
I've gotten quite carried away with a web interface and custom on-disk (on-sd card?) storage format based on Facebook's Gorilla paper.
I've realised that where it'll be deployed it will only have access to a public guest WiFi, so a remote server hosting the dashboard makes sense. So now it sends the compressed time-series over a TCP connection to a server component, hoping to bypass WiFi captive portals. Might need to use UDP to make it look like DNS or perhaps NTP. I haven't tested it on-site yet.
It has been a very fun and rewarding project so far. Looking forward to deploying it and getting remote updates working if I can get it to work with Tailscale on the guest WiFi. If anyone has any tips on circumventing captive portals and sending really small amounts of data through, I'd love to hear it!
-
Considerations for a long-running Raspberry Pi
Switching to gokrazy[0] was the best thing I did for my Raspberry Pi uptimes. I think a lot of that is because it defaults to using read-only partitions so the common issue of SD cards falling over when you run apt upgrade no longer happens.
But I also think that gokrazy's simplicity and design helps it be just a solid, reliable foundation to build on top of.
[0]: https://gokrazy.org/
- Gokrazy – Go Appliances
-
Easylkb: Easy Linux Kernel Builder
The idea there sounds a lot like https://gokrazy.org/, which builds a minimal go userland, wrapping one or more user provided go applications, and bundles in a linux kernel.
Targets mostly at single board computers, and I think it downloads pre-built kernels (and bootloaters if needed), rather than trying to build them directly, since getting a working cross compilation toolchain set up and plumbed into the kernel compilation process is still a pain.
I've personally only used yocto/open-embedded for that which does nicely handle building the cross-compilation toolchain, kernel image, and modules. But it is kinda overkill for that task, being designed to build a whole userland too.
- An Overview of Nix in Practice
- Gokrazy Go (Golang) Appliances
-
Writing an OS in Go: The Bootloader
reminds me of https://github.com/gokrazy/gokrazy which does similar things.
What are some alternatives?
gentoo-rpi-64-bit - Building a gentoo 64-bit system for Raspberry Pi 4 (with rt-patch for real time functionality)
nerves - Craft and deploy bulletproof embedded software in Elixir
sandal - Lightweight containerization for embedded systems and AI workloads
buildroot - Buildroot, making embedded Linux easy. Note that this is not the official repository, but only a mirror. The official Git repository is at https://gitlab.com/buildroot.org/buildroot/. Do not open issues or file pull requests here.
go-jtagenum - JTAG enumeration tool written in Go. A port of https://github.com/cyphunk/JTAGenum enhanced with https://github.com/grandideastudio/jtagulator improved implementation.
xbvr - Tool to organize and stream your VR porn library