diff options
author | root <root@rshg054.dnsready.net> | 2012-12-29 02:13:48 -0800 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-12-29 02:13:48 -0800 |
commit | 5dd7ed82e788ebad2e920e0f2db7468cc6547cfe (patch) | |
tree | f467412e09912ababcd8fe6c05193d829f514dcd /extra/kdelibs | |
parent | 3009e8addb4a894329bf8ab3e8fb763361833978 (diff) |
Sat Dec 29 02:10:20 PST 2012
Diffstat (limited to 'extra/kdelibs')
-rw-r--r-- | extra/kdelibs/0001-Revert-Also-check-parent-mimetypes-in-protocolForArc.patch | 53 | ||||
-rw-r--r-- | extra/kdelibs/PKGBUILD | 65 | ||||
-rw-r--r-- | extra/kdelibs/archlinux-menu.patch | 22 | ||||
-rw-r--r-- | extra/kdelibs/fix-crash-on-open-with.patch | 19 | ||||
-rw-r--r-- | extra/kdelibs/kde-applications-menu.patch | 22 | ||||
-rw-r--r-- | extra/kdelibs/kdelibs.install | 13 |
6 files changed, 194 insertions, 0 deletions
diff --git a/extra/kdelibs/0001-Revert-Also-check-parent-mimetypes-in-protocolForArc.patch b/extra/kdelibs/0001-Revert-Also-check-parent-mimetypes-in-protocolForArc.patch new file mode 100644 index 000000000..5aadeb883 --- /dev/null +++ b/extra/kdelibs/0001-Revert-Also-check-parent-mimetypes-in-protocolForArc.patch @@ -0,0 +1,53 @@ +From 73283f1332e90fbb6fe0caa39a038cb16b83a54c Mon Sep 17 00:00:00 2001 +From: David Faure <faure@kde.org> +Date: Wed, 5 Dec 2012 22:42:25 +0100 +Subject: [PATCH] Revert "Also check parent mimetypes in + protocolForArchiveMimetype()." + +This reverts commit 4f296cfbced2c4ad54beec8f500ed2d3fc04ee05. +It breaks opening odt and other zip-based files in external apps. +That's what I get for delegating the testing :-) +BUG: 311214 +--- + kio/kio/kprotocolmanager.cpp | 19 +------------------ + 1 files changed, 1 insertions(+), 18 deletions(-) + +diff --git a/kio/kio/kprotocolmanager.cpp b/kio/kio/kprotocolmanager.cpp +index 3f1cadd..502a3e6 100644 +--- a/kio/kio/kprotocolmanager.cpp ++++ b/kio/kio/kprotocolmanager.cpp +@@ -47,7 +47,6 @@ + #include <ksharedconfig.h> + #include <kstandarddirs.h> + #include <kurl.h> +-#include <kmimetype.h> + #include <kmimetypetrader.h> + #include <kprotocolinfofactory.h> + +@@ -1190,23 +1189,7 @@ QString KProtocolManager::protocolForArchiveMimetype( const QString& mimeType ) + } + } + } +- const QString prot = d->protocolForArchiveMimetypes.value(mimeType); +- if (!prot.isEmpty()) +- return prot; +- +- // Check parent mimetypes +- KMimeType::Ptr mime = KMimeType::mimeType(mimeType); +- if (mime) { +- const QStringList parentMimeTypes = mime->allParentMimeTypes(); +- Q_FOREACH(const QString& parentMimeType, parentMimeTypes) { +- const QString res = d->protocolForArchiveMimetypes.value(parentMimeType); +- if (!res.isEmpty()) { +- return res; +- } +- } +- } +- +- return QString(); ++ return d->protocolForArchiveMimetypes.value(mimeType); + } + + #undef PRIVATE_DATA +-- +1.7.7 diff --git a/extra/kdelibs/PKGBUILD b/extra/kdelibs/PKGBUILD new file mode 100644 index 000000000..4d7f51fa5 --- /dev/null +++ b/extra/kdelibs/PKGBUILD @@ -0,0 +1,65 @@ +# $Id: PKGBUILD 173891 2012-12-27 10:11:14Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgname=kdelibs +pkgver=4.9.4 +pkgrel=4 +pkgdesc="KDE Core Libraries" +arch=('i686' 'x86_64') +url='https://projects.kde.org/projects/kde/kdelibs' +license=('GPL' 'LGPL' 'FDL') +depends=('strigi' 'attica' 'libxss' 'soprano' 'krb5' 'grantlee' + 'shared-desktop-ontologies' 'qca' 'libdbusmenu-qt' 'polkit-qt' + 'shared-mime-info' 'enchant' 'giflib' 'jasper' 'openexr' + 'docbook-xsl' 'upower' 'udisks' 'libxcursor' 'phonon' 'qtwebkit' + 'media-player-info' 'libxtst' 'libutempter') +makedepends=('cmake' 'automoc4' 'avahi' 'libgl' 'hspell' 'mesa') +install=${pkgname}.install +source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.xz" + 'kde-applications-menu.patch' 'archlinux-menu.patch' + '0001-Revert-Also-check-parent-mimetypes-in-protocolForArc.patch' + 'fix-crash-on-open-with.patch') +sha1sums=('b2fe70261207a96a26b5d8789379f134e3e070be' + '86ee8c8660f19de8141ac99cd6943964d97a1ed7' + '63a850ab4196b9d06934f2b4a13acd9f7739bc67' + 'f5d203932f67ab6d87c794e9cb78a3b1a22ef747' + '8faa5984ba37e9c6da04bc64f1fe21cd24f1cf07') + +build() { + cd "${srcdir}"/${pkgname}-${pkgver} + + # avoid file conflict with gnome-menus + patch -p1 -i "${srcdir}"/kde-applications-menu.patch + # add Archlinux menu entry + patch -p1 -i "${srcdir}"/archlinux-menu.patch + + # Fixed upstream + patch -p1 -i "${srcdir}"/0001-Revert-Also-check-parent-mimetypes-in-protocolForArc.patch + patch -p1 -i "${srcdir}"/fix-crash-on-open-with.patch + + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DKDE_DISTRIBUTION_TEXT='Arch Linux' \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DSYSCONF_INSTALL_DIR=/etc \ + -DHTML_INSTALL_DIR=/usr/share/doc/kde/html \ + -DKDE_DEFAULT_HOME='.kde4' \ + -DWITH_FAM=OFF \ + -DWITH_HUpnp=OFF + make +} + +package() { + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install + + # cert bundle seems to be hardcoded + # link it to the one from ca-certificates + rm -f "${pkgdir}"/usr/share/apps/kssl/ca-bundle.crt + ln -sf /etc/ssl/certs/ca-certificates.crt "${pkgdir}"/usr/share/apps/kssl/ca-bundle.crt +} diff --git a/extra/kdelibs/archlinux-menu.patch b/extra/kdelibs/archlinux-menu.patch new file mode 100644 index 000000000..546784fa2 --- /dev/null +++ b/extra/kdelibs/archlinux-menu.patch @@ -0,0 +1,22 @@ +--- kdelibs-4.3.98/kded/applications.menu 2010-01-31 19:28:11.000000000 +0000 ++++ kdelibs-4.3.98/kded/applications.menu 2010-01-31 22:25:53.556043077 +0000 +@@ -16,11 +16,19 @@ + </DefaultLayout> + <Layout> + <Merge type="menus"/> ++ <Menuname>Arch Linux</Menuname> + <Menuname>Applications</Menuname> + <Merge type="files"/> + </Layout> + + <Menu> ++ <Name>Arch Linux</Name> ++ <Directory>Archlinux.directory</Directory> ++ <Include> ++ <Category>Archlinux</Category> ++ </Include> ++ </Menu> ++ <Menu> + <Name>Applications</Name> + <Directory>kde-unknown.directory</Directory> + <OnlyUnallocated/> diff --git a/extra/kdelibs/fix-crash-on-open-with.patch b/extra/kdelibs/fix-crash-on-open-with.patch new file mode 100644 index 000000000..60556386d --- /dev/null +++ b/extra/kdelibs/fix-crash-on-open-with.patch @@ -0,0 +1,19 @@ +commit 0820b3173aff4f0f3c803a9e75e726024da38ee5 +Author: David Faure <faure@kde.org> +Date: Thu Dec 6 11:55:05 2012 +0100 + + Fix crash when no service was selected (user clicked on "Open With...") + +diff --git a/kparts/browserrun.cpp b/kparts/browserrun.cpp +index 6d84800..6de0380 100644 +--- a/kparts/browserrun.cpp ++++ b/kparts/browserrun.cpp +@@ -304,7 +304,7 @@ BrowserRun::NonEmbeddableResult BrowserRun::handleNonEmbeddable(const QString& _ + this, SLOT(slotCopyToTempFileResult(KJob*)) ); + return Delayed; // We'll continue after the job has finished + } +- if (selectedService) { ++ if (selectedService && question.selectedService()) { + *selectedService = question.selectedService(); + // KRun will use this when starting an app + KRun::setPreferredService(question.selectedService()->desktopEntryName()); diff --git a/extra/kdelibs/kde-applications-menu.patch b/extra/kdelibs/kde-applications-menu.patch new file mode 100644 index 000000000..4b513298a --- /dev/null +++ b/extra/kdelibs/kde-applications-menu.patch @@ -0,0 +1,22 @@ +--- kdelibs-4.3.98/kded/CMakeLists.txt 2009-10-02 14:55:17.000000000 +0000 ++++ kdelibs-4.3.98/kded/CMakeLists.txt 2010-01-31 22:16:13.946933892 +0000 +@@ -69,7 +69,7 @@ + if (WIN32) + install( FILES applications.menu DESTINATION ${SHARE_INSTALL_PREFIX}/xdg/menus ) + else (WIN32) +-install( FILES applications.menu DESTINATION ${SYSCONF_INSTALL_DIR}/xdg/menus ) ++install( FILES applications.menu DESTINATION ${SYSCONF_INSTALL_DIR}/xdg/menus RENAME kde-applications.menu ) + endif (WIN32) + install( FILES kdedmodule.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} ) + install( FILES kded.upd DESTINATION ${DATA_INSTALL_DIR}/kconf_update ) +--- kdelibs-4.3.98/kded/kbuildsycoca.cpp 2009-12-04 23:10:18.000000000 +0000 ++++ kdelibs-4.3.98/kded/kbuildsycoca.cpp 2010-01-31 22:16:13.962766572 +0000 +@@ -302,7 +302,7 @@ + if (!m_trackId.isEmpty()) + g_vfolder->setTrackId(m_trackId); + +- VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("applications.menu", true); ++ VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("kde-applications.menu", true); + + KServiceGroup::Ptr entry = g_bsgf->addNew("/", kdeMenu->directoryFile, KServiceGroup::Ptr(), false); + entry->setLayoutInfo(kdeMenu->layoutList); diff --git a/extra/kdelibs/kdelibs.install b/extra/kdelibs/kdelibs.install new file mode 100644 index 000000000..c77e68041 --- /dev/null +++ b/extra/kdelibs/kdelibs.install @@ -0,0 +1,13 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} |