Feedback wanted: Kvantum 1.1.0 spec changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Kvantum 1.1.0 has been released and changed the default compilation to Qt6. Due to this change, I would like to change the packaging such that the base package is Qt6 and a subpackage provides the Qt5 plugin. This causes major changes to the spec and resulting packages, so I would like some feedback on that. I also removed the dependency on the base package for the data subpackage. The circular dependency was a bit strange, and separating it allows installing kvantum-qt5 and kvantum-data separately.

Attached is the patch outlining these changes. Your feedback would be greatly appreciated.

Kind regards,
Arthur Bols
fas/irc: principis
From 2d7a2c39be4baee14bc830c9e7fbf0d7480095bf Mon Sep 17 00:00:00 2001
From: Arthur Bols <arthur@xxxxxxxx>
Date: Mon, 18 Mar 2024 11:49:52 +0100
Subject: [PATCH] Update to 1.1.0 (fedora#2269918)

---
 .gitignore   |  1 +
 kvantum.spec | 84 ++++++++++++++++++++++++++++++----------------------
 sources      |  2 +-
 3 files changed, 51 insertions(+), 36 deletions(-)

diff --git a/.gitignore b/.gitignore
index 65200b2..7422abf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -23,3 +23,4 @@
 /kvantum-1.0.7.tar.gz
 /kvantum-1.0.9.tar.gz
 /kvantum-1.0.10.tar.gz
+/kvantum-1.1.0.tar.gz
diff --git a/kvantum.spec b/kvantum.spec
index b403bc3..d2d47c8 100644
--- a/kvantum.spec
+++ b/kvantum.spec
@@ -1,8 +1,8 @@
 %global _vpath_srcdir Kvantum
-%bcond_without  qt6
+%bcond_without  qt5
 
 Name:           kvantum
-Version:        1.0.10
+Version:        1.1.0
 Release:        %autorelease
 Summary:        SVG-based theme engine for Qt, KDE and LXQt
 
@@ -15,26 +15,35 @@ BuildRequires:  cmake
 BuildRequires:  make
 BuildRequires:  pkgconfig(x11)
 BuildRequires:  pkgconfig(xext)
+BuildRequires:  pkgconfig(Qt6Core)
+BuildRequires:  pkgconfig(Qt6Gui)
+BuildRequires:  pkgconfig(Qt6Linguist)
+BuildRequires:  pkgconfig(Qt6Svg)
+BuildRequires:  pkgconfig(Qt6Widgets)
+%if 0%{?fedora} >= 40
+BuildRequires:  cmake(KF6WindowSystem)
+%endif
+%if %{with qt5}
 BuildRequires:  pkgconfig(Qt5)
 BuildRequires:  pkgconfig(Qt5Designer)
 BuildRequires:  pkgconfig(Qt5Svg)
 BuildRequires:  pkgconfig(Qt5X11Extras)
 BuildRequires:  cmake(KF5WindowSystem)
-%if %{with qt6}
-BuildRequires:  pkgconfig(Qt6Core)
-BuildRequires:  pkgconfig(Qt6Gui)
-BuildRequires:  pkgconfig(Qt6Svg)
-BuildRequires:  pkgconfig(Qt6Widgets)
 %endif
 BuildRequires:  desktop-file-utils
 BuildRequires:  kde-filesystem
-Requires:       %{name}-data
+
 Requires:       hicolor-icon-theme
+Requires:       %{name}-data = %{version}-%{release}
 
-%if %{with qt6}
-Recommends:     (%{name}-qt6 if qt6-qtbase-gui)
+%if %{with qt5}
+Recommends:     (%{name}-qt5 if qt5-qtbase-gui)
 %endif
 
+# Qt6 is default since 1.1.0
+Provides:  kvantum-qt6 = %{version}-%{release}
+Obsoletes: kvantum-qt6 < 1.1.0
+
 %description
 Kvantum is an SVG-based theme engine for Qt, tuned to KDE and LXQt, with an
 emphasis on elegance, usability and practicality.
@@ -50,22 +59,21 @@ Qt widgets.
 Kvantum also comes with many other themes that are installed as root and can
 be selected and activated by using Kvantum Manager.
 
-%if %{with qt6}
-%package qt6
-Summary:   SVG-based theme engine for Qt6
-Requires:  %{name}-data
+%if %{with qt5}
+%package qt5
+Summary:   SVG-based theme engine for Qt5
+Requires:  %{name}-data = %{version}-%{release}
 
-%description qt6
+%description qt5
 Kvantum is an SVG-based theme engine for Qt, tuned to KDE and LXQt, with an
 emphasis on elegance, usability and practicality.
 
-This package contains the Qt6 integration plugin.
+This package contains the Qt5 integration plugin.
 %endif
 
 %package data
 Summary:    SVG-based theme engine for Qt5, KDE and LXQt
 BuildArch:  noarch
-Requires:   kvantum
 
 %description data
 Kvantum is an SVG-based theme engine for Qt, tuned to KDE and LXQt, with an
@@ -77,22 +85,28 @@ This package contains the data needed Kvantum.
 %autosetup -n Kvantum-%{version}
 
 %build
-%if %{with qt6}
-%global _vpath_builddir %{_target_platform}-qt6
-%cmake -DENABLE_QT5:BOOL=OFF
-%cmake_build
-%endif
+%if %{with qt5}
 %global _vpath_builddir %{_target_platform}-qt5
 %cmake -DENABLE_QT5:BOOL=ON
 %cmake_build
+%endif
 
-%install
-%if %{with qt6}
 %global _vpath_builddir %{_target_platform}-qt6
-%cmake_install
+%cmake \
+    -DENABLE_QT5:BOOL=OFF \
+%if 0%{?fedora} < 40
+    -DWITHOUT_KF=ON
 %endif
+%cmake_build
+
+%install
+%if %{with qt5}
 %global _vpath_builddir %{_target_platform}-qt5
 %cmake_install
+%endif
+
+%global _vpath_builddir %{_target_platform}-qt6
+%cmake_install
 
 # desktop-file-validate doesn't recognize LXQt
 sed -i "s|LXQt|X-LXQt|" %{buildroot}%{_datadir}/applications/kvantummanager.desktop
@@ -105,23 +119,23 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/kvantummanager.deskto
 %doc Kvantum/ChangeLog Kvantum/NEWS Kvantum/README.md
 %{_bindir}/kvantummanager
 %{_bindir}/kvantumpreview
-%{_qt5_plugindir}/styles/libkvantum.so
-
-%if %{with qt6}
-%files qt6
-%license Kvantum/COPYING
 %{_qt6_plugindir}/styles/libkvantum.so
-%endif
-
-%files data
-%{_datadir}/Kvantum/
 %{_datadir}/applications/kvantummanager.desktop
-%{_datadir}/color-schemes/Kv*.colors
 %{_datadir}/icons/hicolor/scalable/apps/kvantum.svg
 %dir %{_datadir}/kvantumpreview
 %dir %{_datadir}/kvantumpreview/translations
 %dir %{_datadir}/kvantummanager
 %dir %{_datadir}/kvantummanager/translations
 
+%if %{with qt5}
+%files qt5
+%{_qt5_plugindir}/styles/libkvantum.so
+%endif
+
+%files data
+%license Kvantum/COPYING
+%{_datadir}/Kvantum/
+%{_datadir}/color-schemes/Kv*.colors
+
 %changelog
 %autochangelog
diff --git a/sources b/sources
index d446366..38d1ea3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (kvantum-1.0.10.tar.gz) = fb31f424a16c37eafaaa0a1cdddde165bcaa58ed6ea3ef76e77d689c2b8b47e516a651d066712eaf14b1344e4b30955ce6c955367caf25d51f2aaa2c8970b0fd
+SHA512 (kvantum-1.1.0.tar.gz) = dc6bc3cb44d3a050a7e43196f7c0ab69d5f33c5fa645cdf191631164384aed8d8130093a4da4367b061c33d0d844dc57f91352d96a9368dd9abd6694a404d7f6
-- 
2.44.0

--
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux