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

WIP: Add support for Plasma 6 #24

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

swomf
Copy link

@swomf swomf commented Mar 17, 2024

These should be non-breaking changes designed to port this theme for plasma6.

In general, my changes were simply using desktoptojson, some manual .json tweaks, and changing the decoration.svg aurorae boxes in Inkscape to correctly render window border outlines.

Addresses #23.

preview


Flaws

  1. The default "Graphite" theme does not work under these changes. Use Graphite-dark or Graphite-light or their respective nord variants.

odderror

  1. The SDDM theme does not work. I chose to exclude fixing it, because it is a breaking change. Perhaps this can be resolved by adding a plasma6 version of each sddm theme, as well as a separate option in SDDM's install.sh.

EDIT: I have started work on porting the SDDM theme, see below

swomf added 2 commits March 17, 2024 15:45
- Convert deprecated metadata.desktop files to
  metadata.json files via desktoptojson
    - Add a KPackageStructure key/value pair when necessary

Out of caution, the old metadata.desktop files were not removed.
@swomf
Copy link
Author

swomf commented Mar 17, 2024

Try this PR out for yourself!

git clone https://github.com/vinceliuice/Graphite-kde-theme
cd Graphite-kde-theme
# Fetch pull request as branch
git fetch origin pull/24/head
git checkout -b pull-request-24 FETCH_HEAD

@swomf swomf force-pushed the upstream-contrib branch from e05b31b to 056635f Compare March 17, 2024 21:14
swomf added 2 commits March 17, 2024 17:16
A separate plasma6 sddm is installed, rather than overwriting the
old sddm theme, so that the change isn't breaking.

This can be tested with
sddm-greeter-qt6 --test-mode --theme sddm/Graphite-plasma6.

ISSUES: Text field is wrong size
@swomf
Copy link
Author

swomf commented Mar 17, 2024

Update: I made a preliminary fix for the SDDM theme by comparing import statements and objects to /usr/share/sddm/themes/breeze.

Flaws

Wrong size

Original: reference
image

Fix:
image

You can test and debug via sddm-greeter-qt6 --test-mode --theme sddm/Graphite-nord-plasma6.

@swomf swomf changed the title Add support for Plasma 6 WIP: Add support for Plasma 6 Mar 29, 2024
@irv
Copy link

irv commented Aug 30, 2024

Using plasma 6.1, installing your branch kept falling back to the default, even though --test-mode worked fine.

Took me a while to track down why it kept trying to load it through the (now non-existent) sddm-greeter rather than sddm-greeter-qt6, but the sddm repo does explain

Themes are run by a Qt 5 built sddm-greeter, unless the QtVersion property in metadata.desktop specifies a different version, such as QtVersion=6 for using sddm-greeter-qt6.

--- a/sddm/Graphite-nord-plasma6/metadata.desktop
+++ b/sddm/Graphite-nord-plasma6/metadata.desktop
@@ -5,7 +5,7 @@ Author=Vince Liuice
 Copyright=(c) 2019, Vince Liuice
 License=CC-BY-SA
 Type=sddm-theme
-Version=0.1.0
+Version=0.2.0
 Website=https://github.com/vinceliuice/Graphite-kde-theme
 Screenshot=preview.png
 MainScript=Main.qml
@@ -14,3 +14,4 @@ TranslationsDirectory=translations
 Email=vinceliuice@hotmail.com
 Theme-Id=Graphite-nord
 Theme-API=2.0
+QtVersion=6

I have to say, the docs aren't great! https://develop.kde.org/docs/plasma/theme/theme-porting-to-plasma6/ seems very incomplete, and when it gets to SDDM it just says consult their docs (which don't seem to exist!)

@Rerum02
Copy link

Rerum02 commented Dec 3, 2024

Is their any update on getting this merged soon @swomf? Love the project, one of the best themes.

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.

3 participants