Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to KDE Plasma 6 #344

Merged
merged 8 commits into from
Mar 7, 2024
Merged

Migrate to KDE Plasma 6 #344

merged 8 commits into from
Mar 7, 2024

Conversation

fxzjshm
Copy link
Contributor

@fxzjshm fxzjshm commented Dec 10, 2023

Initial attempts to port to KDE Plasma 6 + Qt 6,
but changes in QML files currently break Plasma 5.

Uses CMake flag -D QT_MAJOR_VERSION=6 to build for Plasma 6, like

cmake ~/workspace/wallpaper-engine-kde-plugin -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=OFF

TODO:

  • Plugin not showing up in settings, but can be loaded if Plasma 6 loads config of Plasma 5. Migrated.
  • Mouse position is broken unusable with "Folder view" layout because unknown layer covering on desktop; works with "Desktop" layout & in standalone viewer.
  • Some hacks are used, marked with "TODO" in code.

Related: #339

I'm new to Qt and KDE so can only fix simplest things like API changes;
more experienced developer may needed.

Initial attempts to port to KDE Plasma 6 + Qt 6,
but QML things currently breaks Plasma 5.

Uses CMake flag `-D QT_MAJOR_VERSION=6` to control.

Plugin not showing up in setings, but can be loaded if Plasma 6 loads
config of Plasma 5.
Mouse position is also broken.
Some hacks are used, marked with "TODO" in code.

Signed-off-by: fxzjshm <fxzjshm@163.com>
`plasma_install_package` is moved to Plasma package.

Signed-off-by: fxzjshm <fxzjshm@163.com>
Plasma 6 dropped support of reading metadata.desktop,
so converted to metadata.json (`desktoptojson -i <file>`,
as suggested by configuration step with Plasma 5)
with minor edits.
Also adapted to new APIs in QML files.

TODO: Icons in settings page is missing.
Signed-off-by: fxzjshm <fxzjshm@163.com>
Explicitly resolve URLs to restore the old behavior.

Reference: https://doc.qt.io/qt-6/qml-changes-qt6.html#url-resolution
Signed-off-by: fxzjshm <fxzjshm@163.com>
Fixes: 09f7fc2 ("Fix compile error with Plasma 6")
Signed-off-by: fxzjshm <fxzjshm@163.com>
TODO: contents/ui/main.qml:163: TypeError: Cannot read property 'activity' of null
Signed-off-by: fxzjshm <fxzjshm@163.com>
@fxzjshm
Copy link
Contributor Author

fxzjshm commented Dec 29, 2023

C++ part should be compatible with Qt 5 and 6 now, but didn't find how to make QML code compatible with both. So this PR may serve as a separate branch with KDE Plasma 6 support, and anyone interested in this can build and test it.

@fxzjshm fxzjshm changed the title Fix compile error with Plasma 6 Migrate to KDE Plasma 6 Dec 29, 2023
@fxzjshm fxzjshm marked this pull request as ready for review December 29, 2023 05:25
@Kaydax
Copy link

Kaydax commented Jan 21, 2024

It fails to install via install_pkg and works with very few backgrounds, mine of which seems to be broken even though its just an image with basic shaders

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Jan 21, 2024

@Kaydax The scene you mentioned seems to work on my side. Please provide more detail, e.g. error log & behavior of the program.

@Kaydax
Copy link

Kaydax commented Jan 21, 2024

@Kaydax The scene you mentioned seems to work on my side. Please provide more detail, e.g. error log & behavior of the program.

No error log, just shows a blank white screen as the background when the scene is loaded. I also have issues with selecting the steam folder to even select themes in the first place so I think something is just very wrong on my end or something is not compiling right.

Here is my system info:
image

@Kaydax
Copy link

Kaydax commented Jan 21, 2024

Ok I wonder if it has something to do with QT paths trying to use QT 5 instead of 6, im going to retest this now once I set qt6 as my main qt

@Kaydax
Copy link

Kaydax commented Jan 21, 2024

Here is one error im getting when running make install_pkg:

kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
Package type "Plasma/Wallpaper" not found
kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
kf.package: Cannot set a path in a package without structure "/home/kaydax/Projects/Linux/wallpaper-engine-kde-plugin/plugin"
kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
Error: Plugin com.github.casout.wallpaperEngineKde is not installed.
make[3]: *** [CMakeFiles/install_pkg.dir/build.make:70: CMakeFiles/install_pkg] Error 2
make[2]: *** [CMakeFiles/Makefile2:667: CMakeFiles/install_pkg.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:674: CMakeFiles/install_pkg.dir/rule] Error 2
make: *** [Makefile:221: install_pkg] Error 2

@Kaydax
Copy link

Kaydax commented Jan 21, 2024

Ok so found one issue. My scene works only if its downloaded from the workshop, but if its using the raw source files of the wallpaper engine project, it refuses to work. This has never been an issue up until now

@kamikaze211
Copy link

Here is one error im getting when running make install_pkg:

kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
Package type "Plasma/Wallpaper" not found
kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
kf.package: Cannot set a path in a package without structure "/home/kaydax/Projects/Linux/wallpaper-engine-kde-plugin/plugin"
kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
Error: Plugin com.github.casout.wallpaperEngineKde is not installed.
make[3]: *** [CMakeFiles/install_pkg.dir/build.make:70: CMakeFiles/install_pkg] Error 2
make[2]: *** [CMakeFiles/Makefile2:667: CMakeFiles/install_pkg.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:674: CMakeFiles/install_pkg.dir/rule] Error 2
make: *** [Makefile:221: install_pkg] Error 2

Same as you, here is Archlinux updated.

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 4, 2024

@Kaydax @kamikaze211
I've edited the comment above and added my configure command, could you try that?
I've seen this log from install_pkg when forget to add -DQT_MAJOR_VERSION=6 then CMake try to find KF5 (but it does not recognize the format).
I didn't made QT_MAJOR_VERSION=6 default because I wanted to make it compatible with both Qt 5 and 6, but sadly failed.

@kamikaze211
Copy link

@Kaydax @kamikaze211 I've edited the comment above and added my configure command, could you try that? I've seen this log from install_pkg when forget to add -DQT_MAJOR_VERSION=6 then CMake try to find KF5 (but it does not recognize the format). I didn't made QT_MAJOR_VERSION=6 default because I wanted to make it compatible with both Qt 5 and 6, but sadly failed.

Sorry, maybe it is my problem.
I'm not a developer, and also have no programming skill.

Here is what I did in my terminal:

cd git
git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin
cd wallpaper-engine-kde-plugin/
git submodule update --init
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=ON
make -j$nproc
make install_pkg

And I got the error message.
I think maybe I made a mistake in the line : git clone
But sorry, I really don't know what should I do.

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 4, 2024

Oh, my fault, forget to set default branch of forked repository to this. Have changed to qt6 branch now.
For current situation, please checkout the qt6 branch, i.e.

git fetch && git checkout qt6

inside wallpaper-engine-kde-plugin/

@kamikaze211
Copy link

Oh, my fault, forget to set default branch of forked repository to this. Have changed to qt6 branch now. For current situation, please checkout the qt6 branch, i.e.

git fetch && git checkout qt6

inside wallpaper-engine-kde-plugin/

I tried it again.
Here is what I did in my terminal:

cd ~/git/
git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin
cd wallpaper-engine-kde-plugin/
git fetch && git checkout qt6
git submodule update --init
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=ON
make -j$nproc
make install_pkg

And I still got this error:

kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
Package type "Plasma/Wallpaper" not found
kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
kf.package: Cannot set a path in a package without structure "/home/ice/git/wallpaper-engine-kde-plugin/plugin"
kf.package: Invalid metadata for package structure "Plasma/Wallpaper"
错误:插件 com.github.casout.wallpaperEngineKde not installed。
make[3]: *** [CMakeFiles/install_pkg.dir/build.make:70:CMakeFiles/install_pkg] error 2
make[2]: *** [CMakeFiles/Makefile2:667:CMakeFiles/install_pkg.dir/all] error 2
make[1]: *** [CMakeFiles/Makefile2:674:CMakeFiles/install_pkg.dir/rule] error 2
make: *** [Makefile:221:install_pkg] erroe 2

Is there any mistake did I make?

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 4, 2024

Weird. Could you please post system information and CMake configure log?
Especially lines like

-- Found KF6Package: /usr/lib/cmake/KF6Package/KF6PackageConfig.cmake (found version "5.249.0") 
-- Found KF6: success (found suitable version "5.249.0", minimum required is "5.68.0") found components: Package

KF6 version should be 5.245.0 or later. I suspect it still uses Plasma 5 somehow.

I've made a fresh install of Arch Linux in VM, enabled kde-unstable repository, installed plasma-meta, plasma-framework5, and unfortunately cannot reproduce your problem...

@kamikaze211
Copy link

kamikaze211 commented Feb 4, 2024

Weird. Could you please post system information and CMake configure log? Especially lines like

-- Found KF6Package: /usr/lib/cmake/KF6Package/KF6PackageConfig.cmake (found version "5.249.0") 
-- Found KF6: success (found suitable version "5.249.0", minimum required is "5.68.0") found components: Package

KF6 version should be 5.245.0 or later. I suspect it still uses Plasma 5 somehow.

I've made a fresh install of Arch Linux in VM, enabled kde-unstable repository, installed plasma-meta, plasma-framework5, and unfortunately cannot reproduce your problem...

Very sorry to waste a lot of your time.
I don't know how to post system info.
I think maybe it is because that I installed plasma5 before I upgrade to plasma6.
Here is the packages about kf6:

pacman -Qs kf6 | grep kf6
local/attica 5.249.0-1 (kf6)
local/baloo 5.249.0-1 (kf6)
local/bluez-qt 5.249.0-1 (kf6)
local/breeze-icons 5.249.0-1 (kf6)
local/extra-cmake-modules 5.249.0-1 (kf6)
local/frameworkintegration 5.249.0-1 (kf6)
local/karchive 5.249.0-1 (kf6)
local/kauth 5.249.0-1 (kf6)
local/kbookmarks 5.249.0-1 (kf6)
local/kcmutils 5.249.0-1 (kf6)
local/kcodecs 5.249.0-1 (kf6)
local/kcolorscheme 5.249.0-1 (kf6)
local/kcompletion 5.249.0-1 (kf6)
local/kconfig 5.249.0-1 (kf6)
local/kconfigwidgets 5.249.0-1 (kf6)
local/kcoreaddons 5.249.0-1 (kf6)
local/kcrash 5.249.0-1 (kf6)
local/kdav 1:5.249.0-1 (kf6)
local/kdbusaddons 5.249.0-1 (kf6)
local/kdeclarative 5.249.0-1 (kf6)
local/kded 5.249.0-1 (kf6)
local/kdesu 5.249.0-1 (kf6)
local/kdnssd 5.249.0-1 (kf6)
local/kdoctools 5.249.0-1 (kf6)
local/kfilemetadata 5.249.0-1 (kf6)
local/kglobalaccel 5.249.0-1 (kf6)
local/kguiaddons 5.249.0-1 (kf6)
local/kholidays 1:5.249.0-1 (kf6)
local/ki18n 5.249.0-1 (kf6)
local/kiconthemes 5.249.0-1 (kf6)
local/kidletime 5.249.0-1 (kf6)
local/kio 5.249.0-1 (kf6)
local/kirigami 5.249.0-1 (kf6)
local/kitemmodels 5.249.0-1 (kf6)
local/kitemviews 5.249.0-1 (kf6)
local/kjobwidgets 5.249.0-1 (kf6)
local/knewstuff 5.249.0-1 (kf6)
local/knotifications 5.249.0-1 (kf6)
local/knotifyconfig 5.249.0-1 (kf6)
local/kpackage 5.249.0-1 (kf6)
local/kparts 5.249.0-1 (kf6)
local/kpeople 5.249.0-1 (kf6)
local/kplotting 5.249.0-1 (kf6)
local/kpty 5.249.0-1 (kf6)
local/kquickcharts 5.249.0-1 (kf6)
local/krunner 5.249.0-1 (kf6)
local/kservice 5.249.0-1 (kf6)
local/kstatusnotifieritem 5.249.0-1 (kf6)
local/ksvg 5.249.0-1 (kf6)
local/ktexteditor 5.249.0-1 (kf6)
local/ktexttemplate 5.249.0-1 (kf6)
local/ktextwidgets 5.249.0-1 (kf6)
local/kunitconversion 5.249.0-1 (kf6)
local/kwallet 5.249.0-1 (kf6)
local/kwidgetsaddons 5.249.0-1 (kf6)
local/kwindowsystem 5.249.0-1 (kf6)
local/kxmlgui 5.249.0-1 (kf6)
local/modemmanager-qt 5.249.0-1 (kf6)
local/networkmanager-qt 5.249.0-1 (kf6)
local/prison 5.249.0-1 (kf6)
local/purpose 5.249.0-2 (kf6)
local/qqc2-desktop-style 5.249.0-1 (kf6)
local/solid 5.249.0-1 (kf6)
local/sonnet 5.249.0-1 (kf6)
local/syndication 5.249.0-1 (kf6)
local/syntax-highlighting 5.249.0-1 (kf6)
local/threadweaver 5.249.0-1 (kf6)

Here is some packages about kf6 that is not on version 5.249:

pacman -Qs kf6 | grep -i kf6 | grep -v "249"
local/plasma5support 5.93.0-1 (plasma)
    Support components for porting from KF5/Qt5 to KF6/Qt6

Also I tried to find the packages about kf5:

paru -Qs kf5 | grep kf5
local/attica5 5.114.0-1 (kf5)
local/kactivities5 5.114.0-1 (kf5)
local/karchive5 5.114.0-1 (kf5)
local/kauth5 5.114.0-1 (kf5)
local/kbookmarks5 5.114.0-1 (kf5)
local/kcmutils5 5.114.0-1 (kf5)
local/kcodecs5 5.114.0-1 (kf5)
local/kcompletion5 5.114.0-1 (kf5)
local/kconfig5 5.114.0-1 (kf5)
local/kconfigwidgets5 5.114.0-1 (kf5)
local/kcoreaddons5 5.114.0-1 (kf5)
local/kcrash5 5.114.0-1 (kf5)
local/kdbusaddons5 5.114.0-1 (kf5)
local/kdeclarative5 5.114.0-1 (kf5)
local/kdelibs4support 5.114.0-1 (kf5-aids)
local/kdnssd5 5.114.0-1 (kf5)
local/kemoticons 5.114.0-1 (kf5)
local/kfilemetadata5 5.114.0-2 (kf5)
local/kglobalaccel5 5.114.0-2 (kf5)
local/kguiaddons5 5.114.0-1 (kf5)
local/khtml 5.114.0-1 (kf5-aids)
local/ki18n5 5.114.0-1 (kf5)
local/kiconthemes5 5.114.0-1 (kf5)
local/kio5 5.114.0-2 (kf5)
local/kirigami2 5.114.0-1 (kf5)
local/kitemmodels5 5.114.0-1 (kf5)
local/kitemviews5 5.114.0-1 (kf5)
local/kjobwidgets5 5.114.0-1 (kf5)
local/kjs 5.114.0-1 (kf5-aids)
local/knewstuff5 5.114.0-1 (kf5)
local/knotifications5 5.114.0-1 (kf5)
local/knotifyconfig5 5.114.0-1 (kf5)
local/kpackage5 5.114.0-1 (kf5)
local/kparts5 5.114.0-1 (kf5)
local/kplotting5 5.114.0-1 (kf5)
local/kpty5 5.114.0-1 (kf5)
local/kservice5 5.114.0-1 (kf5)
local/ktexteditor5 5.114.0-1 (kf5)
local/ktextwidgets5 5.114.0-1 (kf5)
local/kunitconversion5 5.114.0-1 (kf5)
local/kwallet5 5.114.0-1 (kf5)
local/kwayland5 5.114.0-1 (kf5)
local/kwidgetsaddons5 5.114.0-1 (kf5)
local/kwindowsystem5 5.114.0-1 (kf5)
local/kxmlgui5 5.114.0-1 (kf5)
local/plasma-framework5 5.114.0-2 (kf5)
local/purpose5 5.114.0-2 (kf5)
local/solid5 5.114.0-1 (kf5)
local/sonnet5 5.114.0-1 (kf5)
local/syndication5 5.114.0-1 (kf5)
local/syntax-highlighting5 5.114.0-1 (kf5)
local/threadweaver5 5.114.0-1 (kf5)

So should I uninstall kf5 packages?

@kamikaze211
Copy link

kamikaze211 commented Feb 4, 2024

Weird. Could you please post system information and CMake configure log? Especially lines like

-- Found KF6Package: /usr/lib/cmake/KF6Package/KF6PackageConfig.cmake (found version "5.249.0") 
-- Found KF6: success (found suitable version "5.249.0", minimum required is "5.68.0") found components: Package

KF6 version should be 5.245.0 or later. I suspect it still uses Plasma 5 somehow.

I've made a fresh install of Arch Linux in VM, enabled kde-unstable repository, installed plasma-meta, plasma-framework5, and unfortunately cannot reproduce your problem...

I checked the printout message when I execute the command :
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=ON

❯ cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=ON
-- The C compiler identification is GNU 13.2.1
-- The CXX compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Installing in the same prefix as Qt, adopting their path scheme.
-- Performing Test HAVE_STDATOMIC
-- Performing Test HAVE_STDATOMIC - Success
-- Found WrapAtomic: TRUE  
-- Found KF6Package: /usr/lib/cmake/KF6Package/KF6PackageConfig.cmake (found version "5.249.0") 
-- Found KF6: success (found suitable version "5.249.0", minimum required is "5.68.0") found components: Package 
-- Found OpenGL: /usr/lib/libOpenGL.so   
-- Found WrapOpenGL: TRUE  
-- Found XKB: /usr/lib/libxkbcommon.so (found suitable version "1.6.0", minimum required is "0.5.0") 
-- Found WrapVulkanHeaders: /usr/include  
-- Found X11: /usr/include   
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- QT_MAJOR_VERSION = 6
-- Found PkgConfig: /usr/bin/pkg-config (found version "2.1.0") 
-- Checking for module 'mpv'
--   Found mpv, version 2.2.0
CMake Deprecation Warning at src/backend_scene/third_party/glslang/CMakeLists.txt:36 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


CMake Warning (dev) at src/backend_scene/third_party/glslang/CMakeLists.txt:247 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

Call Stack (most recent call first):
  src/backend_scene/third_party/glslang/CMakeLists.txt:311 (find_host_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.11.7", minimum required is "3") 
-- Google Mock was not found - tests based on that will not build
-- spirv-tools not linked - illegal SPIRV may be generated for HLSL
-- Found Threads: TRUE  
-- Checking for module 'liblz4'
--   Found liblz4, version 1.9.4
-- Found Vulkan: /lib/libvulkan.so (found version "1.3.276") found components: glslc glslangValidator 
-- Configuring done (1.3s)
-- Generating done (0.0s)
-- Build files have been written to: /home/ice/git/wallpaper-engine-kde-plugin/build

It contains the 2 lines:

-- Found KF6Package: /usr/lib/cmake/KF6Package/KF6PackageConfig.cmake (found version "5.249.0") 
-- Found KF6: success (found suitable version "5.249.0", minimum required is "5.68.0") found components: Package

But also has some warning message:

CMake Warning (dev) at src/backend_scene/third_party/glslang/CMakeLists.txt:247 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

Call Stack (most recent call first):
  src/backend_scene/third_party/glslang/CMakeLists.txt:311 (find_host_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 4, 2024

@kamikaze211
Reproduced by uninstalling Plasma 6, install Plasma 5, then upgrade to Plasma 6. Have done some digging but still no idea why...

Noticed that plasmapkg2 is now a wrapper of kpackagetool5 1, consider

kpackagetool6 -i plugin/ || kpackagetool6 -u plugin/

for installing and upgrading;
or if still not working, maybe just -DUSE_PLASMAPKG=OFF.

Footnotes

  1. https://github.com/KDE/plasma-framework/blob/v5.112.0/src/plasmapkg/main.cpp#L78

@kamikaze211
Copy link

@fxzjshm
Thank you very much, I tried to rebuild with your suggestion:

❯ pwd
/home/ice/git/wallpaper-engine-kde-plugin/build
❯ kpackagetool6 -i ../plugin/
installation succeed /home/ice/.local/share/kpackage/generic/com.github.casout.wallpaperEngineKde/
❯ sudo make install
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/libWallpaperEngineKde.so
-- Installing: /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/qmldir
❯  systemctl --user restart plasma-plasmashell.service

But after I restart plasma service, I still cannot find the wallpaper-engine-kde-plugin in desktop/wallpaper settings.
Maybe I need to find a way to completely uninstall plasma 5 (and all the packages related to plasma 5).
Anyway, thank you for helping me so much.

@kamikaze211
Copy link

kamikaze211 commented Feb 11, 2024

After some researching, I tried to remove something, and rebuild everything, and now it works.

#remove everything that had been existed.
rm -rf ~/.local/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde
rm -rf ~/.local/share/kpackage/generic/com.github.casout.wallpaperEngineKde/
sudo rm -rf /usr/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde/
sudo rm -f /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/libWallpaperEngineKde.so
sudo rm -rf /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/qmldir

#build from source
cd ~ && mkdir git && cd ~/git
git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin
cd wallpaper-engine-kde-plugin/
git fetch && git checkout qt6
git submodule update --init
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=OFF
make -j$nproc
kpackagetool6 -i ../plugin/
sudo make install
systemctl --user restart plasma-plasmashell.service

After all of this, I can use this plugin on Plasma 6 RC2 now.

Also, if you need scene wallpaper support, just run this:

cd ~/git/wallpaper-engine-kde-plugin
cd src/backend_scene/standalone_view
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_QML=ON -DQT_MAJOR_VERSION=6
make -j$nproc

#check if it works
./sceneviewer --help

@Jelgnum
Copy link
Contributor

Jelgnum commented Feb 11, 2024

After some researching, I tried to remove something, and rebuild everything, and now it works.

#remove everything that had been existed.
rm -r ~/.local/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde
rm -r ~/.local/share/kpackage/generic/com.github.casout.wallpaperEngineKde/
rm -r /usr/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde/
sudo rm /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/libWallpaperEngineKde.so
sudo rm -r /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/qmldir

#build from source
cd ~ && mkdir git && cd ~/git
git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin
cd wallpaper-engine-kde-plugin/
git fetch && git checkout qt6
git submodule update --init
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=OFF
make -j$nproc
kpackagetool6 -i ../plugin/
sudo make install
systemctl --user restart plasma-plasmashell.service

After all of this, I can use this plugin on Plasma 6 RC2 now.

Also, if you need scene wallpaper support, just run this:

cd ~/git/wallpaper-engine-kde-plugin
cd src/backend_scene/standalone_view
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_QML=ON -DQT_MAJOR_VERSION=6
make -j$nproc

#check if it works
./sceneviewer --help

wow, this worked for me too, even after I thought I tried this before, I must have missed something when deleting, thank you for sharing your steps to solve it

@domglusk
Copy link

Here's an amateur bash script using the commands you provided. I prefer to keep my git projects in a ~/.gtclone folder.

#!/bin/bash
#remove everything that had been existed.
rm -r ~/.local/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde
rm -r ~/.local/share/kpackage/generic/com.github.casout.wallpaperEngineKde/
sudo rm -r /usr/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde/
sudo rm /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/libWallpaperEngineKde.so
sudo rm -r /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/qmldir

#build from source
mkdir -p ~/.gtclone
cd ~/.gtclone
git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin ; cd wallpaper-engine-kde-plugin/
git fetch && git checkout qt6 && git submodule update --init
mkdir -p build ; cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=ON && make -j$nproc && kpackagetool6 -i ../plugin/ && sudo make install && systemctl --user restart plasma-plasmashell.service

I'm getting a build error for mpv, I'm running openSUSE Tumbleweed with the unstable kde repos enabled. This is the relevant cmake error. I do have mpv-devel installed.

Your branch is up to date with 'origin/qt6'.
-- QT_MAJOR_VERSION = 6
CMake Deprecation Warning at src/backend_scene/third_party/glslang/CMakeLists.txt:36 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


CMake Warning (dev) at src/backend_scene/third_party/glslang/CMakeLists.txt:247 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

Call Stack (most recent call first):
  src/backend_scene/third_party/glslang/CMakeLists.txt:311 (find_host_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Google Mock was not found - tests based on that will not build
-- spirv-tools not linked - illegal SPIRV may be generated for HLSL
-- Configuring done (0.3s)
-- Generating done (0.1s)
-- Build files have been written to: /home/domglusk/.gtclone/wallpaper-engine-kde-plugin/build
[  0%] Built target mpvbackend_autogen_timestamp_deps
[  2%] Built target OSDependent
[  3%] Built target HLSL
[  5%] Built target spirv-reflect
[  7%] Built target GenericCodeGen
[  9%] Built target glad
[ 10%] Built target OGLCompiler
[ 14%] Built target wpUtils
[ 14%] Built target mpvbackend_autogen
[ 17%] Built target wpTimer
[ 18%] Built target wpAudio
[ 22%] Built target wpRGraph
[ 23%] Built target wpLooper
[ 48%] Built target MachineIndependent
[ 51%] Built target wpParticle
[ 54%] Built target mpvbackend
[ 55%] Built target glslang
[ 62%] Built target SPIRV
[ 67%] Built target wpScene
[ 75%] Built target wpVulkan
[ 80%] Built target wpVulkanRender
[ 92%] Built target wescene-renderer
[ 92%] Built target wescene-renderer-qml_autogen_timestamp_deps
[ 93%] Built target wescene-renderer-qml_autogen
[ 96%] Built target wescene-renderer-qml
[ 96%] Built target WallpaperEngineKde_autogen_timestamp_deps
[ 96%] Built target WallpaperEngineKde_autogen
[ 97%] Linking CXX shared library libWallpaperEngineKde.so
/usr/lib64/gcc/x86_64-suse-linux/13/../../../../x86_64-suse-linux/bin/ld: backend_mpv/libmpvbackend.a(MpvBackend.cpp.o): warning: relocation against `_ZN7QString6_emptyE@@Qt_6' in read-only section `.text'
/usr/lib64/gcc/x86_64-suse-linux/13/../../../../x86_64-suse-linux/bin/ld: backend_mpv/libmpvbackend.a(MpvBackend.cpp.o): relocation R_X86_64_PC32 against symbol `__libc_single_threaded@@GLIBC_2.32' cannot be used when making a shared object; recompile with -fPIC
/usr/lib64/gcc/x86_64-suse-linux/13/../../../../x86_64-suse-linux/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/WallpaperEngineKde.dir/build.make:183: src/libWallpaperEngineKde.so] Error 1
make[1]: *** [CMakeFiles/Makefile2:713: src/CMakeFiles/WallpaperEngineKde.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 13, 2024

@domglusk

I'm getting a build error for mpv, I'm running openSUSE Tumbleweed with the unstable kde repos enabled. This is the relevant cmake error. I do have mpv-devel installed.

Reproduced on a fresh install of openSUSE Tumbleweed, but with a different error log:

[ 97%] Linking CXX shared library libWallpaperEngineKde.so
/usr/lib64/gcc/x86_64-suse-linux/13/../../../../x86_64-suse-linux/bin/ld: backend_mpv/libmpvbackend.a(mocs_compilation.cpp.o): relocation R_X86_64_32 against hidden symbol `_ZN3mpv9MpvObject16staticMetaObjectE' can not be used when making a shared object
/usr/lib64/gcc/x86_64-suse-linux/13/../../../../x86_64-suse-linux/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status

and not reproduced if compile with Clang , so likely not a bug on our side.

@domglusk
Copy link

and not reproduced if compile with Clang, so likely not a bug on our side.
How do I compile it with clang instead?

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 13, 2024

How do I compile it with clang instead?

Add flags -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ when running CMake.

Alternatively, as the error log indicates, enabling position-independent code on all targets (-DCMAKE_POSITION_INDEPENDENT_CODE=ON) also works. Will update CMake code.

This fixes errors like "relocation R_X86_64_PC32 against symbol `...' cannot be
used when making a shared object" when building on openSUSE Tumbleweed.

Related log:
catsout#344 (comment)

Signed-off-by: fxzjshm <fxzjshm@163.com>
@kamikaze211
Copy link

kamikaze211 commented Feb 13, 2024

I found a problem that: scene wallpapers can't scroll on Y axis.
I'm sure this is OK on plasma 5.
Example: https://steamcommunity.com/sharedfiles/filedetails/?id=3078111134

Sorry I didn't see the TODO list.

Finally, I had successfully made a desktop file to help me to open scene.pkg file

first you need to compile the sceneviewer

do as this : #344 (comment)

create a desktop file

touch ~/.local/share/applications/open_with_sceneviewer.desktop

edit the desktop file

kate ~/.local/share/applications/open_with_sceneviewer.desktop

copy & patse the contents below into it and save

[Desktop Entry]
Name=open_with_sceneviewer
Actions=open_with_sceneviewer
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
X-KDE-Priority=TopLevel
Exec=~/git/wallpaper-engine-kde-plugin/src/backend_scene/standalone_view/build/sceneviewer-qml -f 165 -R 3440x1440 ~/mnt/Recovery/SteamLibrary/steamapps/common/wallpaper_engine/assets/ %F

notice that:

this is just en example
you should first compile sceneviewer
you need to edit the path as your owns and any other parameters (such as -f -R)

restart dolphin, and select scene.pkg file with right click, then choose open with ...

search & select the open_with_sceneviewer option, then you will get a window show the scene wallpaper

optional:

you can use the plugin to conveniently open the folders where the scene.pkg file is
you can open several scene.pkg files, and drop the scene wallpaper windows into a group
you can use kwin window rules to make the scene wallpaper window be full-screen as default
you can use a virtual desktop, and make all these windows only shown in specify desktop

@domglusk
Copy link

How do I compile it with clang instead?

Add flags -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ when running CMake.

Alternatively, as the error log indicates, enabling position-independent code on all targets (-DCMAKE_POSITION_INDEPENDENT_CODE=ON) also works. Will update CMake code.

Your updating code makes it compile correctky and install, but it's not showing up as a wallpaper plugin option in the wallpaper settings.

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 14, 2024

but it's not showing up as a wallpaper plugin option in the wallpaper settings.

That's strange, it shows up in my virtual machine.
Try both -DUSE_PLASMAPKG=OFF and -DUSE_PLASMAPKG=ON with kpackagetool6 -i ../plugin/? I used -DUSE_PLASMAPKG=OFF in this virtual machine.

@kamikaze211
Copy link

How do I compile it with clang instead?

Add flags -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ when running CMake.
Alternatively, as the error log indicates, enabling position-independent code on all targets (-DCMAKE_POSITION_INDEPENDENT_CODE=ON) also works. Will update CMake code.

Your updating code makes it compile correctky and install, but it's not showing up as a wallpaper plugin option in the wallpaper settings.

If you had tried to install before, then some files may be existed, make sure you had deleted them first.

rm -rf ~/.local/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde
rm -rf ~/.local/share/kpackage/generic/com.github.casout.wallpaperEngineKde/
sudo rm -rf /usr/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde/
sudo rm -f /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/libWallpaperEngineKde.so
sudo rm -rf /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/qmldir

Then use USE_PLASMAPKG=OFF for system-wide installation

From #344 (comment)

@Logical-sh
Copy link

Has anyone else experience on QT6.7 (arch beta) the select library folder just does nothing?

@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 18, 2024

@Logical-sh
I tested in VM and works fine.
"Select library folder" is now a FolderDialog of QtQuick.Dialogs of package qt6-declarative, do you have qt6-declarative installed?
And please provide log as said in DEBUG.md

@Logical-sh
Copy link

debug.log
Here is a log from trying to browse.
The dialog appears just fine, I select it, and the dialog actually is changing to this
image

@Logical-sh
Copy link

Logical-sh commented Feb 18, 2024

I am a developer, so I am comfortable trying things/patches, I am just very not familiar with qt/kde coding.
package version for qt6 is :
qt6-base 6.7.0beta3-1
And to be 100% clear, I can select my steam library, its just acting like its not finding it or changing the cfg_steamLibaryPath var because the list and the tooltip on the button do not update.

Reported by @Logical-sh  at
catsout#344 (comment)

Fixes: de11e8b ("Fix settings page")
Signed-off-by: fxzjshm <fxzjshm@163.com>
@fxzjshm
Copy link
Contributor Author

fxzjshm commented Feb 18, 2024

@Logical-sh
Found that I forgot to adapt to FolderDialog, have pushed a fix and it should now select Steam library.

@lgdsgd2000 lgdsgd2000 mentioned this pull request Mar 2, 2024
@domglusk
Copy link

domglusk commented Mar 2, 2024

Scenes are working just fine, but plasma crashes every time consistently when switching, and web wallpapers do not work. I get

Shop id: [wallpaper id]
Type: web
Message: file:///usr/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde/contents/ui/backend/QtWebView.qml:81 Element is not creatable```

@AngelSherry
Copy link

AngelSherry commented Mar 5, 2024

Due to QtMultimedia and Plasma Workspace updated to 6, there are three issues.

  1. it seems that the video backend of QtMultimedia won't work any more.

螢幕截圖_20240306_003518

  1. The video backend of MPV won't pause with any window focused or maximized on Plasma 6 anymore. It will take large usages on gaming or watching video with fullscreen.

螢幕截圖_20240306_020004

  1. When using the video backend of MPV , it will always ignore the setting of display scale of video after you login Plasma 6. It won't have correct scale unless you change to another type of scale then change back manually.

I tried to modify QtMultimedia.qml following this site: MediaPlayer QML Type. The errors were gone, but what I got was blackscreen without loading any videos. (Lots of properties seem deprecated on QtMultimedia 6)

螢幕截圖_20240306_043424

@zany130
Copy link

zany130 commented Mar 5, 2024

also getting this not sure if its the same as above. back on plasma 5 this same wallpaper works fine

image
https://steamcommunity.com/sharedfiles/filedetails/?id=1404861377

@domglusk
Copy link

domglusk commented Mar 5, 2024

All webpage wallpapers appear to be broken, for scenes I believe the ones that were working on plasma5 also work on plasma6, could someone on plasma5 please test if this scene is broken on plasma5, it's broken on plasma6.
1-0420-Mar052024

@xxhinotorixx
Copy link

#remove everything that had been existed.
rm -rf ~/.local/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde
rm -rf ~/.local/share/kpackage/generic/com.github.casout.wallpaperEngineKde/
sudo rm -rf /usr/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde/
sudo rm -f /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/libWallpaperEngineKde.so
sudo rm -rf /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/qmldir

#build from source
cd ~ && mkdir git && cd ~/git
git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin
cd wallpaper-engine-kde-plugin/
git fetch && git checkout qt6
git submodule update --init
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=OFF
make -j$nproc
kpackagetool6 -i ../plugin/
sudo make install
systemctl --user restart plasma-plasmashell.service

Amazing! Worked for me as well!
Thanks everyone for putting your time into this!

@AnghelRA
Copy link

AnghelRA commented Mar 6, 2024

Due to QtMultimedia and Plasma Workspace updated to 6, there are three issues.

1. it seems that the video backend of **QtMultimedia** won't work any more.

螢幕截圖_20240306_003518

2. The video backend of **MPV** won't pause with any window focused or maximized on Plasma 6 anymore. It will take large usages on gaming or watching video with fullscreen.

螢幕截圖_20240306_020004

3. When using the video backend of **MPV** , it will always ignore the setting of display scale of video after you login Plasma 6. It won't have correct scale unless you change to another type of scale then change back manually.

I tried to modify QtMultimedia.qml following this site: MediaPlayer QML Type. The errors were gone, but what I got was blackscreen without loading any videos. (Lots of properties seem deprecated on QtMultimedia 6)

螢幕截圖_20240306_043424

It looks like there is an open bug for qt6 regarding missing flushMode, not sure if it was intentional or not: https://bugreports.qt.io/browse/QTBUG-110310

@EliteAMDGamer
Copy link

For me web is not working everything else seems to be working. Garuda - arch kde 6.0.1

https://bin.garudalinux.org/?536f8d8dde6dfa56#2pA7A8JBj7bzV51tmmX7UoYkK8BQRufo41ibaqnaN2Us
here's my install with the errors bit to long to post here

@AngelSherry
Copy link

AngelSherry commented Mar 6, 2024

Due to QtMultimedia and Plasma Workspace updated to 6, there are three issues.

1. it seems that the video backend of **QtMultimedia** won't work any more.

螢幕截圖_20240306_003518

2. The video backend of **MPV** won't pause with any window focused or maximized on Plasma 6 anymore. It will take large usages on gaming or watching video with fullscreen.

螢幕截圖_20240306_020004

3. When using the video backend of **MPV** , it will always ignore the setting of display scale of video after you login Plasma 6. It won't have correct scale unless you change to another type of scale then change back manually.

I tried to modify QtMultimedia.qml following this site: MediaPlayer QML Type. The errors were gone, but what I got was blackscreen without loading any videos. (Lots of properties seem deprecated on QtMultimedia 6)
螢幕截圖_20240306_043424

It looks like there is an open bug for qt6 regarding missing flushMode, not sure if it was intentional or not: https://bugreports.qt.io/browse/QTBUG-110310

When I deleted flushmode on the code, it still showed a lot of non-existent properties such as source, muted, volume and so on. It's no doubt that the whole code of the backend of QtMultimedia needs to be reworked. I'm not familiar with Qt and QML, so I have no idea about it.

Also, the detection of window on Plasma 6 does change, that's why we can't let the backend of MPV pause on any focused or maximized windows. WindowModel.qml is also needed to be reworked.

@catsout catsout merged commit 408fd85 into catsout:main Mar 7, 2024
@queenbiscuit311
Copy link

queenbiscuit311 commented Mar 7, 2024

I built this and installed it and works great but there's 2 major issues.

  1. plasmashell crashes about 50% of the time that the wallpaper is changed

  2. as others have said, no web wallpapers

  3. the wallpaper pausing mechanism seems to just not work at all. regardless of what type of wallpaper i use or what backend i use it just doesn't pause according to my settings ever

edit: actually it pauses when "pause if PC is on battery power" is enabled, but thats it

@STIA-Maverick
Copy link

STIA-Maverick commented Mar 9, 2024

@fxzjshm good day mate, it seems like somehow your repo broke after merging with main branch, now it has following error, any ideas how to fix it? I'm on EndeavourOS Galileo Neo Plasma 6.0.1.
Screenshot_20240309_172956

The problem is fixed now, see solution at #367 (comment)

@MakaiHanta
Copy link

After some researching, I tried to remove something, and rebuild everything, and now it works.

#remove everything that had been existed.
rm -rf ~/.local/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde
rm -rf ~/.local/share/kpackage/generic/com.github.casout.wallpaperEngineKde/
sudo rm -rf /usr/share/plasma/wallpapers/com.github.casout.wallpaperEngineKde/
sudo rm -f /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/libWallpaperEngineKde.so
sudo rm -rf /usr/lib/qt6/qml/com/github/catsout/wallpaperEngineKde/qmldir

#build from source
cd ~ && mkdir git && cd ~/git
git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin
cd wallpaper-engine-kde-plugin/
git fetch && git checkout qt6
git submodule update --init
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=OFF
make -j$nproc
kpackagetool6 -i ../plugin/
sudo make install
systemctl --user restart plasma-plasmashell.service

After all of this, I can use this plugin on Plasma 6 RC2 now.

Also, if you need scene wallpaper support, just run this:

cd ~/git/wallpaper-engine-kde-plugin
cd src/backend_scene/standalone_view
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_QML=ON -DQT_MAJOR_VERSION=6
make -j$nproc

#check if it works
./sceneviewer --help
   ~  cd ~ && mkdir git && cd ~/git                                                           ✔  3s  
    ~/git  git clone https://github.com/fxzjshm/wallpaper-engine-kde-plugin                           ✔ 
cd wallpaper-engine-kde-plugin/
git fetch && git checkout qt6
git submodule update --init
Клонирование в «wallpaper-engine-kde-plugin»...
remote: Enumerating objects: 7662, done.
remote: Counting objects: 100% (578/578), done.
remote: Compressing objects: 100% (108/108), done.
remote: Total 7662 (delta 492), reused 512 (delta 470), pack-reused 7084
Получение объектов: 100% (7662/7662), 5.34 МиБ | 8.78 МиБ/с, готово.
Определение изменений: 100% (4799/4799), готово.
Уже на «qt6»
Эта ветка соответствует «origin/qt6».
Подмодуль «src/backend_scene/third_party/glslang» (https://github.com/KhronosGroup/glslang.git) зарегистрирован по пути «src/backend_scene/third_party/glslang»
Клонирование в «/home/yaros/git/wallpaper-engine-kde-plugin/src/backend_scene/third_party/glslang»...
Submodule path 'src/backend_scene/third_party/glslang': checked out 'c34bb3b6c55f6ab084124ad964be95a699700d34'
    ~/g/wallpaper-engine-kde-plugin    qt6  mkdir build && cd build                        ✔  13s  
    ~/g/wallpaper-engine-kde-plugin/build    qt6  cmake .. -DCMAKE_BUILD_TYPE=Release -DQT_MAJOR_VERSION=6 -DUSE_PLASMAPKG=OFF
-- The C compiler identification is GNU 13.2.1
-- The CXX compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Performing Test HAVE_STDATOMIC
-- Performing Test HAVE_STDATOMIC - Success
-- Found WrapAtomic: TRUE
-- Found OpenGL: /usr/lib/libOpenGL.so
-- Found WrapOpenGL: TRUE
-- Found XKB: /usr/lib/libxkbcommon.so (found suitable version "1.7.0", minimum required is "0.5.0")
-- Found WrapVulkanHeaders: /usr/include
-- Installing in the same prefix as Qt, adopting their path scheme.
-- Found X11: /usr/include
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found KF6Package: /usr/lib/cmake/KF6Package/KF6PackageConfig.cmake (found version "6.1.0")
-- Found KF6: success (found suitable version "6.1.0", minimum required is "5.68.0") found components: Package
-- Found PkgConfig: /usr/bin/pkg-config (found version "2.1.1")
-- Checking for module 'mpv'
--   Found mpv, version 2.3.0
CMake Deprecation Warning at src/backend_scene/third_party/glslang/CMakeLists.txt:36 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


CMake Warning (dev) at src/backend_scene/third_party/glslang/CMakeLists.txt:247 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

Call Stack (most recent call first):
  src/backend_scene/third_party/glslang/CMakeLists.txt:311 (find_host_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.12.3", minimum required is "3")
-- Google Mock was not found - tests based on that will not build
-- spirv-tools not linked - illegal SPIRV may be generated for HLSL
-- Checking for module 'liblz4'
--   Found liblz4, version 1.9.4
-- Found Vulkan: /lib/libvulkan.so (found version "1.3.279") found components: glslc glslangValidator
-- Configuring done (1.3s)
CMake Error: The INTERFACE_QT_MAJOR_VERSION property of "Qt6::Qml" does
not agree with the value of QT_MAJOR_VERSION already determined
for "WallpaperEngineKde".

CMake Error: The INTERFACE_QT_MAJOR_VERSION property of "Qt6::Gui" does
not agree with the value of QT_MAJOR_VERSION already determined
for "mpvbackend".

CMake Error: The INTERFACE_QT_MAJOR_VERSION property of "Qt6::Gui" does
not agree with the value of QT_MAJOR_VERSION already determined
for "wescene-renderer-qml".

-- Generating done (0.0s)
CMake Generate step failed.  Build files cannot be regenerated correctly.

Operating System: Manjaro Linux
KDE Plasma Version: 6.0.4
KDE Frameworks Version: 6.1.0
Qt Version: 6.7.0
Kernel Version: 6.9.0-1-MANJARO (64-bit)
Graphics Platform: X11
Processors: 16 × AMD Ryzen 7 7800X3D 8-Core Processor
Memory: 30.5 ГиБ of RAM
Graphics Processor: NVIDIA GeForce RTX 3060 Ti/PCIe/SSE2
Manufacturer: ASRock
Product Name: B650 Pro RS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet