Bitfocus AS
logo
logo
Bitfocus AS
logo
logo
Sign upSign in

Loading...

Bitfocus

Subscribe to our newsletter

The latest news, articles, and resources, sent to your inbox.

FacebookInstagramGitHubYouTubeLinkedIn

Products

  • Buttons
  • Companion

Integrations

  • Supported Devices
  • Developer Community
  • Connection Development

Support

  • Support Overview
  • Documentation
  • Video Tutorials
  • Community Forum

Sales

  • Resellers & Integrators
  • Buttons Pricing

Updates

  • Case Studies
  • Events & Trade Shows
  • Press Releases
  • Product Updates
  • Webinars

Legal

  • Legal Overview
  • Privacy Policy
  • Buttons EULA
  • Terms & Cookie Policy

Company

  • About us
  • Press kit
  • Careers

© 2026 Bitfocus AS. All rights reserved.

Debian/Ubuntu-headless build of Bitfocus Buttons.
Docs for
Buttons overview
Adding a License
Offline License
Debian/Ubuntu-headless build of Bitfocus Buttons
Position
Basic Section
Shift Section
Folder Section
Popover Section
Router Section v1.4.x
Router Section v1.6.x
Shared Section
Button
Presets
Internal Actions
Connect
Connection
NMOS
Surface
Workflow
Workflow Examples
Workflow node reference
Cuelist
Tags
Routing
Auth
SSO
Settings
Certificate
Network ports reference
Variables
Functions Reference
Functions
Operators

Loading...

Previous
← Offline License
Next
Position →
Contact support →
Buttons/Getting started/Debian/Ubuntu-headless build of Bitfocus Buttons.

Debian/Ubuntu-headless build of Bitfocus Buttons.

Configuration is stored under $HOME/.config/bitfocus-buttons, which you may want to include in your backups.
To start the application, launch ./watchdog-cli 0.0.0.0 4440. You can set this up to launch on startup with your preferred init system. An example systemd unit is provided.
For a description of the required and optional arguments, check ./watchdog-cli -help.

Prerequisites#

You’ll need sudo access and an internet connection.

Take note that there has been a change from Redis to Valkey. between v1.7.4 and v1.7.5 in step 3A and step 3B
Check the version you are installing and choose the right step only one is necessary.

1. Update your system:#

sudo apt update
sudo apt upgrade
sudo apt install curl

2. Install PostgreSQL 17:#

Buttons requires PostgreSQL 17 from the official PostgreSQL repository (not the Ubuntu default version)
sudo sh -c ‘echo “deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main” > /etc/apt/sources.list.d/pgdg.list’
curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg
sudo apt update
sudo apt install -y postgresql-17
Disable the default postgresql server, as Buttons manages and runs its own.
sudo systemctl disable postgresql
sudo systemctl stop postgresql   

3A. Install Redis & Avahi (mDNS/Bonjour): v1.6.x and Beta v1.7.1 through 1.7.4#

sudo apt install -y redis-server avahi-daemon libnss-mdns libudev1
Disable the default redis server, as Buttons manages and runs its own.
sudo systemctl disable redis-server
sudo systemctl stop redis-server 

3B. Install Valkey & Avahi (mDNS/Bonjour) from Beta v1.7.5 and onwards #

$ sudo apt install -y valkey-server avahi-daemon libnss-mdns libudev1
Disable the default Valkey server, Buttons manages and runs its own.
$ sudo systemctl disable valkey-server
$ sudo systemctl stop valkey-server

4. Create a Group and User and Set up udev rules and access:#

Create a group for access to stream deck devices:
sudo addgroup buttons
Add your user to the buttons group:
sudo adduser $USER buttons
Copy the 50-bitfocus-buttons.rules to /etc/udev/rules.d/  make sure that your terminal is in the directory where the file is i.e home/bitfocus/bitfocus-buttons-linux-x64
sudo cp 50-bitfocus-buttons.rules /etc/udev/rules.d/
Reload the rules
sudo udevadm control --reload-rules
Replug any Stream Decks to reload the reloaded rules.

Before starting buttons, open a new terminal/shell to make sure the group changes are applied to your session.

Running manually#

You can start buttons on http://127.0.0.1:4440 (https://127.0.0.1:4443) by running:
./watchdog-cli 127.0.0.1 4440
For UI availability on Local machine only or:
./watchdog-cli 0.0.0.0 4440
For UI availability on all networks

Running as a service#

An example systemd service file (bitfocus-buttons.service) is included to get you started.
It expects a buttons user to exist, and to be a member of a buttons group.
You will likely want to modify the command to add additional arguments.

Was this helpful?

Was this helpful?

0 of 0 users found this page helpful