diff options
author | 2013-07-20 21:58:51 +0000 | |
---|---|---|
committer | 2013-07-20 21:58:51 +0000 | |
commit | d9bc6786644935dc3181fa3f1356be4d558264e8 (patch) | |
tree | 4aa12fec6588919bc9257f27e6f7b3d30021e906 /kde-base/plasma-workspace | |
parent | Install scalable icon for better fit in gnome-shell, use eapi5 and gnome2.eclass (diff) | |
download | historical-d9bc6786644935dc3181fa3f1356be4d558264e8.tar.gz historical-d9bc6786644935dc3181fa3f1356be4d558264e8.tar.bz2 historical-d9bc6786644935dc3181fa3f1356be4d558264e8.zip |
Fix potential nullpointer issue (backport)
Package-Manager: portage-2.2.0_alpha188/cvs/Linux x86_64
Manifest-Sign-Key: 0xEBE6A336BE19039C!
Diffstat (limited to 'kde-base/plasma-workspace')
-rw-r--r-- | kde-base/plasma-workspace/ChangeLog | 11 | ||||
-rw-r--r-- | kde-base/plasma-workspace/Manifest | 27 | ||||
-rw-r--r-- | kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch | 74 | ||||
-rw-r--r-- | kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild | 145 | ||||
-rw-r--r-- | kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild | 145 |
5 files changed, 393 insertions, 9 deletions
diff --git a/kde-base/plasma-workspace/ChangeLog b/kde-base/plasma-workspace/ChangeLog index 0d5ad06919fc..9c92abdbebe7 100644 --- a/kde-base/plasma-workspace/ChangeLog +++ b/kde-base/plasma-workspace/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for kde-base/plasma-workspace # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/ChangeLog,v 1.230 2013/07/03 07:42:27 kensington Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/ChangeLog,v 1.231 2013/07/20 21:54:05 dilfridge Exp $ + +*plasma-workspace-4.10.5-r2 (20 Jul 2013) +*plasma-workspace-4.10.4-r2 (20 Jul 2013) + + 20 Jul 2013; Andreas K. Huettel <dilfridge@gentoo.org> + +plasma-workspace-4.10.4-r2.ebuild, + +files/plasma-workspace-4.10.4-crypt.patch, + +plasma-workspace-4.10.5-r2.ebuild: + Fix potential nullpointer issue (backport) *plasma-workspace-4.10.5-r1 (03 Jul 2013) diff --git a/kde-base/plasma-workspace/Manifest b/kde-base/plasma-workspace/Manifest index c96265dca895..de609b6b85d3 100644 --- a/kde-base/plasma-workspace/Manifest +++ b/kde-base/plasma-workspace/Manifest @@ -2,23 +2,34 @@ Hash: SHA256 AUX plasma-workspace-4.10.1-noplasmalock.patch 303 SHA256 d58576621b9e09a76504fc22fbc9cd6f65e49bda718c1922ba235606a60e9226 SHA512 32f582aa3a6888f5d8df47d7aa504f0749ed0f27b328aa8ba42cec4eee539a05a4d6929d98000ba1d4f58513d9faf6c7ed2d7b74d806fca32daf8f3bd67ade0d WHIRLPOOL 63cf6a1cce607cd01ef1f69acfa52c034a1394910317074140406aef2d383b0429119457567f14c9a7797fce77e3fb1db670b6d30fbddfc1b22c0bcbe0bec02e +AUX plasma-workspace-4.10.4-crypt.patch 2589 SHA256 b1ffc482b069bce6665c2d3f1b461976d830cd688244451d5ee7a185a83f495c SHA512 2af9a6f0c1e684a7b5846b6f7ff90c83e03d081d2c20dec8ff970f3f8a2b086180e8ef81be1bf6ff1c48a6055c21b4bf6edd3a211df9396cd59bed2644979c8d WHIRLPOOL b84e78a1fc550de96f58c9955b2d5293779ed5823c73ceceaaf5a8978bd2b217ee2985ba13ed50a26855a59b8b5d3557572d663ea8696f8943732d7597c4bb70 AUX plasma-workspace-4.10.4-keep-batterymonitor-in-sync-with-systray.patch 1261 SHA256 ad0045c00b8a455b2a457176d5c053fda4985ac30d2c87850774183f64cba6f5 SHA512 cd37b914af6a819899cd2b04a97480d4878893b0b43f7f772302f494b89e11477241a34682534646657b0f5587bcd6e3841a49cc504a8a377782c2edbdbfad9d WHIRLPOOL be0f68e76663cf488c212ddc448bc8837d61cc446f7f8c9ce300ced0f23f9487f33af152c85131aef3c987e5ea622a5a0a6365c15f3e97e603a683b01dd131b1 AUX plasma-workspace-4.10.5-leak.patch 2652 SHA256 ee6e0da92d5b918ef1e94646c80119c078d4ec86bdbbd463bb76379ca248bc49 SHA512 dc3f7635aef8ecba89f965559363da82b6c42994721cd68d287d511142f099fdafcd32b295d2b8d8f997ffcd5e2c383d2c638fb62683899e63c3b563cd11fae9 WHIRLPOOL 6c915a87ce26db43aaf3ff39979519f460eb0395a0c5d5e50501d1bde34e9352cb9b69194728dba862613d7f982b8bd1f51ee4814ed88d351454bb2e0064d9cc DIST kde-workspace-4.10.4.tar.xz 13426036 SHA256 55b9c79829fbbe781653951eb0b94dcfbb21fa46102c0c15db40521c143f22d1 SHA512 ff5ca4d9675b9a8577b30f5725222b66e464496e438d64f0c528bb782c3d62cc5382e414c0c8884948733061cd6c181b74cf5e3c04ae137a9bb9f86fda8ee934 WHIRLPOOL 919297e61928dd7b555d42fb7a0890485755106d85ac18015b262109eb6ce34b00b82c16b224a6218abe53fec01e9f66f7c6fe9189507ea4231f0e6e905265d1 DIST kde-workspace-4.10.5.tar.xz 13569732 SHA256 a346420258f96475b47a7e3a78945fc38c10d4732b01d8fc371d11dcad56e875 SHA512 b90d015a91298cf98aebda60f08d18ff8afdfc813b4d27aa245fd2d3cc5bd31c3fcd57ce85fc188c167cd33b6d9ca537dbd5349871182062542ef526c360f0ff WHIRLPOOL 4a2448eb586c5223a9b86be5206f037de1765fe625a5fa0d222c35a1a61376b42625b52db453e2db1e88eb7efdea94fb375622d6db79ec29b0038eed3a6df331 EBUILD plasma-workspace-4.10.4-r1.ebuild 3338 SHA256 74535a6812f9bb10ecf170b47df2255d875f26161a78b90adca4e23235d1073f SHA512 b41ede043f16590da6ec432565cdf131f0561846a33fe0319e015e88404cb627d56196a4d68e142ab2ebcaf83eb8724b6405b8f63ea713281bfbadff25cab33d WHIRLPOOL 2414d0a9473ad78f09abb6b02c683778e864a8ec3d31ce6e9809bc6e2e48110c088d2832ee5ad38b007406f60b27c6621a1931a28c96cb98fc847ab0e1a13246 +EBUILD plasma-workspace-4.10.4-r2.ebuild 3388 SHA256 d83d4ec3a5bcb9c1c7305ed5c23f342771d9ec8e6305a00fb2e6bffb356363f7 SHA512 f1444faf937408939dec3d2426a15db9dbcdcdac79690e6633a011d8533ff60c470ec5537c1b3ef8c9d3a092d32f50081a0d4bb1181d2e9cd88863a891c84148 WHIRLPOOL 6894577a325d566ce4abac1421964744862a88a5ac3bc8062891c234ea974c9a191c5aba6060af0d9b3a4a03cdc6db677939f07dca5068da72bd5a171130054a EBUILD plasma-workspace-4.10.5-r1.ebuild 3313 SHA256 a5647038723c9e86cd110d433c75045a869f105c9ac1574b8bcdf4d1982846c6 SHA512 83d88624fe584e230b4e8a241f8b220099635e912c7d088b7a3ae089f093cd2aad6bed192370bba8d29bbe80a6c26ae66000e7c2c01efaf3d039020d05bcdca0 WHIRLPOOL 980735d831c852ecc17b80b423de6380e69f90b212cc066e769630c6977f53f8d40bb71069d77c1364f9f96085f00a45a5909417930c9b608531b7a8d99ebcdc +EBUILD plasma-workspace-4.10.5-r2.ebuild 3352 SHA256 08b1810c4da9a4df538103343cc52a4b12d5e1102658343bbcbd13f0d5ea4db0 SHA512 e6ef5437249421dd4c4a6226838609d22bfd89ab006ae15b1777ca69c82821a2c2dba18a1b3431ecb672c29a8cfb57371f79d8c2ddfc67c2dd9657a2e48a0b15 WHIRLPOOL 550880285f1e2f534699a80aedad4321972017b53d2cbbdc53d39b17986412aea2fa688305117cad2e823b3242de9d6cf81836755615f5612d1413ba235e43a9 EBUILD plasma-workspace-4.10.5.ebuild 3264 SHA256 d6415d55c2dbf282cdfc676209fc1dc573ec1cf1fb04940b05de7906bd78f701 SHA512 277a542d64215810ae254365414cf2b3883e547e3b01c0ccef1461e7540e0134bf6dc2850eb9c1f1d7c03a49f8f2d3ca32990d4c121884ef9d2d57df1b794b8f WHIRLPOOL 45c96730754ff5fb510e61a01c9997af6994d0cde53be19890e1ecfaa1c4e05b8114dad2dc8e72d7e58a8dcb377a1b3e7b832b2efe28880d74d0c8575ee6d2fa -MISC ChangeLog 35696 SHA256 7f4c30546972324c67543e36b67b4c2c465abf6438202b796e1e57cf39fd5093 SHA512 07ef43e78a1a09c815c9a7d5d3802784b962f8f889798e043ea81fa241a11e209dadd7520ae004049904dc56658ac109f1ee7ce2884992f2813c2c0abb9cf65d WHIRLPOOL 2147f1d97cc1e2051d10ce7885ae3fb0b459868b9bc5b80323158a25f060bf2965454aa112c60970b1332599707c00d4cf33cf3f231ea0e167b9dfe91e016cc0 +MISC ChangeLog 36005 SHA256 3ff5c069556dbdb63488cf216352f5c7327a31141b9819fbf6f2d431aa53d8bf SHA512 6827f8a7ad42ae74bf247d04a566b51f3cd85977447f5c01a905c45ba30340e06d0676d98eff7272e3d144186c06eb68d176b2246c75d74e7f2ce5d9e1e4ff19 WHIRLPOOL 07a09ffc4e6ce0d42fb4faa64c9b52d5fa4700eb5739e03e05349693c5e6dd11079663167b4838a36faa856c251ab7aba5e6b5f01cc940e976b506630ff7354e MISC metadata.xml 339 SHA256 4b99eaba6035dde9931777ae669a2d42f0c263a5dfc680dfb8cfd20ce71bb6eb SHA512 eca04b479a6d32f0d54624deae8f748d83131f04d02c45de7db446b472c7990306934c73a80368f0177256bf3406d02bec234a0063049cb68edbe23a7af6d2ed WHIRLPOOL 04a8412d26ccb4ba3a7c578cd03d159cfd009848fa8d27d82526ff0ce56951038d4be155344901c58a9ac7976d5d358f4f851ba449af2d509e9f587ea7ac0533 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (GNU/Linux) -iQEcBAEBCAAGBQJR09V8AAoJEMbwO6tnXQ0sJKQIAJ1X0AHc+3b0/STJdNBTOwUQ -5t8A1cRC1s9aIQUNrRgkETgfOn3Hbj0Pw2BKnqzRz8qV08+vvRX1cU76CsGigke6 -dqqWcQzJkQAGfxPreEGZUyd7F0J750AgBC87wvXFygGB/WxBqiF01T0fwt/9zn67 -b+OtMZeoyLFd6vbWhV/21aUl2/j3oWbctYmDMU3kRznxjJec3J8s7zMAEshoqprs -3vtk/KdllizMBCkaNHonv333T0taxAE+fP80RjxxY6s1ioBHr0gYw4uIxt9G+Afv -tfbTP8GufaeTEwk0aKO+ppu8bGRE3jmf5Pr9zfI3YhvvoOLGnRoN/EAGuYFC5sw= -=BmKl +iQJ8BAEBCABmBQJR6weOXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w +ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQwNzlCRDk4QzA4RENBRkYzQUEwRjQzMDlF +QkU2QTMzNkJFMTkwMzlDAAoJEOvmoza+GQOcincQAJ22cUXT3VcjgbBDWb5sSE4M +n3KuZfOXtYxGsdhTzAuNLxmQx6dz1QsCO+kzjRDQ8P3PK9CWHrtq89kyIluNuTue +atPR37EMCKXsJvKHEs8Pl7z3B2w4IoFE0Jvb+GbIncAN8EESXXCErhyvhmnlaPkg +QUoxpFRYI9Q+969OgXcyA5gxjKOx8gr22DmRRpVO72PEv1hGFG8+jwtOTRaCb1Ls +hZVXOY0oaIfCq8H95a3ri/CR/A0WxfUNbvDWumeIl1jrE0KwgGGwvLI2auCffeKA +UfK1K0+L7Mle0F33fAI84xBmifnXOsDlH9eg6+zZPD0Q/YQtPfc2fhEqH1cxrNlT +yLtR1sqUZDeNFPSyQCZEL1HlG3n8EQOK4ZkjD6SqNL3SkpQ5/jBZhNIir45z9xHW +vdvWigHLfG948jvjC3jrKGE17Dlxjl62SKIZaYjSuzdnHA4M0JiCmFYcw23386l/ +jve8U/GL84dda6ym4ggWRG96pXU3hIt9pBTYtSRW26t6AgOW2VGVqv5Pv/W0EuKj +0SKtbWnzWqtQGD6WAifNCZuC/Yr78TbGKjf+PsnbI/38ai7mkJF4rgAKUHRBUp0p +GeKFUvYkynIe8aFnNp8f5ZfEEsMGkD+eAyg6qy+SCwkPk4Opt237G08dm8Z+qO+E +pwzSzmbSXf19Y86vHN50 +=as1q -----END PGP SIGNATURE----- diff --git a/kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch b/kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch new file mode 100644 index 000000000000..6d36a07aae3d --- /dev/null +++ b/kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch @@ -0,0 +1,74 @@ +From 45b7f137fbc0b942fd2c9b4e8d8c1f0293e64ba7 Mon Sep 17 00:00:00 2001 +From: Michael Pyne <mpyne@kde.org> +Date: Sat, 29 Jun 2013 16:13:20 -0400 +Subject: [PATCH] kdm, kcheckpass: Check for NULL return from crypt(3) and + friends. + +Potential issue noted and fixed by Mancha <mancha1@hush.com>. + +Patch reviewed by myself and ossi. Backported to 4.10 by myself. + +REVIEW:111261 +FIXED-IN:4.10.5 +--- + kcheckpass/checkpass_etcpasswd.c | 3 ++- + kcheckpass/checkpass_osfc2passwd.c | 3 ++- + kcheckpass/checkpass_shadow.c | 2 +- + kdm/backend/client.c | 7 +++++-- + 4 files changed, 10 insertions(+), 5 deletions(-) + +diff --git a/kcheckpass/checkpass_etcpasswd.c b/kcheckpass/checkpass_etcpasswd.c +index 1dbe06f..e261b7c 100644 +--- a/kcheckpass/checkpass_etcpasswd.c ++++ b/kcheckpass/checkpass_etcpasswd.c +@@ -35,6 +35,7 @@ AuthReturn Authenticate(const char *method, + { + struct passwd *pw; + char *passwd; ++ char *crpt_passwd; + + if (strcmp(method, "classic")) + return AuthError; +@@ -49,7 +50,7 @@ AuthReturn Authenticate(const char *method, + if (!(passwd = conv(ConvGetHidden, 0))) + return AuthAbort; + +- if (!strcmp(pw->pw_passwd, crypt(passwd, pw->pw_passwd))) { ++ if ((crpt_passwd = crypt(passwd, pw->pw_passwd)) && !strcmp(pw->pw_passwd, crpt_passwd)) { + dispose(passwd); + return AuthOk; /* Success */ + } +diff --git a/kcheckpass/checkpass_osfc2passwd.c b/kcheckpass/checkpass_osfc2passwd.c +index 9a074f9..d181233 100644 +--- a/kcheckpass/checkpass_osfc2passwd.c ++++ b/kcheckpass/checkpass_osfc2passwd.c +@@ -38,6 +38,7 @@ AuthReturn Authenticate(const char *method, + const char *login, char *(*conv) (ConvRequest, const char *)) + { + char *passwd; ++ char *crpt_passwd; + char c2passwd[256]; + + if (strcmp(method, "classic")) +@@ -52,7 +53,7 @@ AuthReturn Authenticate(const char *method, + if (!(passwd = conv(ConvGetHidden, 0))) + return AuthAbort; + +- if (!strcmp(c2passwd, osf1c2crypt(passwd, c2passwd))) { ++ if ((crpt_passwd = osf1c2crypt(passwd, c2passwd)) && !strcmp(c2passwd, crpt_passwd)) { + dispose(passwd); + return AuthOk; /* Success */ + } +diff --git a/kcheckpass/checkpass_shadow.c b/kcheckpass/checkpass_shadow.c +index ec3a4e0..c0f6913 100644 +--- a/kcheckpass/checkpass_shadow.c ++++ b/kcheckpass/checkpass_shadow.c +@@ -69,7 +69,7 @@ AuthReturn Authenticate(const char *method, + crpt_passwd = crypt(typed_in_password, password); + #endif + +- if (!strcmp(password, crpt_passwd )) { ++ if (crpt_passwd && !strcmp(password, crpt_passwd )) { + dispose(typed_in_password); + return AuthOk; /* Success */ + } diff --git a/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild b/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild new file mode 100644 index 000000000000..b5546342a53e --- /dev/null +++ b/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild @@ -0,0 +1,145 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild,v 1.1 2013/07/20 21:54:05 dilfridge Exp $ + +EAPI=5 + +DECLARATIVE_REQUIRED="always" +KDE_HANDBOOK="optional" +KMNAME="kde-workspace" +KMMODULE="plasma" +PYTHON_DEPEND="python? 2" +OPENGL_REQUIRED="always" +inherit python kde4-meta + +DESCRIPTION="Plasma: KDE desktop framework" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="debug gps json python qalculate +rss semantic-desktop" + +COMMONDEPEND=" + dev-libs/libdbusmenu-qt + >=dev-qt/qtcore-4.8.4-r3:4 + !kde-misc/ktouchpadenabler + $(add_kdebase_dep kactivities) + $(add_kdebase_dep kdelibs 'semantic-desktop(+)?') + $(add_kdebase_dep kephal) + $(add_kdebase_dep ksysguard) + $(add_kdebase_dep libkworkspace) + $(add_kdebase_dep libplasmagenericshell) + $(add_kdebase_dep libtaskmanager) + $(add_kdebase_dep solid) + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrender + gps? ( >=sci-geosciences/gpsd-2.37 ) + json? ( dev-libs/qjson ) + python? ( + >=dev-python/PyQt4-4.4.0[X] + $(add_kdebase_dep pykde4) + ) + qalculate? ( sci-libs/libqalculate ) + rss? ( + $(add_kdebase_dep kdepimlibs 'semantic-desktop(+)?') + $(add_kdebase_dep libplasmaclock 'holidays(+)') + ) + !rss? ( $(add_kdebase_dep libplasmaclock '-holidays(+)') ) + semantic-desktop? ( + dev-libs/soprano + $(add_kdebase_dep nepomuk-core) + ) +" +DEPEND="${COMMONDEPEND} + rss? ( dev-libs/boost ) + x11-proto/compositeproto + x11-proto/damageproto + x11-proto/fixesproto + x11-proto/renderproto +" +RDEPEND="${COMMONDEPEND} + $(add_kdebase_dep plasma-runtime) +" + +KMEXTRA=" + appmenu/ + ktouchpadenabler/ + statusnotifierwatcher/ +" +KMEXTRACTONLY=" + kcheckpass/ + krunner/dbus/org.freedesktop.ScreenSaver.xml + krunner/dbus/org.kde.krunner.App.xml + ksmserver/org.kde.KSMServerInterface.xml + ksmserver/screenlocker/ + libs/kephal/ + libs/kworkspace/ + libs/taskmanager/ + libs/plasmagenericshell/ + libs/ksysguard/ + libs/kdm/kgreeterplugin.h + ksysguard/ +" + +KMLOADLIBS="libkworkspace libplasmaclock libplasmagenericshell libtaskmanager" + +PATCHES=( + "${FILESDIR}/${PN}-4.10.1-noplasmalock.patch" + "${FILESDIR}/${PN}-4.10.4-keep-batterymonitor-in-sync-with-systray.patch" + "${FILESDIR}/${PN}-4.10.4-crypt.patch" + ) + +pkg_setup() { + if use python ; then + python_set_active_version 2 + python_pkg_setup + fi + kde4-meta_pkg_setup +} + +src_unpack() { + if use handbook; then + KMEXTRA+=" doc/plasma-desktop" + fi + + kde4-meta_src_unpack +} + +src_configure() { + mycmakeargs=( + $(cmake-utils_use_with gps libgps) + $(cmake-utils_use_with json QJSON) + $(cmake-utils_use_with python PythonLibrary) + $(cmake-utils_use_with qalculate) + $(cmake-utils_use_with rss KdepimLibs) + $(cmake-utils_use_with semantic-desktop Akonadi) + $(cmake-utils_use_with semantic-desktop NepomukCore) + $(cmake-utils_use_with semantic-desktop Soprano) + -DWITH_Googlegadgets=OFF + -DWITH_Xmms=OFF + ) + + kde4-meta_src_configure +} + +pkg_postinst() { + kde4-meta_pkg_postinst + + if use python; then + python_mod_optimize \ + PyKDE4/plasmascript.py \ + /usr/share/apps/plasma_scriptengine_python + fi +} + +pkg_postrm() { + kde4-meta_pkg_postrm + + if use python; then + python_mod_cleanup \ + PyKDE4/plasmascript.py \ + /usr/share/apps/plasma_scriptengine_python + fi +} diff --git a/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild b/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild new file mode 100644 index 000000000000..b8a42a122fb2 --- /dev/null +++ b/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild @@ -0,0 +1,145 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild,v 1.1 2013/07/20 21:54:05 dilfridge Exp $ + +EAPI=5 + +DECLARATIVE_REQUIRED="always" +KDE_HANDBOOK="optional" +KMNAME="kde-workspace" +KMMODULE="plasma" +PYTHON_DEPEND="python? 2" +OPENGL_REQUIRED="always" +inherit python kde4-meta + +DESCRIPTION="Plasma: KDE desktop framework" +KEYWORDS=" ~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="debug gps json python qalculate +rss semantic-desktop" + +COMMONDEPEND=" + dev-libs/libdbusmenu-qt + >=dev-qt/qtcore-4.8.4-r3:4 + !kde-misc/ktouchpadenabler + $(add_kdebase_dep kactivities) + $(add_kdebase_dep kdelibs 'semantic-desktop(+)?') + $(add_kdebase_dep kephal) + $(add_kdebase_dep ksysguard) + $(add_kdebase_dep libkworkspace) + $(add_kdebase_dep libplasmagenericshell) + $(add_kdebase_dep libtaskmanager) + $(add_kdebase_dep solid) + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrender + gps? ( >=sci-geosciences/gpsd-2.37 ) + json? ( dev-libs/qjson ) + python? ( + >=dev-python/PyQt4-4.4.0[X] + $(add_kdebase_dep pykde4) + ) + qalculate? ( sci-libs/libqalculate ) + rss? ( + $(add_kdebase_dep kdepimlibs 'semantic-desktop(+)?') + $(add_kdebase_dep libplasmaclock 'holidays(+)') + ) + !rss? ( $(add_kdebase_dep libplasmaclock '-holidays(+)') ) + semantic-desktop? ( + dev-libs/soprano + $(add_kdebase_dep nepomuk-core) + ) +" +DEPEND="${COMMONDEPEND} + rss? ( dev-libs/boost ) + x11-proto/compositeproto + x11-proto/damageproto + x11-proto/fixesproto + x11-proto/renderproto +" +RDEPEND="${COMMONDEPEND} + $(add_kdebase_dep plasma-runtime) +" + +KMEXTRA=" + appmenu/ + ktouchpadenabler/ + statusnotifierwatcher/ +" +KMEXTRACTONLY=" + kcheckpass/ + krunner/dbus/org.freedesktop.ScreenSaver.xml + krunner/dbus/org.kde.krunner.App.xml + ksmserver/org.kde.KSMServerInterface.xml + ksmserver/screenlocker/ + libs/kephal/ + libs/kworkspace/ + libs/taskmanager/ + libs/plasmagenericshell/ + libs/ksysguard/ + libs/kdm/kgreeterplugin.h + ksysguard/ +" + +KMLOADLIBS="libkworkspace libplasmaclock libplasmagenericshell libtaskmanager" + +PATCHES=( + "${FILESDIR}/${PN}-4.10.1-noplasmalock.patch" + "${FILESDIR}/${PN}-4.10.5-leak.patch" + "${FILESDIR}/${PN}-4.10.4-crypt.patch" +) + +pkg_setup() { + if use python ; then + python_set_active_version 2 + python_pkg_setup + fi + kde4-meta_pkg_setup +} + +src_unpack() { + if use handbook; then + KMEXTRA+=" doc/plasma-desktop" + fi + + kde4-meta_src_unpack +} + +src_configure() { + mycmakeargs=( + $(cmake-utils_use_with gps libgps) + $(cmake-utils_use_with json QJSON) + $(cmake-utils_use_with python PythonLibrary) + $(cmake-utils_use_with qalculate) + $(cmake-utils_use_with rss KdepimLibs) + $(cmake-utils_use_with semantic-desktop Akonadi) + $(cmake-utils_use_with semantic-desktop NepomukCore) + $(cmake-utils_use_with semantic-desktop Soprano) + -DWITH_Googlegadgets=OFF + -DWITH_Xmms=OFF + ) + + kde4-meta_src_configure +} + +pkg_postinst() { + kde4-meta_pkg_postinst + + if use python; then + python_mod_optimize \ + PyKDE4/plasmascript.py \ + /usr/share/apps/plasma_scriptengine_python + fi +} + +pkg_postrm() { + kde4-meta_pkg_postrm + + if use python; then + python_mod_cleanup \ + PyKDE4/plasmascript.py \ + /usr/share/apps/plasma_scriptengine_python + fi +} |