1 # Copyright 1999-2019 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
6 KDE_HANDBOOK="forceoptional"
7 KDE_TEST="forceoptional"
8 VIRTUALX_REQUIRED="test"
9 inherit kde5 qmake-utils
11 DESCRIPTION="KDE Plasma workspace"
12 KEYWORDS="~amd64 ~arm ~arm64 ~x86"
13 IUSE="appstream +calendar geolocation gps prison qalculate +semantic-desktop systemd"
15 REQUIRED_USE="gps? ( geolocation )"
18 $(add_frameworks_dep kactivities)
19 $(add_frameworks_dep kauth)
20 $(add_frameworks_dep kbookmarks)
21 $(add_frameworks_dep kcompletion)
22 $(add_frameworks_dep kconfig)
23 $(add_frameworks_dep kconfigwidgets)
24 $(add_frameworks_dep kcoreaddons)
25 $(add_frameworks_dep kcrash)
26 $(add_frameworks_dep kdbusaddons)
27 $(add_frameworks_dep kdeclarative)
28 $(add_frameworks_dep kded)
29 $(add_frameworks_dep kdelibs4support)
30 $(add_frameworks_dep kglobalaccel)
31 $(add_frameworks_dep kguiaddons)
32 $(add_frameworks_dep ki18n)
33 $(add_frameworks_dep kiconthemes)
34 $(add_frameworks_dep kidletime)
35 $(add_frameworks_dep kio)
36 $(add_frameworks_dep kitemmodels)
37 $(add_frameworks_dep kitemviews)
38 $(add_frameworks_dep kjobwidgets)
39 $(add_frameworks_dep kjs)
40 $(add_frameworks_dep kjsembed)
41 $(add_frameworks_dep knewstuff)
42 $(add_frameworks_dep knotifications)
43 $(add_frameworks_dep knotifyconfig)
44 $(add_frameworks_dep kpackage)
45 $(add_frameworks_dep krunner)
46 $(add_frameworks_dep kservice)
47 $(add_frameworks_dep ktexteditor)
48 $(add_frameworks_dep ktextwidgets)
49 $(add_frameworks_dep kwallet)
50 $(add_frameworks_dep kwayland)
51 $(add_frameworks_dep kwidgetsaddons)
52 $(add_frameworks_dep kwindowsystem)
53 $(add_frameworks_dep kxmlgui)
54 $(add_frameworks_dep plasma)
55 $(add_frameworks_dep solid)
56 $(add_plasma_dep kscreenlocker)
57 $(add_plasma_dep kwin)
58 $(add_plasma_dep libksysguard)
59 $(add_plasma_dep libkworkspace)
61 $(add_qt_dep qtdeclarative 'widgets')
62 $(add_qt_dep qtgui 'jpeg')
63 $(add_qt_dep qtnetwork)
65 $(add_qt_dep qtwidgets)
66 $(add_qt_dep qtx11extras)
68 media-libs/phonon[qt5(+)]
79 x11-libs/xcb-util-image
80 appstream? ( dev-libs/appstream[qt5] )
81 calendar? ( $(add_frameworks_dep kholidays) )
82 geolocation? ( $(add_frameworks_dep networkmanager-qt) )
83 gps? ( sci-geosciences/gpsd )
84 prison? ( $(add_frameworks_dep prison) )
85 qalculate? ( sci-libs/libqalculate:= )
86 semantic-desktop? ( $(add_frameworks_dep baloo) )
88 DEPEND="${COMMON_DEPEND}
89 $(add_qt_dep qtconcurrent)
92 RDEPEND="${COMMON_DEPEND}
93 $(add_frameworks_dep kdesu)
94 $(add_frameworks_dep kirigami)
95 $(add_kdeapps_dep kio-extras)
96 $(add_plasma_dep ksysguard)
97 $(add_plasma_dep milou)
98 $(add_plasma_dep plasma-integration)
100 $(add_qt_dep qtgraphicaleffects)
101 $(add_qt_dep qtpaths)
102 $(add_qt_dep qtquickcontrols 'widgets')
103 $(add_qt_dep qtquickcontrols2)
109 systemd? ( sys-apps/dbus[user-session] )
110 !systemd? ( sys-apps/dbus )
111 !<kde-plasma/plasma-desktop-5.14.80:5
114 $(add_plasma_dep kde-cli-tools)
118 "${FILESDIR}/${PN}-5.14.80-startkde-script.patch"
119 "${FILESDIR}/${PN}-5.10-startplasmacompositor-script.patch"
120 "${FILESDIR}/${PN}-5.12.80-tests-optional.patch"
121 "${FILESDIR}/${PN}-5.14.2-split-libkworkspace.patch"
129 sed -e "s|\`qtpaths|\`$(qt5_get_bindir)/qtpaths|" \
130 -i startkde/startkde.cmake startkde/startplasmacompositor.cmake || die
132 cmake_comment_add_subdirectory libkworkspace
133 # delete colliding libkworkspace translations
134 if [[ ${KDE_BUILD_TYPE} = release ]]; then
135 find po -type f -name "*po" -and -name "libkworkspace*" -delete || die
141 -DBUILD_xembed-sni-proxy=OFF
142 $(cmake-utils_use_find_package appstream AppStreamQt)
143 $(cmake-utils_use_find_package calendar KF5Holidays)
144 $(cmake-utils_use_find_package geolocation KF5NetworkManagerQt)
145 $(cmake-utils_use_find_package prison KF5Prison)
146 $(cmake-utils_use_find_package qalculate Qalculate)
147 $(cmake-utils_use_find_package semantic-desktop KF5Baloo)
150 use gps && mycmakeargs+=( $(cmake-utils_use_find_package gps libgps) )
158 # startup and shutdown scripts
159 insinto /etc/plasma/startup
160 doins "${FILESDIR}/10-agent-startup.sh"
162 insinto /etc/plasma/shutdown
163 doins "${FILESDIR}/10-agent-shutdown.sh"
169 elog "To enable gpg-agent and/or ssh-agent in Plasma sessions,"
170 elog "edit ${EPREFIX}/etc/plasma/startup/10-agent-startup.sh and"
171 elog "${EPREFIX}/etc/plasma/shutdown/10-agent-shutdown.sh"