# # Please do not update/rebuild/touch this package before asking first # neoclust and/or daviddavid # This package is part of the KDE Stack. # %global __requires_exclude %{?__requires_exclude:%__requires_exclude|}devel\\(libKGlobalAccelD %define rel 1.1 Summary: Plasma Window manager with X11 support Name: kwin-x11 Version: 6.5.5 Release: %mkrel %rel License: GPLv2+ Group: System/Base URL: https://userbase.kde.org/KWin Source0: https://download.kde.org/stable/plasma/%{version}/%{name}-%{version}.tar.xz ## upstream patches Patch100: 0001-x11window-Remove-unnecessary-condition.patch Patch101: 0002-x11window-Allow-restoring-fullscreen-windows-from-ma.patch BuildRequires: kf6-rpm-macros BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(libcap) BuildRequires: pkgconfig(libcanberra) BuildRequires: pkgconfig(libpipewire-0.3) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xcb-image) BuildRequires: pkgconfig(xi) BuildRequires: pkgconfig(xcb-icccm) BuildRequires: pkgconfig(xcb-util) BuildRequires: pkgconfig(libxcvt) BuildRequires: pkgconfig(hwdata) BuildRequires: pkgconfig(xcursor) BuildRequires: pkgconfig(sm) BuildRequires: pkgconfig(epoxy) BuildRequires: pkgconfig(xkbcommon) BuildRequires: pkgconfig(xcb-cursor) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(libdisplay-info) BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(libeis-1.0) BuildRequires: pkgconfig(libinput) >= 0.10 BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(lcms2) BuildRequires: cmake(Qt6Concurrent) BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6Core5Compat) BuildRequires: cmake(Qt6Gui) BuildRequires: cmake(Qt6Quick) BuildRequires: cmake(Qt6DBus) BuildRequires: cmake(Qt6Multimedia) BuildRequires: cmake(Qt6UiTools) BuildRequires: cmake(Qt6Widgets) BuildRequires: cmake(Qt6Test) BuildRequires: cmake(Qt6Tools) BuildRequires: cmake(Qt6Svg) BuildRequires: cmake(Qt6QuickWidgets) BuildRequires: cmake(Qt6WaylandClient) BuildRequires: cmake(Qt6Sensors) 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(KF6Kirigami) BuildRequires: cmake(KF6Runner) BuildRequires: cmake(KF6Svg) BuildRequires: cmake(KF6Auth) BuildRequires: cmake(KWayland) BuildRequires: cmake(PlasmaActivities) BuildRequires: cmake(Plasma) BuildRequires: cmake(KDecoration3) BuildRequires: cmake(Breeze) BuildRequires: cmake(QAccessibilityClient6) # Wayland (Why does CMakeLists.txt still require Wayland libraries here?) BuildRequires: cmake(PlasmaWaylandProtocols) BuildRequires: pkgconfig(wayland-egl) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-server) BuildRequires: pkgconfig(xwayland) BuildRequires: cmake(KGlobalAccelD) BuildRequires: cmake(KScreenLocker) BuildRequires: cmake(Aurorae) BuildRequires: cmake(KNightTime) ## Runtime deps BuildRequires: kdeclarative Requires: kdeclarative Requires: aurorae Requires: breeze Requires: kscreenlocker Requires: qt6-qtmultimedia Requires: qt6-qtdeclarative # Split of X11 variant into subpackage Conflicts: kwin < 6.3.91 Conflicts: kwin-common < 6.3.91 Requires: x11-server-xorg %description Alternative version of the KDE Window Manager (KWin) using the legacy X11 window system instead of the default Wayland. This version of KWin is required by plasma-workspace-x11, which provides the "Plasma (X11)" session type. %files -f %{name}.lang %license LICENSES/*.txt %_kf6_categoriesdir/org_kde_kwin_x11.*categories %_kf6_bindir/kwin_x11 %_kf6_datadir/%{name}/ %_kf6_datadir/dbus-1/interfaces/*.xml %_kf6_applicationdir/*.desktop %_kf6_iconsdir/hicolor/*/apps/%{name}.* %_kf6_datadir/kconf_update/%{name}.upd %_kf6_knotificationsdir/%{name}.notifyrc %_kf6_datadir/knsrcfiles/*-x11.knsrc %_kf6_datadir/krunner/dbusplugins/kwin-runner-windows-x11.desktop %_kf6_libdir/kconf_update_bin/kwin-6.0-delete-desktop-switching-shortcuts-x11 %_kf6_libdir/kconf_update_bin/kwin-6.0-remove-breeze-tabbox-default-x11 %_kf6_libdir/kconf_update_bin/kwin-6.0-reset-active-mouse-screen-x11 %_kf6_libdir/kconf_update_bin/kwin-6.1-remove-gridview-expose-shortcuts-x11 %_kf6_libdir/kconf_update_bin/kwin-6.5-showpaint-changes-x11 %_kf6_libdir/kconf_update_bin/kwin5_update_default_rules_x11 %_qt6_plugindir/%{name}/ %_qt6_plugindir/plasma/kcms/systemsettings_qwidgets/*.so %_qt6_plugindir/plasma/kcms/systemsettings/*.so %_kf6_plugindir/packagestructure/kwin_*_x11.so %_libexecdir/kwin_killer_helper_x11 %_libexecdir/kwin-applywindowdecoration-x11 %_qt6_qmldir/org/kde/kwin_x11/ %_userunitdir/plasma-kwin_x11.service #-------------------------------------------------------------------- %define kwinx11_major 6 %define libkwinx11 %mklibname kwin-x11_ %{kwinx11_major} %package -n %libkwinx11 Summary: Plasma Window manager with X11 support runtime libraries Group: System/Libraries Obsoletes: %{_lib}kwin-x116 < 6.3.91-2 %description -n %libkwinx11 Plasma Window manager with X11 support runtime libraries. %files -n %libkwinx11 %_kf6_libdir/libkwin-x11.so.%{kwinx11_major}{,.*} #-------------------------------------------------------------------- %define kcmkwincommonx11_major 6 %define libkcmkwincommonx11 %mklibname kcmkwincommon-x11_ %{kcmkwincommonx11_major} %package -n %libkcmkwincommonx11 Summary: Plasma Window manager with X11 support runtime libraries Group: System/Libraries Obsoletes: %{_lib}kcmkwincommon-x116 < 6.3.91-2 %description -n %libkcmkwincommonx11 Plasma Window manager with X11 support runtime libraries. %files -n %libkcmkwincommonx11 %_kf6_libdir/libkcmkwincommon-x11.so.%{kcmkwincommonx11_major}{,.*} #-------------------------------------------------------------------- %define kwinx11_devel %mklibname kwin-x11 -d %package -n %kwinx11_devel Summary: Devel stuff for %name Group: Development/KDE and Qt Requires: %name = %version-%release Requires: %libkwinx11 = %version-%release Requires: %libkcmkwincommonx11 = %version-%release Provides: %name-devel = %{version}-%{release} %description -n %kwinx11_devel This package contains header files needed if you wish to build applications based on %name. %files -n %kwinx11_devel %_includedir/kwin-x11/ %_kf6_libdir/*.so %_kf6_libdir/cmake/KWinX11/ %_kf6_libdir/cmake/KWinX11DBusInterface/ #-------------------------------------------------------------------- %package handbook Summary: %{name} Handbook Group: Documentation BuildArch: noarch %description handbook This package provides %{name} Handbook. %files handbook %doc %_kf6_docdir/HTML/*/kcontrol/windowspecific-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/desktop-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/kwindecoration-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/kwinscreenedges-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/kwintabbox-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/windowbehaviour-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/kwineffects-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/kwintouchscreen-x11/ %doc %_kf6_docdir/HTML/*/kcontrol/kwinvirtualkeyboard-x11/ #------------------------------------------------ %prep %autosetup -p1 %build %cmake_kf6 %cmake_build %install %cmake_install %find_lang %{name} --all-name