-
Notifications
You must be signed in to change notification settings - Fork 0
Installation
There are no packages, AppImages or release downloads for Rostrum yet, so it installs from source into your home folder. This page covers what you need, how to build and install, and how to update or remove Rostrum later.
About the AppImage. The project can build an AppImage for each release (
Rostrum-<version>-x86_64.AppImage, published on the GitHub releases page), but no release has been published yet. When one is, it will need a system as new as Ubuntu 26.04 (glibc 2.43 or newer) on x86_64, and it will update itself. Until then, build from source as below.
| Component | Version |
|---|---|
| Linux with PipeWire | 1.0 or newer |
| WirePlumber | 0.5 or newer |
| Qt | 6.5 or newer, with Qt WebSockets |
| KDE Frameworks | 6.8 or newer: Kirigami, Kirigami Addons, GlobalAccel, StatusNotifierItem, CoreAddons, I18n, DBusAddons |
| toml++ | 3 |
| CMake | 3.22 or newer, plus a C++20 compiler |
PulseAudio is not used or required. Rostrum talks to PipeWire directly; the pipewire-pulse
package provides the PulseAudio compatibility that apps like Discord, browsers and most games use.
Rostrum was smoke-tested on Kubuntu 26.04 LTS with KDE Plasma 6 on Wayland, PipeWire 1.6.2, WirePlumber 0.5.13, Qt 6.10 and KDE Frameworks 6.24.
Get the source:
git clone https://github.com/rostrum-audio/rostrum.git
cd rostrumInstall the build dependencies:
sudo apt install build-essential cmake ninja-build pkg-config extra-cmake-modules \
libpipewire-0.3-dev libtomlplusplus-dev qt6-base-dev qt6-declarative-dev qt6-websockets-dev \
libkirigami-dev kirigami-addons-dev libkf6coreaddons-dev libkf6dbusaddons-dev \
libkf6i18n-dev libkf6globalaccel-dev libkf6statusnotifieritem-dev \
qml6-module-org-kde-kirigami qml6-module-org-kde-kquickcontrols qml6-module-org-kde-desktop \
qml6-module-org-kde-kirigamiaddons-formcard qml6-module-org-kde-kitemmodels \
qml6-module-qtquick-dialogs qml6-module-qtcore qt6-svg-pluginsBuild and install into ~/.local:
cmake -S . -B build -G Ninja
cmake --build build
cmake --install build --prefix ~/.localInstalling into ~/.local adds the app menu entry, the icon, and the entry Plasma uses to list
Rostrum's shortcuts in System Settings. It also puts the rostrum command in ~/.local/bin, which
you can use from scripts (see Command Line and D-Bus). Nothing is
installed system-wide and you never need root to run Rostrum.
These are the base packages. You also need your distribution's packages for the KDE Frameworks and Kirigami modules listed under Requirements. The repository lists exact names for those only on Kubuntu, Debian and Ubuntu (the command above).
| Distro | Base packages |
|---|---|
| Debian, Ubuntu, Kubuntu |
build-essential pipewire pipewire-pulse wireplumber qt6-base-dev qt6-websockets-dev libpipewire-0.3-dev libtomlplusplus-dev cmake ninja-build pkg-config
|
| Fedora |
pipewire pipewire-pulseaudio wireplumber qt6-qtbase-devel qt6-qtwebsockets-devel pipewire-devel tomlplusplus-devel gcc-c++ cmake ninja-build pkgconf-pkg-config
|
| Arch |
pipewire pipewire-pulse wireplumber qt6-base qt6-websockets tomlplusplus gcc cmake ninja pkgconf
|
The project's CI builds the full app on Ubuntu 26.04, but only the engine and tools (not the Kirigami app) on Fedora and Arch, so the full app has only been built and tried on Kubuntu and Ubuntu 26.04.
Open Rostrum from your app menu, or run ~/.local/bin/rostrum. Only one copy runs at a time:
starting it again brings the running window to the front. Running rostrum with an option such as
--toggle-mic controls the running copy instead; see
Command Line and D-Bus.
On first start, Rostrum opens first-time setup. Continue with Getting Started.
No audio server? If Rostrum shows "Rostrum can't reach PipeWire", see Troubleshooting.
Rostrum checks once a day whether a new version is out (you can turn this off; see Privacy and Crash Reports). For a copy built from source it only tells you; it never replaces your build. To update:
cd rostrum
git pull
cmake --build build
cmake --install build --prefix ~/.localThen choose Restart Rostrum from the tray menu or in Settings → General. Rostrum quits and starts the newly installed build. Your mix keeps playing meanwhile, and a copy restarted from the tray while its window was hidden stays in the tray.
Package installs, once there are any, are updated by your package manager. An AppImage, once published, downloads and installs new versions by itself; see Privacy and Crash Reports.
-
Quit Rostrum.
-
Delete the installed files:
~/.local/bin/rostrum,~/.local/bin/rostrum-probe,~/.local/share/applications/dev.getrostrum.Rostrum.desktop,~/.local/share/metainfo/dev.getrostrum.Rostrum.metainfo.xml,~/.local/share/dbus-1/interfaces/dev.getrostrum.Rostrum1.xml, thedev.getrostrum.Rostrum.svgicons under~/.local/share/icons/hicolor/, and~/.local/share/doc/rostrum/. -
Delete Rostrum's settings, state and rule files, listed in Files and Folders.
-
Run this to remove Rostrum's virtual devices from PipeWire:
systemctl --user restart pipewire pipewire-pulse wireplumber
Developers can run Rostrum straight from the build folder with ./build/src/app/rostrum and run
the unit tests with ctest --test-dir build. Build options, test instructions and code style are in
CONTRIBUTING.md.
Rostrum is licensed under Apache-2.0. This wiki describes Rostrum 0.1.0.
Repository · Report an issue · Security policy · getrostrum.dev · hello@getrostrum.dev
Start here
Using Rostrum
- Mixer and Buses
- Apps and Routing
- Scenes and Presets
- OBS Setup
- Keyboard Shortcuts
- Command Line and D-Bus
Help and reference
Project