%global toolchain clang %global style oxygen %global dev Plaristote %define _lto_cflags %{nil} %global forgeurl https://github.com/%{dev}/%{style}-style %global commit ece2e521a722a7e43411019fc8b23ed62660eff6 %global date 20250829 %forgemeta %if 0%{?rhel} && 0%{?rhel} >= 10 %bcond_with kf5 %else %bcond_without kf5 %endif # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} Name: plasma-%{style}-%{dev} Version: 0 Release: 1%{?dist} Epoch: 1 Summary: The Oxygen style for KDE, updated to maintain its former glory, and to add a matching QML style License: CC0-1.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only AND GPL-3.0-or-later AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-3.0-only AND (GPL-2.0-only OR GPL-3.0-only) AND (LGPL-2.1-only OR LGPL-3.0-only) AND MIT URL: %{forgeurl} Source: %{forgesource} # Patch: qqc2-qt5.patch # Misc BuildRequires: clang BuildRequires: extra-cmake-modules BuildRequires: gettext BuildRequires: libxcb-devel BuildRequires: cmake(Plasma) %if %{with kf5} # Qt5 BuildRequires: kf5-rpm-macros BuildRequires: cmake(KF5Completion) BuildRequires: cmake(KF5Config) BuildRequires: cmake(KF5CoreAddons) BuildRequires: cmake(KF5FrameworkIntegration) BuildRequires: cmake(KF5GuiAddons) BuildRequires: cmake(KF5I18n) BuildRequires: cmake(KF5Service) BuildRequires: cmake(KF5WidgetsAddons) BuildRequires: cmake(KF5WindowSystem) BuildRequires: cmake(Qt5DBus) BuildRequires: cmake(Qt5Quick) BuildRequires: cmake(Qt5Widgets) BuildRequires: cmake(Qt5X11Extras) Requires: (%{name}-qt5 if qt5-qtbase-gui) %endif # Qt6 BuildRequires: kf6-rpm-macros BuildRequires: cmake(KDecoration3) BuildRequires: cmake(KF6ColorScheme) BuildRequires: cmake(KF6Completion) BuildRequires: cmake(KF6Config) BuildRequires: cmake(KF6CoreAddons) BuildRequires: cmake(KF6FrameworkIntegration) BuildRequires: cmake(KF6GuiAddons) BuildRequires: cmake(KF6I18n) BuildRequires: cmake(KF6KCMUtils) BuildRequires: cmake(KF6Service) BuildRequires: cmake(KF6WidgetsAddons) BuildRequires: cmake(KF6WindowSystem) BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6DBus) BuildRequires: cmake(Qt6Gui) BuildRequires: cmake(Qt6Quick) BuildRequires: cmake(Qt6Widgets) BuildRequires: qt6-qtbase-private-devel %if 0%{?rhel} >= 10 || 0%{?fedora} >= 42 BuildRequires: cmake(Qt6GuiPrivate) %endif Requires: kf6-filesystem Requires: %{name}-qt6 Requires: oxygen-cursor-themes >= %{version} Requires: oxygen-sound-theme # for oxygen look-and-feel Requires: oxygen-icon-theme Provides: plasma-%{style} Conflicts: plasma-%{style} # kwin-oxygen was removed in 5.1.95 Obsoletes: kwin-oxygen < 5.1.95-1 Conflicts: plasma-desktop < 5.16.90 %description %{summary}. This is a fork of the Oxygen KDE style which was originally implemented for KDE4. %files -f oxygen.lang %license LICENSES/* %{_bindir}/oxygen-settings6 %{_sysconfdir}/profile.d/configure-oxygen.sh %{_kf6_datadir}/applications/kcm_oxygendecoration.desktop %{_kf6_datadir}/color-schemes/Oxygen.colors %{_kf6_datadir}/color-schemes/OxygenCold.colors %{_kf6_datadir}/icons/hicolor/*/apps/oxygen-settings.* %{_kf6_datadir}/kstyle/themes/oxygen.themerc %{_kf6_datadir}/plasma/look-and-feel/org.kde.oxygen/ %{_kf6_datadir}/plasma/desktoptheme/oxygen/ %{_kf6_metainfodir}/org.kde.oxygen.appdata.xml %{_kf6_qtplugindir}/kstyle_config/kstyle_oxygen_config.so %{_kf6_qtplugindir}/org.kde.kdecoration3.kcm/kcm_oxygendecoration.so %{_kf6_qtplugindir}/org.kde.kdecoration3/org.kde.oxygen.so #-------------------------------------------------------------------------------------------------- %if %{with kf5} %package qt5 Summary: Oxygen widget style for Qt 5 Obsoletes: qt5-style-oxygen < %{version}-%{release} Provides: qt5-style-oxygen = %{version}-%{release} Conflicts: plasma-%{style}-qt5 %description qt5 %{summary}. %files qt5 %{_bindir}/oxygen-demo5 %{_libdir}/liboxygenstyle5.so.* %{_libdir}/liboxygenstyleconfig5.so.* %{_kf5_qtplugindir}/styles/oxygen5.so %endif #-------------------------------------------------------------------------------------------------- %package qt6 Summary: Oxygen widget style for Qt 6 Conflicts: plasma-%{style}-qt6 %description qt6 %{summary}. %files qt6 %{_bindir}/oxygen-demo6 %{_libdir}/liboxygenstyle6.so.* %{_libdir}/liboxygenstyleconfig6.so.* %{_kf6_qtplugindir}/styles/oxygen6.so #-------------------------------------------------------------------------------------------------- %package cursor-themes Summary: Oxygen cursor themes BuildArch: noarch Conflicts: oxygen-cursor-themes Obsoletes: plasma-oxygen-common < 5.1.1-2 %description cursor-themes %{summary}. %files cursor-themes %{_datadir}/icons/KDE_Classic/ %{_datadir}/icons/Oxygen_Black/ %{_datadir}/icons/Oxygen_Blue/ %{_datadir}/icons/Oxygen_White/ %{_datadir}/icons/Oxygen_Yellow/ %{_datadir}/icons/Oxygen_Zion/ #--------------------------------------------------------------------------------------------------- %package -n qqc2-oxygen-style Summary: Oxygen style for QQC2 apps %description -n qqc2-oxygen-style %{summary}. %files -n qqc2-oxygen-style %{_qt6_qmldir}/org/kde/oxygen/ %{_qt6_qmldir}/org/kde/qqc2oxygenstyle/ #--------------------------------------------------------------------------------------------------- %prep %forgeautosetup -p1 %build mkdir qt6build qt5build pushd qt6build %cmake_kf6 -S .. -DBUILD_QT6=ON -DBUILD_QT5=OFF %cmake_build popd %if %{with kf5} pushd qt5build %cmake_kf5 -S .. -DBUILD_QT6=OFF -DBUILD_QT5=ON %cmake_build popd %endif %install pushd qt6build %cmake_install popd %if %{with kf5} pushd qt5build %cmake_install popd %endif install -Dm755 -t %{buildroot}%{_sysconfdir}/profile.d/ qtquickcontrols/configure-oxygen.sh %find_lang oxygen --with-qt --all-name #--------------------------------------------------------------------------------------------------- %changelog * Sat Aug 16 2025 Hazel Bunny - 1:0-1.20250829gitece2e521 - Intial snapshot