No description
  • C++ 57.6%
  • QML 39.8%
  • CMake 1.9%
  • Shell 0.5%
  • C 0.1%
  • Other 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Sebastian Palencsar 5d515219f3
All checks were successful
Build, test and deploy / Build and test (push) Successful in 3m3s
Build, test and deploy / Deploy to GitHub (push) Successful in 13s
docs: remove internal deployment details
2026-10-18 14:45:29 +02:00
.forgejo/workflows ci: fetch history before first GitHub deploy 2026-10-18 07:31:08 +02:00
assets/app feat: add native Omarchy integration 2026-10-17 15:57:55 +02:00
omarchy docs: add Omarchy screenshots 2026-10-18 06:54:24 +02:00
screenshots docs: remove legacy BearWave media 2026-10-18 07:40:36 +02:00
src security: render station detail metadata as plain text 2026-10-18 14:20:18 +02:00
tests security: render station detail metadata as plain text 2026-10-18 14:20:18 +02:00
translations feat: add native Omarchy integration 2026-10-17 15:57:55 +02:00
.gitignore ci: keep local agent notes out of remotes 2026-10-18 07:08:31 +02:00
CHANGELOG.md docs: update security and deployment guidance 2026-10-18 14:33:14 +02:00
CMakeLists.txt feat: add native Omarchy integration 2026-10-17 15:57:55 +02:00
CONTRIBUTING.md docs: update security and deployment guidance 2026-10-18 14:33:14 +02:00
de.nerdbear.bearwave.desktop.in feat: add native Omarchy integration 2026-10-17 15:57:55 +02:00
install-omarchy.sh docs: add Omarchy screenshots 2026-10-18 06:54:24 +02:00
LICENSE Change license from MIT to GPL-3.0-or-later 2026-05-25 20:17:59 +02:00
manifest.json feat: add native Omarchy integration 2026-10-17 15:57:55 +02:00
preview.png fix: normalize preview permissions 2026-10-18 06:55:02 +02:00
README.md docs: remove internal deployment details 2026-10-18 14:45:29 +02:00
SECURITY.md docs: update security and deployment guidance 2026-10-18 14:33:14 +02:00
uninstall-omarchy.sh feat: add native Omarchy integration 2026-10-17 15:57:55 +02:00

BearWave for Omarchy

CI Linux Desktop Qt 6 License: GPL--3.0--or--later Version

BearWave is a local Qt 6 internet-radio player designed specifically for Omarchy and Hyprland.

Install BearWave from the Omarchy Plugin Marketplace.

BearWave floating on an Omarchy desktop

The application follows the current Omarchy theme from ~/.local/state/omarchy/current/theme/colors.toml, uses the system monospace font, and renders its window as native frosted glass. Theme changes are picked up while BearWave is running.

Screenshots

Frosted-glass window

BearWave with a running station in a floating Omarchy window

Station browser and playback

Station browser Now playing
BearWave station browser BearWave playing a radio station

Omarchy bar integration

BearWave icon in the Omarchy bar

Features

  • Radio Browser station search and browsing
  • favorites, recent stations, and manually added streams
  • ICY metadata and cover artwork
  • MPRIS media controls and desktop notifications
  • system-tray background playback
  • German, Dutch, and Russian translations
  • Omarchy palette, typography, translucent surfaces, and compact layout

Requirements

  • Omarchy with an active Hyprland session
  • CMake 3.16 or newer
  • Ninja or Make
  • Qt 6 Base, Declarative, Multimedia, Multimedia FFmpeg, and Tools

On an Omarchy/Arch installation the development dependencies are available as:

sudo pacman -S --needed cmake ninja qt6-base qt6-declarative \
  qt6-multimedia qt6-multimedia-ffmpeg qt6-tools

Local build

Run from this directory:

cmake -S . -B build-omarchy -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build-omarchy
ctest --test-dir build-omarchy --output-on-failure
./build-omarchy/src/bearwave

Install as an Omarchy plugin

BearWave is listed in the Omarchy Plugin Marketplace. Install it from there, or add and enable the plugin directly:

omarchy plugin add https://github.com/spalencsar/bearwave_omarchy.git --enable

Omarchy intentionally does not execute install hooks for plugins. On first click, the BearWave bar icon therefore opens the visible local installer in an Omarchy terminal. You can run the same installer directly:

~/.config/omarchy/plugins/de.nerdbear.bearwave/install-omarchy.sh

The installer uses omarchy pkg add for the required Arch packages, builds BearWave from the checked-out source, and installs the application only for the current user below ~/.local. It does not use Flatpak or the AUR.

After installation, left-click the bar icon to open BearWave, middle-click to play or pause, and right-click to stop playback. The application is launched with its own tray icon disabled so the bar does not show BearWave twice.

To remove the local application and then its plugin:

~/.config/omarchy/plugins/de.nerdbear.bearwave/uninstall-omarchy.sh
omarchy plugin remove de.nerdbear.bearwave

Not using Omarchy?

This repository is the Omarchy- and Hyprland-specific edition, including the bar widget and theme integration. For the regular multi-desktop BearWave app (Flatpak, AUR, and source-install instructions), use the separate BearWave repository. Do not install both editions as replacements for one another: they use the same application and MPRIS identity.

Omarchy integration

BearWave recognizes Omarchy through the desktop-session environment and the local /usr/share/omarchy installation. It reads these local design sources:

  • palette: ~/.local/state/omarchy/current/theme/colors.toml
  • font: the Fontconfig monospace alias selected by Omarchy
  • compositor: Hyprland supplies the blur behind BearWave's translucent window

BearWave does not modify the Omarchy or Hyprland configuration.

Local data

  • settings and stations: ~/.config/bearwave/
  • API and artwork cache: ~/.cache/bearwave/

The configuration directory is kept owner-only. BearWave also stores its settings, favourites, manual stations, and playback state in owner-readable and owner-writable files, because manually added stream URLs can contain credentials or access tokens.

Set BEARWAVE_THEME=light or BEARWAVE_THEME=dark only for temporary theme debugging outside the normal Omarchy palette.

Useful controls

  • Space: play or pause
  • Ctrl+F: focus station search
  • closing the window hides BearWave in the system tray

License

GPL-3.0-or-later. See LICENSE.