/wallpaper-engine-kde-plugin

A kde wallpaper plugin integrating wallpaper engine

Primary LanguageC++GNU General Public License v2.0GPL-2.0

Wallpaper Engine for Kde

A wallpaper plugin integrating wallpaper engine into kde wallpaper setting.

Note

  • Known issues:
    • Some scene wallpapers may crash your KDE.
      Remove WallpaperFilePath line in ~/.config/plasma-org.kde.plasma.desktop-appletsrc and restart KDE to fix.
    • Mouse long press (to enter panel edit mode) is broken on desktop.
  • Support scene(2d),video,web wallpaper types
  • Requires Wallpaper Engine installed on steam
  • Requires qt 5.13+ for playing video(no mpv), or mpv instead

Install

Dependencies

Debian:

sudo apt install git cmake extra-cmake-modules libkf5package-dev libkf5plasma-dev \
liblz4-dev libmpv-dev python3-websockets \
qtbase5-dev qtbase5-private-dev qtdeclarative5-dev libqt5x11extras5-dev \
qml-module-qt-labs-folderlistmodel qml-module-qtwebchannel qml-module-qtwebchannel

Fedora:

# Please add "RPM Fusion" repo first
sudo dnf install git cmake extra-cmake-modules kf5-kpackage-devel kf5-plasma-devel \
lz4-devel mpv-libs-devel python3-websockets \
qt5-qtbase-devel qt5-qtbase-private-devel qt5-qtdeclarative-devel qt5-qtx11extras-devel \
qt5-qtwebchannel-devel qt5-qtwebsockets-devel 

Arch:

sudo pacman -S git cmake extra-cmake-modules plasma-framework \
base-devel mpv python-websockets qt5-declarative qt5-websockets qt5-webchannel

Build and Install

# Download source
git clone https://github.com/catsout/wallpaper-engine-kde-plugin.git
cd wallpaper-engine-kde-plugin

# Configure
mkdir build && cd build
cmake .. -DUSE_PLASMAPKG=ON

# Build
make

# Install package (ignore if USE_PLASMAPKG=OFF for system wide installaiton)
make install_pkg
# install lib
sudo make install

Uninstall

  1. remove files that list in wallpaper-engine-kde-plugin/build/install_manifest.txt
  2. plasmapkg2 -r ~/.local/share/plasma/wallpapers/com.github.catsout.wallpaperEngineKde

Usage

  1. Wallpaper Engine installed on Steam
  2. Subscribe to some wallpapers on the Workshop
  3. Select the steamlibrary folder on the Wallpapers tab of this plugin
    • The steamlibrary which contains the steamapps folder
    • Wallpaper Engine needs to be installed in this steamlibrary

Restart KDE

You need to restart KDE(re-login) after reinstalling the plugin
You can also try using: kquitapp5 plasmashell && kstart5 plasmashell

Support Status

Scene:

Scene wallpapers are supported by direct OpenGL(3.2).
Requires Wallpaper Engine installed for assets(shaders,pictures...)

implemented

  • Layer
    • Image
    • Composition / Fullscreen
    • Text
  • Effect
    • Mouse position
    • Parallax
    • ColorBlendMode
    • PBR light
    • Global bloom
  • Camera
    • Zoom
    • Shake
    • Fade / Path
  • Audio
    • Loop
    • Random
    • Visualization
  • Particle System
    • Renderers
      • Rope
    • Emitters
      • Duration
    • Initializers
    • Operators
      • Control Point Force
      • Vortex
    • Control Points
    • Children
  • 3D model
  • Timeline animations
  • Puppet warp
  • Scenescript

Web

Basic web apis are supported, but the audio api does not send data for now.

no webgl

WebEngineView in plasmashell can't init opengl.
Some wallpaper using webgl may not work, and performance may be bad.

Video HWdecode

QtMultimedia

The default video backend of this plugin.
It's using GStreamer to play video.
hwdecode for GStreamer

Mpv

Need to compile the plugin lib.
The config is set to hwdec=auto, and is not configurable for now.

Acknowledgments

Preview