Skip to content

Conversation

MicrogamerCz
Copy link

@MicrogamerCz MicrogamerCz commented May 14, 2025

Bringing flatpak support for Darkly.

From what was mentioned in #91

  • XDG Desktop Portal can't solve the issue, ever. Qt styles are system binaries, not .css files in user-space.
  • My fork for Lightly was heavily butchered, as the only point was flatpak support and it couldn't have been merged at all

The changes are really light, only adding CMake build option and instructions for flatpak in README, excluding unnecessary components - color scheme, KDecoration, config applet and installed config cmake files

Tested on the following apps and their respective runtimes:

[x] org.sqlitebrowser.sqlitebrowser                     org.kde.Platform/x86_64/5.15-24.08
[x] org.torproject.torbrowser-launcher                  org.kde.Platform/x86_64/5.15-24.08
[x] io.github.input_leap.input-leap                     org.kde.Platform/x86_64/6.8
[x] org.kde.audiotube                                   org.kde.Platform/x86_64/6.8
[x] org.kde.elisa                                       org.kde.Platform/x86_64/6.8
[x] org.kde.kcalc                                       org.kde.Platform/x86_64/6.8
[x] org.kde.kcharselect                                 org.kde.Platform/x86_64/6.8
[x] org.kde.kclock                                      org.kde.Platform/x86_64/6.8
[x] org.kde.kdenlive                                    org.kde.Platform/x86_64/6.8
[x] org.kde.keysmith                                    org.kde.Platform/x86_64/6.8
[x] org.kde.kid3                                        org.kde.Platform/x86_64/6.8
[x] org.kde.kiten                                       org.kde.Platform/x86_64/6.8
[x] org.kde.klevernotes                                 org.kde.Platform/x86_64/6.8
[x] org.kde.kwrite                                      org.kde.Platform/x86_64/6.8
[x] org.kde.marknote                                    org.kde.Platform/x86_64/6.8
[x] org.kde.skanlite                                    org.kde.Platform/x86_64/6.8
[ ] org.nickvision.tubeconverter                        org.kde.Platform/x86_64/6.8
[x] org.prismlauncher.PrismLauncher                     org.kde.Platform/x86_64/6.8
[x] org.kde.gwenview                                    org.kde.Platform/x86_64/6.9
[x] org.kde.haruna                                      org.kde.Platform/x86_64/6.9
[x] org.kde.karp                                        org.kde.Platform/x86_64/6.9
[x] org.kde.kirigami2.gallery                           org.kde.Platform/x86_64/6.9
[x] org.kde.okular                                      org.kde.Platform/x86_64/6.9
[x] org.qbittorrent.qBittorrent                         org.kde.Platform/x86_64/6.9

Only parabolic doesn't work, because they hard-code the QStyle

The manifests already contain URL for this repo, if any contributor wants to check it first, they should change the source url for my fork. Changing the version of Runtime/SDK needs to be done manually as well for 6.X versions


Edit: At first, I forked only the main branch, so with a few manual changes, I synced it with the Feature branch (last two commits in this PR), although there seem to be more changes than intended.

In any case, changes for flatpak support are affecting the following files only:

  • org.kde.KStyle.Darkly6.json
  • org.kde.KStyle.Darkly5.json
  • CMakeLists.txt
  • README.md (optional, intructions for building the flatpak package)
  • kstyle/CMakeLists.txt

@MicrogamerCz MicrogamerCz changed the base branch from main to feature May 15, 2025 04:37
@MicrogamerCz MicrogamerCz changed the base branch from feature to main May 15, 2025 04:38
@MicrogamerCz MicrogamerCz changed the base branch from main to feature May 15, 2025 05:28
@MicrogamerCz MicrogamerCz changed the base branch from feature to main May 15, 2025 05:29
@MicrogamerCz MicrogamerCz changed the base branch from main to feature May 15, 2025 05:29
@Bali10050
Copy link
Owner

There are changes compared to the feature branch inside ./kstyle

kstyle/CMakeLists.txt seems to be related to flatpaks, but do we need the other ones, or are they just accidental or something else?

Also, thank you!

@MicrogamerCz
Copy link
Author

The other ones are purely accidental. I listed all the related files

@Bali10050 Bali10050 changed the base branch from feature to feature-flatpak May 17, 2025 11:57
@Bali10050
Copy link
Owner

Thank you!

@Bali10050 Bali10050 merged commit 507293b into Bali10050:feature-flatpak May 17, 2025
@Bali10050
Copy link
Owner

@MicrogamerCz
Can you check if it still works for you with #188 please?

@MicrogamerCz
Copy link
Author

MicrogamerCz commented May 18, 2025

Just checked, both KF5 and KF6 versions built correctly and it's working with all of the flatpak apps I've tested

@NICHOLAS85
Copy link

Apologies for commenting on this old PR. Just a quick question, is there a way to configure the flatpak installed darkly? It doesn't seem to follow the settings I've set via the KDE settings menu.

@MicrogamerCz
Copy link
Author

MicrogamerCz commented Aug 26, 2025

No problem. So, I dug a bit with config and... it does. However you need to copy (or at least symlink) the config into each flatpak's config dir ($HOME/.var/app/app-id/config)

File system access for the file or config dir won't do, it must be in each app's config. The same problem is with breeze as well (so it might be better to relay it to KDE flatpak runtime maintainers)

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