diff --git a/packages/wallpaper-engine-kde-plugin/default.nix b/packages/wallpaper-engine-kde-plugin/default.nix index cbb9891..313b1ac 100644 --- a/packages/wallpaper-engine-kde-plugin/default.nix +++ b/packages/wallpaper-engine-kde-plugin/default.nix @@ -10,7 +10,7 @@ pkgs.kdePackages.mkKdeDerivation rec { owner = "catsout"; repo = "wallpaper-engine-kde-plugin"; rev = "9e60b364e268814a1a778549c579ad45a9b9c7bb"; - sha256 = "sha256-tKeYJvVa8jzbyZ7MQaOuCUJa+UqABolTNe3e5XNw998="; + sha256 = "sha256-zEpELmuK+EvQ1HIWxCSAGyJAjmGgp0yqjtNuC2DTES8="; fetchSubmodules = true; }; @@ -25,6 +25,7 @@ pkgs.kdePackages.mkKdeDerivation rec { pkgs.kdePackages.libplasma pkgs.lz4 pkgs.mpv + pkgs.lua pkgs.libass pkgs.libsysprof-capture pkgs.fribidi @@ -46,27 +47,55 @@ pkgs.kdePackages.mkKdeDerivation rec { pkgs.gst_all_1.gst-plugins-ugly pkgs.gst_all_1.gst-libav pkgs.mujs + # Additional dependencies for scene backend + pkgs.libGL + pkgs.mesa + pkgs.eigen + pkgs.nlohmann_json + pkgs.libarchive + pkgs.libbluray + pkgs.rubberband + pkgs.libuchardet + pkgs.zimg + pkgs.alsa-lib + pkgs.openal + pkgs.pipewire + pkgs.libpulseaudio + pkgs.libcaca + pkgs.libdisplay-info + pkgs.libgbm + pkgs.xorg.libXScrnSaver + pkgs.xorg.libXpresent + pkgs.xorg.libXv + pkgs.xorg.libXext + pkgs.xorg.libXinerama + pkgs.xorg.libXrandr + pkgs.libdrm + pkgs.wayland + pkgs.wayland-protocols + pkgs.jack2 + pkgs.libsndfile + pkgs.libsamplerate + pkgs.libvorbis + pkgs.flac + pkgs.libopus + pkgs.libmad + pkgs.libmodplug + pkgs.speex + pkgs.libtheora + pkgs.libvpx + pkgs.x264 + pkgs.x265 + pkgs.libaom + pkgs.dav1d + pkgs.svt-av1 + pkgs.nv-codec-headers-12 + pkgs.libva + pkgs.libvdpau ]; - # Disable the scene backend since it's missing CMakeLists.txt + # Apply Qt6 compatibility fixes postPatch = '' - sed -i 's|add_subdirectory(backend_scene)|# add_subdirectory(backend_scene)|' src/CMakeLists.txt - - # Remove wescene-renderer-qml library link dependency - sed -i 's|wescene-renderer-qml|# wescene-renderer-qml|' src/CMakeLists.txt - - # Remove SceneBackend dependencies from PluginInfo.cpp - sed -i '/^#include "SceneBackend.hpp"/d' src/PluginInfo.cpp - sed -i 's|QString::fromStdString(scenebackend::SceneObject::GetDefaultCachePath())|QStandardPaths::writableLocation(QStandardPaths::CacheLocation) + "/wallpaper-engine-kde-plugin"|' src/PluginInfo.cpp - - # Add missing includes to PluginInfo.cpp - sed -i '/#include /a #include ' src/PluginInfo.cpp - sed -i '/#include /a #include ' src/PluginInfo.cpp - - # Remove SceneBackend dependencies from plugin.cpp - sed -i '/^#include "SceneBackend.hpp"/d' src/plugin.cpp - sed -i '/qmlRegisterType/d' src/plugin.cpp - # Fix Qt6 deprecation warnings in MouseGrabber.cpp sed -i 's|event->localPos()|event->position()|g' src/MouseGrabber.cpp sed -i 's|event->screenPos()|event->globalPosition()|g' src/MouseGrabber.cpp @@ -84,7 +113,7 @@ pkgs.kdePackages.mkKdeDerivation rec { "-DUSE_PLASMAPKG=OFF" "-DQT_MAJOR_VERSION=6" "-DBUILD_QML=ON" - "-DBUILD_SCENE=OFF" + "-DBUILD_SCENE=ON" ]; dontWrapQtApps = true;