Roll your own

Install on any Linux

The agent is a single static binary with no dependencies. You can install it by hand on any Linux with systemd — or adapt these steps to a distro we don't package yet.

Rules of the road

  • Uplinks are cellular + wired Ethernet only. No Wi-Fi.
  • Cellular is a backup. Prefer Ethernet when it actually reaches the internet (link-up ≠ internet).
  • Connect needs no modem. Only agent + systemd + WireGuard + curl.
  • Cellular additionally needs ModemManager + libqmi (or libmbim for MBIM modems) and the bring-up helper.
  • The cloud reaches the device over SSH; keep an SSH server running.

1.Get a Device Code

From the dashboard's Device Onboarding → Get a Device Code. Codes are product-agnostic — you choose the product after the device activates. Enter the code below.

2.Install the agent

ARCH=amd64   # amd64 | arm64 | arm  (uname -m -> x86_64 = amd64)
curl -fsSL "https://hivecatcher.com/downloads/hivecatcher-agent-linux-$ARCH" \
  -o /tmp/agent
sudo install -m 0755 /tmp/agent /usr/local/bin/hivecatcher-agent
hivecatcher-agent version

3.Pair with your code

sudo hivecatcher-agent register \
  --server https://hivecatcher.com \
  --code 7QK4-M2XP
# already installed? enter it later:
sudo hivecatcher-agent provision --code 7QK4-M2XP

4.Run as a service

sudo install -d -m 0750 /etc/hivecatcher
sudo curl -fsSL https://hivecatcher.com/downloads/hivecatcher-agent.service \
  -o /etc/systemd/system/hivecatcher-agent.service
sudo systemctl daemon-reload
sudo systemctl enable --now hivecatcher-agent
The unit's ReadWritePaths requires /etc/hivecatcher to exist first (that's the install -d above).

5.Remote access (WireGuard)

sudo apt-get install -y wireguard wireguard-tools   # or your distro's pkg
sudo ufw allow in on wg0

The agent creates and manages wg0 on demand; it must be able to write /etc/wireguard and run wg-quick.

6.Cellular (only if you have a modem)

sudo apt-get install -y modemmanager libqmi-utils libmbim-utils
# then configure APN cbc135 and bring up the bearer — the packaged
# cellular-up.sh helper does this; see the Cellular install guide.

Files

  • Agent: https://hivecatcher.com/downloads/hivecatcher-agent-linux-<arch>
  • systemd unit: https://hivecatcher.com/downloads/hivecatcher-agent.service
  • Scripts: /install/cellular.sh and /install/connect.sh

Prefer the packaged scripts? Connect · Cellular

Uninstalling

You can remove HiveCatcher at any time. Tell us first so the device is released and billing stops, instead of just going silent.

1. Tell HiveCatcher

sudo hivecatcher-agent deregister

This flags the device for the operator to release. It is best-effort: if the box has no connection right now, the operator will still see it go silent and can release it.

2. Stop and disable the services

sudo systemctl disable --now hivecatcher-agent hivecatcher-cellular.service hivecatcher-cellular.timer hivecatcher-cellular-recover.service hivecatcher-cellular-recover.timer hivecatcher-uplink.service hivecatcher-uplink.timer

3. Remove the units

sudo rm -f /etc/systemd/system/hivecatcher-*.service \
              /etc/systemd/system/hivecatcher-*.timer
sudo systemctl daemon-reload

4. Remove the files

sudo rm -rf /usr/local/bin/hivecatcher-* /etc/hivecatcher /var/lib/hivecatcher
sudo rm -f /etc/udev/rules.d/99-hivecatcher-modem.rules
sudo udevadm control --reload
The WireGuard tunnel goes away with the agent, and the cloud peer is removed when the operator releases the device. To just pause HiveCatcher for a while, do step 1 and step 2 and stop there; nothing else is required.
Roll your own install | HiveCatcher