From 902eddd7e029eda6fc1c668b31e696c6ca3edbc7 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 30 Jan 2012 23:15:09 +0000 Subject: Mon Jan 30 23:15:08 UTC 2012 --- libre/kdelibs-libre/PKGBUILD | 66 +++++++++++++++++++++++++ libre/kdelibs-libre/fix-knotify-filepath.patch | 13 +++++ libre/kdelibs-libre/kde-applications-menu.patch | 22 +++++++++ libre/kdelibs-libre/kdelibs.install | 13 +++++ libre/kdelibs-libre/khtml-fsdg.diff | 50 +++++++++++++++++++ 5 files changed, 164 insertions(+) create mode 100644 libre/kdelibs-libre/PKGBUILD create mode 100644 libre/kdelibs-libre/fix-knotify-filepath.patch create mode 100644 libre/kdelibs-libre/kde-applications-menu.patch create mode 100644 libre/kdelibs-libre/kdelibs.install create mode 100644 libre/kdelibs-libre/khtml-fsdg.diff (limited to 'libre/kdelibs-libre') diff --git a/libre/kdelibs-libre/PKGBUILD b/libre/kdelibs-libre/PKGBUILD new file mode 100644 index 000000000..09d0a715e --- /dev/null +++ b/libre/kdelibs-libre/PKGBUILD @@ -0,0 +1,66 @@ +# $Id: PKGBUILD 147759 2012-01-28 10:32:04Z andrea $ +# Maintainer: Andrea Scarpino + +_pkgname=kdelibs +pkgname=kdelibs-libre +pkgver=4.8.0 +pkgrel=1 +pkgdesc="KDE Core Libraries" +arch=('i686' 'x86_64' 'mips64el') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +depends=('strigi' 'attica' 'libxss' 'xz' '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') +makedepends=('cmake' 'automoc4' 'avahi' 'libgl' 'hspell') +provides=("kdelibs=$pkgver") +replaces=('kdelibs-experimental' 'kdelibs') +conflicts=('kdelibs') +install=${_pkgname}.install +source=("http://download.kde.org/stable/${pkgver}/src/${_pkgname}-${pkgver}.tar.bz2" + 'kde-applications-menu.patch' + 'fix-knotify-filepath.patch' + 'khtml-fsdg.diff') +sha1sums=('5e4744405734e6c3ce572ef7d16054390692b38a' + '86ee8c8660f19de8141ac99cd6943964d97a1ed7' + '3312f6005aa56a9b992c74008fe5b314f1c8ffba' + 'a1502a964081ad583a00cf90c56e74bf60121830') + +build() { + cd "${srcdir}"/${_pkgname}-${pkgver} + + # avoid file conflict with gnome-menus + patch -p1 -i "${srcdir}"/kde-applications-menu.patch + + # https://bugs.kde.org/show_bug.cgi?id=285028 + patch -p1 -i "${srcdir}"/fix-knotify-filepath.patch + + # Don't ask the user to download a plugin, it's probably nonfree. + patch -p1 -i "${srcdir}"/khtml-fsdg.diff + + cd "${srcdir}" + mkdir build + cd build + cmake ../${_pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DKDE_DISTRIBUTION_TEXT='Parabola GNU/Linux-libre' \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DSYSCONF_INSTALL_DIR=/etc \ + -DHTML_INSTALL_DIR=/usr/share/doc/kde/html \ + -DKDE_DEFAULT_HOME='.kde4' \ + -DWITH_FAM=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/libre/kdelibs-libre/fix-knotify-filepath.patch b/libre/kdelibs-libre/fix-knotify-filepath.patch new file mode 100644 index 000000000..2cd995e97 --- /dev/null +++ b/libre/kdelibs-libre/fix-knotify-filepath.patch @@ -0,0 +1,13 @@ +diff --git a/knotify/config/knotifyconfigactionswidget.cpp b/knotify/config/knotifyconfigactionswidget.cpp +index 88d18b6..0e76658 100644 +--- a/knotify/config/knotifyconfigactionswidget.cpp ++++ b/knotify/config/knotifyconfigactionswidget.cpp +@@ -128,7 +128,7 @@ void KNotifyConfigActionsWidget::slotPlay( ) + KUrl soundURL = m_ui.Sound_select->url(); + if ( soundURL.isRelative() ) + { +- QString soundString = soundURL.toLocalFile(); ++ QString soundString = m_ui.Sound_select->text(); + // we need a way to get the application name in order to ba able to do this : + /*QString search = QString("%1/sounds/%2").arg(config->appname).arg(soundFile); + search = KGlobal::mainComponent().dirs()->findResource("data", search); diff --git a/libre/kdelibs-libre/kde-applications-menu.patch b/libre/kdelibs-libre/kde-applications-menu.patch new file mode 100644 index 000000000..4b513298a --- /dev/null +++ b/libre/kdelibs-libre/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/libre/kdelibs-libre/kdelibs.install b/libre/kdelibs-libre/kdelibs.install new file mode 100644 index 000000000..c77e68041 --- /dev/null +++ b/libre/kdelibs-libre/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 +} diff --git a/libre/kdelibs-libre/khtml-fsdg.diff b/libre/kdelibs-libre/khtml-fsdg.diff new file mode 100644 index 000000000..1a531b3c8 --- /dev/null +++ b/libre/kdelibs-libre/khtml-fsdg.diff @@ -0,0 +1,50 @@ +diff -ru kdelibs-4.8.0.orig/khtml/html/html_objectimpl.cpp kdelibs-4.8.0/khtml/html/html_objectimpl.cpp +--- kdelibs-4.8.0.orig/khtml/html/html_objectimpl.cpp 2012-01-30 19:46:27.684114289 +0100 ++++ kdelibs-4.8.0/khtml/html/html_objectimpl.cpp 2012-01-30 19:47:47.222111046 +0100 +@@ -577,46 +577,6 @@ + + void HTMLObjectBaseElementImpl::slotPartLoadingErrorNotify() + { +- // If we have an embed, we may be able to tell the user where to +- // download the plugin. +- +- HTMLEmbedElementImpl *embed = relevantEmbed(); +- QString serviceType; // shadows ours, but we don't care. +- +- if (!embed) +- return; +- +- serviceType = embed->serviceType; +- +- KHTMLPart* part = document()->part(); +- KParts::BrowserExtension *ext = part->browserExtension(); +- +- if(!embed->pluginPage.isEmpty() && ext) { +- // Prepare the mimetype to show in the question (comment if available, name as fallback) +- QString mimeName = serviceType; +- KMimeType::Ptr mime = KMimeType::mimeType(serviceType, KMimeType::ResolveAliases); +- if ( mime && mime->name() != KMimeType::defaultMimeType() ) +- mimeName = mime->comment(); +- +- // Check if we already asked the user, for this page +- if (!mimeName.isEmpty() && !part->pluginPageQuestionAsked(serviceType)) +- { +- part->setPluginPageQuestionAsked(serviceType); +- +- // Prepare the URL to show in the question (host only if http, to make it short) +- KUrl pluginPageURL(embed->pluginPage); +- QString shortURL = pluginPageURL.protocol() == "http" ? pluginPageURL.host() : pluginPageURL.prettyUrl(); +- int res = KMessageBox::questionYesNo( part->view(), +- i18n("No plugin found for '%1'.\nDo you want to download one from %2?", mimeName, shortURL), +- i18n("Missing Plugin"), KGuiItem(i18n("Download")), KGuiItem(i18n("Do Not Download")), QString("plugin-")+serviceType); +- if (res == KMessageBox::Yes) +- { +- // Display vendor download page +- ext->createNewWindow(pluginPageURL); +- return; +- } +- } +- } + } + + -- cgit v1.2.3-54-g00ecf