The graphview widget now implements the gtk::Scrollable interface, so it is no longer wrapped inside a gtk::Viewport when used in a gtk::ScrollWindow anymore. Instead, it repositions its content itself when scrolled, and also skips rendering any content that is not inside the visible area, which should improve performance when the graph becomes big. This commit also makes the canvas a fixed size, with much space to each side from the starting area. This will hopefully improve user experience, as the view can now be moved around more freely, and nodes can be dragged left and above the starting area.
Helvum is a GTK-based patchbay for pipewire, inspired by the JACK tool catia.
Features planned
- Volume control
- "Debug mode" that lets you view advanced information for nodes and ports
More suggestions are welcome!
Building
Via flatpak
If you don't have the flathub repo in your remote-list for flatpak you will need to add that first:
$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Then install the required flatpak platform and SDK, if you dont have them already:
$ flatpak install org.gnome.{Platform,Sdk}//41 org.freedesktop.Sdk.Extension.rust-stable//21.08 org.freedesktop.Sdk.Extension.llvm12//21.08
To compile and install as a flatpak, clone the project, change to the project directory, and run:
$ flatpak-builder --install flatpak-build/ build-aux/org.pipewire.Helvum.json
You can then run the app via
$ flatpak run org.pipewire.Helvum
Manually
For compilation, you will need:
- Meson
- An up-to-date rust toolchain
libclang-3.7or highergtk-4.0andpipewire-0.3development headers
To compile and install, run
$ meson setup build && cd build
$ meson compile
$ meson install
in the repository root.
This will install the compiled project files into /usr/local.
License and Credits
Helvum is distributed under the terms of the GPL3 license. See LICENSE for more information.
Parts of the build system were taken from the gtk-rust-template project, which is provided under the terms of the MIT license.

