Skip to content

luisbocanegra/kurve

Repository files navigation

Kurve

AUR version Store version OBS Fedora 43 OBS Fedora Rawhide OBS openSUSE Tumbleweed OBS openSUSE Slowroll

Audio visualizer widget powered by CAVA for the KDE Plasma Desktop

screenshot

Installation

Distribution packages

Arch Linux (AUR)

yay -S plasma6-applets-kurve

openSUSE Build Service packages (Fedora, openSUSE)

Maintained with @pallaswept and me at https://build.opensuse.org/package/show/home:luisbocanegra/kurve

Install instructions: https://software.opensuse.org//download.html?project=home%3Aluisbocanegra&package=kurve

KDE Store

  1. Install the following (runtime) dependencies from your distribution packages:

    # Arch Linux
    sudo pacman -Syu cava qt6-websockets python-websockets
    # Fedora
    sudo dnf install cava qt6-qtwebsockets-devel python-websockets
    # Kubuntu
    sudo apt install cava qt6-websockets-dev python3-websockets
    # openSUSE
    sudo zypper install cava qt6-websockets-imports python3-websockets

    NOTE: Qt/Python websockets are used to communicate with CAVA if the C++ plugin is not installed manually or can't be loaded

  2. Install the widget from the KDE Store

    Method 1: Directly from Plasma

    1. Right click on the Panel or Desktop > Add or manage widgets > Get new > Download new...
    2. Search for "Kurve", install and add it to your Panel or Desktop.

    Method 2: From local plasmoid file

    1. Go to the Kurve product page in the KDE Store: https://store.kde.org/p/2299506
    2. Download the *.plasmoid file
    3. Install with the following command:

    kpackagetool6 -t Plasma/Applet -i package /path/to/downloaded/file.plasmoid

    NOTE: Replace -i with -u to update instead

Build from source (With C++ Plugin)

  1. Install these dependencies or the equivalents for your distribution

    # Arch Linux
    sudo pacman -S git gcc cmake extra-cmake-modules libplasma cava qt6-websockets python-websockets
    # Fedora
    sudo dnf install git gcc-c++ cmake extra-cmake-modules libplasma-devel cava qt6-qtwebsockets python3-websockets
    # Kubuntu
    sudo apt install git build-essential cmake extra-cmake-modules libplasma-dev cava qt6-websockets-dev python3-websockets
    # openSUSE
    sudo zypper install git cmake extra-cmake-modules libplasma6-devel cava qt6-websockets-imports python3-websockets

    NOTE: Packages libplasma cava qt6-websockets and python3-websockets are runtime dependencies

    NOTE: Qt/Python websockets are used to communicate with CAVA if the C++ plugin can't be loaded

  2. Clone and install

    git clone https://github.com/luisbocanegra/kurve.git
    cd kurve
    ./install.sh

Manual install for immutable distributions

  1. Use the -immutable variants of the install script

  2. Add QML_IMPORT_PATH environment variable for the C++ plugin to work:

    Create the file ~/.config/plasma-workspace/env/path.sh (and folders if they don't exist) with the following:

    export QML_IMPORT_PATH="$HOME/.local/lib64/qml:$HOME/.local/lib/qml:$QML_IMPORT_PATH"
  3. Log-out or reboot to apply the change*

Support the development

If you like what I do consider donating/sponsoring this and my other open source work

GitHub Sponsors Ko-fi "Buy Me A Coffee" Liberapay PayPal