boehs / Lightly

A modern style for qt applications.
Other
178 stars 10 forks source link

Add support for plasma 6 #13

Open chicco-carone opened 7 months ago

chicco-carone commented 7 months ago

I just finished updating to plasma 6 beta 1 and this style is not present anymore in the settings since it has to be ported to qt6.

DexterHaxxor commented 6 months ago

To be honest, it would be a good idea to rebase this style on upstream Breeze, because that has been getting a lot of love recently and rewriting this to Qt6 in this state doesn't seem like a great idea.

boehs commented 6 months ago

2

edpil02 commented 5 months ago

I made a port to QT6 4 months ago. https://github.com/Luwx/Lightly/issues/200#issuecomment-1725074052 Still have no major issue after plasma rc1 update , but I keep trying to clean up the code.

boehs commented 5 months ago

@edpil02 if you open source it or email me a patch (my email is evan (the at goes here) boehs.org) I’m more than happy to merge it here

edpil02 commented 5 months ago

I planned to send you a patch since my port is based on your repository and I wanted a code review cause I'm not a programmer , after dealing with some qt6 depredications.

At the same time klassy developer: https://github.com/paulmcauley/klassy is ready to add lighty options in his code and I think he will accept help. I wonder if this would be a better solution rather than lightly which is no longer maintained. At my modest level I will try to start with “transparent dolphin view.”

alba4k commented 4 months ago

@edpil02 Could you please publish the source code, or even just a lightly.so? I'd really love to check it out

Also I don't see how klassy could be an alternative, as that doesnt currently support qt6 either

boehs commented 4 months ago

I’m considering the possibility of placing a bounty on this. What would people be willing to contribute?

alba4k commented 4 months ago

Not that much, but I could consider putting 5$ into it

edpil02 commented 4 months ago

I'm still spending time reviewing the code because there are still changes in qt6 With qt6.5 I had no problem. With qt.6.6 I noticed while doing tests after my last post that the opacity had disappeared in the dolphin sidebar. A sent two bugs report : https://bugreports.qt.io/browse/QTBUG-122290 It was only yesterday that I realized that it was not a problem of apacity but that it was necessary to change a Boolean function in lightly. I repeat, I am a beginner learning Qt... My distro will move to qt6.6.2 if there is no change I will send the code to Boehs.

edpil02 commented 4 months ago

Good news, I managed to get my opacity slider to work again. I hope not to have new changes in a few days when my distro is on Qt6.6.2 screen

alba4k commented 4 months ago

@edpil02 that is looking great

Would you be able to test whether qt6ct is able to see the theme? Also, when can we hope for your work to become publicly avaiable?

edpil02 commented 4 months ago

See the screenshot , qt6ct (i dont use it) seems to see the theme. As I said my distro will upgrade to the new version of qt6 in 3 days and if that goes well I will send a patch to Boehs for review and a merge. qt6ct

alba4k commented 4 months ago

That's awesome!

btw, qt6ct just exists to make qt handling easier outside of plasma, so it would make sense for you not to be using it

edpil02 commented 4 months ago

@alba4k . Done . I sent a tarball to Boehs for a merge if it's possible.

boehs commented 4 months ago

I can confirm that I have received the patched tarball, I will review it shortly.

alba4k commented 4 months ago

I was wondering

Do you know if it would be possible to get control on the AUR package?

https://aur.archlinux.org/packages/lightly-qt

chicco-carone commented 4 months ago

I was wondering

Do you know if it would be possible to get control on the AUR package?

https://aur.archlinux.org/packages/lightly-qt

There is already the lightly-boehs-git package on the aur

DexterHaxxor commented 4 months ago

As the former maintainer of that package, no, there isn't, I've deleted it because the lightly-git package points to this repo.

alba4k commented 4 months ago

I see, thanks!

Also, why does the -git version have so many extra dependencies? immagine

chicco-carone commented 4 months ago

As the former maintainer of that package, no, there isn't, I've deleted it because the lightly-git package points to this repo.

That's why i couldn't find it. I thought that the lightly-git was the git version of the original version

alba4k commented 4 months ago

@boehs did you manage to start taking a look at their code? sorry to bother 😅

boehs commented 4 months ago

Briefly. My Linux machine is inaccessible right now so I intend to setup a VM to test, but I likely won't have anything before next week.

Message ID: @.***>

boehs commented 4 months ago

I have opened a PR at #16 so, if you should wish, you can test the code yourself. Aside from testing, I have asked for edpil02's preferred name and email for the commit

boehs commented 4 months ago

I see, thanks!

Also, why does the -git version have so many extra dependencies? immagine

I do not maintain the AUR package.

Edit: And at this time I am not interested in doing so.

boehs commented 4 months ago

One question I especially need to answer is if this code is still functional on KDE 5.27. If it's not, a decision needs to be made:

Because I suppose I am now the benevolent dictator, I'm inclined to opt for option A, but I am open to other opinions

alba4k commented 4 months ago

How about C? a cmake flag like -DUSE_QT6=OFF/ON could be used (this is what adwaita seems to do)

edpil02 commented 4 months ago

@alba4k I thought about using this flag for compatibility with plasma5. But just to make a code compilable with Qt6 I believe that there are at least fifty lines to change without counting that it will certainly be necessary to rewrite certain parts that Qt declares obsolete. And even when the code compiled, the configs did not appear in Plasma 6. I had to look in the Breeze code to find a solution. I don't think it was worth it.

But I think Boehs is better than me to decide on the right solution and improve the code.

SakiKarened commented 4 months ago

image With lastest commit it doesn't seem to compile

edpil02 commented 4 months ago

This is what I said above, I added 1 files lightlystyleconfig.json

I Buils fine for me .

 DESTDIR=/builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64
+ /usr/bin/cmake --install redhat-linux-build
-- Install configuration: "Debug"
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/color-schemes/Lightly.colors
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/qt6/plugins/styles/lightly6.so
-- Set non-toolchain portion of runtime path of "/builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/qt6/plugins/styles/lightly6.so" to ""
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/kstyle/themes/lightly.themerc
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/qt6/plugins/kstyle_config/lightlystyleconfig.so
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/applications/lightlystyleconfig.desktop
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/bin/lightly-settings6
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/icons/hicolor/scalable/apps/lightly-settings.svgz
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/liblightlycommon6.so.6.80
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/liblightlycommon6.so.6
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/qt6/plugins/org.kde.kdecoration2/org.kde.lightly.so
-- Set non-toolchain portion of runtime path of "/builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/qt6/plugins/org.kde.kdecoration2/org.kde.lightly.so" to ""
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/kservices6/lightlydecorationconfig.desktop
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/qt6/plugins/org.kde.kdecoration2.kcm/kcm_lightlydecoration.so
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/applications/kcm_lightlydecoration.desktop
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/cmake/Lightly/LightlyConfig.cmake
-- Installing: /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/lib64/cmake/Lightly/LightlyConfigVersion.cmake
Processing files: lightly-qt6-0.4.1-5.fc41.x86_64
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.KrqGMd
+ umask 022
+ cd /builddir/build/BUILD
+ cd Lightly-0.4.1
+ DOCDIR=/builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/doc/lightly-qt6
+ export LC_ALL=
+ LC_ALL=
+ export DOCDIR
+ /usr/bin/mkdir -p /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/doc/lightly-qt6
+ cp -pr /builddir/build/BUILD/Lightly-0.4.1/AUTHORS /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/doc/lightly-qt6
+ cp -pr /builddir/build/BUILD/Lightly-0.4.1/README.md /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/doc/lightly-qt6
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.FhE7ip
+ umask 022
+ cd /builddir/build/BUILD
+ cd Lightly-0.4.1
+ LICENSEDIR=/builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/licenses/lightly-qt6
+ export LC_ALL=
+ LC_ALL=
+ export LICENSEDIR
+ /usr/bin/mkdir -p /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/licenses/lightly-qt6
+ cp -pr /builddir/build/BUILD/Lightly-0.4.1/COPYING /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64/usr/share/licenses/lightly-qt6
+ RPM_EC=0
++ jobs -p
+ exit 0
Provides: application() application(kcm_lightlydecoration.desktop) application(lightlystyleconfig.desktop) cmake(Lightly) = 6.80 cmake(lightly) = 6.80 liblightlycommon6.so.6()(64bit) lightly-qt6 = 0.4.1-5.fc41 lightly-qt6(x86-64) = 0.4.1-5.fc41
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: cmake-filesystem(x86-64) libKF6ColorScheme.so.6()(64bit) libKF6ConfigCore.so.6()(64bit) libKF6ConfigGui.so.6()(64bit) libKF6CoreAddons.so.6()(64bit) libKF6GuiAddons.so.6()(64bit) libKF6I18n.so.6()(64bit) libKF6IconThemes.so.6()(64bit) libKF6KCMUtils.so.6()(64bit) libKF6KCMUtilsCore.so.6()(64bit) libKF6Style.so.6()(64bit) libKF6WidgetsAddons.so.6()(64bit) libKF6WindowSystem.so.6()(64bit) libQt6Core.so.6()(64bit) libQt6Core.so.6(Qt_6)(64bit) libQt6Core.so.6(Qt_6.6)(64bit) libQt6DBus.so.6()(64bit) libQt6DBus.so.6(Qt_6)(64bit) libQt6Gui.so.6()(64bit) libQt6Gui.so.6(Qt_6)(64bit) libQt6Quick.so.6()(64bit) libQt6Quick.so.6(Qt_6)(64bit) libQt6Widgets.so.6()(64bit) libQt6Widgets.so.6(Qt_6)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.32)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_ABI_DT_RELR)(64bit) libkdecorations2.so.6()(64bit) liblightlycommon6.so.6()(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.9)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libstdc++.so.6(GLIBCXX_3.4.30)(64bit) rtld(GNU_HASH)
Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/lightly-qt6-0.4.1-5.fc41.x86_64

Wrote: /builddir/build/RPMS/lightly-qt6-0.4.1-5.fc41.x86_64.rpm
SakiKarened commented 4 months ago

Thanks ! What about CMake Error at kdecoration/CMakeLists.txt:50 (add_subdirectory): The source directory

/home/gainsbarre/Lightly/kdecoration/config

does not contain a CMakeLists.txt file.

I don't see the CMakeList anywhere

edpil02 commented 4 months ago

Perhaps the tarball is not complete config.tar.gz

SakiKarened commented 4 months ago

Hey thanks, it works except it lacks the .h for every config especially ui_lightlyconfigurationui.h

SakiKarened commented 4 months ago

full error is

[ 71%] Building CXX object kdecoration/CMakeFiles/lightlydecoration.dir/lightlydecoration.cpp.o
In file included from /home/gainsbarre/Lightly/kdecoration/lightlydecoration.cpp:28:
/home/gainsbarre/Lightly/kdecoration/config/lightlyconfigwidget.h:28:10: fatal error: ui_lightlyconfigurationui.h: No such file or directory
   28 | #include "ui_lightlyconfigurationui.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [kdecoration/CMakeFiles/lightlydecoration.dir/build.make:119: kdecoration/CMakeFiles/lightlydecoration.dir/lightlydecoration.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:927: kdecoration/CMakeFiles/lightlydecoration.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
edpil02 commented 4 months ago

I had a lot of trouble with this problem....I should ask Boehs what he thinks. I'm on fedora, for compilation I use mock which gives me my rpm directly and without problem. But if I enter the mock chroot and do : make clean && make , I have the same problems as you, but not being a programmer, I postponed this problem until later. The problem must be with mock. But if i remember changing the path in the header file helped me get around the problem. ex : #include "/config/ui_lightlyconfigurationui.h" I'm going to try it on a normal chroot as possible.

SakiKarened commented 4 months ago

You've spoke about mock, so i've tried with a pkgbuild, the equivalent for archlinux and after taking the lightly-git one, editing the branch to use the qt6, adding the missing config and json to it after making the pkg it works perfectly fine. Thanks ! image

FantasyPvP commented 4 months ago

You've spoke about mock, so i've tried with a pkgbuild, the equivalent for archlinux and after taking the lightly-git one, editing the branch to use the qt6, adding the missing config and json to it after making the pkg it works perfectly fine. Thanks ! image

what edits did you have to make? i'm trying to get it working, switching to the qt6 branch gives me the lightlystyleconfig.json error, i've followed along with the steps including adding the new tarball and it brings me to this error

image

Sadoon-AlBader commented 4 months ago

what edits did you have to make? i'm trying to get it working, switching to the qt6 branch gives me the lightlystyleconfig.json error, i've followed along with the steps including adding the new tarball and it brings me to this error

On Fedora 40, I had to install these packages:

sudo dnf install cmake extra-cmake-modules "cmake(Qt6Core)" "cmake(Qt6Gui)" "cmake(Qt6DBus)" "cmake(KF6GuiAddons)" "cmake(KF6WindowSystem)" "cmake(KF6I18n)" "cmake(KF6CoreAddons)" "cmake(KF6ConfigWidgets)" "cmake(Qt6UiTools)" "cmake(KF6GlobalAccel)" "cmake(KF6IconThemes)" kwin-devel libepoxy-devel "cmake(KF6Crash)" "cmake(KF6KIO)" "cmake(KF6Notifications)" kf6-kpackage-devel kf6-kirigami-devel kf6-kcmutils-devel kf6-kxmlgui-devel kf6-kguiaddons-devel kf6-ki18n-devel kf6-kiconthemes-devel -y

Switched to qt6 branch, added lightlystyleconfig.json to /kstyle/config and pulled CMakeLists.txt, kcm_lightlydecoration.{json,cpp} from the config.tar.gz to kdecoration/config

Afterwards it builds and runs fine with

cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_LIBDIR=lib64 -DBUILD_TESTING=OFF ..

Screenshot_20240302_012219

FantasyPvP commented 4 months ago

what edits did you have to make? i'm trying to get it working, switching to the qt6 branch gives me the lightlystyleconfig.json error, i've followed along with the steps including adding the new tarball and it brings me to this error

On Fedora 40, I had to install these packages:

sudo dnf install cmake extra-cmake-modules "cmake(Qt6Core)" "cmake(Qt6Gui)" "cmake(Qt6DBus)" "cmake(KF6GuiAddons)" "cmake(KF6WindowSystem)" "cmake(KF6I18n)" "cmake(KF6CoreAddons)" "cmake(KF6ConfigWidgets)" "cmake(Qt6UiTools)" "cmake(KF6GlobalAccel)" "cmake(KF6IconThemes)" kwin-devel libepoxy-devel "cmake(KF6Crash)" "cmake(KF6KIO)" "cmake(KF6Notifications)" kf6-kpackage-devel kf6-kirigami-devel kf6-kcmutils-devel kf6-kxmlgui-devel kf6-kguiaddons-devel kf6-ki18n-devel kf6-kiconthemes-devel -y

Switched to qt6 branch, added lightlystyleconfig.json to /kstyle/config and pulled CMakeLists.txt, kcm_lightlydecoration.{json,cpp} from the config.tar.gz to kdecoration/config

Afterwards it builds and runs fine with

cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_LIBDIR=lib64 -DBUILD_TESTING=OFF ..

Screenshot_20240302_012219

ok thanks, I'm using arch so i'm not sure if the steps will work for me but i'll give them a go now

EDIT: works perfectly tysm

alba4k commented 4 months ago

@FantasyPvP let me know if you find something that works.

I think I'll wait for the kde stuff to get officially updated to 6.0 in arch's repos

FantasyPvP commented 4 months ago

@FantasyPvP let me know if you find something that works.

I think I'll wait for the kde stuff to get officially updated to 6.0 in arch's repos

the steps above work for me :) i decided to go the risky route and try plasma 6 on my daily driver laptop, it mostly seems to work ok but i've had some issues with crashing. I'm using the polonium tiling script which seems to like to cause my wayland compositor to crash (it claims to be compatible with plasma 6 but obvs not been tested thoroughly yet)

alba4k commented 4 months ago

Installing extra-cmake-modules-git from the aur to see if that helps. Did you have that installed already by any case? cause I'm currently getting this:

CMake Error at CMakeLists.txt:16 (find_package):
  Could not find a configuration file for package "ECM" that is compatible
  with requested version "5.240.0".

  The following configuration files were considered but not accepted:

    /usr/share/ECM/cmake/ECMConfig.cmake, version: 5.115.0

-- Configuring incomplete, errors occurred!
alba4k commented 4 months ago

now getting the following:

-- Could NOT find KF6CoreAddons (missing: KF6CoreAddons_DIR)
-- Could NOT find KF6CoreAddons: found neither KF6CoreAddonsConfig.cmake nor kf6coreaddons-config.cmake 
-- Could NOT find KF6ColorScheme (missing: KF6ColorScheme_DIR)
-- Could NOT find KF6ColorScheme: found neither KF6ColorSchemeConfig.cmake nor kf6colorscheme-config.cmake 
-- Could NOT find KF6Config (missing: KF6Config_DIR)
-- Could NOT find KF6Config: found neither KF6ConfigConfig.cmake nor kf6config-config.cmake 
-- Could NOT find KF6GuiAddons (missing: KF6GuiAddons_DIR)
-- Could NOT find KF6GuiAddons: found neither KF6GuiAddonsConfig.cmake nor kf6guiaddons-config.cmake 
-- Could NOT find KF6I18n (missing: KF6I18n_DIR)
-- Could NOT find KF6I18n: found neither KF6I18nConfig.cmake nor kf6i18n-config.cmake 
-- Could NOT find KF6IconThemes (missing: KF6IconThemes_DIR)
-- Could NOT find KF6IconThemes: found neither KF6IconThemesConfig.cmake nor kf6iconthemes-config.cmake 
-- Could NOT find KF6WindowSystem (missing: KF6WindowSystem_DIR)
-- Could NOT find KF6WindowSystem: found neither KF6WindowSystemConfig.cmake nor kf6windowsystem-config.cmake 
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find KF6 (missing: CoreAddons ColorScheme Config GuiAddons I18n
  IconThemes WindowSystem) (Required is at least version "5.240.0")
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/ECM/find-modules/FindKF6.cmake:93 (find_package_handle_standard_args)
  CMakeLists.txt:42 (find_package)

-- Configuring incomplete, errors occurred!
boehs commented 4 months ago

You need to install the KF6 libraries

boehs commented 4 months ago

One difficulty we will have is that I do not maintain any distro packages using my repository so I cannot update the pkgbuilds when the PR is merged (though I probably won't until K6 is mainlined)

ahmed658 commented 4 months ago

You've spoke about mock, so i've tried with a pkgbuild, the equivalent for archlinux and after taking the lightly-git one, editing the branch to use the qt6, adding the missing config and json to it after making the pkg it works perfectly fine. Thanks ! image

Can you provide the steps for editing the PKGBUILD file and where to add the missing files, please?

paulmcauley commented 4 months ago

I planned to send you a patch since my port is based on your repository and I wanted a code review cause I'm not a programmer , after dealing with some qt6 depredications.

At the same time klassy developer: https://github.com/paulmcauley/klassy is ready to add lighty options in his code and I think he will accept help. I wonder if this would be a better solution rather than lightly which is no longer maintained. At my modest level I will try to start with “transparent dolphin view.”

@edpil02

Klassy developer here - I am most of the way through a Klassy Qt6 port on the branch at https://github.com/paulmcauley/klassy/tree/plasma6.0 - hope to finalise it within the next week.

If you want to contribute the translucent stuff to the Klassy Application Style then you are welcome, and I think the best approach would be to create a public fork here on Github which I could then merge from later, or give me a list where all the translucency code exists in Lightly for different widgets. For these features to be truly useful in Klassy though, I want to first implement application-specific exceptions and presets (like in the window decoration) to the application style, as adding translucency to one application can break another and also make things complicated.

A question for you - did you encounter the following bug on Plasma 6 with your Lightly port?: https://bugs.kde.org/show_bug.cgi?id=482294

boehs commented 4 months ago

In response to the news that arch has switched to 6:

I’ve decided that the plasma 6 code will be merged once fedora and arch officially supports plasma 6. An arch PKGBUILD will be provided as well (for ease and a hopefully reproducible successful build, this may not be the same as the one in the AUR). Over the weekend, I will release official build steps for arch so users already on plasma 6 can continue to use lightly. Once the PR is merged, plasma 5 support will be immediately dropped. If package maintainers wish, a qt 5 branch containing the code as it stands will be provided.

OzzyHelix commented 4 months ago

what edits did you have to make? i'm trying to get it working, switching to the qt6 branch gives me the lightlystyleconfig.json error, i've followed along with the steps including adding the new tarball and it brings me to this error

On Fedora 40, I had to install these packages: sudo dnf install cmake extra-cmake-modules "cmake(Qt6Core)" "cmake(Qt6Gui)" "cmake(Qt6DBus)" "cmake(KF6GuiAddons)" "cmake(KF6WindowSystem)" "cmake(KF6I18n)" "cmake(KF6CoreAddons)" "cmake(KF6ConfigWidgets)" "cmake(Qt6UiTools)" "cmake(KF6GlobalAccel)" "cmake(KF6IconThemes)" kwin-devel libepoxy-devel "cmake(KF6Crash)" "cmake(KF6KIO)" "cmake(KF6Notifications)" kf6-kpackage-devel kf6-kirigami-devel kf6-kcmutils-devel kf6-kxmlgui-devel kf6-kguiaddons-devel kf6-ki18n-devel kf6-kiconthemes-devel -y Switched to qt6 branch, added lightlystyleconfig.json to /kstyle/config and pulled CMakeLists.txt, kcm_lightlydecoration.{json,cpp} from the config.tar.gz to kdecoration/config Afterwards it builds and runs fine with cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_LIBDIR=lib64 -DBUILD_TESTING=OFF .. Screenshot_20240302_012219

ok thanks, I'm using arch so i'm not sure if the steps will work for me but i'll give them a go now

EDIT: works perfectly tysm

@boehs do you think you could include the files needed for building on Plasma 6 and then provide a pull request upstream because this works with these files added

boehs commented 4 months ago

Yes this will happen over the weekend as well. Of course, the PR won't be merged broken :)

vndreiii commented 4 months ago

what edits did you have to make? i'm trying to get it working, switching to the qt6 branch gives me the lightlystyleconfig.json error, i've followed along with the steps including adding the new tarball and it brings me to this error

On Fedora 40, I had to install these packages:

sudo dnf install cmake extra-cmake-modules "cmake(Qt6Core)" "cmake(Qt6Gui)" "cmake(Qt6DBus)" "cmake(KF6GuiAddons)" "cmake(KF6WindowSystem)" "cmake(KF6I18n)" "cmake(KF6CoreAddons)" "cmake(KF6ConfigWidgets)" "cmake(Qt6UiTools)" "cmake(KF6GlobalAccel)" "cmake(KF6IconThemes)" kwin-devel libepoxy-devel "cmake(KF6Crash)" "cmake(KF6KIO)" "cmake(KF6Notifications)" kf6-kpackage-devel kf6-kirigami-devel kf6-kcmutils-devel kf6-kxmlgui-devel kf6-kguiaddons-devel kf6-ki18n-devel kf6-kiconthemes-devel -y

Switched to qt6 branch, added lightlystyleconfig.json to /kstyle/config and pulled CMakeLists.txt, kcm_lightlydecoration.{json,cpp} from the config.tar.gz to kdecoration/config

Afterwards it builds and runs fine with

cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_LIBDIR=lib64 -DBUILD_TESTING=OFF ..

My problem while compiling this was that config/ui_lightlyconfigurationui.h was not being generated. So I cd'd into /build/kdecoration/config/ i executed make and it generated the ui_lightlyconfigurationui.h then resumed the normal compilation with make in /build/ directory then sudo make install.