How-to
Install slowhub
Run a hub on a Slowboard 1085, or on a Linux machine of your own, and connect a screen to it.
On a Slowboard 1085
Nothing to do: the Slowboard image includes slowhub, already configured. Follow Set up a Slowboard 1085, then Install a slowapp.
On a Linux machine of your own
A hub can run on another machine, such as a Raspberry Pi or a home server, and serve screens over your network. That is useful when a screen’s own computer is too small to run apps, or when you want one hub for several screens.
TODO(owner): this path hasn’t been documented end to end. Confirm which machines and operating systems are supported, where to download slowhub for x86_64 and 64-bit ARM, and the minimum memory. Until then, the steps below are the parts that are known from the Slowboard 1085’s setup.
What it needs
- Linux with systemd.
- Podman, run rootless, with
dbus-user-sessioninstalled so that memory limits apply to containers. - A user for the hub to run as. On the Slowboard 1085 it is
epaper. - Enough memory for the apps you want to run at once: each app’s manifest states its limit (Reminders 48 MB, Weather 256 MB), plus the hub’s own reserve.
Install the service
slowhub runs as a systemd user service for its user. As root:
apt install dbus-user-session
cp slowhub.service /etc/systemd/user/
loginctl enable-linger epaper
systemctl --user -M epaper@ daemon-reload
systemctl --user -M epaper@ enable --now slowhub
The unit runs /opt/slowboard/bin/slowhub --config /etc/slowhub/slowhub.toml serve. slowhub reference has the configuration file.
TODO(owner): where do
slowhub.service, the tmpfiles and logind snippets, and the binary come from for someone who isn’t building from the repository?
Let screens connect
A screen on another machine connects over TCP with a token. In /etc/slowhub/slowhub.toml, turn on the listener and allow the names the screen will use:
listen_device_tcp = "0.0.0.0:8090"
host_allow = ["myhub", "myhub.local"]
Restart slowhub, then create a token for the screen. It is printed once. (Run slowhub commands as the hub’s user; the reference has the full command line.)
slowhub device add kitchen
On the screen’s computer, point slowd at the hub in /etc/slowd/slowd.toml and put the token in the file named by token_file:
[hub]
url = "http://myhub:8090"
token_file = "/etc/slowd/hub.token"
slowhub device list shows the screens a hub knows, and slowhub device revoke ID removes one.
TODO(owner): connections between a screen and a remote hub are plain HTTP today; HTTPS is planned. Say whether to recommend this only on a trusted network for now.
Hosted hub
A hub hosted by us is coming soon.