134 lines
3.8 KiB
Bash
134 lines
3.8 KiB
Bash
# Copyright 1999-2021 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=7
|
|
|
|
ECM_HANDBOOK="optional"
|
|
ECM_TEST="optional"
|
|
KFMIN=5.74.0
|
|
PVCUT=$(ver_cut 1-3)
|
|
QTMIN=5.15.1
|
|
VIRTUALX_REQUIRED="test"
|
|
inherit ecm kde.org
|
|
|
|
DESCRIPTION="Flexible, composited Window Manager for windowing systems on Linux"
|
|
|
|
LICENSE="GPL-2+"
|
|
SLOT="5"
|
|
KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
|
|
IUSE="accessibility caps gles2-only multimedia screencast"
|
|
|
|
RESTRICT+=" test"
|
|
|
|
COMMON_DEPEND="
|
|
>=dev-libs/libinput-1.14
|
|
>=dev-libs/wayland-1.2
|
|
>=dev-qt/qtdbus-${QTMIN}:5
|
|
>=dev-qt/qtdeclarative-${QTMIN}:5
|
|
>=dev-qt/qtgui-${QTMIN}:5=[gles2-only=]
|
|
>=dev-qt/qtscript-${QTMIN}:5
|
|
>=dev-qt/qtsensors-${QTMIN}:5
|
|
>=dev-qt/qtwidgets-${QTMIN}:5
|
|
>=dev-qt/qtx11extras-${QTMIN}:5
|
|
>=kde-frameworks/kactivities-${KFMIN}:5
|
|
>=kde-frameworks/kauth-${KFMIN}:5
|
|
>=kde-frameworks/kcmutils-${KFMIN}:5
|
|
>=kde-frameworks/kcompletion-${KFMIN}:5
|
|
>=kde-frameworks/kconfig-${KFMIN}:5
|
|
>=kde-frameworks/kconfigwidgets-${KFMIN}:5
|
|
>=kde-frameworks/kcoreaddons-${KFMIN}:5
|
|
>=kde-frameworks/kcrash-${KFMIN}:5
|
|
>=kde-frameworks/kdeclarative-${KFMIN}:5
|
|
>=kde-frameworks/kglobalaccel-${KFMIN}:5=
|
|
>=kde-frameworks/ki18n-${KFMIN}:5
|
|
>=kde-frameworks/kiconthemes-${KFMIN}:5
|
|
>=kde-frameworks/kidletime-${KFMIN}:5=
|
|
>=kde-frameworks/kio-${KFMIN}:5
|
|
>=kde-frameworks/knewstuff-${KFMIN}:5
|
|
>=kde-frameworks/knotifications-${KFMIN}:5
|
|
>=kde-frameworks/kpackage-${KFMIN}:5
|
|
>=kde-frameworks/kservice-${KFMIN}:5
|
|
>=kde-frameworks/ktextwidgets-${KFMIN}:5
|
|
>=kde-frameworks/kwayland-${KFMIN}:5
|
|
>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
|
|
>=kde-frameworks/kwindowsystem-${KFMIN}:5[X]
|
|
>=kde-frameworks/kxmlgui-${KFMIN}:5
|
|
>=kde-frameworks/plasma-${KFMIN}:5
|
|
>=kde-plasma/breeze-${PVCUT}:5
|
|
>=kde-plasma/kdecoration-${PVCUT}:5
|
|
>=kde-plasma/kscreenlocker-${PVCUT}:5
|
|
>=kde-plasma/kwayland-server-${PVCUT}:5
|
|
media-libs/fontconfig
|
|
media-libs/freetype
|
|
media-libs/libepoxy
|
|
media-libs/mesa[egl,gbm,wayland,X(+)]
|
|
virtual/libudev:=
|
|
x11-libs/libICE
|
|
x11-libs/libSM
|
|
x11-libs/libX11
|
|
x11-libs/libXi
|
|
x11-libs/libdrm
|
|
>=x11-libs/libxcb-1.10
|
|
>=x11-libs/libxkbcommon-0.7.0
|
|
x11-libs/xcb-util-cursor
|
|
x11-libs/xcb-util-image
|
|
x11-libs/xcb-util-keysyms
|
|
x11-libs/xcb-util-wm
|
|
accessibility? ( media-libs/libqaccessibilityclient:5 )
|
|
caps? ( sys-libs/libcap )
|
|
gles2-only? ( media-libs/mesa[gles2] )
|
|
screencast? ( >=media-video/pipewire-0.3:= )
|
|
"
|
|
# TODO: sys-apps/hwdata? not packaged yet; commit 33a1777a, Gentoo-bug 717216
|
|
RDEPEND="${COMMON_DEPEND}
|
|
>=dev-qt/qtquickcontrols-${QTMIN}:5
|
|
>=dev-qt/qtquickcontrols2-${QTMIN}:5
|
|
>=dev-qt/qtvirtualkeyboard-${QTMIN}:5
|
|
>=kde-frameworks/kirigami-${KFMIN}:5
|
|
>=kde-frameworks/kitemmodels-${KFMIN}:5[qml]
|
|
multimedia? ( >=dev-qt/qtmultimedia-${QTMIN}:5[gstreamer,qml] )
|
|
"
|
|
DEPEND="${COMMON_DEPEND}
|
|
>=dev-qt/designer-${QTMIN}:5
|
|
>=dev-qt/qtconcurrent-${QTMIN}:5
|
|
x11-base/xorg-proto
|
|
"
|
|
PDEPEND="
|
|
>=kde-plasma/kde-cli-tools-${PVCUT}:5
|
|
"
|
|
|
|
PATCHES=(
|
|
"${FILESDIR}/${P}-revert-new-focuschain-w-minimised.patch" # KDE-Bug 427840
|
|
"${FILESDIR}/${P}-keep-focuschain-behavior-w-minimised.patch" # Plasma/5.21
|
|
)
|
|
|
|
src_prepare() {
|
|
ecm_src_prepare
|
|
use multimedia || eapply "${FILESDIR}/${PN}-5.16.80-gstreamer-optional.patch"
|
|
|
|
# TODO: try to get a build switch upstreamed
|
|
if ! use screencast; then
|
|
sed -e "s/^pkg_check_modules.*PipeWire/#&/" \
|
|
-i CMakeLists.txt || die
|
|
fi
|
|
}
|
|
|
|
src_configure() {
|
|
local mycmakeargs=(
|
|
$(cmake_use_find_package accessibility QAccessibilityClient)
|
|
$(cmake_use_find_package caps Libcap)
|
|
)
|
|
|
|
ecm_src_configure
|
|
}
|
|
|
|
pkg_postinst() {
|
|
ecm_pkg_postinst
|
|
elog "In Plasma 5.20, default behavior of the Task Switcher to move minimised"
|
|
elog "windows to the end of the list was changed so that it remains in the"
|
|
elog "original order. To revert to the well established behavior:"
|
|
elog
|
|
elog " - Edit ~/.config/kwinrc"
|
|
elog " - Find [TabBox] section"
|
|
elog " - Add \"MoveMinimizedWindowsToEndOfTabBoxFocusChain=true\""
|
|
}
|