Add SDL2 and delete old files
This commit is contained in:
parent
a0c1dd3e52
commit
206bdff6d4
9 changed files with 274 additions and 622 deletions
81
SDL2/SDL2-2.0.22-prefer-wayland.patch
Normal file
81
SDL2/SDL2-2.0.22-prefer-wayland.patch
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
From 68d8a2c6b4f732920df40bd79dc3c18b71a4a349 Mon Sep 17 00:00:00 2001
|
||||
From: Neal Gompa <ngompa@fedoraproject.org>
|
||||
Date: Fri, 29 Apr 2022 23:39:39 -0400
|
||||
Subject: [PATCH] Revert "Revert "video: Prefer Wayland over X11""
|
||||
|
||||
For Fedora/RHEL, we want to continue using Wayland by default.
|
||||
|
||||
The majority of issues around Wayland by default seem to center
|
||||
around cases that are issues for the Steam Runtime's bundled
|
||||
copy of SDL and proprietary games that depend on that runtime.
|
||||
|
||||
These issues do not apply to us.
|
||||
|
||||
This reverts commit 254fcc90eb22bb159ab365ad956222a9c5632841.
|
||||
---
|
||||
src/video/SDL_video.c | 24 ++++++++++++------------
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/video/SDL_video.c b/src/video/SDL_video.c
|
||||
index 2b896c44b..6f31f4c9e 100644
|
||||
--- a/src/video/SDL_video.c
|
||||
+++ b/src/video/SDL_video.c
|
||||
@@ -61,12 +61,12 @@ static VideoBootStrap *bootstrap[] = {
|
||||
#if SDL_VIDEO_DRIVER_COCOA
|
||||
&COCOA_bootstrap,
|
||||
#endif
|
||||
-#if SDL_VIDEO_DRIVER_X11
|
||||
- &X11_bootstrap,
|
||||
-#endif
|
||||
#if SDL_VIDEO_DRIVER_WAYLAND
|
||||
&Wayland_bootstrap,
|
||||
#endif
|
||||
+#if SDL_VIDEO_DRIVER_X11
|
||||
+ &X11_bootstrap,
|
||||
+#endif
|
||||
#if SDL_VIDEO_DRIVER_VIVANTE
|
||||
&VIVANTE_bootstrap,
|
||||
#endif
|
||||
@@ -4275,12 +4275,12 @@ SDL_IsScreenKeyboardShown(SDL_Window *window)
|
||||
#if SDL_VIDEO_DRIVER_UIKIT
|
||||
#include "uikit/SDL_uikitmessagebox.h"
|
||||
#endif
|
||||
-#if SDL_VIDEO_DRIVER_X11
|
||||
-#include "x11/SDL_x11messagebox.h"
|
||||
-#endif
|
||||
#if SDL_VIDEO_DRIVER_WAYLAND
|
||||
#include "wayland/SDL_waylandmessagebox.h"
|
||||
#endif
|
||||
+#if SDL_VIDEO_DRIVER_X11
|
||||
+#include "x11/SDL_x11messagebox.h"
|
||||
+#endif
|
||||
#if SDL_VIDEO_DRIVER_HAIKU
|
||||
#include "haiku/SDL_bmessagebox.h"
|
||||
#endif
|
||||
@@ -4388,17 +4388,17 @@ SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
|
||||
retval = 0;
|
||||
}
|
||||
#endif
|
||||
-#if SDL_VIDEO_DRIVER_X11
|
||||
+#if SDL_VIDEO_DRIVER_WAYLAND
|
||||
if (retval == -1 &&
|
||||
- SDL_MessageboxValidForDriver(messageboxdata, SDL_SYSWM_X11) &&
|
||||
- X11_ShowMessageBox(messageboxdata, buttonid) == 0) {
|
||||
+ SDL_MessageboxValidForDriver(messageboxdata, SDL_SYSWM_WAYLAND) &&
|
||||
+ Wayland_ShowMessageBox(messageboxdata, buttonid) == 0) {
|
||||
retval = 0;
|
||||
}
|
||||
#endif
|
||||
-#if SDL_VIDEO_DRIVER_WAYLAND
|
||||
+#if SDL_VIDEO_DRIVER_X11
|
||||
if (retval == -1 &&
|
||||
- SDL_MessageboxValidForDriver(messageboxdata, SDL_SYSWM_WAYLAND) &&
|
||||
- Wayland_ShowMessageBox(messageboxdata, buttonid) == 0) {
|
||||
+ SDL_MessageboxValidForDriver(messageboxdata, SDL_SYSWM_X11) &&
|
||||
+ X11_ShowMessageBox(messageboxdata, buttonid) == 0) {
|
||||
retval = 0;
|
||||
}
|
||||
#endif
|
||||
--
|
||||
2.35.1
|
||||
|
||||
83
SDL2/SDL_config.h
Normal file
83
SDL2/SDL_config.h
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
/*
|
||||
Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
arising from the use of this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any purpose,
|
||||
including commercial applications, and to alter it and redistribute it
|
||||
freely, subject to the following restrictions:
|
||||
|
||||
1. The origin of this software must not be misrepresented; you must not
|
||||
claim that you wrote the original software. If you use this software
|
||||
in a product, an acknowledgment in the product documentation would be
|
||||
appreciated but is not required.
|
||||
2. Altered source versions must be plainly marked as such, and must not be
|
||||
misrepresented as being the original software.
|
||||
3. This notice may not be removed or altered from any source distribution.
|
||||
*/
|
||||
|
||||
/*
|
||||
* This SDL_config.h is a wrapper include file for the original SDL_config.h,
|
||||
* which has been renamed to SDL_config-<arch>.h. There are conflicts for the
|
||||
* original SDL_config.h on multilib systems, which result from arch-specific
|
||||
* configuration options. Please do not use the arch-specific file directly.
|
||||
*
|
||||
* Copyright (C) 2013 Igor Gnatenko
|
||||
* Igor Gnatenko <i.gnatenko.brain@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file SDL_config.h
|
||||
*/
|
||||
|
||||
#ifdef SDL_config_wrapper_h
|
||||
#error "SDL_config_wrapper_h should not be defined!"
|
||||
#endif
|
||||
#define SDL_config_wrapper_h
|
||||
|
||||
#if defined(__i386__)
|
||||
#include "SDL_config-i386.h"
|
||||
#elif defined(__ia64__)
|
||||
#include "SDL_config-ia64.h"
|
||||
#elif defined(__powerpc64__)
|
||||
# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
#include "SDL_config-ppc64.h"
|
||||
# else
|
||||
#include "SDL_config-ppc64le.h"
|
||||
# endif
|
||||
#elif defined(__powerpc__)
|
||||
#include "SDL_config-ppc.h"
|
||||
#elif defined(__s390x__)
|
||||
#include "SDL_config-s390x.h"
|
||||
#elif defined(__s390__)
|
||||
#include "SDL_config-s390.h"
|
||||
#elif defined(__x86_64__)
|
||||
#include "SDL_config-x86_64.h"
|
||||
#elif defined(__arm__)
|
||||
#include "SDL_config-arm.h"
|
||||
#elif defined(__alpha__)
|
||||
#include "SDL_config-alpha.h"
|
||||
#elif defined(__sparc__) && defined (__arch64__)
|
||||
#include "SDL_config-sparc64.h"
|
||||
#elif defined(__sparc__)
|
||||
#include "SDL_config-sparc.h"
|
||||
#elif defined(__aarch64__)
|
||||
#include "SDL_config-aarch64.h"
|
||||
#elif defined(__mips64) && defined(__MIPSEL__)
|
||||
#include "SDL_config-mips64el.h"
|
||||
#elif defined(__mips64)
|
||||
#include "SDL_config-mips64.h"
|
||||
#elif defined(__mips) && defined(__MIPSEL__)
|
||||
#include "SDL_config-mipsel.h"
|
||||
#elif defined(__mips)
|
||||
#include "SDL_config-mips.h"
|
||||
#elif defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 64
|
||||
#include "SDL_config-riscv64.h"
|
||||
#else
|
||||
#error "The SDL2-devel package is not usable with the architecture."
|
||||
#endif
|
||||
|
||||
#undef SDL_config_wrapper_h
|
||||
83
SDL2/SDL_revision.h
Normal file
83
SDL2/SDL_revision.h
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
/*
|
||||
Simple DirectMedia Layer
|
||||
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
arising from the use of this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any purpose,
|
||||
including commercial applications, and to alter it and redistribute it
|
||||
freely, subject to the following restrictions:
|
||||
|
||||
1. The origin of this software must not be misrepresented; you must not
|
||||
claim that you wrote the original software. If you use this software
|
||||
in a product, an acknowledgment in the product documentation would be
|
||||
appreciated but is not required.
|
||||
2. Altered source versions must be plainly marked as such, and must not be
|
||||
misrepresented as being the original software.
|
||||
3. This notice may not be removed or altered from any source distribution.
|
||||
*/
|
||||
|
||||
/*
|
||||
* This SDL_revision.h is a wrapper include file for the original SDL_revision.h,
|
||||
* which has been renamed to SDL_revision-<arch>.h. There are conflicts for the
|
||||
* original SDL_revision.h on multilib systems, which result from REVISION
|
||||
* inconsistency between architecture builds, though, I'm not sure why.
|
||||
* Computers are weird.
|
||||
*
|
||||
* Copyright (C) 2021 Tom Callaway <spotrh@gmail.com>
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file SDL_revision.h
|
||||
*/
|
||||
|
||||
#ifdef SDL_revision_wrapper_h
|
||||
#error "SDL_revision_wrapper_h should not be defined!"
|
||||
#endif
|
||||
#define SDL_revision_wrapper_h
|
||||
|
||||
#if defined(__i386__)
|
||||
#include "SDL_revision-i386.h"
|
||||
#elif defined(__ia64__)
|
||||
#include "SDL_revision-ia64.h"
|
||||
#elif defined(__powerpc64__)
|
||||
# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
||||
#include "SDL_revision-ppc64.h"
|
||||
# else
|
||||
#include "SDL_revision-ppc64le.h"
|
||||
# endif
|
||||
#elif defined(__powerpc__)
|
||||
#include "SDL_revision-ppc.h"
|
||||
#elif defined(__s390x__)
|
||||
#include "SDL_revision-s390x.h"
|
||||
#elif defined(__s390__)
|
||||
#include "SDL_revision-s390.h"
|
||||
#elif defined(__x86_64__)
|
||||
#include "SDL_revision-x86_64.h"
|
||||
#elif defined(__arm__)
|
||||
#include "SDL_revision-arm.h"
|
||||
#elif defined(__alpha__)
|
||||
#include "SDL_revision-alpha.h"
|
||||
#elif defined(__sparc__) && defined (__arch64__)
|
||||
#include "SDL_revision-sparc64.h"
|
||||
#elif defined(__sparc__)
|
||||
#include "SDL_revision-sparc.h"
|
||||
#elif defined(__aarch64__)
|
||||
#include "SDL_revision-aarch64.h"
|
||||
#elif defined(__mips64) && defined(__MIPSEL__)
|
||||
#include "SDL_revision-mips64el.h"
|
||||
#elif defined(__mips64)
|
||||
#include "SDL_revision-mips64.h"
|
||||
#elif defined(__mips) && defined(__MIPSEL__)
|
||||
#include "SDL_revision-mipsel.h"
|
||||
#elif defined(__mips)
|
||||
#include "SDL_revision-mips.h"
|
||||
#elif defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 64
|
||||
#include "SDL_revision-riscv64.h"
|
||||
#else
|
||||
#error "The SDL2-devel package is not usable with the architecture."
|
||||
#endif
|
||||
|
||||
#undef SDL_revision_wrapper_h
|
||||
27
SDL2/multilib.patch
Normal file
27
SDL2/multilib.patch
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
diff --git a/sdl2-config.in b/sdl2-config.in
|
||||
index f6eca7668..93460f7ae 100644
|
||||
--- a/sdl2-config.in
|
||||
+++ b/sdl2-config.in
|
||||
@@ -7,7 +7,6 @@ bindir=$(cd -P -- "$(dirname -- "$0")" && printf '%s\n' "$(pwd -P)")
|
||||
prefix=$(cd -P -- "$bindir/@bin_prefix_relpath@" && printf '%s\n' "$(pwd -P)")
|
||||
exec_prefix=@exec_prefix@
|
||||
exec_prefix_set=no
|
||||
-libdir=@libdir@
|
||||
|
||||
@ENABLE_STATIC_FALSE@usage="\
|
||||
@ENABLE_STATIC_FALSE@Usage: $0 [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--cflags] [--libs]"
|
||||
@@ -49,12 +48,11 @@ while test $# -gt 0; do
|
||||
echo -I@includedir@/SDL2 @SDL_CFLAGS@
|
||||
;;
|
||||
@ENABLE_SHARED_TRUE@ --libs)
|
||||
-@ENABLE_SHARED_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
|
||||
+@ENABLE_SHARED_TRUE@ echo @SDL_RLD_FLAGS@ @SDL_LIBS@
|
||||
@ENABLE_SHARED_TRUE@ ;;
|
||||
@ENABLE_STATIC_TRUE@@ENABLE_SHARED_TRUE@ --static-libs)
|
||||
@ENABLE_STATIC_TRUE@@ENABLE_SHARED_FALSE@ --libs|--static-libs)
|
||||
-@ENABLE_STATIC_TRUE@ sdl_static_libs=$(echo "@SDL_LIBS@ @SDL_STATIC_LIBS@" | sed -E "s#-lSDL2[ $]#$libdir/libSDL2.a #g")
|
||||
-@ENABLE_STATIC_TRUE@ echo -L@libdir@ $sdl_static_libs
|
||||
+@ENABLE_STATIC_TRUE@ echo @SDL_LIBS@ @SDL_STATIC_LIBS@
|
||||
@ENABLE_STATIC_TRUE@ ;;
|
||||
*)
|
||||
echo "${usage}" 1>&2
|
||||
BIN
SonicDE-package-mapping.xlsx
Normal file
BIN
SonicDE-package-mapping.xlsx
Normal file
Binary file not shown.
|
|
@ -1,138 +0,0 @@
|
|||
%define _disable_source_fetch 0
|
||||
%define debug_package %{nil}
|
||||
|
||||
Name: sonic-interface-libraries
|
||||
Version: 6.6.4
|
||||
Release: 1%{?dist}
|
||||
Summary: Foundation of the SonicDE user interface (fork of libplasma)
|
||||
|
||||
License: LGPL-2.0-or-later
|
||||
URL: https://github.com/Sonic-DE/sonic-interface-libraries
|
||||
Source0: %{url}/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||
|
||||
%global plasma_version %(echo %{version} | cut -d. -f1-3)
|
||||
|
||||
BuildRequires: extra-cmake-modules
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: cmake(KF6Archive)
|
||||
BuildRequires: cmake(KF6Declarative)
|
||||
BuildRequires: cmake(KF6Su)
|
||||
BuildRequires: cmake(KF6GlobalAccel)
|
||||
BuildRequires: cmake(KF6Kirigami2)
|
||||
BuildRequires: cmake(KF6Package)
|
||||
BuildRequires: cmake(KF6Parts)
|
||||
BuildRequires: cmake(KF6ConfigWidgets)
|
||||
BuildRequires: cmake(KF6ColorScheme)
|
||||
BuildRequires: kf6-rpm-macros
|
||||
BuildRequires: cmake(KF6Solid)
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: qt6-qtbase-devel
|
||||
BuildRequires: qt6-qtbase-private-devel
|
||||
BuildRequires: qt6-qtdeclarative-devel
|
||||
BuildRequires: qt6-qtsvg-devel
|
||||
|
||||
# KDE Frameworks
|
||||
BuildRequires: cmake(KF6Config)
|
||||
BuildRequires: cmake(KF6CoreAddons)
|
||||
BuildRequires: cmake(KF6DBusAddons)
|
||||
BuildRequires: cmake(KF6DocTools)
|
||||
BuildRequires: cmake(KF6GuiAddons)
|
||||
BuildRequires: cmake(KF6I18n)
|
||||
BuildRequires: cmake(KF6IconThemes)
|
||||
BuildRequires: cmake(KF6KCMUtils)
|
||||
BuildRequires: cmake(KF6KIO)
|
||||
BuildRequires: cmake(KF6Notifications)
|
||||
BuildRequires: cmake(KF6Service)
|
||||
BuildRequires: cmake(KF6Svg)
|
||||
BuildRequires: cmake(KF6WidgetsAddons)
|
||||
BuildRequires: cmake(KF6WindowSystem)
|
||||
BuildRequires: cmake(KF6XmlGui)
|
||||
BuildRequires: cmake(PlasmaWaylandProtocols)
|
||||
|
||||
# Qt
|
||||
BuildRequires: cmake(Qt6WaylandClient)
|
||||
|
||||
# Plasma
|
||||
BuildRequires: cmake(PlasmaActivities)
|
||||
|
||||
BuildRequires: wayland-devel
|
||||
BuildRequires: kwayland-devel
|
||||
|
||||
# X11 Support
|
||||
BuildRequires: libX11-devel
|
||||
BuildRequires: libxcb-devel
|
||||
BuildRequires: xcb-util-devel
|
||||
BuildRequires: libXcursor-devel
|
||||
BuildRequires: libXrender-devel
|
||||
BuildRequires: libXext-devel
|
||||
BuildRequires: libXfixes-devel
|
||||
BuildRequires: libXi-devel
|
||||
|
||||
Provides: libplasma%{?_isa} >= %{plasma_version}
|
||||
Provides: libplasma >= %{plasma_version}
|
||||
Obsoletes: libplasma <= %{plasma_version}
|
||||
|
||||
# Renamed from kf6-plasma
|
||||
Obsoletes: kf6-plasma < 1:%{version}-%{release}
|
||||
Provides: kf6-plasma = 1:%{version}-%{release}
|
||||
|
||||
%description
|
||||
Sonic Interface Libraries is a fork of libplasma, providing the foundational
|
||||
libraries for themes, applets, and widgets in SonicDE.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: cmake(KF6Package)
|
||||
Requires: qt6-qtbase-devel
|
||||
Requires: cmake(KF6Service)
|
||||
Requires: cmake(KF6WindowSystem)
|
||||
Provides: libplasma-devel%{?_isa} >= %{plasma_version}
|
||||
Provides: libplasma-devel >= %{plasma_version}
|
||||
Obsoletes: libplasma-devel <= %{plasma_version}
|
||||
|
||||
Obsoletes: kf6-plasma-devel < 1:%{version}-%{release}
|
||||
Provides: kf6-plasma-devel = 1:%{version}-%{release}
|
||||
|
||||
%description devel
|
||||
Development files for sonic-interface-libraries.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%cmake_kf6
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
%find_lang %{name} --all-name
|
||||
|
||||
%files -f %{name}.lang
|
||||
%license LICENSES/*
|
||||
%{_libdir}/libPlasma.so.*
|
||||
%{_libdir}/libPlasmaQuick.so.*
|
||||
%{_qt6_plugindir}/kf6/
|
||||
%{_qt6_qmldir}/org/kde/plasma/
|
||||
%{_qt6_qmldir}/org/kde/kirigami/styles/Plasma/
|
||||
%{_datadir}/plasma/
|
||||
%{_datadir}/qlogging-categories6/*.categories
|
||||
%{_datadir}/qlogging-categories6/*.renamecategories
|
||||
|
||||
%files devel
|
||||
%{_includedir}/Plasma/
|
||||
%{_includedir}/PlasmaQuick/
|
||||
%{_libdir}/libPlasma.so
|
||||
%{_libdir}/libPlasmaQuick.so
|
||||
%{_libdir}/cmake/Plasma/
|
||||
%{_libdir}/cmake/PlasmaQuick/
|
||||
%{_datadir}/doc/qt6/Plasma.qch
|
||||
%{_datadir}/doc/qt6/Plasma.tags
|
||||
%{_datadir}/kdevappwizard/templates/*.tar.bz2
|
||||
|
||||
%changelog
|
||||
* Wed May 27 2026 Anders da Silva Rytter Hansen <gitnf@a.rytter.me> - 6.6.4-1
|
||||
- Upgrade to 6.6.4
|
||||
|
||||
* Wed Mar 21 2026 Anders da Silva Rytter Hansen <andersrh@users.noreply.github.com> - 6.4.5-7
|
||||
- Initial release of SonicDE/KDE Plasma X11 for EL10 (Downgraded to 6.4.5 for EL 10.1 compatibility)
|
||||
209
sonic-win.spec
209
sonic-win.spec
|
|
@ -1,209 +0,0 @@
|
|||
%define _disable_source_fetch 0
|
||||
%define debug_package %{nil}
|
||||
|
||||
Name: sonic-win
|
||||
Version: 6.6.4
|
||||
Release: 1%{?dist}
|
||||
Summary: KWin window manager for SonicDE (fork of kwin)
|
||||
|
||||
%global plasma_version %{version}
|
||||
|
||||
License: GPL-2.0-or-later
|
||||
URL: https://github.com/Sonic-DE/sonic-win
|
||||
Source0: %{url}/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||
|
||||
BuildRequires: extra-cmake-modules
|
||||
BuildRequires: kf6-rpm-macros
|
||||
BuildRequires: systemd-rpm-macros
|
||||
|
||||
# Qt
|
||||
BuildRequires: cmake(QAccessibilityClient6)
|
||||
BuildRequires: qt6-qtbase-devel
|
||||
BuildRequires: qt6-qtbase-private-devel
|
||||
BuildRequires: qt6-qtsensors-devel
|
||||
BuildRequires: qt6-qttools-devel
|
||||
BuildRequires: qt6-qtwayland-devel
|
||||
BuildRequires: cmake(Qt6Core5Compat)
|
||||
BuildRequires: cmake(Qt6Svg)
|
||||
BuildRequires: cmake(Qt6Multimedia)
|
||||
|
||||
# X11/OpenGL
|
||||
BuildRequires: pkgconfig(libxcvt)
|
||||
BuildRequires: mesa-libGL-devel
|
||||
BuildRequires: mesa-libEGL-devel
|
||||
BuildRequires: mesa-libgbm-devel
|
||||
BuildRequires: libxkbcommon-devel
|
||||
BuildRequires: libxkbcommon-x11-devel
|
||||
BuildRequires: libX11-devel
|
||||
BuildRequires: libXi-devel
|
||||
BuildRequires: libxcb-devel
|
||||
BuildRequires: libICE-devel
|
||||
BuildRequires: libSM-devel
|
||||
BuildRequires: libXcursor-devel
|
||||
BuildRequires: xcb-util-wm-devel
|
||||
BuildRequires: xcb-util-image-devel
|
||||
BuildRequires: xcb-util-keysyms-devel
|
||||
BuildRequires: xcb-util-cursor-devel
|
||||
BuildRequires: xcb-util-devel
|
||||
BuildRequires: libepoxy-devel
|
||||
BuildRequires: libcap-devel
|
||||
|
||||
BuildRequires: lcms2-devel
|
||||
BuildRequires: glib2-devel
|
||||
BuildRequires: pipewire-devel
|
||||
|
||||
# Wayland
|
||||
BuildRequires: wayland-devel >= 1.22.0
|
||||
BuildRequires: wayland-protocols-devel
|
||||
BuildRequires: pkgconfig(libinput) >= 0.10
|
||||
BuildRequires: pkgconfig(libudev)
|
||||
|
||||
%if 0%{?rhel} == 10
|
||||
# Integrate with Xlibre on EL10
|
||||
BuildRequires: xlibre-xserver-devel
|
||||
Requires: xlibre-xserver-Xorg
|
||||
Requires: xlibre-xf86-input-libinput
|
||||
%else
|
||||
BuildRequires: pkgconfig(xwayland)
|
||||
%endif
|
||||
|
||||
# KF6
|
||||
BuildRequires: cmake(KF6Completion)
|
||||
BuildRequires: cmake(KF6Config)
|
||||
BuildRequires: cmake(KF6ConfigWidgets)
|
||||
BuildRequires: cmake(KF6CoreAddons)
|
||||
BuildRequires: cmake(KF6Crash)
|
||||
BuildRequires: cmake(KF6DBusAddons)
|
||||
BuildRequires: cmake(KF6GlobalAccel)
|
||||
BuildRequires: cmake(KF6GuiAddons)
|
||||
BuildRequires: cmake(KF6I18n)
|
||||
BuildRequires: cmake(KF6KIO)
|
||||
BuildRequires: cmake(KF6Notifications)
|
||||
BuildRequires: cmake(KF6Service)
|
||||
BuildRequires: cmake(KF6WidgetsAddons)
|
||||
BuildRequires: cmake(KF6WindowSystem)
|
||||
BuildRequires: cmake(KF6DocTools)
|
||||
BuildRequires: cmake(KF6KCMUtils)
|
||||
BuildRequires: cmake(KF6NewStuff)
|
||||
BuildRequires: cmake(KF6Declarative)
|
||||
BuildRequires: cmake(KF6IconThemes)
|
||||
BuildRequires: cmake(KF6IdleTime)
|
||||
BuildRequires: cmake(KF6TextWidgets)
|
||||
BuildRequires: cmake(KF6Kirigami2)
|
||||
BuildRequires: cmake(KF6Runner)
|
||||
BuildRequires: cmake(KF6Svg)
|
||||
BuildRequires: cmake(KNightTime)
|
||||
|
||||
# Workspace components
|
||||
BuildRequires: cmake(KDecoration3)
|
||||
BuildRequires: kscreenlocker-devel
|
||||
BuildRequires: plasma-breeze-devel
|
||||
BuildRequires: plasma-wayland-protocols-devel
|
||||
BuildRequires: cmake(KGlobalAccelD)
|
||||
BuildRequires: libdisplay-info-devel
|
||||
|
||||
BuildRequires: cmake(KWayland)
|
||||
BuildRequires: cmake(Plasma)
|
||||
BuildRequires: cmake(PlasmaActivities)
|
||||
|
||||
BuildRequires: libeis-devel
|
||||
BuildRequires: pkgconfig(libcanberra)
|
||||
|
||||
# Conflicts with kwin-x11
|
||||
Conflicts: kwin-x11
|
||||
|
||||
Requires: sonic-interface-libraries%{?_isa} >= %{plasma_version}
|
||||
Requires: kscreenlocker%{?_isa}
|
||||
Requires: kf6-kirigami2%{?_isa}
|
||||
Requires: kf6-kdeclarative%{?_isa}
|
||||
Requires: qt6-qtmultimedia%{?_isa}
|
||||
Requires: qt6-qtdeclarative%{?_isa}
|
||||
|
||||
%description
|
||||
Sonic Win is a fork of KWin, the window manager and compositor for SonicDE,
|
||||
focusing on an optimized X11 experience.
|
||||
|
||||
%package libs
|
||||
Summary: KWin libraries for SonicDE
|
||||
Conflicts: kwin-x11-libs
|
||||
|
||||
%description libs
|
||||
Shared libraries for sonic-win.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Conflicts: kwin-x11-devel
|
||||
|
||||
%description devel
|
||||
Development files for sonic-win.
|
||||
Provides: kwin-devel = %{version}-%{release}
|
||||
Provides: kwin-x11-devel = %{version}-%{release}
|
||||
Provides: cmake(KWinDBusInterface) = %{version}
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%cmake_kf6
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
# Create compatibility CMake files for sonic-workspace
|
||||
mkdir -p %{buildroot}%{_libdir}/cmake/KWinDBusInterface
|
||||
cat <<EOF > %{buildroot}%{_libdir}/cmake/KWinDBusInterface/KWinDBusInterfaceConfig.cmake
|
||||
find_package(KWinX11DBusInterface REQUIRED)
|
||||
include(\${KWinX11DBusInterface_DIR}/KWinX11DBusInterfaceConfig.cmake)
|
||||
EOF
|
||||
|
||||
# Create compatibility symlinks for DBus interfaces
|
||||
pushd %{buildroot}%{_datadir}/dbus-1/interfaces/
|
||||
for f in kwin_x11_*.xml; do
|
||||
newname=$(echo $f | sed 's/kwin_x11_//')
|
||||
ln -s "$f" "$newname"
|
||||
done
|
||||
popd
|
||||
|
||||
# The translation domain in the source is likely still 'kwin'
|
||||
%find_lang kwin --all-name --with-html
|
||||
|
||||
%files -f kwin.lang
|
||||
%license LICENSES/*
|
||||
# Binares and specialized folders
|
||||
%{_bindir}/kwin_x11
|
||||
%{_libdir}/kconf_update_bin/kwin*
|
||||
%{_libexecdir}/kwin*
|
||||
%{_userunitdir}/plasma-kwin_x11.service
|
||||
|
||||
# Database and plugins
|
||||
%{_libdir}/qt6/plugins/
|
||||
%{_qt6_qmldir}/org/kde/*/
|
||||
|
||||
# Data and Assets
|
||||
%{_datadir}/kwin-x11/
|
||||
%{_datadir}/applications/*.desktop
|
||||
%{_datadir}/dbus-1/interfaces/*.xml
|
||||
%{_datadir}/icons/hicolor/*/apps/kwin-x11.*
|
||||
%{_datadir}/kconf_update/kwin-x11.upd
|
||||
%{_datadir}/knotifications6/kwin-x11.notifyrc
|
||||
%{_datadir}/knsrcfiles/*.knsrc
|
||||
%{_datadir}/krunner/dbusplugins/*.desktop
|
||||
%{_datadir}/qlogging-categories6/*.categories
|
||||
|
||||
%files libs
|
||||
# Libraries
|
||||
%{_libdir}/lib*.so.*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/
|
||||
%{_libdir}/lib*.so
|
||||
%{_libdir}/cmake/
|
||||
|
||||
%changelog
|
||||
* Wed May 27 2026 Anders da Silva Rytter Hansen <gitnf@a.rytter.me> - 6.6.4-1
|
||||
- Upgrade to 6.6.4
|
||||
|
||||
* Wed Mar 21 2026 Anders da Silva Rytter Hansen <andersrh@users.noreply.github.com> - 6.4.5-8
|
||||
- Initial release of SonicDE/KDE Plasma X11 for EL10 (Downgraded to 6.4.5 for EL 10.1 compatibility)
|
||||
|
|
@ -1,275 +0,0 @@
|
|||
%define _disable_source_fetch 0
|
||||
%define debug_package %{nil}
|
||||
|
||||
Name: sonic-workspace
|
||||
Version: 6.6.4
|
||||
Release: 1%{?dist}
|
||||
Summary: Core workspace components for SonicDE (fork of plasma-workspace)
|
||||
|
||||
License: GPL-2.0-or-later
|
||||
URL: https://github.com/Sonic-DE/sonic-workspace
|
||||
Source0: %{url}/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||
|
||||
%global plasma_version %(echo %{version} | cut -d. -f1-3)
|
||||
|
||||
BuildRequires: extra-cmake-modules
|
||||
BuildRequires: kf6-rpm-macros
|
||||
BuildRequires: qt6-qtbase-devel
|
||||
BuildRequires: qt6-qtbase-private-devel
|
||||
BuildRequires: qt6-qtdeclarative-devel
|
||||
BuildRequires: qt6-qtdeclarative-private-devel
|
||||
BuildRequires: qt6-qtsvg-devel
|
||||
BuildRequires: qt6-qtwayland-devel
|
||||
BuildRequires: qt6-qtlocation-devel
|
||||
BuildRequires: qt6-qtshadertools-devel
|
||||
BuildRequires: qcoro-qt6-devel
|
||||
BuildRequires: phonon-qt6-devel
|
||||
BuildRequires: wayland-devel
|
||||
BuildRequires: wayland-protocols-devel
|
||||
BuildRequires: plasma-wayland-protocols-devel
|
||||
BuildRequires: cmake(Qt6Core5Compat)
|
||||
|
||||
BuildRequires: cmake(KF6Config)
|
||||
BuildRequires: cmake(KF6Archive)
|
||||
BuildRequires: cmake(KF6Declarative)
|
||||
BuildRequires: cmake(KF6ConfigWidgets)
|
||||
BuildRequires: cmake(KF6CoreAddons)
|
||||
BuildRequires: cmake(KF6Crash)
|
||||
BuildRequires: cmake(KF6DBusAddons)
|
||||
BuildRequires: cmake(KF6GlobalAccel)
|
||||
BuildRequires: cmake(KF6GuiAddons)
|
||||
BuildRequires: cmake(KF6I18n)
|
||||
BuildRequires: cmake(KF6IdleTime)
|
||||
BuildRequires: cmake(KF6KIO)
|
||||
BuildRequires: cmake(KF6Notifications)
|
||||
BuildRequires: cmake(KF6NotifyConfig)
|
||||
BuildRequires: cmake(KF6Runner)
|
||||
BuildRequires: cmake(KF6Service)
|
||||
BuildRequires: cmake(KF6Solid)
|
||||
BuildRequires: cmake(KF6WidgetsAddons)
|
||||
BuildRequires: cmake(KF6WindowSystem)
|
||||
BuildRequires: cmake(KF6XmlGui)
|
||||
BuildRequires: cmake(KF6DocTools)
|
||||
BuildRequires: cmake(KF6ItemModels)
|
||||
BuildRequires: cmake(KF6KDED)
|
||||
BuildRequires: cmake(KF6StatusNotifierItem)
|
||||
BuildRequires: cmake(KF6UnitConversion)
|
||||
BuildRequires: cmake(KF6Wallet)
|
||||
BuildRequires: cmake(KF6KCMUtils)
|
||||
BuildRequires: cmake(KF6NewStuff)
|
||||
BuildRequires: cmake(KF6Package)
|
||||
BuildRequires: cmake(KF6Parts)
|
||||
BuildRequires: cmake(KF6Prison)
|
||||
BuildRequires: cmake(KF6Sonnet)
|
||||
BuildRequires: cmake(KF6TextEditor)
|
||||
BuildRequires: cmake(KF6TextWidgets)
|
||||
BuildRequires: cmake(KF6Svg)
|
||||
BuildRequires: cmake(KF6Kirigami2)
|
||||
BuildRequires: cmake(KF6KirigamiAddons)
|
||||
BuildRequires: cmake(KF6NetworkManagerQt)
|
||||
BuildRequires: cmake(KF6QuickCharts)
|
||||
BuildRequires: cmake(KF6UserFeedback)
|
||||
BuildRequires: cmake(KF6Baloo)
|
||||
BuildRequires: cmake(KF6Holidays)
|
||||
BuildRequires: kf6-kdesu-devel
|
||||
BuildRequires: pkgconfig(libqalculate)
|
||||
BuildRequires: sonic-win-devel
|
||||
BuildRequires: sonic-interface-libraries-devel
|
||||
BuildRequires: kdecoration-devel
|
||||
BuildRequires: libkscreen-devel
|
||||
BuildRequires: libksysguard-devel
|
||||
BuildRequires: plasma-activities-devel
|
||||
BuildRequires: cmake(KSysGuard)
|
||||
BuildRequires: cmake(Plasma5Support)
|
||||
BuildRequires: cmake(KScreenLocker)
|
||||
BuildRequires: cmake(Breeze)
|
||||
BuildRequires: cmake(KExiv2Qt6)
|
||||
BuildRequires: cmake(KPipeWire)
|
||||
BuildRequires: cmake(PlasmaActivities)
|
||||
BuildRequires: cmake(PlasmaActivitiesStats)
|
||||
BuildRequires: cmake(KF6Screen)
|
||||
BuildRequires: cmake(KWayland)
|
||||
BuildRequires: cmake(Plasma)
|
||||
BuildRequires: cmake(PlasmaQuick)
|
||||
BuildRequires: cmake(LayerShellQt)
|
||||
BuildRequires: cmake(KNightTime)
|
||||
|
||||
|
||||
BuildRequires: pkgconfig(x11)
|
||||
BuildRequires: pkgconfig(xau)
|
||||
BuildRequires: pkgconfig(xcb)
|
||||
BuildRequires: pkgconfig(xcomposite)
|
||||
BuildRequires: pkgconfig(xcursor)
|
||||
BuildRequires: pkgconfig(xdamage)
|
||||
BuildRequires: pkgconfig(xext)
|
||||
BuildRequires: pkgconfig(xfixes)
|
||||
BuildRequires: pkgconfig(xft)
|
||||
BuildRequires: pkgconfig(xi)
|
||||
BuildRequires: pkgconfig(xinerama)
|
||||
BuildRequires: pkgconfig(xres)
|
||||
BuildRequires: pkgconfig(xkbcommon)
|
||||
BuildRequires: pkgconfig(xkbfile)
|
||||
BuildRequires: pkgconfig(xpm)
|
||||
BuildRequires: pkgconfig(xrender)
|
||||
BuildRequires: pkgconfig(xtst)
|
||||
BuildRequires: pkgconfig(xxf86vm)
|
||||
BuildRequires: pkgconfig(ice)
|
||||
BuildRequires: pkgconfig(sm)
|
||||
BuildRequires: pkgconfig(xcb-aux)
|
||||
BuildRequires: pkgconfig(xcb-cursor)
|
||||
BuildRequires: pkgconfig(xcb-image)
|
||||
BuildRequires: pkgconfig(xcb-event)
|
||||
BuildRequires: pkgconfig(xcb-util)
|
||||
BuildRequires: pkgconfig(xcb-keysyms)
|
||||
BuildRequires: pkgconfig(xcb-icccm)
|
||||
BuildRequires: pkgconfig(xcb-renderutil)
|
||||
BuildRequires: pkgconfig(xcb-atom)
|
||||
BuildRequires: pkgconfig(xcb-ewmh)
|
||||
BuildRequires: systemd-devel
|
||||
BuildRequires: NetworkManager-libnm-devel
|
||||
BuildRequires: glib2-devel
|
||||
BuildRequires: polkit-qt6-1-devel
|
||||
BuildRequires: PackageKit-Qt6-devel
|
||||
BuildRequires: appstream-qt-devel
|
||||
BuildRequires: iso-codes-devel
|
||||
BuildRequires: libcanberra-devel
|
||||
BuildRequires: fontconfig-devel
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: libicu-devel
|
||||
|
||||
Requires: sonic-win
|
||||
Requires: xmessage
|
||||
Requires: xprop
|
||||
Requires: xrdb
|
||||
Requires: xsetroot
|
||||
|
||||
Conflicts: plasma-workspace-x11
|
||||
|
||||
Provides: plasma-workspace%{?_isa} >= %{plasma_version}
|
||||
Provides: plasma-workspace >= %{plasma_version}
|
||||
Obsoletes: plasma-workspace <= %{plasma_version}
|
||||
|
||||
Provides: plasma-workspace-libs%{?_isa} >= %{plasma_version}
|
||||
Provides: plasma-workspace-libs >= %{plasma_version}
|
||||
Obsoletes: plasma-workspace-libs <= %{plasma_version}
|
||||
|
||||
Provides: libkworkspace6%{?_isa} >= %{plasma_version}
|
||||
Provides: libkworkspace6 >= %{plasma_version}
|
||||
Obsoletes: libkworkspace6 <= %{plasma_version}
|
||||
|
||||
Provides: desktop-notification-daemon
|
||||
|
||||
%description
|
||||
Core workspace components for SonicDE, fork of plasma-workspace.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Conflicts: plasma-workspace-devel
|
||||
|
||||
%description devel
|
||||
Development files for sonic-workspace.
|
||||
|
||||
%package x11
|
||||
Summary: SonicDE X11 session
|
||||
#Requires: %%{name}%%{?_isa} = %%{version}-%%{release}
|
||||
Requires: xlibre-xserver-Xorg
|
||||
Conflicts: plasma-workspace-x11
|
||||
|
||||
%description x11
|
||||
SonicDE X11 session.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%cmake_kf6
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
# Many translation files have different names than the package
|
||||
%find_lang plasmanetworkmanagement --all-name || :
|
||||
%find_lang plasmashell --all-name || :
|
||||
|
||||
%files
|
||||
%license LICENSES/*
|
||||
%{_bindir}/plasma*
|
||||
%{_bindir}/krunner
|
||||
%{_bindir}/ksmserver
|
||||
%{_bindir}/ksplashqml
|
||||
%{_bindir}/kcminit*
|
||||
%{_bindir}/kde-systemd-start-condition
|
||||
%{_bindir}/lookandfeeltool
|
||||
%{_bindir}/kcolorschemeeditor
|
||||
%{_bindir}/kfontinst
|
||||
%{_bindir}/kfontview
|
||||
%{_bindir}/xembedsniproxy
|
||||
%{_bindir}/gmenudbusmenuproxy
|
||||
#%%{_bindir}/startplasma-wayland
|
||||
%{_libdir}/lib*.so.*
|
||||
%{_libdir}/kconf_update_bin/
|
||||
%{_libexecdir}/ksmserver-logout-greeter
|
||||
%{_libexecdir}/plasma*
|
||||
%{_libexecdir}/kf6/kauth/
|
||||
%{_libexecdir}/kfontprint
|
||||
%{_libexecdir}/baloorunner
|
||||
%{_libexecdir}/ksecretprompter
|
||||
%{_qt6_plugindir}/plasma/
|
||||
%{_qt6_plugindir}/kf6/
|
||||
#%%{_qt6_plugindir}/phonon_platform/
|
||||
#%%{_qt6_plugindir}/plasma5support/
|
||||
%{_qt6_plugindir}/plasmacalendarplugins/
|
||||
%{_qt6_qmldir}/org/kde/
|
||||
%{_userunitdir}/plasma*
|
||||
%{_datadir}/plasma/
|
||||
#%%{_datadir}/plasma5support/
|
||||
%{_datadir}/applications/*.desktop
|
||||
%{_datadir}/desktop-directories/
|
||||
%{_datadir}/config.kcfg/
|
||||
%{_datadir}/dbus-1/
|
||||
%{_datadir}/doc/
|
||||
%{_datadir}/icons/
|
||||
%{_datadir}/kconf_update/
|
||||
%{_datadir}/kfontinst/
|
||||
%{_datadir}/kglobalaccel/
|
||||
%{_datadir}/kio*/
|
||||
%{_datadir}/knotifications6/
|
||||
%{_datadir}/knsrcfiles/
|
||||
%{_datadir}/konqsidebartng/
|
||||
%{_datadir}/krunner/
|
||||
%{_datadir}/kstyle/
|
||||
%{_datadir}/kxmlgui5/
|
||||
%{_datadir}/polkit-1/
|
||||
%{_datadir}/qlogging-categories6/
|
||||
%{_datadir}/solid/
|
||||
%{_datadir}/timezonefiles/
|
||||
%{_datadir}/wayland-sessions/
|
||||
%{_datadir}/xdg-desktop-portal/
|
||||
%{_datadir}/zsh/
|
||||
%{_datadir}/locale/*/LC_MESSAGES/*.mo
|
||||
%{_sysconfdir}/xdg/*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_includedir}/kworkspace6/
|
||||
%{_includedir}/taskmanager/
|
||||
%{_includedir}/notificationmanager/
|
||||
#%%{_includedir}/colorcorrect/
|
||||
%{_includedir}/krdb/
|
||||
%{_includedir}/klookandfeel/
|
||||
#%%{_includedir}/plasma5support/
|
||||
%{_libdir}/lib*.so
|
||||
%{_libdir}/cmake/*/
|
||||
|
||||
%files x11
|
||||
%defattr(-,root,root,-)
|
||||
%{_datadir}/xsessions/plasmax11.desktop
|
||||
%{_bindir}/startplasma-x11
|
||||
|
||||
%changelog
|
||||
* Wed May 27 2026 Anders da Silva Rytter Hansen <gitnf@a.rytter.me> - 6.6.4-1
|
||||
- Upgrade to 6.6.4
|
||||
|
||||
* Wed Mar 21 2026 Anders da Silva Rytter Hansen <andersrh@users.noreply.github.com> - 6.4.5-5
|
||||
- Initial release of SonicDE/KDE Plasma X11 for EL10 (Downgraded to 6.4.5 for EL 10.1 compatibility)
|
||||
Loading…
Add table
Add a link
Reference in a new issue