Manchmal möchte man ein eigenes KDE/Plasma Farbschema (bzgl. color-scheme) anlegen, doch nicht überall werden die neuen Farben übernommen. Panels z.B. (wie etwas Anwendungsstarter oder die Taskleiste) übernehmen Farben nicht direkt. Hier mögliche Lösungen des Problems, die mir geholfen haben:
Farbschema anlegen
Farbschemata liegen unter /usr/share/color-schemes/FooBar.color
. Um ein neues Schema an zu legen kann einfach eine vorhandene Datei kopieren:
cp /usr/share/color-schemes/FooBar.color ~/.local/share/color-schemes/MyScheme.color
Farbschema anpassen
Nun muss man sowohl Metadaten, als auch die eigentlichen Farben anpassen:
- Metadaten sind in der
MySchema.color
Datei ganz unten unter dem Punkt[General]
zu finden - Hier den Namen anzupassen
Nun kann man die Farben anpassen. Dazu bietet KDE ein eigenes Tool (einfach nach „Colors“ um Menü suchen), welches jedoch Änderungen in eine lokale Datei schreibt (~/.config/kdeglobals
), was dann nicht im neuen color-scheme enthalten ist. Entweder man kopiert dann die Daten aus ~/.config/kdeglobals
heraus oder man bearbeitet die neue MySchema.color
Datei manuell.
Wie ich es gemacht habe:
- Mit KDE Farbverwaltung (nach „Colors“ suchen) Farben anpassen
- Aus
~/.config/kdeglobals
Einstellungen kopieren - In
MySchema.color
die alten durch die neuen ersetzen
Alle Eigenschaften, die man setzen kann, gibt es hier: https://hig.kde.org/style/color/dark.html
Desktop Theme erzeugen
Nicht nur braucht man ein neues Farbschema, sondern auch ein neues Theme. Diese liegen unter /usr/share/plasma/desktoptheme/
und man kann auch dort ein vorhandenes z.B. nach ~/.local/share/plasma/desktoptheme/my-theme/
kopieren:
- Theme kopieren:
cp /usr/share/plasma/desktoptheme/foo-bar/ ~/.local/share/plasma/desktoptheme/my-theme/
Die Datei colors
habe ich einfach durch die Datei ~/.local/share/color-schemes/MyScheme.color
ersetzt:
cp ~/.local/share/color-schemes/MyScheme.color ~/.local/share/plasma/desktoptheme/my-theme/colors
- In der Datei
metadata.desktop
Namen den Themes anpassen
Viele Anwendungen funktionieren hiermit sehr gut … bis auf Widgets.
Widgets anpassen
Widgets haben in KDE eigene Styles und einen eigenen Ordner dafür: /usr/share/plasma/desktoptheme/foo-bar/widgets/
Zu beachten: Das Standard-Theme von KDE (Breeze) hat keinen Widgets-Ordner, da die Styles hierfür in /usr/share/plasma/desktoptheme/default/widgets/
liegen. Der Standard der Widgets ist also das Breeze Theme. Um Widgets anzupassen kann man einfach den /usr/share/plasma/desktoptheme/default/widgets/
Ordner kopieren nach ~/.local/share/plasma/desktoptheme/my-theme/widgets/
und entsprechend jede Datei anpassen:
cp -r /usr/share/plasma/desktoptheme/default/widgets/ ~/.local/share/plasma/desktoptheme/my-theme/widgets/
Leider sind diese komprimiert und nur als .svgz
verfügbar. Zum dekomprimieren kann man einfach gzip
nutzen.
Komprimierte
.svgz
Dateien mitsudo gzip -d -S svgz *.svgz
entpacken- Dateiendungen mit
for i in *.; do mv "$i" "${i%.*}.svg"; done
wiederherstellen
Jetzt kann man entweder jede Datei einzeln anpassen, oder die Macht von sed
nutzen. Angenommen man möchte den Farbton #3daee9
(Standard-Farbton in Breeze) durch #b89c0f
ersetzen
sudo find . -type f -exec sed -i 's/#3daee9/#b89c0f/g' {} +
Man kann natürlich alle anderen Farben auch anpassen, aber das hat mir fürs Erste gereicht.
Neu laden und fertig
Jetzt sind alle Stile und Farbtöne angepasst. Nut noch die plasmashell
neustarten und fertig:
plasmashell --replace &
Wenn es Probleme gibt, gerne ein Kommentar hinterlassen.
Hallo,
sehr informativer und interessanter Blog.
Weiter so!
Liebe Grüße