Go to file
Dustin 01c8c116dd
basementhud/pipeline/head This commit looks good Details
xinit: Trigger hudctrl at boot
The *hudctrl* service remotely controls Firefox on the Basement HUD
machine.  It uses Firefox Marionette over TCP, and is itself controlled
by an HTTP API.

When the HUD machine starts up, it sends its monitor configuration to
*hudctrl* and tells it the display is ready to be controlled remotely.

For now, *hudctrl* is hosed on Rosalina.  I will eventually move it to
the new metrics server, once it's built.
2022-05-01 09:22:48 -05:00
ci Install Playwright to control Firefox 2022-04-04 20:59:34 -05:00
overlay xinit: Trigger hudctrl at boot 2022-05-01 09:22:48 -05:00
.gitignore Initial commit 2022-04-04 20:59:32 -05:00
Makefile Initial commit 2022-04-04 20:59:32 -05:00
README.md Initial commit 2022-04-04 20:59:32 -05:00
cmdline.txt cmdline: enable serial console 2022-04-04 20:59:34 -05:00
config.txt Enable RTC on the CM4 I/O board 2022-04-06 17:35:56 -05:00
mkinitramfs.sh Enable RTC on the CM4 I/O board 2022-04-06 17:35:56 -05:00
mkrootfs.sh Use xrandr instead of wmctrl 2022-04-06 18:43:30 -05:00
prepare.sh Initial commit 2022-04-04 20:59:32 -05:00
publish.sh publish: Upload rootfs image atomically 2022-04-04 20:59:34 -05:00
squashfs-exclude.txt Initial commit 2022-04-04 20:59:32 -05:00

README.md

Basement Hud Network-Booted OS

Customized Fedora-based operating system distributed as an immutable root filesystem image.

Building

Must run on a Fedora host or privileged container.

Build the root filesystem image:

make rootfs

This will create an _build/rootfs directory containing the root filesystem hierarchy. The _build/rootfs/boot directory contains the necessary files to boot the system:

  • efi: This directory contains the Raspberry Pi firmware files
  • initramfs.img: Early userspace image
  • vmlinuz: Kernel image
  • basementhud.squashfs: Root filesystem image

The Raspberry Pi firmware, initramfs image, and kernel image files must be served by a TFTP, while the rootfs image is served by NBD.

Build the initramfs image:

make initramfs