This commit is contained in:
2026-01-28 13:41:23 +08:00
parent d4658259d2
commit 4286ecb600
4 changed files with 105 additions and 3 deletions

View File

@@ -0,0 +1,102 @@
%define qt6_version 6.8.0
%define rname breeze-icons
# Full KF6 version (e.g. 6.22.0)
%{!?_kf6_version: %global _kf6_version %{version}}
Name: kf6-breeze-icons
Version: 6.20.0
Release: 0
Summary: Breeze icon theme
License: LGPL-3.0-only
URL: https://www.kde.org
Source: https://ftp.ntu.edu.tw/pub/kde/stable/frameworks/6.20/%{rname}-%{version}.tar.xz
BuildRequires: fdupes
BuildRequires: kf6-extra-cmake-modules >= %{_kf6_version}
BuildRequires: libxml2-tools
# Skip 24px icons generation (saves ~30MB and installs dangling symlinks)
# BuildRequires: python3 python3-lxml
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
BuildRequires: cmake(Qt6Gui) >= %{qt6_version}
Provides: breeze5-icons = %{version}
Obsoletes: breeze5-icons < %{version}
%description
Breeze-icons is a freedesktop.org compatible icon theme.
%package -n libKF6BreezeIcons6
Summary: Breeze icon theme - icon library
%description -n libKF6BreezeIcons6
Breeze-icons is a freedesktop.org compatible icon theme.
This package provides a library containing icons, resources, and functions
to use them. It is meant to be used for self contained deployments.
%package rcc
Summary: Breeze icon theme - rcc file
Provides: breeze5-icons-rcc = %{version}
Obsoletes: breeze5-icons-rcc < %{version}
%description rcc
Breeze-icons is a freedesktop.org compatible icon theme.
This contains the Breeze (non-dark) icons in a QResource file, used by Kexi.
%package devel
Summary: CMake config files for kf6-breeze-icons
Requires: kf6-breeze-icons = %{version}
Requires: libKF6BreezeIcons6 = %{version}
%description devel
This package provides CMake config files for projects that wish to ensure
the Breeze icons are available at build time.
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%define _lto_cflags %{nil}
# kexi needs the icons resource
%cmake_kf6 \
-DBINARY_ICONS_RESOURCE:BOOL=TRUE \
-DWITH_ICON_GENERATION:BOOL=FALSE
%kf6_build
%install
%kf6_install
# yast2-theme uses these, but it got renamed in 5.55.0
ln -s yast-software-group.svg %{buildroot}%{_kf6_iconsdir}/breeze/preferences/32/yast-software.svg
%fdupes %{buildroot}%{_kf6_iconsdir}
%icon_theme_cache_create_ghost breeze
%icon_theme_cache_create_ghost breeze-dark
%ldconfig_scriptlets -n libKF6BreezeIcons6
%files
%license COPYING*
%ghost %{_kf6_iconsdir}/breeze/icon-theme.cache
%ghost %{_kf6_iconsdir}/breeze-dark/icon-theme.cache
%exclude %{_kf6_iconsdir}/breeze/breeze-icons.rcc
%exclude %{_kf6_iconsdir}/breeze-dark/breeze-icons-dark.rcc
%{_kf6_iconsdir}/breeze/
%{_kf6_iconsdir}/breeze-dark/
%files -n libKF6BreezeIcons6
%{_kf6_libdir}/libKF6BreezeIcons.so.*
%files rcc
%dir %{_kf6_iconsdir}/breeze
# Kexi does not need the -dark variant.
%{_kf6_iconsdir}/breeze/breeze-icons.rcc
%files devel
%{_kf6_cmakedir}/KF6BreezeIcons/
%{_kf6_includedir}/BreezeIcons/
%{_kf6_libdir}/libKF6BreezeIcons.so
%changelog

View File

@@ -16,7 +16,7 @@ Source: https://ftp.ntu.edu.tw/pub/kde/stable/frameworks/6.20/%{rname}-%
BuildRequires: fdupes
BuildRequires: kf6-extra-cmake-modules >= %{_kf6_version}
BuildRequires: qt6-gui-private-devel >= %{qt6_version}
BuildRequires: qt6-base-private-devel >= %{qt6_version}
BuildRequires: cmake(KF6Archive) >= %{_kf6_version}
BuildRequires: cmake(KF6BreezeIcons) >= %{_kf6_version}
BuildRequires: cmake(KF6ColorScheme) >= %{_kf6_version}

View File

@@ -23,7 +23,7 @@ Source: https://ftp.ntu.edu.tw/pub/kde/stable/frameworks/6.20/%{rname}-%
BuildRequires: fdupes
BuildRequires: kf6-extra-cmake-modules >= %{_kf6_version}
BuildRequires: pkgconfig
BuildRequires: qt6-gui-private-devel >= %{qt6_version}
BuildRequires: qt6-base-private-devel >= %{qt6_version}
BuildRequires: cmake(KF6CoreAddons) >= %{_kf6_version}
BuildRequires: cmake(KF6Notifications) >= %{_kf6_version}
BuildRequires: cmake(KF6WidgetsAddons) >= %{_kf6_version}

View File

@@ -25,7 +25,7 @@ BuildRequires: fdupes
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
BuildRequires: pkgconfig
BuildRequires: qt6-core-private-devel >= %{qt6_version}
BuildRequires: qt6-gui-private-devel >= %{qt6_version}
BuildRequires: qt6-base-private-devel >= %{qt6_version}
BuildRequires: systemd-rpm-macros
BuildRequires: cmake(Breeze) >= %{_plasma6_bugfix}
BuildRequires: cmake(KDecoration3) >= %{_plasma6_bugfix}