Gardenhouse the tools do things!

Gardenfault

Portable syslog based bsod system

Usage

  1. Configure the syslog implementation to write emergency messages to the gardenfault fifo. Example configs may be found in the examples/ directory.

  2. Set a list of processes that should cause a bsod in /etc/gardenfault_process_whitelist.

  3. Run gardenfault as a daemon.

Porting

Since gardenfault interacts with the VT directly, the portability across multiple systems cannot be guaranteed.

The VT code is in a separate C file, porting gardenfault to a new system simply consists of implementing the API defined in vt.h, and adding the source file to meson.build.

If a VT implementation has been thouroughly tested and confirmed working, sending a Patch or opening a MR adding support would be appreciated!

QR Code format

By default gardenfault presents a QR code which contains a compressed list of the last recorded logs. The format is simply text compressed with zlib and encoded in base64. A website which can decode the data is in index.html and hosted at https://gardenhouse.pinkro.se/fault/

If a QR code is not wanted, it's possible to just print the log directy by adding the -n flag to gardenfault.

The included QR Code generation library is licensed under MIT https://www.nayuki.io/page/qr-code-generator-library

Source

Gardenfault can be downloaded from https://git.pinkro.se/Rose/gardenhouse/gardenfault.git/about/

It's also mirrored to Codeberg where bugtracking is done.