From 105eb5e2520d73eafa8a17f6088a93c77ab9566b4cd6505b7108c9107318cd9b Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Fri, 17 Jan 2020 13:03:36 +0000 Subject: [PATCH 1/4] Plasma 5.18 Beta, some tars respun. Untested - please disable publishing before accepting. KUserFeedback is intentionally disabled in discover and p-w - it's not usable yet. OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/kde-gtk-config5?expand=0&rev=231 --- gtk3-settings.ini-kde4.template | 8 ---- gtkrc-2.0-kde4.template | 14 ------ kde-gtk-config-5.17.5.tar.xz | 3 -- kde-gtk-config-5.17.5.tar.xz.sig | 11 ----- kde-gtk-config-5.17.90.tar.xz | 3 ++ kde-gtk-config-5.17.90.tar.xz.sig | 11 +++++ kde-gtk-config5.changes | 29 ++++++++++++ kde-gtk-config5.spec | 73 +++++++++---------------------- 8 files changed, 64 insertions(+), 88 deletions(-) delete mode 100644 gtk3-settings.ini-kde4.template delete mode 100644 gtkrc-2.0-kde4.template delete mode 100644 kde-gtk-config-5.17.5.tar.xz delete mode 100644 kde-gtk-config-5.17.5.tar.xz.sig create mode 100644 kde-gtk-config-5.17.90.tar.xz create mode 100644 kde-gtk-config-5.17.90.tar.xz.sig diff --git a/gtk3-settings.ini-kde4.template b/gtk3-settings.ini-kde4.template deleted file mode 100644 index c16705c..0000000 --- a/gtk3-settings.ini-kde4.template +++ /dev/null @@ -1,8 +0,0 @@ -[Settings] -gtk-font-name=Noto Sans Regular 10 -gtk-theme-name=@@THEME_NAME@@ -gtk-icon-theme-name=breeze -gtk-fallback-icon-theme=gnome -gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ -gtk-menu-images=1 -gtk-button-images=1 diff --git a/gtkrc-2.0-kde4.template b/gtkrc-2.0-kde4.template deleted file mode 100644 index 4b9d859..0000000 --- a/gtkrc-2.0-kde4.template +++ /dev/null @@ -1,14 +0,0 @@ -include "/usr/share/themes/@@THEME_NAME@@/gtk-2.0/gtkrc" -include "/etc/gtk-2.0/gtkrc" -style "user-font" -{ - font_name="Noto Sans Regular" -} -widget_class "*" style "user-font" -gtk-font-name="Noto Sans Regular 10" -gtk-theme-name="@@THEME_NAME@@" -gtk-icon-theme-name="breeze" -gtk-fallback-icon-theme="gnome" -gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ -gtk-menu-images=1 -gtk-button-images=1 diff --git a/kde-gtk-config-5.17.5.tar.xz b/kde-gtk-config-5.17.5.tar.xz deleted file mode 100644 index 8878922..0000000 --- a/kde-gtk-config-5.17.5.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5feff23c756f1fb0ba9ab88c2aed92c0e7c5521c757f5a0cdd057273538f0010 -size 155340 diff --git a/kde-gtk-config-5.17.5.tar.xz.sig b/kde-gtk-config-5.17.5.tar.xz.sig deleted file mode 100644 index a93ad0e..0000000 --- a/kde-gtk-config-5.17.5.tar.xz.sig +++ /dev/null @@ -1,11 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQEzBAABCgAdFiEELR1bBYg1d4fenuIl7JTRj38FmX4FAl4UoosACgkQ7JTRj38F -mX7PlQf/VCb6gxX0bD36Z6g4LsqQDOFrWVcpHoUN7ihowYbEOllx1vOBeRgJguFw -BFFmJ9aV3HuAQ/aijKPyhpLoK+KPDL6XebmoXl7azIx+uCndyZHCP+1PqHOIdbkg -pbouVOAjAAdwuD7AvBbZj7cTea/ZYlkIYn68f2Fm3pBCzzolxIb0qIj1rhBMynhm -OBAg6T+t1N3ivqHd3tUpGM+riTmJbg2Jco7XJe/FC267+BpvA60YLbQ4jQHDfxwP -viY+KyfEsZSUD/u/uUtrDlhaBeiPw+9Bx/dR4iDsZqJcS3h+1m6z8q+gH0GAKXXg -GSGKSB0X9Qj9TyZSsEfA2iI6wy6bcg== -=+PCg ------END PGP SIGNATURE----- diff --git a/kde-gtk-config-5.17.90.tar.xz b/kde-gtk-config-5.17.90.tar.xz new file mode 100644 index 0000000..5b75dc9 --- /dev/null +++ b/kde-gtk-config-5.17.90.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2061f8b6851fb1d950f737e4ba68d898990a7140f92576a2d13578f39e6294b2 +size 22920 diff --git a/kde-gtk-config-5.17.90.tar.xz.sig b/kde-gtk-config-5.17.90.tar.xz.sig new file mode 100644 index 0000000..229f16a --- /dev/null +++ b/kde-gtk-config-5.17.90.tar.xz.sig @@ -0,0 +1,11 @@ +-----BEGIN PGP SIGNATURE----- + +iQEzBAABCgAdFiEELR1bBYg1d4fenuIl7JTRj38FmX4FAl4gU2EACgkQ7JTRj38F +mX7+Qgf+Jps7ogh3gK/j53GpD8IXOOQgLOPTQ4Bo1fAxX38QnhHbW83pvXV2Yf8f +Iom6z771mwC/bJacncSe9Vd8Fa3Jo5iyqoPte9Xl/8wVCFH+GPoRLG1Du2M4MIt5 +sVwtjX/s3p5crEaTx7h6hSw0jZSzMRqgJGkZS2rI7h4xxIC/S+sV/J2uh9loQO8/ +NKo1eFCVeATg4njTKyTR4BD78iTRSzgAU3/wi81FyyprI015rLrq5N78Q40pCFU1 +7bo4q7RJmdNCgf1bsWRdB7oH3hwbiy6rOqf0QkGNKTgU9jf+pjKdJn6UWcSL27Hb +UE8yz5xA+1fSAfTc1pQNkCzB/cB6ng== +=YX2R +-----END PGP SIGNATURE----- diff --git a/kde-gtk-config5.changes b/kde-gtk-config5.changes index 37cc47a..feeacfa 100644 --- a/kde-gtk-config5.changes +++ b/kde-gtk-config5.changes @@ -1,3 +1,32 @@ +------------------------------------------------------------------- +Thu Jan 16 14:04:16 UTC 2020 - Fabian Vogt + +- Update to 5.17.90 + * New feature release + * For more details please see: + * https://www.kde.org/announcements/plasma-5.17.90.php +- Changes since 5.17.5: + * Remove GTK KCM + * Rewrite GTK KCM (kde#405405) + * Respect GTK2_RC_FILES environmental variable (kde#415770) + * Synchronize decorations buttons order in GTK headerbars + * Sync dark theme preference for GTK3 applications + * Refactor GTK KCM code + * Remove traces of old GTK configs + * Remove scrollbar behavior option in GTK KCM + * Sync scrollbar behavior with GTK applications + * Remove redundant finder + * Remove unneeded options in GTK KCM (kde#406740,kde#401008,kde#401123) + * Add default value for cursor theme (kde#414109) + * Update GTK settings according to Plasma settings (kde#401507,kde#375272,kde#411097) + * port old style connects + * Add KDEClangFormat cmake support + * Make it compile without deorecated method +- Drop files which were only used by the long gone + kde_gtk_config.suse.sh script: + * gtk3-settings.ini-kde4.template + * gtkrc-2.0-kde4.template + ------------------------------------------------------------------- Tue Jan 7 16:24:35 UTC 2020 - Fabian Vogt diff --git a/kde-gtk-config5.spec b/kde-gtk-config5.spec index 80b0b50..beda625 100644 --- a/kde-gtk-config5.spec +++ b/kde-gtk-config5.spec @@ -18,36 +18,29 @@ %bcond_without lang Name: kde-gtk-config5 -Version: 5.17.5 +Version: 5.17.90 Release: 0 -Summary: KCM Module to Configure GTK2 and GTK3 Applications Appearance Under KDE +Summary: Daemon for GTK2 and GTK3 Applications Appearance Under KDE License: LGPL-3.0-or-later AND GPL-3.0-or-later Group: System/GUI/KDE Url: http://projects.kde.org/kde-gtk-config -Source: https://download.kde.org/stable/plasma/%{version}/kde-gtk-config-%{version}.tar.xz +Source: https://download.kde.org/unstable/plasma/%{version}/kde-gtk-config-%{version}.tar.xz %if %{with lang} -Source1: https://download.kde.org/stable/plasma/%{version}/kde-gtk-config-%{version}.tar.xz.sig +Source1: https://download.kde.org/unstable/plasma/%{version}/kde-gtk-config-%{version}.tar.xz.sig Source2: plasma.keyring %endif -Source3: gtkrc-2.0-kde4.template -Source4: gtk3-settings.ini-kde4.template BuildRequires: extra-cmake-modules >= 0.0.9 BuildRequires: kf5-filesystem BuildRequires: xz -BuildRequires: cmake(KF5Archive) -BuildRequires: cmake(KF5ConfigWidgets) -BuildRequires: cmake(KF5I18n) +BuildRequires: cmake(KF5Config) +BuildRequires: cmake(KF5CoreAddons) +BuildRequires: cmake(KF5DBusAddons) BuildRequires: cmake(KF5IconThemes) -BuildRequires: cmake(KF5KCMUtils) -BuildRequires: cmake(KF5KIO) -BuildRequires: cmake(KF5NewStuff) -BuildRequires: cmake(Qt5Svg) >= 5.4.0 -BuildRequires: cmake(Qt5Test) >= 5.4.0 -BuildRequires: cmake(Qt5Widgets) >= 5.4.0 BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(x11) -Recommends: %{name}-lang +# Needed for syncing GTK+ settings +Requires: xsettingsd Suggests: gtk2-metatheme-breeze Suggests: gtk3-metatheme-breeze Supplements: packageand(plasma5-workspace:libgtk-2_0-0) @@ -56,66 +49,46 @@ Provides: kde-gtk-config = %{version} Obsoletes: kde-gtk-config < %{version} %description -kde-gtk-config is a KCM module to configure GTK2 and GTK3 applications +kde-gtk-config is a KDED module which configures GTK2 and GTK3 applications appearance under KDE. -Among its many features, it lets you: - - Choose which theme is used for GTK2 and GTK3 applications. - - Tweak some GTK applications behaviour. - - Select what icon theme to use in GTK applications. - - Select GTK applications default fonts. - - Easily browse and install new GTK2 and GTK3 themes. - %package gtk2 -Summary: GTK2 Preview Helper for the GTK Configuration KCM +Summary: GTK2 Preview Helper for the GTK Configuration Group: System/GUI/KDE Requires: %{name} = %{version} Supplements: packageand(%{name}:libgtk-2_0-0) %description gtk2 This package contains a helper application that allows previewing -the GTK2 application style from within the GTK configuration KCM +the GTK2 application style from within the application style KCM %package gtk3 -Summary: GTK3 Preview Helper for the GTK Configuration KCM +Summary: GTK3 Preview Helper for the GTK Configuration Group: System/GUI/KDE Requires: %{name} = %{version} Supplements: packageand(%{name}:libgtk-3-0) %description gtk3 This package contains a helper application that allows previewing -the GTK3 application style from within the GTK configuration KCM - -%lang_package +the GTK3 application style from within the application style KCM %prep -%setup -q -n kde-gtk-config-%{version} -%autopatch -p1 +%autosetup -p1 -n kde-gtk-config-%{version} %build - %cmake_kf5 -d build -- -DCMAKE_INSTALL_LOCALEDIR=%{_kf5_localedir} + %cmake_kf5 -d build %make_jobs %install %kf5_makeinstall -C build -%if %{with lang} - %kf5_find_lang -%endif - -install -Dpm 0644 %{SOURCE3} %{buildroot}%{_kf5_sharedir}/%{name}/gtkrc-2.0-kde4.template -install -Dpm 0644 %{SOURCE4} %{buildroot}%{_kf5_sharedir}/%{name}/gtk3-settings.ini-kde4.template %files %license COPYING* -%{_kf5_sharedir}/%{name}/ -%{_kf5_knsrcfilesdir}/cgctheme.knsrc -%{_kf5_knsrcfilesdir}/cgcgtk3.knsrc -%{_kf5_servicesdir}/ -%{_kf5_plugindir}/ -%{_kf5_sharedir}/kcm-gtk-module/ -%dir %{_kf5_sharedir}/icons/hicolor/8x8 -%dir %{_kf5_sharedir}/icons/hicolor/8x8/apps -%{_kf5_sharedir}/icons/hicolor/*/*/*.* +%dir %{_kf5_plugindir}/kf5 +%dir %{_kf5_plugindir}/kf5/kded +%{_kf5_plugindir}/kf5/kded/gtkconfig.so +%dir %{_kf5_sharedir}/kcm-gtk-module/ +%{_kf5_sharedir}/kcm-gtk-module/preview.ui %files gtk2 %license COPYING* @@ -126,8 +99,4 @@ install -Dpm 0644 %{SOURCE4} %{buildroot}%{_kf5_sharedir}/%{name}/gtk3-settings. %license COPYING* %{_kf5_libdir}/libexec/gtk3_preview -%if %{with lang} -%files lang -f %{name}.lang -%endif - %changelog From ec7ba204f2791ee3ad86affdb67779c452bea8cd6a1a9846241741aac7f94f28 Mon Sep 17 00:00:00 2001 From: Fabian Vogt Date: Sat, 18 Jan 2020 17:16:04 +0000 Subject: [PATCH 2/4] - Add Obsoletes for dropped kde-gtk-config5-lang OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/kde-gtk-config5?expand=0&rev=232 --- kde-gtk-config5.changes | 5 +++++ kde-gtk-config5.spec | 2 ++ 2 files changed, 7 insertions(+) diff --git a/kde-gtk-config5.changes b/kde-gtk-config5.changes index feeacfa..6d77f8a 100644 --- a/kde-gtk-config5.changes +++ b/kde-gtk-config5.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sat Jan 18 17:15:44 UTC 2020 - Fabian Vogt + +- Add Obsoletes for dropped kde-gtk-config5-lang + ------------------------------------------------------------------- Thu Jan 16 14:04:16 UTC 2020 - Fabian Vogt diff --git a/kde-gtk-config5.spec b/kde-gtk-config5.spec index beda625..e47a4c2 100644 --- a/kde-gtk-config5.spec +++ b/kde-gtk-config5.spec @@ -47,6 +47,8 @@ Supplements: packageand(plasma5-workspace:libgtk-2_0-0) Supplements: packageand(plasma5-workspace:libgtk-3-0) Provides: kde-gtk-config = %{version} Obsoletes: kde-gtk-config < %{version} +# Existed only up to 5.17 +Obsoletes: %{name}-lang < %{version} %description kde-gtk-config is a KDED module which configures GTK2 and GTK3 applications From e0fc0f7bd66135fcb39b0d71a6490c493d74e5f0a5fedef5b6271378921b7dab Mon Sep 17 00:00:00 2001 From: Fabian Vogt Date: Tue, 28 Jan 2020 18:30:24 +0000 Subject: [PATCH 3/4] Accepting request 767932 from home:Vogtinator:plasma5.18 Patch not merged yet, but needed for openQA. Part for breeze-gtk will follow once merged (mostly just cleanup) - Add patch to add kconf_update binary to set the initial config: * 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch OBS-URL: https://build.opensuse.org/request/show/767932 OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/kde-gtk-config5?expand=0&rev=233 --- ...grade-theme-to-Breeze-GTK-on-startup.patch | 190 ++++++++++++++++++ kde-gtk-config5.changes | 6 + kde-gtk-config5.spec | 7 + 3 files changed, 203 insertions(+) create mode 100644 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch diff --git a/0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch b/0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch new file mode 100644 index 0000000..3f0e456 --- /dev/null +++ b/0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch @@ -0,0 +1,190 @@ +From 969b72c57c81cc5a9be549dd0d501c9e6d2129cb Mon Sep 17 00:00:00 2001 +From: Mikhail Zolotukhin +Date: Mon, 27 Jan 2020 13:48:00 +0100 +Subject: [PATCH] Upgrade theme to Breeze GTK on startup + +Summary: +Also apply it, if the config is empty. This is a port of kconf_update +script from `breeze-gtk` repo, but this time it use gtkconfig kded +module methods to manipulate config (to avoid code duplication and to +write config to all possible configuration storages). + +BUG: 416635 +FIXED-IN: 5.18.0 + +Test Plan: +# Remove `gtk-theme-name=` line in `~/.gtkrc-2.0` file or change it to `BreezyGTK`, `Orion` or `oxygen-gtk` +# Run `gtk_theme` executable from `kconf_update` build directory. Line should appear/cahnge to `Breeze` +# Remove `gtk-theme-name=` line in `~/.config/gtk-3.0/settings.ini` file or change it to `BreezyGTK`, `Orion` or `oxygen-gtk` +# Run `gtk_theme` executable from `kconf_update` build directory. Line should appear/cahnge to `Breeze`, also it should be changed in dconf in `org.gnome.desktop.interface.gtk-theme` prefix and in `~/.config/xsettingsd/xsettingsd.conf` file (`Net/ThemeName "Breeze"` line) + +Reviewers: fvogt + +Subscribers: meven, plasma-devel + +Tags: #plasma + +Differential Revision: https://phabricator.kde.org/D26891 +--- + CMakeLists.txt | 1 + + kconf_update/CMakeLists.txt | 38 +++++++++++++++++++++++++ + kconf_update/gtk_theme.upd | 3 ++ + kconf_update/main.cpp | 56 +++++++++++++++++++++++++++++++++++++ + kded/configeditor.cpp | 4 +-- + 5 files changed, 100 insertions(+), 2 deletions(-) + create mode 100644 kconf_update/CMakeLists.txt + create mode 100644 kconf_update/gtk_theme.upd + create mode 100644 kconf_update/main.cpp + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 54be644..72aa16f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -28,6 +28,7 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake kded/config.h) + add_subdirectory(gtkproxies) + add_subdirectory(gtk3proxies) + add_subdirectory(kded) ++add_subdirectory(kconf_update) + + # add clang-format target for all our real source files + file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h) +diff --git a/kconf_update/CMakeLists.txt b/kconf_update/CMakeLists.txt +new file mode 100644 +index 0000000..05a5490 +--- /dev/null ++++ b/kconf_update/CMakeLists.txt +@@ -0,0 +1,38 @@ ++add_executable(gtk_theme main.cpp) ++ ++target_sources(gtk_theme ++ PRIVATE ++ ../kded/configeditor.cpp ++) ++ ++target_link_libraries(gtk_theme ++ PRIVATE ++ Qt5::Core ++ KF5::ConfigCore ++ ${GIO2_LIBRARY} ++ ${GOBJECT2_LIBRARY} ++) ++ ++target_include_directories(gtk_theme ++ PRIVATE ++ ../kded/ ++ ${GTK3_INCLUDE_DIRS} ++) ++ ++target_compile_definitions(gtk_theme ++ PRIVATE ++ QT_NO_SIGNALS_SLOTS_KEYWORDS ++) ++ ++install( ++ TARGETS ++ gtk_theme ++ DESTINATION ++ ${LIB_INSTALL_DIR}/kconf_update_bin/ ++) ++install( ++ FILES ++ gtk_theme.upd ++ DESTINATION ++ ${KCONF_UPDATE_INSTALL_DIR} ++) +diff --git a/kconf_update/gtk_theme.upd b/kconf_update/gtk_theme.upd +new file mode 100644 +index 0000000..6214e77 +--- /dev/null ++++ b/kconf_update/gtk_theme.upd +@@ -0,0 +1,3 @@ ++Version=5 ++Id=gtk_theme ++Script=gtk_theme +diff --git a/kconf_update/main.cpp b/kconf_update/main.cpp +new file mode 100644 +index 0000000..bf9993c +--- /dev/null ++++ b/kconf_update/main.cpp +@@ -0,0 +1,56 @@ ++/* ++ * Copyright (C) 2020 Mikhail Zolotukhin ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of ++ * the License or (at your option) version 3 or any later version ++ * accepted by the membership of KDE e.V. (or its successor approved ++ * by the membership of KDE e.V.), which shall act as a proxy ++ * defined in Section 14 of version 3 of the license. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program. If not, see . ++ */ ++ ++#include ++ ++#include "configeditor.h" ++ ++void upgradeGtk2Theme(); ++void upgradeGtk3Theme(); ++ ++int main() { ++ upgradeGtk2Theme(); ++ upgradeGtk3Theme(); ++ return 0; ++} ++ ++void upgradeGtk2Theme() { ++ QString currentGtk2Theme = ConfigEditor::gtk2ConfigValue(QStringLiteral("gtk-theme-name")); ++ if (currentGtk2Theme.isEmpty() ++ || currentGtk2Theme == QStringLiteral("oxygen-gtk") ++ || currentGtk2Theme == QStringLiteral("BreezyGTK") ++ || currentGtk2Theme == QStringLiteral("Orion") ++ ) { ++ ConfigEditor::setGtk2ConfigValue(QStringLiteral("gtk-theme-name"), QStringLiteral("Breeze")); ++ } ++} ++ ++void upgradeGtk3Theme() { ++ QString currentGtk3Theme = ConfigEditor::gtk3ConfigValueSettingsIni(QStringLiteral("gtk-theme-name")); ++ if (currentGtk3Theme.isEmpty() ++ || currentGtk3Theme == QStringLiteral("oxygen-gtk") ++ || currentGtk3Theme == QStringLiteral("BreezyGTK") ++ || currentGtk3Theme == QStringLiteral("Orion") ++ ) { ++ ConfigEditor::setGtk3ConfigValueDconf(QStringLiteral("gtk-theme"), QStringLiteral("Breeze")); ++ ConfigEditor::setGtk3ConfigValueSettingsIni(QStringLiteral("gtk-theme-name"), QStringLiteral("Breeze")); ++ ConfigEditor::setGtk3ConfigValueXSettingsd(QStringLiteral("Net/ThemeName"), QStringLiteral("Breeze")); ++ } ++} +diff --git a/kded/configeditor.cpp b/kded/configeditor.cpp +index 244fe2c..3074f70 100644 +--- a/kded/configeditor.cpp ++++ b/kded/configeditor.cpp +@@ -109,7 +109,7 @@ QString ConfigEditor::gtk2ConfigValue(const QString& paramName) + } + } + +- return QStringLiteral("Breeze"); ++ return QString(); + } + + QString ConfigEditor::gtk3ConfigValueSettingsIni(const QString& paramName) +@@ -120,7 +120,7 @@ QString ConfigEditor::gtk3ConfigValueSettingsIni(const QString& paramName) + KSharedConfig::Ptr gtk3Config = KSharedConfig::openConfig(gtk3ConfigPath, KConfig::NoGlobals); + KConfigGroup group = gtk3Config->group(QStringLiteral("Settings")); + +- return group.readEntry(paramName, QStringLiteral("Breeze")); ++ return group.readEntry(paramName); + } + + +-- +2.23.0 + diff --git a/kde-gtk-config5.changes b/kde-gtk-config5.changes index 6d77f8a..ca6757e 100644 --- a/kde-gtk-config5.changes +++ b/kde-gtk-config5.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Jan 27 12:50:49 UTC 2020 - Fabian Vogt + +- Add patch to add kconf_update binary to set the initial config: + * 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch + ------------------------------------------------------------------- Sat Jan 18 17:15:44 UTC 2020 - Fabian Vogt diff --git a/kde-gtk-config5.spec b/kde-gtk-config5.spec index e47a4c2..5ed6618 100644 --- a/kde-gtk-config5.spec +++ b/kde-gtk-config5.spec @@ -29,6 +29,8 @@ Source: https://download.kde.org/unstable/plasma/%{version}/kde-gtk-conf Source1: https://download.kde.org/unstable/plasma/%{version}/kde-gtk-config-%{version}.tar.xz.sig Source2: plasma.keyring %endif +# PATCH-FIX-UPSTREAM +Patch1: 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch BuildRequires: extra-cmake-modules >= 0.0.9 BuildRequires: kf5-filesystem BuildRequires: xz @@ -92,6 +94,11 @@ the GTK3 application style from within the application style KCM %dir %{_kf5_sharedir}/kcm-gtk-module/ %{_kf5_sharedir}/kcm-gtk-module/preview.ui +%dir %{_kf5_sharedir}/kconf_update/ +%{_kf5_sharedir}/kconf_update/gtk_theme.upd +%dir %{_kf5_libdir}/kconf_update_bin/ +%{_kf5_libdir}/kconf_update_bin/gtk_theme + %files gtk2 %license COPYING* %{_kf5_libdir}/libexec/gtk_preview From 343a6641eb4284998b1efbdc959b8107318ad611efc5e5f069fe5b891daed250 Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux Date: Sat, 8 Feb 2020 00:13:12 +0000 Subject: [PATCH 4/4] Plasma 5.18.0, not yet final tars. Please publish disable KF5 before accepting. OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/kde-gtk-config5?expand=0&rev=234 --- ...grade-theme-to-Breeze-GTK-on-startup.patch | 190 ------------------ kde-gtk-config-5.17.90.tar.xz | 3 - kde-gtk-config-5.17.90.tar.xz.sig | 11 - kde-gtk-config-5.18.0.tar.xz | 3 + kde-gtk-config-5.18.0.tar.xz.sig | 11 + kde-gtk-config5.changes | 19 ++ kde-gtk-config5.spec | 12 +- 7 files changed, 38 insertions(+), 211 deletions(-) delete mode 100644 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch delete mode 100644 kde-gtk-config-5.17.90.tar.xz delete mode 100644 kde-gtk-config-5.17.90.tar.xz.sig create mode 100644 kde-gtk-config-5.18.0.tar.xz create mode 100644 kde-gtk-config-5.18.0.tar.xz.sig diff --git a/0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch b/0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch deleted file mode 100644 index 3f0e456..0000000 --- a/0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch +++ /dev/null @@ -1,190 +0,0 @@ -From 969b72c57c81cc5a9be549dd0d501c9e6d2129cb Mon Sep 17 00:00:00 2001 -From: Mikhail Zolotukhin -Date: Mon, 27 Jan 2020 13:48:00 +0100 -Subject: [PATCH] Upgrade theme to Breeze GTK on startup - -Summary: -Also apply it, if the config is empty. This is a port of kconf_update -script from `breeze-gtk` repo, but this time it use gtkconfig kded -module methods to manipulate config (to avoid code duplication and to -write config to all possible configuration storages). - -BUG: 416635 -FIXED-IN: 5.18.0 - -Test Plan: -# Remove `gtk-theme-name=` line in `~/.gtkrc-2.0` file or change it to `BreezyGTK`, `Orion` or `oxygen-gtk` -# Run `gtk_theme` executable from `kconf_update` build directory. Line should appear/cahnge to `Breeze` -# Remove `gtk-theme-name=` line in `~/.config/gtk-3.0/settings.ini` file or change it to `BreezyGTK`, `Orion` or `oxygen-gtk` -# Run `gtk_theme` executable from `kconf_update` build directory. Line should appear/cahnge to `Breeze`, also it should be changed in dconf in `org.gnome.desktop.interface.gtk-theme` prefix and in `~/.config/xsettingsd/xsettingsd.conf` file (`Net/ThemeName "Breeze"` line) - -Reviewers: fvogt - -Subscribers: meven, plasma-devel - -Tags: #plasma - -Differential Revision: https://phabricator.kde.org/D26891 ---- - CMakeLists.txt | 1 + - kconf_update/CMakeLists.txt | 38 +++++++++++++++++++++++++ - kconf_update/gtk_theme.upd | 3 ++ - kconf_update/main.cpp | 56 +++++++++++++++++++++++++++++++++++++ - kded/configeditor.cpp | 4 +-- - 5 files changed, 100 insertions(+), 2 deletions(-) - create mode 100644 kconf_update/CMakeLists.txt - create mode 100644 kconf_update/gtk_theme.upd - create mode 100644 kconf_update/main.cpp - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 54be644..72aa16f 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -28,6 +28,7 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake kded/config.h) - add_subdirectory(gtkproxies) - add_subdirectory(gtk3proxies) - add_subdirectory(kded) -+add_subdirectory(kconf_update) - - # add clang-format target for all our real source files - file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h) -diff --git a/kconf_update/CMakeLists.txt b/kconf_update/CMakeLists.txt -new file mode 100644 -index 0000000..05a5490 ---- /dev/null -+++ b/kconf_update/CMakeLists.txt -@@ -0,0 +1,38 @@ -+add_executable(gtk_theme main.cpp) -+ -+target_sources(gtk_theme -+ PRIVATE -+ ../kded/configeditor.cpp -+) -+ -+target_link_libraries(gtk_theme -+ PRIVATE -+ Qt5::Core -+ KF5::ConfigCore -+ ${GIO2_LIBRARY} -+ ${GOBJECT2_LIBRARY} -+) -+ -+target_include_directories(gtk_theme -+ PRIVATE -+ ../kded/ -+ ${GTK3_INCLUDE_DIRS} -+) -+ -+target_compile_definitions(gtk_theme -+ PRIVATE -+ QT_NO_SIGNALS_SLOTS_KEYWORDS -+) -+ -+install( -+ TARGETS -+ gtk_theme -+ DESTINATION -+ ${LIB_INSTALL_DIR}/kconf_update_bin/ -+) -+install( -+ FILES -+ gtk_theme.upd -+ DESTINATION -+ ${KCONF_UPDATE_INSTALL_DIR} -+) -diff --git a/kconf_update/gtk_theme.upd b/kconf_update/gtk_theme.upd -new file mode 100644 -index 0000000..6214e77 ---- /dev/null -+++ b/kconf_update/gtk_theme.upd -@@ -0,0 +1,3 @@ -+Version=5 -+Id=gtk_theme -+Script=gtk_theme -diff --git a/kconf_update/main.cpp b/kconf_update/main.cpp -new file mode 100644 -index 0000000..bf9993c ---- /dev/null -+++ b/kconf_update/main.cpp -@@ -0,0 +1,56 @@ -+/* -+ * Copyright (C) 2020 Mikhail Zolotukhin -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation; either version 2 of -+ * the License or (at your option) version 3 or any later version -+ * accepted by the membership of KDE e.V. (or its successor approved -+ * by the membership of KDE e.V.), which shall act as a proxy -+ * defined in Section 14 of version 3 of the license. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program. If not, see . -+ */ -+ -+#include -+ -+#include "configeditor.h" -+ -+void upgradeGtk2Theme(); -+void upgradeGtk3Theme(); -+ -+int main() { -+ upgradeGtk2Theme(); -+ upgradeGtk3Theme(); -+ return 0; -+} -+ -+void upgradeGtk2Theme() { -+ QString currentGtk2Theme = ConfigEditor::gtk2ConfigValue(QStringLiteral("gtk-theme-name")); -+ if (currentGtk2Theme.isEmpty() -+ || currentGtk2Theme == QStringLiteral("oxygen-gtk") -+ || currentGtk2Theme == QStringLiteral("BreezyGTK") -+ || currentGtk2Theme == QStringLiteral("Orion") -+ ) { -+ ConfigEditor::setGtk2ConfigValue(QStringLiteral("gtk-theme-name"), QStringLiteral("Breeze")); -+ } -+} -+ -+void upgradeGtk3Theme() { -+ QString currentGtk3Theme = ConfigEditor::gtk3ConfigValueSettingsIni(QStringLiteral("gtk-theme-name")); -+ if (currentGtk3Theme.isEmpty() -+ || currentGtk3Theme == QStringLiteral("oxygen-gtk") -+ || currentGtk3Theme == QStringLiteral("BreezyGTK") -+ || currentGtk3Theme == QStringLiteral("Orion") -+ ) { -+ ConfigEditor::setGtk3ConfigValueDconf(QStringLiteral("gtk-theme"), QStringLiteral("Breeze")); -+ ConfigEditor::setGtk3ConfigValueSettingsIni(QStringLiteral("gtk-theme-name"), QStringLiteral("Breeze")); -+ ConfigEditor::setGtk3ConfigValueXSettingsd(QStringLiteral("Net/ThemeName"), QStringLiteral("Breeze")); -+ } -+} -diff --git a/kded/configeditor.cpp b/kded/configeditor.cpp -index 244fe2c..3074f70 100644 ---- a/kded/configeditor.cpp -+++ b/kded/configeditor.cpp -@@ -109,7 +109,7 @@ QString ConfigEditor::gtk2ConfigValue(const QString& paramName) - } - } - -- return QStringLiteral("Breeze"); -+ return QString(); - } - - QString ConfigEditor::gtk3ConfigValueSettingsIni(const QString& paramName) -@@ -120,7 +120,7 @@ QString ConfigEditor::gtk3ConfigValueSettingsIni(const QString& paramName) - KSharedConfig::Ptr gtk3Config = KSharedConfig::openConfig(gtk3ConfigPath, KConfig::NoGlobals); - KConfigGroup group = gtk3Config->group(QStringLiteral("Settings")); - -- return group.readEntry(paramName, QStringLiteral("Breeze")); -+ return group.readEntry(paramName); - } - - --- -2.23.0 - diff --git a/kde-gtk-config-5.17.90.tar.xz b/kde-gtk-config-5.17.90.tar.xz deleted file mode 100644 index 5b75dc9..0000000 --- a/kde-gtk-config-5.17.90.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2061f8b6851fb1d950f737e4ba68d898990a7140f92576a2d13578f39e6294b2 -size 22920 diff --git a/kde-gtk-config-5.17.90.tar.xz.sig b/kde-gtk-config-5.17.90.tar.xz.sig deleted file mode 100644 index 229f16a..0000000 --- a/kde-gtk-config-5.17.90.tar.xz.sig +++ /dev/null @@ -1,11 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQEzBAABCgAdFiEELR1bBYg1d4fenuIl7JTRj38FmX4FAl4gU2EACgkQ7JTRj38F -mX7+Qgf+Jps7ogh3gK/j53GpD8IXOOQgLOPTQ4Bo1fAxX38QnhHbW83pvXV2Yf8f -Iom6z771mwC/bJacncSe9Vd8Fa3Jo5iyqoPte9Xl/8wVCFH+GPoRLG1Du2M4MIt5 -sVwtjX/s3p5crEaTx7h6hSw0jZSzMRqgJGkZS2rI7h4xxIC/S+sV/J2uh9loQO8/ -NKo1eFCVeATg4njTKyTR4BD78iTRSzgAU3/wi81FyyprI015rLrq5N78Q40pCFU1 -7bo4q7RJmdNCgf1bsWRdB7oH3hwbiy6rOqf0QkGNKTgU9jf+pjKdJn6UWcSL27Hb -UE8yz5xA+1fSAfTc1pQNkCzB/cB6ng== -=YX2R ------END PGP SIGNATURE----- diff --git a/kde-gtk-config-5.18.0.tar.xz b/kde-gtk-config-5.18.0.tar.xz new file mode 100644 index 0000000..284a0fb --- /dev/null +++ b/kde-gtk-config-5.18.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3be3c38e1b90063b8f62bd182a67e456588aa05fd1c9f773c75fd16f5f09e8a1 +size 23644 diff --git a/kde-gtk-config-5.18.0.tar.xz.sig b/kde-gtk-config-5.18.0.tar.xz.sig new file mode 100644 index 0000000..de16f74 --- /dev/null +++ b/kde-gtk-config-5.18.0.tar.xz.sig @@ -0,0 +1,11 @@ +-----BEGIN PGP SIGNATURE----- + +iQEzBAABCgAdFiEELR1bBYg1d4fenuIl7JTRj38FmX4FAl48D1YACgkQ7JTRj38F +mX5rYQf9G7qUPiPxPTmgXT1/A8h6j4p+6h0XRGTk+JaUiGwDbkDBpBO78ViNQwLg +xLInnFSysbwM+ODr66xMKu2qeLHf/Uzli0qp6kzf+1CF4P9NY6eSksk6Qj5ayJvC +r5Jaqyzu6tn09rKZyZWuuCT4/RQaygR+yipiXBCEcbbNu9apsmLfT039kbs5845C +dOSrX4vS0sI8gnV5DbyL0ZtesZQ9Xiwu25HxlP1jyjdEsXxX16bh+vjzRyNZrthb +si1CZk3a8WmGgSC8SChj3ZnB7FGC05/1zi7UoCFxzEzzH4i4cbOXoEX+myugnhYI +fe1cwhqFO1C5ir8n4pg6sMhc6GvmCw== +=QX7P +-----END PGP SIGNATURE----- diff --git a/kde-gtk-config5.changes b/kde-gtk-config5.changes index ca6757e..668db50 100644 --- a/kde-gtk-config5.changes +++ b/kde-gtk-config5.changes @@ -1,9 +1,28 @@ +------------------------------------------------------------------- +Thu Feb 6 15:10:03 UTC 2020 - Fabian Vogt + +- Update to 5.18.0 + * New bugfix release + * For more details please see: + * https://www.kde.org/announcements/plasma-5.18.0.php +- Changes since 5.17.90: + * Upgrade theme to Breeze GTK on startup (kde#416635) + * Correctly process font, that has multiple words in family name (kde#380980) + * Bind gtk-enable-animations setting to global animation speed slider +- Drop patches, now upstream: + * 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch + ------------------------------------------------------------------- Mon Jan 27 12:50:49 UTC 2020 - Fabian Vogt - Add patch to add kconf_update binary to set the initial config: * 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch +------------------------------------------------------------------- +Thu Jan 23 11:19:56 UTC 2020 - Christophe Giboudeaux + +- Replace %make_jobs with %cmake_build + ------------------------------------------------------------------- Sat Jan 18 17:15:44 UTC 2020 - Fabian Vogt diff --git a/kde-gtk-config5.spec b/kde-gtk-config5.spec index 5ed6618..805368d 100644 --- a/kde-gtk-config5.spec +++ b/kde-gtk-config5.spec @@ -18,19 +18,17 @@ %bcond_without lang Name: kde-gtk-config5 -Version: 5.17.90 +Version: 5.18.0 Release: 0 Summary: Daemon for GTK2 and GTK3 Applications Appearance Under KDE License: LGPL-3.0-or-later AND GPL-3.0-or-later Group: System/GUI/KDE Url: http://projects.kde.org/kde-gtk-config -Source: https://download.kde.org/unstable/plasma/%{version}/kde-gtk-config-%{version}.tar.xz +Source: kde-gtk-config-%{version}.tar.xz %if %{with lang} -Source1: https://download.kde.org/unstable/plasma/%{version}/kde-gtk-config-%{version}.tar.xz.sig +Source1: kde-gtk-config-%{version}.tar.xz.sig Source2: plasma.keyring %endif -# PATCH-FIX-UPSTREAM -Patch1: 0001-Upgrade-theme-to-Breeze-GTK-on-startup.patch BuildRequires: extra-cmake-modules >= 0.0.9 BuildRequires: kf5-filesystem BuildRequires: xz @@ -81,7 +79,7 @@ the GTK3 application style from within the application style KCM %build %cmake_kf5 -d build - %make_jobs + %cmake_build %install %kf5_makeinstall -C build @@ -95,7 +93,7 @@ the GTK3 application style from within the application style KCM %{_kf5_sharedir}/kcm-gtk-module/preview.ui %dir %{_kf5_sharedir}/kconf_update/ -%{_kf5_sharedir}/kconf_update/gtk_theme.upd +%{_kf5_sharedir}/kconf_update/gtkconfig.upd %dir %{_kf5_libdir}/kconf_update_bin/ %{_kf5_libdir}/kconf_update_bin/gtk_theme