SonicDE-rpmspecs/sonic-drawing-tablet/sonic-drawing-tablet.spec

111 lines
4.6 KiB
RPMSpec
Raw Permalink Normal View History

2026-08-25 01:26:42 +02:00
# Generated for SonicDE from Fedora's kcm_wacomtablet.spec.
# SonicDE is a hard fork of KDE Plasma; the sources come from the
# https://github.com/Sonic-DE/sonic-drawing-tablet fork, not from download.kde.org.
%define _disable_source_fetch 0
%define debug_package %{nil}
%global reponame sonic-drawing-tablet
# Upstream KDE project: wacomtablet
%global oldname kcm_wacomtablet
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch: %{ix86}
#Name: kcm_wacomtablet
Name: sonic-drawing-tablet
Summary: KDE Control module for Wacom Graphictablets
Version: 6.7.4
Add EPEL apps at latest versions and fix all EPEL dependency conflicts Add 8 new packages built from upstream KDE sources at versions matching the rest of SonicDE (Gear 26.04.3, Plasma 6.7.4): - colord-kde 26.04.3 - dolphin-plugins 26.04.3 - filelight 26.04.3 - kde-gtk-config 6.7.4 - kde-inotify-survey 26.04.3 - ksanecore 26.04.3 (dependency for skanpage) - plasma-discover 6.7.4 (with snap backend disabled) - skanpage 26.04.3 These packages replace the EPEL versions and use SonicDE dependencies instead of kf6-*/plasma-* packages, ensuring they are upgraded (not removed) when SonicDE is installed alongside EPEL KDE. Fix EPEL dependencies in existing SonicDE packages that caused packages to be removed during dnf upgrade --allowerasing: - sonic-desktop-interface: kde-cli-tools -> sonic-terminal-tools, kmenuedit -> sonic-launcher-menu-edit, kwrited -> sonic-write-daemon, signon-plugin-oauth2 and plasma-systemsettings changed to Recommends - sonic-workspace: kio-fuse -> sonic-frameworks-io-fuse, polkit-kde -> sonic-polkit-agent, xdg-desktop-portal-kde -> xdg-desktop-portal-sonicde, plasma-keyboard and kde-settings-plasma changed to Recommends - sonic-workspace-addons: kf6-plasma -> sonic-interface-libraries - kde-gtk-config: breeze-gtk-common -> sonic-silver-gtk-common - sonic-login-manager: kde-settings-plasma changed to Recommends - kcm-soniclogin: plasma-systemsettings changed to Recommends - sonic-rpm-macros: kde-qdoc-common changed to Recommends - sonic-welcome-center: add Obsoletes for plasma-welcome Also includes Obsoletes/Provides fixes across all spec files for proper EPEL package replacement, and Conflicts tag removal from spec files. Result: dnf upgrade --allowerasing from standard EPEL KDE removes 0 packages. dnf install of SonicDE packages installs 195 packages with 0 removals. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-08-27 17:11:06 +00:00
Release: 3%{?dist}
2026-08-25 01:26:42 +02:00
# Automatically converted from old format: GPLv2+ - review is highly recommended.
License: GPL-2.0-or-later
#URL: https://invent.kde.org/system/wacomtablet
URL: https://github.com/Sonic-DE/%{reponame}
#Source0: http://download.kde.org/%%{stable_kf6}/plasma/%%{version}/wacomtablet-%%{version}.tar.xz
Source0: %{url}/archive/refs/tags/%{version}.tar.gz#/%{reponame}-%{version}.tar.gz
#Source1: http://download.kde.org/%%{stable_kf6}/plasma/%%{version}/wacomtablet-%%{version}.tar.xz.sig
## upstream patches
BuildRequires: sonic-frameworks-cmake-modules
BuildRequires: sonic-rpm-macros
BuildRequires: cmake(KF6I18n)
BuildRequires: cmake(KF6DBusAddons)
BuildRequires: cmake(KF6DocTools)
BuildRequires: cmake(KF6GlobalAccel)
BuildRequires: cmake(KF6Config)
BuildRequires: cmake(KF6WidgetsAddons)
BuildRequires: cmake(KF6WindowSystem)
BuildRequires: cmake(KF6XmlGui)
BuildRequires: cmake(KF6Notifications)
BuildRequires: cmake(KF6KIO)
BuildRequires: cmake(KF6KCMUtils)
BuildRequires: cmake(KF6KirigamiPlatform)
BuildRequires: cmake(Plasma5Support)
BuildRequires: cmake(Plasma)
BuildRequires: cmake(KF6XmlGui)
BuildRequires: cmake(KF6GuiAddons)
BuildRequires: sonic-rpm-macros
BuildRequires: qt6-qtbase-devel
BuildRequires: qt6-qtbase-private-devel
BuildRequires: qt6-qtdeclarative-devel
BuildRequires: pkgconfig(libwacom)
BuildRequires: pkgconfig(xcb-xinput)
BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xrandr)
ExcludeArch: s390 s390x
Obsoletes: kcm-wacomtablet < 1.3.7-2
Provides: kcm-wacomtablet = %{version}-%{release}
Add EPEL apps at latest versions and fix all EPEL dependency conflicts Add 8 new packages built from upstream KDE sources at versions matching the rest of SonicDE (Gear 26.04.3, Plasma 6.7.4): - colord-kde 26.04.3 - dolphin-plugins 26.04.3 - filelight 26.04.3 - kde-gtk-config 6.7.4 - kde-inotify-survey 26.04.3 - ksanecore 26.04.3 (dependency for skanpage) - plasma-discover 6.7.4 (with snap backend disabled) - skanpage 26.04.3 These packages replace the EPEL versions and use SonicDE dependencies instead of kf6-*/plasma-* packages, ensuring they are upgraded (not removed) when SonicDE is installed alongside EPEL KDE. Fix EPEL dependencies in existing SonicDE packages that caused packages to be removed during dnf upgrade --allowerasing: - sonic-desktop-interface: kde-cli-tools -> sonic-terminal-tools, kmenuedit -> sonic-launcher-menu-edit, kwrited -> sonic-write-daemon, signon-plugin-oauth2 and plasma-systemsettings changed to Recommends - sonic-workspace: kio-fuse -> sonic-frameworks-io-fuse, polkit-kde -> sonic-polkit-agent, xdg-desktop-portal-kde -> xdg-desktop-portal-sonicde, plasma-keyboard and kde-settings-plasma changed to Recommends - sonic-workspace-addons: kf6-plasma -> sonic-interface-libraries - kde-gtk-config: breeze-gtk-common -> sonic-silver-gtk-common - sonic-login-manager: kde-settings-plasma changed to Recommends - kcm-soniclogin: plasma-systemsettings changed to Recommends - sonic-rpm-macros: kde-qdoc-common changed to Recommends - sonic-welcome-center: add Obsoletes for plasma-welcome Also includes Obsoletes/Provides fixes across all spec files for proper EPEL package replacement, and Conflicts tag removal from spec files. Result: dnf upgrade --allowerasing from standard EPEL KDE removes 0 packages. dnf install of SonicDE packages installs 195 packages with 0 removals. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-08-27 17:11:06 +00:00
Provides: kcm_wacomtablet%{?_isa} = %{version}-%{release}
Obsoletes: kcm_wacomtablet < %{version}-%{release}
2026-08-25 01:26:42 +02:00
%description
This module implements a GUI for the Wacom Linux Drivers and extends it
with profile support to handle different button/pen layouts per profile.
%prep
%autosetup -n %{reponame}-%{version}
sed -i '/pkg_check_modules(XORGWACOM/d' CMakeLists.txt
sed -i 's/XORGWACOM_LIBRARIES//g' CMakeLists.txt
sed -i 's|#include <xorg/wacom-properties.h>|#define WACOM_PROP_SERIALIDS "Wacom Serial IDs"\n#define WACOM_PROP_TABLET_AREA "Wacom Tablet Area"\n#define WACOM_PROP_TOOL_TYPE "Wacom Tool Type"\n#define WACOM_PROP_PRESSURE_THRESHOLD "Wacom Pressure Threshold"\n#define WACOM_PROP_SAMPLEGROUP "Wacom Sample and Group"\n#define WACOM_PROP_PRESSURECURVE "Wacom Pressure Curve"\n#define WACOM_PROP_BUTTONMODES "Wacom Button Modes"\n#define WACOM_PROP_BUTTONACTIONS "Wacom Button Actions"\n#define WACOM_PROP_WHEELBUTTONS "Wacom Wheel Buttons"\n#define WACOM_PROP_STRIPBUTTONS "Wacom Strip Buttons"\n#define WACOM_PROP_ROTATION "Wacom Rotation"\n#define WACOM_PROP_TOUCH "Wacom Enable Touch"\n#define WACOM_PROP_GESTURE_ENABLE "Wacom Enable Gesture"\n#define WACOM_PROP_HOVER "Wacom Hover Enable"\n#define WACOM_PROP_PROXIMITY_THRESHOLD "Wacom Proximity Threshold"\n#define WACOM_PROP_DEBUGLEVEL "Wacom Debug Level"|' src/common/x11input.cpp
sed -i 's|#include <X11/Xwacomdefs.h>|/* #include <X11/Xwacomdefs.h> */|' src/common/x11input.cpp
2026-08-25 01:26:42 +02:00
%build
%cmake_kf6
%cmake_build
%install
%cmake_install
%find_lang %{oldname} --all-name --with-html
Fix build failures across all 136 SonicDE specs for RHEL 10 The hard-forked specs inherited Fedora's Qt5/KF5 dual-build logic and upstream naming, but SonicDE is Qt6/KF6-only and renames many install paths. This resolves every build failure so all 136 packages build cleanly on AlmaLinux 10 (EPEL10). Major categories of fixes: - Qt5/KF5 bcond: force-disable kf5/qt5 in sonic-accounts-integration, sonic-breeze, sonic-qt-theme-bridge and sonic-crypto-library, since the forks are Qt6-only and no KF5 packages are shipped. - %find_lang / %files -f mismatch: 41 specs called %find_lang with the upstream name but referenced %{name}.lang in %files, so the .lang file was never found. Aligned %files -f to the same name %find_lang emits. - Fork-specific install paths: silver/silver-dark icon themes (sonic-frameworks-silver-icons), Silver GTK theme dir (sonic-gtk-theme-bridge), and glob-based wallpaper listing (sonic-workspace-wallpapers) replace the old breeze/hardcoded paths. - Library SOVERSION globs: sonic-frameworks-quick-ui and sonic-quick-image-editor shipped %{version} in .so paths, but the CMake project version differs from the spec version; switched to SOVERSION globs. - Distro compatibility: disable HEIF plugin in sonic-frameworks-image- formats (libheif 1.17 API break), drop missing ffmpeg8 patch from sonic-pipewire, always build X11 plugin in sonic-frameworks-idle- tracker, and remove unbuildable kf5-rpm-macros / version-pinned BuildRequires. - sonic-frameworks-sso: drop D-Bus interface XML install rule and fix sysconfdir path. - sonic-polkit: remove Qt5 build (fork is Qt6-only).
2026-08-25 12:14:17 +02:00
%files -f %{oldname}.lang
2026-08-25 01:26:42 +02:00
%doc AUTHORS
%license COPYING*
%{_datadir}/dbus-1/interfaces/org.kde.Wacom*.xml
%{_kf6_bindir}/kde_wacom_tabletfinder
%{_kf6_datadir}/applications/kcm_wacomtablet.desktop
%{_kf6_datadir}/applications/kde_wacom_tabletfinder.desktop
%{_kf6_datadir}/knotifications6/wacomtablet.notifyrc
%{_kf6_datadir}/plasma/plasmoids/org.kde.plasma.wacomtablet/
%{_kf6_datadir}/plasma5support/services/wacomtablet.operations
%{_kf6_datadir}/wacomtablet/
%{_kf6_datadir}/qlogging-categories6/wacomtablet.categories
%{_kf6_metainfodir}/org.kde.wacomtablet.metainfo.xml
%{_qt6_plugindir}/plasma/kcms/systemsettings_qwidgets/kcm_wacomtablet.so
%{_kf6_plugindir}/kded/wacomtablet.so
%{_qt6_plugindir}/plasma5support/dataengine/plasma_engine_wacomtablet.so
%changelog
* Mon Aug 24 2026 Anders da Silva Rytter Hansen <andersrh@users.noreply.github.com> - 6.7.4-1
- SonicDE hard fork build for Enterprise Linux 10 and Fedora