From 588fad3f4ac69a1234341ffd3c2b3cd2b1d020c2 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Wed, 3 Sep 2014 06:57:55 -0300 Subject: kde packages: remove libre and nonprism suffixes, add complex pkgrel --- libre/kdebase-konqueror-libre/PKGBUILD | 54 ----- .../kdebase-konqueror.install | 12 - libre/kdebase-konqueror-libre/konq-about-fsdg.diff | 33 --- libre/kdebase-konqueror/PKGBUILD | 52 +++++ libre/kdebase-konqueror/kdebase-konqueror.install | 12 + libre/kdebase-konqueror/konq-about-fsdg.diff | 33 +++ libre/kdebase-runtime-libre/PKGBUILD | 72 ------ .../kdebase-runtime-libre/duckduckgo_html.desktop | 113 ---------- .../kdebase-runtime-libre/duckduckgo_lite.desktop | 113 ---------- .../kdebase-runtime-libre/kdebase-runtime.install | 13 -- libre/kdebase-runtime/PKGBUILD | 70 ++++++ libre/kdebase-runtime/duckduckgo_html.desktop | 113 ++++++++++ libre/kdebase-runtime/duckduckgo_lite.desktop | 113 ++++++++++ libre/kdebase-runtime/kdebase-runtime.install | 13 ++ libre/kdelibs-libre/PKGBUILD | 65 ------ libre/kdelibs-libre/kde-applications-menu.patch | 22 -- libre/kdelibs-libre/kdelibs-cve-2014-5033.patch | 36 --- libre/kdelibs-libre/kdelibs.install | 13 -- libre/kdelibs-libre/khtml-fsdg.diff | 50 ----- libre/kdelibs-libre/pyqt.patch | 247 --------------------- libre/kdelibs-libre/qt4.patch | 11 - libre/kdelibs/PKGBUILD | 63 ++++++ libre/kdelibs/kde-applications-menu.patch | 22 ++ libre/kdelibs/kdelibs-cve-2014-5033.patch | 36 +++ libre/kdelibs/kdelibs.install | 13 ++ libre/kdelibs/khtml-fsdg.diff | 50 +++++ libre/kdelibs/pyqt.patch | 247 +++++++++++++++++++++ libre/kdelibs/qt4.patch | 11 + libre/kdenetwork-kopete-libre/PKGBUILD | 48 ---- .../kdenetwork-kopete.install | 12 - libre/kdenetwork-kopete-libre/kdenetwork.install | 11 - libre/kdenetwork-kopete/PKGBUILD | 46 ++++ libre/kdenetwork-kopete/kdenetwork-kopete.install | 12 + libre/kdenetwork-kopete/kdenetwork.install | 11 + libre/kdeutils-ark-libre/PKGBUILD | 46 ---- libre/kdeutils-ark-libre/ark-unar-06.patch | 236 -------------------- libre/kdeutils-ark-libre/kdeutils-ark.install | 12 - libre/kdeutils-ark/PKGBUILD | 44 ++++ libre/kdeutils-ark/ark-unar-06.patch | 236 ++++++++++++++++++++ libre/kdeutils-ark/kdeutils-ark.install | 12 + nonprism/kde-meta-nonprism/PKGBUILD | 115 ---------- nonprism/kde-meta/PKGBUILD | 113 ++++++++++ nonprism/kdenetwork-kopete-libre-nonprism/PKGBUILD | 68 ------ .../kdenetwork-kopete.install | 12 - .../kdenetwork.install | 11 - .../libre-nonprism.patch | 110 --------- nonprism/kdenetwork-kopete/PKGBUILD | 66 ++++++ .../kdenetwork-kopete/kdenetwork-kopete.install | 12 + nonprism/kdenetwork-kopete/kdenetwork.install | 11 + nonprism/kdenetwork-kopete/libre-nonprism.patch | 110 +++++++++ nonprism/kdepim-nonprism/PKGBUILD | 183 --------------- nonprism/kdepim-nonprism/kdepim-akregator.install | 12 - .../kdepim-nonprism/kdepim-kaddressbook.install | 12 - nonprism/kdepim-nonprism/kdepim-kmail.install | 12 - nonprism/kdepim-nonprism/kdepim-knode.install | 12 - nonprism/kdepim-nonprism/kdepim-korganizer.install | 12 - nonprism/kdepim-nonprism/kdepim.install | 11 - nonprism/kdepim-runtime-nonprism/PKGBUILD | 39 ---- .../kdepim-runtime-nonprism/kdepim-runtime.install | 13 -- nonprism/kdepim-runtime/PKGBUILD | 37 +++ nonprism/kdepim-runtime/kdepim-runtime.install | 13 ++ nonprism/kdepim/PKGBUILD | 175 +++++++++++++++ nonprism/kdepim/kdepim-akregator.install | 12 + nonprism/kdepim/kdepim-kaddressbook.install | 12 + nonprism/kdepim/kdepim-kmail.install | 12 + nonprism/kdepim/kdepim-knode.install | 12 + nonprism/kdepim/kdepim-korganizer.install | 12 + nonprism/kdepim/kdepim.install | 11 + 68 files changed, 1817 insertions(+), 1841 deletions(-) delete mode 100644 libre/kdebase-konqueror-libre/PKGBUILD delete mode 100644 libre/kdebase-konqueror-libre/kdebase-konqueror.install delete mode 100644 libre/kdebase-konqueror-libre/konq-about-fsdg.diff create mode 100644 libre/kdebase-konqueror/PKGBUILD create mode 100644 libre/kdebase-konqueror/kdebase-konqueror.install create mode 100644 libre/kdebase-konqueror/konq-about-fsdg.diff delete mode 100644 libre/kdebase-runtime-libre/PKGBUILD delete mode 100644 libre/kdebase-runtime-libre/duckduckgo_html.desktop delete mode 100644 libre/kdebase-runtime-libre/duckduckgo_lite.desktop delete mode 100644 libre/kdebase-runtime-libre/kdebase-runtime.install create mode 100644 libre/kdebase-runtime/PKGBUILD create mode 100644 libre/kdebase-runtime/duckduckgo_html.desktop create mode 100644 libre/kdebase-runtime/duckduckgo_lite.desktop create mode 100644 libre/kdebase-runtime/kdebase-runtime.install delete mode 100644 libre/kdelibs-libre/PKGBUILD delete mode 100644 libre/kdelibs-libre/kde-applications-menu.patch delete mode 100644 libre/kdelibs-libre/kdelibs-cve-2014-5033.patch delete mode 100644 libre/kdelibs-libre/kdelibs.install delete mode 100644 libre/kdelibs-libre/khtml-fsdg.diff delete mode 100644 libre/kdelibs-libre/pyqt.patch delete mode 100644 libre/kdelibs-libre/qt4.patch create mode 100644 libre/kdelibs/PKGBUILD create mode 100644 libre/kdelibs/kde-applications-menu.patch create mode 100644 libre/kdelibs/kdelibs-cve-2014-5033.patch create mode 100644 libre/kdelibs/kdelibs.install create mode 100644 libre/kdelibs/khtml-fsdg.diff create mode 100644 libre/kdelibs/pyqt.patch create mode 100644 libre/kdelibs/qt4.patch delete mode 100644 libre/kdenetwork-kopete-libre/PKGBUILD delete mode 100644 libre/kdenetwork-kopete-libre/kdenetwork-kopete.install delete mode 100644 libre/kdenetwork-kopete-libre/kdenetwork.install create mode 100644 libre/kdenetwork-kopete/PKGBUILD create mode 100644 libre/kdenetwork-kopete/kdenetwork-kopete.install create mode 100644 libre/kdenetwork-kopete/kdenetwork.install delete mode 100644 libre/kdeutils-ark-libre/PKGBUILD delete mode 100644 libre/kdeutils-ark-libre/ark-unar-06.patch delete mode 100644 libre/kdeutils-ark-libre/kdeutils-ark.install create mode 100644 libre/kdeutils-ark/PKGBUILD create mode 100644 libre/kdeutils-ark/ark-unar-06.patch create mode 100644 libre/kdeutils-ark/kdeutils-ark.install delete mode 100644 nonprism/kde-meta-nonprism/PKGBUILD create mode 100644 nonprism/kde-meta/PKGBUILD delete mode 100644 nonprism/kdenetwork-kopete-libre-nonprism/PKGBUILD delete mode 100644 nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork-kopete.install delete mode 100644 nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork.install delete mode 100644 nonprism/kdenetwork-kopete-libre-nonprism/libre-nonprism.patch create mode 100644 nonprism/kdenetwork-kopete/PKGBUILD create mode 100644 nonprism/kdenetwork-kopete/kdenetwork-kopete.install create mode 100644 nonprism/kdenetwork-kopete/kdenetwork.install create mode 100644 nonprism/kdenetwork-kopete/libre-nonprism.patch delete mode 100644 nonprism/kdepim-nonprism/PKGBUILD delete mode 100644 nonprism/kdepim-nonprism/kdepim-akregator.install delete mode 100644 nonprism/kdepim-nonprism/kdepim-kaddressbook.install delete mode 100644 nonprism/kdepim-nonprism/kdepim-kmail.install delete mode 100644 nonprism/kdepim-nonprism/kdepim-knode.install delete mode 100644 nonprism/kdepim-nonprism/kdepim-korganizer.install delete mode 100644 nonprism/kdepim-nonprism/kdepim.install delete mode 100644 nonprism/kdepim-runtime-nonprism/PKGBUILD delete mode 100644 nonprism/kdepim-runtime-nonprism/kdepim-runtime.install create mode 100644 nonprism/kdepim-runtime/PKGBUILD create mode 100644 nonprism/kdepim-runtime/kdepim-runtime.install create mode 100644 nonprism/kdepim/PKGBUILD create mode 100644 nonprism/kdepim/kdepim-akregator.install create mode 100644 nonprism/kdepim/kdepim-kaddressbook.install create mode 100644 nonprism/kdepim/kdepim-kmail.install create mode 100644 nonprism/kdepim/kdepim-knode.install create mode 100644 nonprism/kdepim/kdepim-korganizer.install create mode 100644 nonprism/kdepim/kdepim.install diff --git a/libre/kdebase-konqueror-libre/PKGBUILD b/libre/kdebase-konqueror-libre/PKGBUILD deleted file mode 100644 index 3c360cf60..000000000 --- a/libre/kdebase-konqueror-libre/PKGBUILD +++ /dev/null @@ -1,54 +0,0 @@ -# $Id: PKGBUILD 217088 2014-07-18 11:28:37Z svenstaro $ -# Maintainer (Arch): Andrea Scarpino -# Contributor (Arch): Pierre Schmitz -# Maintainer: Michał Masłowski -# Maintainer: André Silva - -_pkgname='kdebase-konqueror' -pkgname='kdebase-konqueror-libre' -pkgver=4.14.0 -pkgrel=1 -arch=('i686' 'x86_64' 'mips64el') -url="http://kde.org/applications/internet/konqueror/" -license=('GPL' 'LGPL' 'FDL') -groups=('kde' 'kdebase') -conflicts=('kdebase-nsplugins' 'kdebase-konqueror') -replaces=('kdebase-nsplugins' 'kdebase-konqueror') -provides=("kdebase-konqueror=$pkgver") -makedepends=('kdelibs' 'cmake' 'automoc4' 'tidyhtml' 'baloo-widgets') -source=("http://download.kde.org/stable/${pkgver}/src/kde-baseapps-${pkgver}.tar.xz" - 'konq-about-fsdg.diff') -sha1sums=('9f0c7cda0ec0ca6fbe41696a753679f3e158fec2' - 'd6cbb53c04179b8180f9439eca156b7ff2e76b3a') -pkgdesc='KDE File Manager & Web Browser, without Google and nonfree software recommendation' -depends=('kdebase-dolphin' 'kdebase-keditbookmarks') -optdepends=('kwebkitpart: to enable webkit engine') -install='kdebase-konqueror.install' - -prepare() { - mkdir build - - cd kde-baseapps-${pkgver} - # Don't recommend nonfree software or Google. - patch -Np1 -i "${srcdir}/konq-about-fsdg.diff" -} - -build() { - cd build - cmake ../kde-baseapps-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -DCMAKE_SKIP_RPATH=ON \ - -DCMAKE_INSTALL_PREFIX=/usr - for i in konqueror doc/konqueror nsplugins; do - cd $srcdir/build/${i} - make - done -} - -package() { - for i in konqueror doc/konqueror nsplugins; do - cd $srcdir/build/${i} - make DESTDIR=$pkgdir install - done -} diff --git a/libre/kdebase-konqueror-libre/kdebase-konqueror.install b/libre/kdebase-konqueror-libre/kdebase-konqueror.install deleted file mode 100644 index 5495fb1b5..000000000 --- a/libre/kdebase-konqueror-libre/kdebase-konqueror.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/kdebase-konqueror-libre/konq-about-fsdg.diff b/libre/kdebase-konqueror-libre/konq-about-fsdg.diff deleted file mode 100644 index 93ef4016a..000000000 --- a/libre/kdebase-konqueror-libre/konq-about-fsdg.diff +++ /dev/null @@ -1,33 +0,0 @@ -diff -ru kde-baseapps-4.8.0.orig/konqueror/about/konq_aboutpage.cc kde-baseapps-4.8.0/konqueror/about/konq_aboutpage.cc ---- kde-baseapps-4.8.0.orig/konqueror/about/konq_aboutpage.cc 2012-01-30 19:28:59.506176399 +0100 -+++ kde-baseapps-4.8.0/konqueror/about/konq_aboutpage.cc 2012-01-30 19:34:50.695537153 +0100 -@@ -214,14 +214,11 @@ - QString("http://www.ecma-international.org/publications/standards/ECMA-262.HTM")) ) - .arg( i18n("JavaScript disabled (globally). Enable JavaScript here.", QString("exec:/kcmshell4 khtml_java_js")) ) - .arg( i18n("JavaScript enabled (globally). Configure JavaScript here.", QString("exec:/kcmshell4 khtml_java_js")) ) // leave the double backslashes here, they are necessary for javascript ! -- .arg( i18n("Secure Java® support", QString("http://www.oracle.com/technetwork/java/index.html")) ) -- .arg( i18n("JDK 1.2.0 (Java 2) compatible VM (IBM or Sun/Oracle)", -- QString("http://www.ibm.com"), QString("http://www.oracle.com/technetwork/java/index.html")) ) -+ .arg( i18n("Secure Java® support") ) -+ .arg( i18n("JDK 1.2.0 (Java 2) compatible VM") ) - .arg( i18n("Enable Java (globally) here.", QString("exec:/kcmshell4 khtml_java_js")) ) // TODO Maybe test if Java is enabled ? -- .arg( i18n("Netscape Communicator® plugins (for viewing Flash®, Real®Audio, Real®Video, etc.)", -- QString("http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"), -- QString("http://www.real.com"), QString("http://www.real.com"), -- QString("about:plugins")) ) -+ .arg( i18n("Netscape Communicator® plugins ", -+ QString("about:plugins")) ) - .arg( i18n("built-in") ) - .arg( i18n("Secure Sockets Layer") ) - .arg( i18n("(TLS/SSL v2/3) for secure communications up to 168bit") ) -@@ -293,8 +290,8 @@ - .arg( i18n( "Tips" ) ) - .arg( i18n( "Specifications" ) ) - .arg( i18n( "Tips & Tricks" ) ) -- .arg( i18n( "Use Web-Shortcuts: by typing \"gg: KDE\" one can search the Internet, " -- "using Google, for the search phrase \"KDE\". There are a lot of " -+ .arg( i18n( "Use Web-Shortcuts: by typing \"dd: KDE\" one can search the Internet, " -+ "using DuckDuckGo HTML, for the search phrase \"KDE\". There are a lot of " - "Web-Shortcuts predefined to make searching for software or looking " - "up certain words in an encyclopedia a breeze. You can even " - "create your own Web-Shortcuts." , QString("exec:/kcmshell4 ebrowsing")) ) diff --git a/libre/kdebase-konqueror/PKGBUILD b/libre/kdebase-konqueror/PKGBUILD new file mode 100644 index 000000000..6f0a738b9 --- /dev/null +++ b/libre/kdebase-konqueror/PKGBUILD @@ -0,0 +1,52 @@ +# $Id: PKGBUILD 217088 2014-07-18 11:28:37Z svenstaro $ +# Maintainer (Arch): Andrea Scarpino +# Contributor (Arch): Pierre Schmitz +# Maintainer: Michał Masłowski +# Maintainer: André Silva + +pkgname='kdebase-konqueror' +pkgver=4.14.0 +pkgrel=1.parabola1 +arch=('i686' 'x86_64' 'mips64el') +url="http://kde.org/applications/internet/konqueror/" +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdebase') +conflicts=('kdebase-nsplugins' 'kdebase-konqueror-libre') +replaces=('kdebase-nsplugins' 'kdebase-konqueror-libre') +makedepends=('kdelibs' 'cmake' 'automoc4' 'tidyhtml' 'baloo-widgets') +source=("http://download.kde.org/stable/${pkgver}/src/kde-baseapps-${pkgver}.tar.xz" + 'konq-about-fsdg.diff') +sha1sums=('9f0c7cda0ec0ca6fbe41696a753679f3e158fec2' + 'd6cbb53c04179b8180f9439eca156b7ff2e76b3a') +pkgdesc='KDE File Manager & Web Browser, without Google and nonfree software recommendation' +depends=('kdebase-dolphin' 'kdebase-keditbookmarks') +optdepends=('kwebkitpart: to enable webkit engine') +install='kdebase-konqueror.install' + +prepare() { + mkdir build + + cd kde-baseapps-${pkgver} + # Don't recommend nonfree software or Google. + patch -Np1 -i "${srcdir}/konq-about-fsdg.diff" +} + +build() { + cd build + cmake ../kde-baseapps-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DKDE4_BUILD_TESTS=OFF \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + for i in konqueror doc/konqueror nsplugins; do + cd $srcdir/build/${i} + make + done +} + +package() { + for i in konqueror doc/konqueror nsplugins; do + cd $srcdir/build/${i} + make DESTDIR=$pkgdir install + done +} diff --git a/libre/kdebase-konqueror/kdebase-konqueror.install b/libre/kdebase-konqueror/kdebase-konqueror.install new file mode 100644 index 000000000..5495fb1b5 --- /dev/null +++ b/libre/kdebase-konqueror/kdebase-konqueror.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/libre/kdebase-konqueror/konq-about-fsdg.diff b/libre/kdebase-konqueror/konq-about-fsdg.diff new file mode 100644 index 000000000..93ef4016a --- /dev/null +++ b/libre/kdebase-konqueror/konq-about-fsdg.diff @@ -0,0 +1,33 @@ +diff -ru kde-baseapps-4.8.0.orig/konqueror/about/konq_aboutpage.cc kde-baseapps-4.8.0/konqueror/about/konq_aboutpage.cc +--- kde-baseapps-4.8.0.orig/konqueror/about/konq_aboutpage.cc 2012-01-30 19:28:59.506176399 +0100 ++++ kde-baseapps-4.8.0/konqueror/about/konq_aboutpage.cc 2012-01-30 19:34:50.695537153 +0100 +@@ -214,14 +214,11 @@ + QString("http://www.ecma-international.org/publications/standards/ECMA-262.HTM")) ) + .arg( i18n("JavaScript disabled (globally). Enable JavaScript here.", QString("exec:/kcmshell4 khtml_java_js")) ) + .arg( i18n("JavaScript enabled (globally). Configure JavaScript here.", QString("exec:/kcmshell4 khtml_java_js")) ) // leave the double backslashes here, they are necessary for javascript ! +- .arg( i18n("Secure Java® support", QString("http://www.oracle.com/technetwork/java/index.html")) ) +- .arg( i18n("JDK 1.2.0 (Java 2) compatible VM (IBM or Sun/Oracle)", +- QString("http://www.ibm.com"), QString("http://www.oracle.com/technetwork/java/index.html")) ) ++ .arg( i18n("Secure Java® support") ) ++ .arg( i18n("JDK 1.2.0 (Java 2) compatible VM") ) + .arg( i18n("Enable Java (globally) here.", QString("exec:/kcmshell4 khtml_java_js")) ) // TODO Maybe test if Java is enabled ? +- .arg( i18n("Netscape Communicator® plugins (for viewing Flash®, Real®Audio, Real®Video, etc.)", +- QString("http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"), +- QString("http://www.real.com"), QString("http://www.real.com"), +- QString("about:plugins")) ) ++ .arg( i18n("Netscape Communicator® plugins ", ++ QString("about:plugins")) ) + .arg( i18n("built-in") ) + .arg( i18n("Secure Sockets Layer") ) + .arg( i18n("(TLS/SSL v2/3) for secure communications up to 168bit") ) +@@ -293,8 +290,8 @@ + .arg( i18n( "Tips" ) ) + .arg( i18n( "Specifications" ) ) + .arg( i18n( "Tips & Tricks" ) ) +- .arg( i18n( "Use Web-Shortcuts: by typing \"gg: KDE\" one can search the Internet, " +- "using Google, for the search phrase \"KDE\". There are a lot of " ++ .arg( i18n( "Use Web-Shortcuts: by typing \"dd: KDE\" one can search the Internet, " ++ "using DuckDuckGo HTML, for the search phrase \"KDE\". There are a lot of " + "Web-Shortcuts predefined to make searching for software or looking " + "up certain words in an encyclopedia a breeze. You can even " + "create your own Web-Shortcuts." , QString("exec:/kcmshell4 ebrowsing")) ) diff --git a/libre/kdebase-runtime-libre/PKGBUILD b/libre/kdebase-runtime-libre/PKGBUILD deleted file mode 100644 index 3e13281fc..000000000 --- a/libre/kdebase-runtime-libre/PKGBUILD +++ /dev/null @@ -1,72 +0,0 @@ -# $Id: PKGBUILD 217060 2014-07-18 11:26:24Z svenstaro $ -# Maintainer (Arch): Andrea Scarpino -# Contributor (Arch): Pierre Schmitz -# Maintainer: André Silva - -_pkgname=kdebase-runtime -pkgname=kdebase-runtime-libre -pkgver=4.14.0 -pkgrel=1 -pkgdesc="Plugins and applications necessary for the running of KDE applications, without non-privacy search providers" -arch=('i686' 'x86_64' 'mips64el') -url='https://projects.kde.org/projects/kde/kde-runtime' -license=('GPL' 'LGPL') -replaces=("${_pkgname}") -conflicts=("${_pkgname}") -provides=("${_pkgname}=${pkgver}") -depends=("kdelibs>=${pkgver}" 'kactivities' 'libkactivities4' 'smbclient' 'libssh' 'libcanberra' - 'oxygen-icons' 'xorg-xauth' 'libwebp') -makedepends=('pkg-config' 'cmake' 'automoc4' 'kdepimlibs' 'openslp' 'doxygen' - 'networkmanager' 'boost') -optdepends=('kdepimlibs: needed by DrKonqi to send crash reports to KDE.org' - 'gdb: needed by DrKonqi to generate backtrace' - 'htdig: to build the search index in the KHelpCenter' - 'rarian: needed by KHelpCenter') -install="${_pkgname}.install" -source=("http://download.kde.org/stable/${pkgver}/src/kde-runtime-${pkgver}.tar.xz" - 'duckduckgo_html.desktop' - 'duckduckgo_lite.desktop') -sha1sums=('3847a9e6a66e4e724cff9230ff564c900243d4cd' - 'aa6f39f4b0ad3c110fd05cd6c41190afae9773dd' - 'ac3bac94a2c4b1444642524bc5fb539c4c5dcc5b') - -prepare() { - mkdir build -} - -build() { - cd "${srcdir}" - - # Removing non-privacy search providers - rm -v kde-runtime-${pkgver}/kurifilter-plugins/ikws/searchproviders/{7digital,acronym,amazon{,_mp3},amg,backports,baidu,bing,blip,cia,dbug,deb,duckduckgo{,_info,_shopping},facebook,ecosia,feedster,flickr,flickrcc,google,google_advanced,google_code,google_groups,google_images,google_lucky,google_maps,google_movie,google_news,imdb,jamendo,jeeves,magnatune,metacrawler,msdn,nl-telephone,nl-teletekst,python,rpmfind,tvtome,uspto,vimeo,voila,yahoo,yahoo_image,yahoo_local,yahoo_shopping,yahoo_video,youtube}.desktop - - # Adding DuckDuckGo HTML - cp -v duckduckgo_html.desktop "kde-runtime-${pkgver}/kurifilter-plugins/ikws/searchproviders" - - # Adding DuckDuckGo Lite - cp -v duckduckgo_lite.desktop "kde-runtime-${pkgver}/kurifilter-plugins/ikws/searchproviders" - - cd build - cmake ../kde-runtime-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -DCMAKE_SKIP_RPATH=ON \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DWITH_QNtrack=OFF \ - -DSAMBA_INCLUDE_DIR=/usr/include/samba-4.0 \ - -DWITH_NepomukCore=OFF - make -} - -package() { - cd build - make DESTDIR="$pkgdir" install - - rm "${pkgdir}"/usr/share/icons/hicolor/index.theme - - ln -sf /usr/lib/kde4/libexec/kdesu "${pkgdir}/usr/bin/" - - # FS#36668 - chown :nobody "${pkgdir}"/usr/lib/kde4/libexec/kdesud - chmod g+s "${pkgdir}"/usr/lib/kde4/libexec/kdesud -} diff --git a/libre/kdebase-runtime-libre/duckduckgo_html.desktop b/libre/kdebase-runtime-libre/duckduckgo_html.desktop deleted file mode 100644 index ba6a602ad..000000000 --- a/libre/kdebase-runtime-libre/duckduckgo_html.desktop +++ /dev/null @@ -1,113 +0,0 @@ -[Desktop Entry] -Charset= -Hidden=false -Keys=duckduckgo,dd,dukgo -Name=Duck Duck Go HTML -Name[ar]=Duck Duck Go HTML -Name[ast]=Duck Duck Go HTML -Name[bg]=Duck Duck Go HTML -Name[bn]=Duck Duck Go HTML -Name[bs]=Dak dak go HTML -Name[ca]=Duck Duck Go HTML -Name[ca@valencia]=Duck Duck Go HTML -Name[cs]=Duck Duck Go HTML -Name[da]=Duck Duck Go HTML -Name[de]=Duck Duck Go HTML -Name[el]=Duck Duck Go HTML -Name[en_GB]=Duck Duck Go HTML -Name[eo]=Duck Duck Go HTML -Name[es]=Duck Duck Go HTML -Name[et]=Duck Duck Go HTML -Name[eu]=Duck Duck Go HTML -Name[fa]=Duck Duck Go HTML -Name[fi]=Duck Duck Go HTML -Name[fr]=Duck Duck Go HTML -Name[ga]=Duck Duck Go HTML -Name[gl]=Duck Duck Go HTML -Name[gu]=Duck Duck Go HTML -Name[he]=Duck Duck Go HTML -Name[hi]=Duck Duck Go HTML -Name[hr]=Duck Duck Go HTML -Name[hu]=Duck Duck Go HTML -Name[ia]=Duck Duck Go HTML -Name[id]=Duck Duck Go HTML -Name[is]=Duck Duck Go HTML -Name[it]=Duck Duck Go HTML -Name[ja]=Duck Duck Go HTML -Name[kk]=Duck Duck Go HTML -Name[km]=Duck Duck Go HTML -Name[kn]=Duck Duck Go HTML -Name[ko]=Duck Duck Go HTML -Name[lt]=Duck Duck Go HTML -Name[lv]=Duck Duck Go HTML -Name[ml]=Duck Duck Go HTML -Name[nb]=Duck Duck Go HTML -Name[nds]=Duck Duck Go HTML -Name[nl]=Duck Duck Go HTML -Name[nn]=Duck Duck Go HTML -Name[pa]=Duck Duck Go HTML -Name[pl]=Duck Duck Go HTML -Name[pt]=Duck Duck Go HTML -Name[pt_BR]=Duck Duck Go HTML -Name[ro]=Duck Duck Go HTML -Name[ru]=Поиск Duck Duck Go HTML -Name[si]=Duck Duck Go HTML -Name[sk]=Duck Duck Go HTML -Name[sl]=Duck Duck Go HTML -Name[sr]=Duck Duck Go HTML -Name[sr@ijekavian]=Duck Duck Go HTML -Name[sr@ijekavianlatin]=Duck Duck Go HTML -Name[sr@latin]=Duck Duck Go HTML -Name[sv]=Duck Duck Go HTML -Name[tg]=Duck Duck Go HTML -Name[th]=Duck Duck Go HTML -Name[tr]=Duck Duck Go HTML -Name[ug]=Duck Duck Go HTML -Name[uk]=Duck Duck Go HTML -Name[vi]=Duck Duck Go HTML -Name[wa]=Duck Duck Go HTML -Name[x-test]=xxDuck Duck Go HTMLxx -Name[zh_CN]=Duck Duck Go HTML -Name[zh_TW]=Duck Duck Go HTML -Query=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[bg]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[bn]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[ca]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[cs]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[da]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[de]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[el]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[eo]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[es]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[et]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[fi]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[fr]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[gl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[hi]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[hu]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[ia]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[it]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[kk]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[km]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[nb]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[nl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[pa]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[pl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[pt]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[pt_BR]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[ro]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[ru]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[sl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[sr]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[sr@ijekavian]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[sr@ijekavianlatin]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[sr@latin]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[sv]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[tr]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[uk]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[wa]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[x-test]=xxhttp://duckduckgo.com/html/?q=\\{@}&t=KDExx -Query[zh_CN]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -Query[zh_TW]=http://duckduckgo.com/html/?q=\\{@}&t=KDE -ServiceTypes=SearchProvider -Type=Service diff --git a/libre/kdebase-runtime-libre/duckduckgo_lite.desktop b/libre/kdebase-runtime-libre/duckduckgo_lite.desktop deleted file mode 100644 index 0da670dbe..000000000 --- a/libre/kdebase-runtime-libre/duckduckgo_lite.desktop +++ /dev/null @@ -1,113 +0,0 @@ -[Desktop Entry] -Charset= -Hidden=false -Keys=duckduckgolite,ddlite,dukgolite -Name=Duck Duck Go Lite -Name[ar]=Duck Duck Go Lite -Name[ast]=Duck Duck Go Lite -Name[bg]=Duck Duck Go Lite -Name[bn]=Duck Duck Go Lite -Name[bs]=Dak dak go Lite -Name[ca]=Duck Duck Go Lite -Name[ca@valencia]=Duck Duck Go Lite -Name[cs]=Duck Duck Go Lite -Name[da]=Duck Duck Go Lite -Name[de]=Duck Duck Go Lite -Name[el]=Duck Duck Go Lite -Name[en_GB]=Duck Duck Go Lite -Name[eo]=Duck Duck Go Lite -Name[es]=Duck Duck Go Lite -Name[et]=Duck Duck Go Lite -Name[eu]=Duck Duck Go Lite -Name[fa]=Duck Duck Go Lite -Name[fi]=Duck Duck Go Lite -Name[fr]=Duck Duck Go Lite -Name[ga]=Duck Duck Go Lite -Name[gl]=Duck Duck Go Lite -Name[gu]=Duck Duck Go Lite -Name[he]=Duck Duck Go Lite -Name[hi]=Duck Duck Go Lite -Name[hr]=Duck Duck Go Lite -Name[hu]=Duck Duck Go Lite -Name[ia]=Duck Duck Go Lite -Name[id]=Duck Duck Go Lite -Name[is]=Duck Duck Go Lite -Name[it]=Duck Duck Go Lite -Name[ja]=Duck Duck Go Lite -Name[kk]=Duck Duck Go Lite -Name[km]=Duck Duck Go Lite -Name[kn]=Duck Duck Go Lite -Name[ko]=Duck Duck Go Lite -Name[lt]=Duck Duck Go Lite -Name[lv]=Duck Duck Go Lite -Name[ml]=Duck Duck Go Lite -Name[nb]=Duck Duck Go Lite -Name[nds]=Duck Duck Go Lite -Name[nl]=Duck Duck Go Lite -Name[nn]=Duck Duck Go Lite -Name[pa]=Duck Duck Go Lite -Name[pl]=Duck Duck Go Lite -Name[pt]=Duck Duck Go Lite -Name[pt_BR]=Duck Duck Go Lite -Name[ro]=Duck Duck Go Lite -Name[ru]=Поиск Duck Duck Go Lite -Name[si]=Duck Duck Go Lite -Name[sk]=Duck Duck Go Lite -Name[sl]=Duck Duck Go Lite -Name[sr]=Duck Duck Go Lite -Name[sr@ijekavian]=Duck Duck Go Lite -Name[sr@ijekavianlatin]=Duck Duck Go Lite -Name[sr@latin]=Duck Duck Go Lite -Name[sv]=Duck Duck Go Lite -Name[tg]=Duck Duck Go Lite -Name[th]=Duck Duck Go Lite -Name[tr]=Duck Duck Go Lite -Name[ug]=Duck Duck Go Lite -Name[uk]=Duck Duck Go Lite -Name[vi]=Duck Duck Go Lite -Name[wa]=Duck Duck Go Lite -Name[x-test]=xxDuck Duck Go Litexx -Name[zh_CN]=Duck Duck Go Lite -Name[zh_TW]=Duck Duck Go Lite -Query=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[bg]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[bn]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[ca]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[cs]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[da]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[de]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[el]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[eo]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[es]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[et]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[fi]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[fr]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[gl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[hi]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[hu]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[ia]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[it]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[kk]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[km]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[nb]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[nl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[pa]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[pl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[pt]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[pt_BR]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[ro]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[ru]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[sl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[sr]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[sr@ijekavian]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[sr@ijekavianlatin]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[sr@latin]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[sv]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[tr]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[uk]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[wa]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[x-test]=xxhttp://duckduckgo.com/lite/?q=\\{@}&t=KDExx -Query[zh_CN]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -Query[zh_TW]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE -ServiceTypes=SearchProvider -Type=Service diff --git a/libre/kdebase-runtime-libre/kdebase-runtime.install b/libre/kdebase-runtime-libre/kdebase-runtime.install deleted file mode 100644 index c77e68041..000000000 --- a/libre/kdebase-runtime-libre/kdebase-runtime.install +++ /dev/null @@ -1,13 +0,0 @@ -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/kdebase-runtime/PKGBUILD b/libre/kdebase-runtime/PKGBUILD new file mode 100644 index 000000000..6782dc11f --- /dev/null +++ b/libre/kdebase-runtime/PKGBUILD @@ -0,0 +1,70 @@ +# $Id: PKGBUILD 217060 2014-07-18 11:26:24Z svenstaro $ +# Maintainer (Arch): Andrea Scarpino +# Contributor (Arch): Pierre Schmitz +# Maintainer: André Silva + +pkgname=kdebase-runtime +pkgver=4.14.0 +pkgrel=1.parabola1 +pkgdesc="Plugins and applications necessary for the running of KDE applications, without non-privacy search providers" +arch=('i686' 'x86_64' 'mips64el') +url='https://projects.kde.org/projects/kde/kde-runtime' +license=('GPL' 'LGPL') +replaces=("${pkgname}-libre") +conflicts=("${pkgname}-libre") +depends=("kdelibs>=${pkgver}" 'kactivities' 'libkactivities4' 'smbclient' 'libssh' 'libcanberra' + 'oxygen-icons' 'xorg-xauth' 'libwebp') +makedepends=('pkg-config' 'cmake' 'automoc4' 'kdepimlibs' 'openslp' 'doxygen' + 'networkmanager' 'boost') +optdepends=('kdepimlibs: needed by DrKonqi to send crash reports to KDE.org' + 'gdb: needed by DrKonqi to generate backtrace' + 'htdig: to build the search index in the KHelpCenter' + 'rarian: needed by KHelpCenter') +install="${pkgname}.install" +source=("http://download.kde.org/stable/${pkgver}/src/kde-runtime-${pkgver}.tar.xz" + 'duckduckgo_html.desktop' + 'duckduckgo_lite.desktop') +sha1sums=('3847a9e6a66e4e724cff9230ff564c900243d4cd' + 'aa6f39f4b0ad3c110fd05cd6c41190afae9773dd' + 'ac3bac94a2c4b1444642524bc5fb539c4c5dcc5b') + +prepare() { + mkdir build +} + +build() { + cd "${srcdir}" + + # Removing non-privacy search providers + rm -v kde-runtime-${pkgver}/kurifilter-plugins/ikws/searchproviders/{7digital,acronym,amazon{,_mp3},amg,backports,baidu,bing,blip,cia,dbug,deb,duckduckgo{,_info,_shopping},facebook,ecosia,feedster,flickr,flickrcc,google,google_advanced,google_code,google_groups,google_images,google_lucky,google_maps,google_movie,google_news,imdb,jamendo,jeeves,magnatune,metacrawler,msdn,nl-telephone,nl-teletekst,python,rpmfind,tvtome,uspto,vimeo,voila,yahoo,yahoo_image,yahoo_local,yahoo_shopping,yahoo_video,youtube}.desktop + + # Adding DuckDuckGo HTML + cp -v duckduckgo_html.desktop "kde-runtime-${pkgver}/kurifilter-plugins/ikws/searchproviders" + + # Adding DuckDuckGo Lite + cp -v duckduckgo_lite.desktop "kde-runtime-${pkgver}/kurifilter-plugins/ikws/searchproviders" + + cd build + cmake ../kde-runtime-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DKDE4_BUILD_TESTS=OFF \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_QNtrack=OFF \ + -DSAMBA_INCLUDE_DIR=/usr/include/samba-4.0 \ + -DWITH_NepomukCore=OFF + make +} + +package() { + cd build + make DESTDIR="$pkgdir" install + + rm "${pkgdir}"/usr/share/icons/hicolor/index.theme + + ln -sf /usr/lib/kde4/libexec/kdesu "${pkgdir}/usr/bin/" + + # FS#36668 + chown :nobody "${pkgdir}"/usr/lib/kde4/libexec/kdesud + chmod g+s "${pkgdir}"/usr/lib/kde4/libexec/kdesud +} diff --git a/libre/kdebase-runtime/duckduckgo_html.desktop b/libre/kdebase-runtime/duckduckgo_html.desktop new file mode 100644 index 000000000..ba6a602ad --- /dev/null +++ b/libre/kdebase-runtime/duckduckgo_html.desktop @@ -0,0 +1,113 @@ +[Desktop Entry] +Charset= +Hidden=false +Keys=duckduckgo,dd,dukgo +Name=Duck Duck Go HTML +Name[ar]=Duck Duck Go HTML +Name[ast]=Duck Duck Go HTML +Name[bg]=Duck Duck Go HTML +Name[bn]=Duck Duck Go HTML +Name[bs]=Dak dak go HTML +Name[ca]=Duck Duck Go HTML +Name[ca@valencia]=Duck Duck Go HTML +Name[cs]=Duck Duck Go HTML +Name[da]=Duck Duck Go HTML +Name[de]=Duck Duck Go HTML +Name[el]=Duck Duck Go HTML +Name[en_GB]=Duck Duck Go HTML +Name[eo]=Duck Duck Go HTML +Name[es]=Duck Duck Go HTML +Name[et]=Duck Duck Go HTML +Name[eu]=Duck Duck Go HTML +Name[fa]=Duck Duck Go HTML +Name[fi]=Duck Duck Go HTML +Name[fr]=Duck Duck Go HTML +Name[ga]=Duck Duck Go HTML +Name[gl]=Duck Duck Go HTML +Name[gu]=Duck Duck Go HTML +Name[he]=Duck Duck Go HTML +Name[hi]=Duck Duck Go HTML +Name[hr]=Duck Duck Go HTML +Name[hu]=Duck Duck Go HTML +Name[ia]=Duck Duck Go HTML +Name[id]=Duck Duck Go HTML +Name[is]=Duck Duck Go HTML +Name[it]=Duck Duck Go HTML +Name[ja]=Duck Duck Go HTML +Name[kk]=Duck Duck Go HTML +Name[km]=Duck Duck Go HTML +Name[kn]=Duck Duck Go HTML +Name[ko]=Duck Duck Go HTML +Name[lt]=Duck Duck Go HTML +Name[lv]=Duck Duck Go HTML +Name[ml]=Duck Duck Go HTML +Name[nb]=Duck Duck Go HTML +Name[nds]=Duck Duck Go HTML +Name[nl]=Duck Duck Go HTML +Name[nn]=Duck Duck Go HTML +Name[pa]=Duck Duck Go HTML +Name[pl]=Duck Duck Go HTML +Name[pt]=Duck Duck Go HTML +Name[pt_BR]=Duck Duck Go HTML +Name[ro]=Duck Duck Go HTML +Name[ru]=Поиск Duck Duck Go HTML +Name[si]=Duck Duck Go HTML +Name[sk]=Duck Duck Go HTML +Name[sl]=Duck Duck Go HTML +Name[sr]=Duck Duck Go HTML +Name[sr@ijekavian]=Duck Duck Go HTML +Name[sr@ijekavianlatin]=Duck Duck Go HTML +Name[sr@latin]=Duck Duck Go HTML +Name[sv]=Duck Duck Go HTML +Name[tg]=Duck Duck Go HTML +Name[th]=Duck Duck Go HTML +Name[tr]=Duck Duck Go HTML +Name[ug]=Duck Duck Go HTML +Name[uk]=Duck Duck Go HTML +Name[vi]=Duck Duck Go HTML +Name[wa]=Duck Duck Go HTML +Name[x-test]=xxDuck Duck Go HTMLxx +Name[zh_CN]=Duck Duck Go HTML +Name[zh_TW]=Duck Duck Go HTML +Query=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[bg]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[bn]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[ca]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[cs]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[da]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[de]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[el]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[eo]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[es]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[et]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[fi]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[fr]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[gl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[hi]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[hu]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[ia]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[it]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[kk]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[km]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[nb]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[nl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[pa]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[pl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[pt]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[pt_BR]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[ro]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[ru]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[sl]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[sr]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[sr@ijekavian]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[sr@ijekavianlatin]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[sr@latin]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[sv]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[tr]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[uk]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[wa]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[x-test]=xxhttp://duckduckgo.com/html/?q=\\{@}&t=KDExx +Query[zh_CN]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +Query[zh_TW]=http://duckduckgo.com/html/?q=\\{@}&t=KDE +ServiceTypes=SearchProvider +Type=Service diff --git a/libre/kdebase-runtime/duckduckgo_lite.desktop b/libre/kdebase-runtime/duckduckgo_lite.desktop new file mode 100644 index 000000000..0da670dbe --- /dev/null +++ b/libre/kdebase-runtime/duckduckgo_lite.desktop @@ -0,0 +1,113 @@ +[Desktop Entry] +Charset= +Hidden=false +Keys=duckduckgolite,ddlite,dukgolite +Name=Duck Duck Go Lite +Name[ar]=Duck Duck Go Lite +Name[ast]=Duck Duck Go Lite +Name[bg]=Duck Duck Go Lite +Name[bn]=Duck Duck Go Lite +Name[bs]=Dak dak go Lite +Name[ca]=Duck Duck Go Lite +Name[ca@valencia]=Duck Duck Go Lite +Name[cs]=Duck Duck Go Lite +Name[da]=Duck Duck Go Lite +Name[de]=Duck Duck Go Lite +Name[el]=Duck Duck Go Lite +Name[en_GB]=Duck Duck Go Lite +Name[eo]=Duck Duck Go Lite +Name[es]=Duck Duck Go Lite +Name[et]=Duck Duck Go Lite +Name[eu]=Duck Duck Go Lite +Name[fa]=Duck Duck Go Lite +Name[fi]=Duck Duck Go Lite +Name[fr]=Duck Duck Go Lite +Name[ga]=Duck Duck Go Lite +Name[gl]=Duck Duck Go Lite +Name[gu]=Duck Duck Go Lite +Name[he]=Duck Duck Go Lite +Name[hi]=Duck Duck Go Lite +Name[hr]=Duck Duck Go Lite +Name[hu]=Duck Duck Go Lite +Name[ia]=Duck Duck Go Lite +Name[id]=Duck Duck Go Lite +Name[is]=Duck Duck Go Lite +Name[it]=Duck Duck Go Lite +Name[ja]=Duck Duck Go Lite +Name[kk]=Duck Duck Go Lite +Name[km]=Duck Duck Go Lite +Name[kn]=Duck Duck Go Lite +Name[ko]=Duck Duck Go Lite +Name[lt]=Duck Duck Go Lite +Name[lv]=Duck Duck Go Lite +Name[ml]=Duck Duck Go Lite +Name[nb]=Duck Duck Go Lite +Name[nds]=Duck Duck Go Lite +Name[nl]=Duck Duck Go Lite +Name[nn]=Duck Duck Go Lite +Name[pa]=Duck Duck Go Lite +Name[pl]=Duck Duck Go Lite +Name[pt]=Duck Duck Go Lite +Name[pt_BR]=Duck Duck Go Lite +Name[ro]=Duck Duck Go Lite +Name[ru]=Поиск Duck Duck Go Lite +Name[si]=Duck Duck Go Lite +Name[sk]=Duck Duck Go Lite +Name[sl]=Duck Duck Go Lite +Name[sr]=Duck Duck Go Lite +Name[sr@ijekavian]=Duck Duck Go Lite +Name[sr@ijekavianlatin]=Duck Duck Go Lite +Name[sr@latin]=Duck Duck Go Lite +Name[sv]=Duck Duck Go Lite +Name[tg]=Duck Duck Go Lite +Name[th]=Duck Duck Go Lite +Name[tr]=Duck Duck Go Lite +Name[ug]=Duck Duck Go Lite +Name[uk]=Duck Duck Go Lite +Name[vi]=Duck Duck Go Lite +Name[wa]=Duck Duck Go Lite +Name[x-test]=xxDuck Duck Go Litexx +Name[zh_CN]=Duck Duck Go Lite +Name[zh_TW]=Duck Duck Go Lite +Query=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[bg]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[bn]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[ca]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[cs]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[da]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[de]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[el]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[eo]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[es]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[et]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[fi]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[fr]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[gl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[hi]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[hu]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[ia]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[it]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[kk]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[km]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[nb]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[nl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[pa]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[pl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[pt]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[pt_BR]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[ro]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[ru]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[sl]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[sr]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[sr@ijekavian]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[sr@ijekavianlatin]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[sr@latin]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[sv]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[tr]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[uk]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[wa]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[x-test]=xxhttp://duckduckgo.com/lite/?q=\\{@}&t=KDExx +Query[zh_CN]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +Query[zh_TW]=http://duckduckgo.com/lite/?q=\\{@}&t=KDE +ServiceTypes=SearchProvider +Type=Service diff --git a/libre/kdebase-runtime/kdebase-runtime.install b/libre/kdebase-runtime/kdebase-runtime.install new file mode 100644 index 000000000..c77e68041 --- /dev/null +++ b/libre/kdebase-runtime/kdebase-runtime.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/PKGBUILD b/libre/kdelibs-libre/PKGBUILD deleted file mode 100644 index 963749145..000000000 --- a/libre/kdelibs-libre/PKGBUILD +++ /dev/null @@ -1,65 +0,0 @@ -# $Id: PKGBUILD 219465 2014-08-07 18:21:58Z andrea $ -# Maintainer (Arch): Andrea Scarpino -# Maintainer: André Silva - -_pkgname=kdelibs -pkgname=kdelibs-libre -pkgver=4.14.0 -pkgrel=1 -pkgdesc="KDE Core Libraries, without nonfree plugins recommendation support" -arch=('i686' 'x86_64' 'mips64el') -url='https://projects.kde.org/projects/kde/kdelibs' -license=('GPL' 'LGPL' 'FDL') -provides=("kdelibs=$pkgver") -replaces=('kdelibs') -conflicts=('kdelibs') -depends=('attica' 'libxss' 'krb5' 'grantlee' 'qca' 'libdbusmenu-qt' 'polkit-qt' - 'shared-mime-info' 'enchant' 'giflib' 'jasper' 'openexr' 'strigi' - 'docbook-xsl' 'upower' 'udisks2' 'libxcursor' 'phonon-qt4' - 'media-player-info' 'libxtst' 'libutempter' 'qtwebkit' 'icu') -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' 'khtml-fsdg.diff' 'qt4.patch') -sha1sums=('d8c56abfa101b0bd39e05ae36b7f6063d8fe360c' - '86ee8c8660f19de8141ac99cd6943964d97a1ed7' - 'a1502a964081ad583a00cf90c56e74bf60121830' - 'ed1f57ee661e5c7440efcaba7e51d2554709701c') - -prepare() { - mkdir build - cd ${_pkgname}-${pkgver} - # avoid file conflict with gnome-menus - patch -p1 -i "${srcdir}"/kde-applications-menu.patch - # don't ask the user to download a plugin, it's probably nonfree. - patch -p1 -i "${srcdir}"/khtml-fsdg.diff - # qmake refers to Qt5 - patch -p1 -i "${srcdir}"/qt4.patch -} - -build() { - cd build - cmake ../${_pkgname}-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -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 \ - -DWITH_SOLID_UDISKS2=ON - 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/kde-applications-menu.patch b/libre/kdelibs-libre/kde-applications-menu.patch deleted file mode 100644 index 4b513298a..000000000 --- a/libre/kdelibs-libre/kde-applications-menu.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- 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-cve-2014-5033.patch b/libre/kdelibs-libre/kdelibs-cve-2014-5033.patch deleted file mode 100644 index c85eccd6b..000000000 --- a/libre/kdelibs-libre/kdelibs-cve-2014-5033.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- a/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp -+++ b/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp -@@ -144,7 +144,7 @@ - - Action::AuthStatus Polkit1Backend::actionStatus(const QString &action) - { -- PolkitQt1::UnixProcessSubject subject(QCoreApplication::applicationPid()); -+ PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID())); - PolkitQt1::Authority::Result r = PolkitQt1::Authority::instance()->checkAuthorizationSync(action, subject, - PolkitQt1::Authority::None); - switch (r) { -@@ -160,21 +160,12 @@ - - QByteArray Polkit1Backend::callerID() const - { -- QByteArray a; -- QDataStream s(&a, QIODevice::WriteOnly); -- s << QCoreApplication::applicationPid(); -- -- return a; -+ return QDBusConnection::systemBus().baseService().toUtf8(); - } - - bool Polkit1Backend::isCallerAuthorized(const QString &action, QByteArray callerID) - { -- QDataStream s(&callerID, QIODevice::ReadOnly); -- qint64 pid; -- -- s >> pid; -- -- PolkitQt1::UnixProcessSubject subject(pid); -+ PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID)); - PolkitQt1::Authority *authority = PolkitQt1::Authority::instance(); - - PolkitResultEventLoop e; - diff --git a/libre/kdelibs-libre/kdelibs.install b/libre/kdelibs-libre/kdelibs.install deleted file mode 100644 index c77e68041..000000000 --- a/libre/kdelibs-libre/kdelibs.install +++ /dev/null @@ -1,13 +0,0 @@ -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 deleted file mode 100644 index 1a531b3c8..000000000 --- a/libre/kdelibs-libre/khtml-fsdg.diff +++ /dev/null @@ -1,50 +0,0 @@ -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; -- } -- } -- } - } - - diff --git a/libre/kdelibs-libre/pyqt.patch b/libre/kdelibs-libre/pyqt.patch deleted file mode 100644 index eadd2f2ac..000000000 --- a/libre/kdelibs-libre/pyqt.patch +++ /dev/null @@ -1,247 +0,0 @@ -Make FindPyKDE4 work with PyQt's new build system. -Make FindPyQt4 work with PyQt's new build system. - -Since PyQt 4.10, PyQt.pyqtconfig is deprecated and not available unless -PyQt is built using the old configure script. - -PyKDE4 itself has recently been adjusted to mimic PyQt itself and only -install its pykdeconfig module if pyqtconfig is present. Additionally, -information such as SIP flags and the directory where PyKDE's SIP files -are installed are now also provided in the -PyKDE4.kdecore.PYKDE_CONFIGURATION dict. - -This commit completely rewrites FindPyKDE4.py to make it look like -FindPyQt.cmake after commit a7e4743: most of the information used by -FindPyKDE4.cmake is fetched from PyKDE4.kdecore, and we first try to -obtain the SIP flags and directory from pykdeconfig and, if it fails, we -use PYKDE_CONFIGURATION. - -Furthermore, FindPyKDE4.py now only prints the variables that are -actually consumed by FindPyKDE4.cmake -- it is not possible to obtain -all the data provided by pykdeconfig in PYKDE_CONFIGURATION. We've also -stopped reading and setting PYKDE4_VERSION_TAG, since PyKDE4 stopped -setting a KDE tag in 2008 (and its value was 3_92_0 at the time). - -CCBUG: 327633 -REVIEW: 119454 - -BUG: 337462 -FIXED-IN: 4.14.0 -REVIEW: 119302 ---- kdelibs-4.13.3/cmake/modules/FindPyKDE4.cmake~ 2014-08-06 21:54:27.564432282 +0000 -+++ kdelibs-4.13.3/cmake/modules/FindPyKDE4.cmake 2014-08-06 21:54:43.417702615 +0000 -@@ -25,7 +25,6 @@ - STRING(REGEX REPLACE ".*\npykde_version_str:([^\n]+).*$" "\\1" PYKDE4_VERSION_STR ${pykde_config}) - STRING(REGEX REPLACE ".*\npykde_kde_sip_flags:([^\n]+).*$" "\\1" PYKDE4_SIP_FLAGS ${pykde_config}) - STRING(REGEX REPLACE ".*\npykde_sip_dir:([^\n]+).*$" "\\1" PYKDE4_SIP_DIR ${pykde_config}) -- STRING(REGEX REPLACE ".*\npykde_version_tag:([^\n]+).*$" "\\1" PYKDE4_VERSION_TAG ${pykde_config}) - MESSAGE(STATUS "Found PyKDE4 version ${PYKDE4_VERSION_STR} ${PYKDE4_SIP_DIR}") - - SET(PYKDE4_FOUND TRUE) -@@ -183,3 +182,4 @@ - endif(WIN32) - ENDMACRO(PYKDE4_ADD_EXECUTABLE) - -+ ---- kdelibs-4.13.3/cmake/modules/FindPyKDE4.py~ 2014-08-06 21:54:56.427650960 +0000 -+++ kdelibs-4.13.3/cmake/modules/FindPyKDE4.py 2014-08-06 21:55:04.400952596 +0000 -@@ -1,46 +1,23 @@ --# By Simon Edwards --# modified by Paul Giannaros to add better PyKDE4 --# sip directory finding --# This file is in the public domain. -+# Copyright (c) 2014, Raphael Kubo da Costa -+# Redistribution and use is allowed according to the terms of the BSD license. -+# For details see the accompanying COPYING-CMAKE-SCRIPTS file. - --import sys --import os --import PyKDE4.pykdeconfig --import PyQt4.pyqtconfig -+import PyKDE4.kdecore - --if "_pkg_config" in dir(PyKDE4.pykdeconfig): -- _pkg_config = PyKDE4.pykdeconfig._pkg_config -+if __name__ == '__main__': -+ try: -+ import PyKDE4.pykdeconfig -+ pykdecfg = PyKDE4.pykdeconfig.Configuration() -+ sip_dir = pykdecfg.pykde_sip_dir -+ sip_flags = pykdecfg.pykde_kde_sip_flags -+ except ImportError: -+ # PyQt4 >= 4.10.0 was built with configure-ng.py instead of -+ # configure.py, so pyqtconfig.py and pykdeconfig.py are not installed. -+ sip_dir = PyKDE4.kdecore.PYKDE_CONFIGURATION['sip_dir'] -+ sip_flags = PyKDE4.kdecore.PYKDE_CONFIGURATION['sip_flags'] - -- for varname in [ -- 'kde_version', -- 'kde_version_extra', -- 'kdebasedir', -- 'kdeincdir', -- 'kdelibdir', -- 'libdir', -- 'pykde_kde_sip_flags', -- 'pykde_mod_dir', -- 'pykde_modules', -- 'pykde_sip_dir', -- 'pykde_version', -- 'pykde_version_str']: -- varvalue = _pkg_config[varname] -- if varname == 'pykde_sip_dir': -- d = os.path.join(_pkg_config[varname], 'PyKDE4') -- if os.path.exists(d): -- varvalue = d -- print("%s:%s\n" % (varname, varvalue)) -- pykde_version_tag = '' -- in_t = False -- for item in _pkg_config['pykde_kde_sip_flags'].split(): -- if item == "-t": -- in_t = True -- elif in_t: -- if item.startswith("KDE_"): -- pykde_version_tag = item -- else: -- in_t = False -- print("pykde_version_tag:%s" % pykde_version_tag) -+ print('pykde_version:%06.x' % PyKDE4.kdecore.version()) -+ print('pykde_version_str:%s' % PyKDE4.kdecore.versionString()) -+ print('pykde_sip_dir:%s' % sip_dir) -+ print('pykde_sip_flags:%s' % sip_flags) - --else: -- sys.exit(1) ---- kdelibs-4.13.3/cmake/modules/FindPyQt.py~ 2014-08-06 21:55:55.874081319 +0000 -+++ kdelibs-4.13.3/cmake/modules/FindPyQt.py 2014-08-06 21:56:06.250706848 +0000 -@@ -1,24 +1,49 @@ - # Copyright (c) 2007, Simon Edwards -+# Copyright (c) 2014, Raphael Kubo da Costa - # Redistribution and use is allowed according to the terms of the BSD license. - # For details see the accompanying COPYING-CMAKE-SCRIPTS file. - --import PyQt4.pyqtconfig -+import PyQt4.QtCore -+import os -+import sys - --pyqtcfg = PyQt4.pyqtconfig.Configuration() --print("pyqt_version:%06.0x" % pyqtcfg.pyqt_version) --print("pyqt_version_str:%s" % pyqtcfg.pyqt_version_str) -- --pyqt_version_tag = "" --in_t = False --for item in pyqtcfg.pyqt_sip_flags.split(' '): -- if item=="-t": -- in_t = True -- elif in_t: -- if item.startswith("Qt_4"): -- pyqt_version_tag = item -+def get_default_sip_dir(): -+ # This is based on QScintilla's configure.py, and only works for the -+ # default case where installation paths have not been changed in PyQt's -+ # configuration process. -+ if sys.platform == 'win32': -+ pyqt_sip_dir = os.path.join(sys.prefix, 'sip', 'PyQt4') - else: -- in_t = False --print("pyqt_version_tag:%s" % pyqt_version_tag) -+ pyqt_sip_dir = os.path.join(sys.prefix, 'share', 'sip', 'PyQt4') -+ return pyqt_sip_dir -+ -+def get_qt4_tag(sip_flags): -+ in_t = False -+ for item in sip_flags.split(' '): -+ if item == '-t': -+ in_t = True -+ elif in_t: -+ if item.startswith('Qt_4'): -+ return item -+ else: -+ in_t = False -+ raise ValueError('Cannot find Qt\'s tag in PyQt4\'s SIP flags.') -+ -+if __name__ == '__main__': -+ try: -+ import PyQt4.pyqtconfig -+ pyqtcfg = PyQt4.pyqtconfig.Configuration() -+ sip_dir = pyqtcfg.pyqt_sip_dir -+ sip_flags = pyqtcfg.pyqt_sip_flags -+ except ImportError: -+ # PyQt4 >= 4.10.0 was built with configure-ng.py instead of -+ # configure.py, so pyqtconfig.py is not installed. -+ sip_dir = get_default_sip_dir() -+ sip_flags = PyQt4.QtCore.PYQT_CONFIGURATION['sip_flags'] -+ -+ print('pyqt_version:%06.x' % PyQt4.QtCore.PYQT_VERSION) -+ print('pyqt_version_str:%s' % PyQt4.QtCore.PYQT_VERSION_STR) -+ print('pyqt_version_tag:%s' % get_qt4_tag(sip_flags)) -+ print('pyqt_sip_dir:%s' % sip_dir) -+ print('pyqt_sip_flags:%s' % sip_flags) - --print("pyqt_sip_dir:%s" % pyqtcfg.pyqt_sip_dir) --print("pyqt_sip_flags:%s" % pyqtcfg.pyqt_sip_flags) ---- kdelibs-4.13.3/cmake/modules/FindPyQt4.cmake~ 2014-08-06 21:55:16.697570407 +0000 -+++ kdelibs-4.13.3/cmake/modules/FindPyQt4.cmake 2014-08-06 21:55:38.597483393 +0000 -@@ -9,16 +9,20 @@ - # Find the installed version of PyQt4. FindPyQt4 should only be called after - # Python has been found. - # --# This file defines the following variables: -+# This file defines the following variables, which can also be overriden by -+# users: - # - # PYQT4_VERSION - The version of PyQt4 found expressed as a 6 digit hex number - # suitable for comparison as a string - # - # PYQT4_VERSION_STR - The version of PyQt4 as a human readable string. - # --# PYQT4_VERSION_TAG - The PyQt version tag using by PyQt's sip files. -+# PYQT4_VERSION_TAG - The Qt4 version tag used by PyQt's sip files. - # --# PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. -+# PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. This can be unset -+# if PyQt4 was built using its new build system and pyqtconfig.py is not -+# present on the system, as in this case its value cannot be determined -+# automatically. - # - # PYQT4_SIP_FLAGS - The SIP flags used to build PyQt. - -@@ -31,13 +35,27 @@ - - EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_pyqt_py} OUTPUT_VARIABLE pyqt_config) - IF(pyqt_config) -- STRING(REGEX REPLACE "^pyqt_version:([^\n]+).*$" "\\1" PYQT4_VERSION ${pyqt_config}) -- STRING(REGEX REPLACE ".*\npyqt_version_str:([^\n]+).*$" "\\1" PYQT4_VERSION_STR ${pyqt_config}) -- STRING(REGEX REPLACE ".*\npyqt_version_tag:([^\n]+).*$" "\\1" PYQT4_VERSION_TAG ${pyqt_config}) -- STRING(REGEX REPLACE ".*\npyqt_sip_dir:([^\n]+).*$" "\\1" PYQT4_SIP_DIR ${pyqt_config}) -- STRING(REGEX REPLACE ".*\npyqt_sip_flags:([^\n]+).*$" "\\1" PYQT4_SIP_FLAGS ${pyqt_config}) -+ STRING(REGEX MATCH "^pyqt_version:([^\n]+).*$" _dummy ${pyqt_config}) -+ SET(PYQT4_VERSION "${CMAKE_MATCH_1}" CACHE STRING "PyQt4's version as a 6-digit hexadecimal number") - -- SET(PYQT4_FOUND TRUE) -+ STRING(REGEX MATCH ".*\npyqt_version_str:([^\n]+).*$" _dummy ${pyqt_config}) -+ SET(PYQT4_VERSION_STR "${CMAKE_MATCH_1}" CACHE STRING "PyQt4's version as a human-readable string") -+ -+ STRING(REGEX MATCH ".*\npyqt_version_tag:([^\n]+).*$" _dummy ${pyqt_config}) -+ SET(PYQT4_VERSION_TAG "${CMAKE_MATCH_1}" CACHE STRING "The Qt4 version tag used by PyQt4's .sip files") -+ -+ STRING(REGEX MATCH ".*\npyqt_sip_dir:([^\n]+).*$" _dummy ${pyqt_config}) -+ SET(PYQT4_SIP_DIR "${CMAKE_MATCH_1}" CACHE PATH "The base directory where PyQt4's .sip files are installed") -+ -+ STRING(REGEX MATCH ".*\npyqt_sip_flags:([^\n]+).*$" _dummy ${pyqt_config}) -+ SET(PYQT4_SIP_FLAGS "${CMAKE_MATCH_1}" CACHE STRING "The SIP flags used to build PyQt4") -+ -+ IF(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") -+ MESSAGE(WARNING "The base directory where PyQt4's SIP files are installed could not be determined. This usually means PyQt4 was built with its new build system and pyqtconfig.py is not present.\n" -+ "Please set the PYQT4_SIP_DIR variable manually.") -+ ELSE(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") -+ SET(PYQT4_FOUND TRUE) -+ ENDIF(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") - ENDIF(pyqt_config) - - IF(PYQT4_FOUND) -@@ -51,3 +69,4 @@ - ENDIF(PYQT4_FOUND) - - ENDIF(EXISTS PYQT4_VERSION) -+ diff --git a/libre/kdelibs-libre/qt4.patch b/libre/kdelibs-libre/qt4.patch deleted file mode 100644 index bb4312d40..000000000 --- a/libre/kdelibs-libre/qt4.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- kdelibs-4.10.1/cmake/modules/FindQt4.cmake~ 2013-03-07 16:57:29.735552097 +0000 -+++ kdelibs-4.10.1/cmake/modules/FindQt4.cmake 2013-03-07 16:57:52.038725421 +0000 -@@ -446,7 +446,7 @@ - # check for qmake - # Debian uses qmake-qt4 - # macports' Qt uses qmake-mac --FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 qmake-mac PATHS -+FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 qmake-mac PATHS - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" - "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin" diff --git a/libre/kdelibs/PKGBUILD b/libre/kdelibs/PKGBUILD new file mode 100644 index 000000000..045450038 --- /dev/null +++ b/libre/kdelibs/PKGBUILD @@ -0,0 +1,63 @@ +# $Id: PKGBUILD 219465 2014-08-07 18:21:58Z andrea $ +# Maintainer (Arch): Andrea Scarpino +# Maintainer: André Silva + +pkgname=kdelibs +pkgver=4.14.0 +pkgrel=1.parabola1 +pkgdesc="KDE Core Libraries, without nonfree plugins recommendation support" +arch=('i686' 'x86_64' 'mips64el') +url='https://projects.kde.org/projects/kde/kdelibs' +license=('GPL' 'LGPL' 'FDL') +replaces=('kdelibs-libre') +conflicts=('kdelibs-libre') +depends=('attica' 'libxss' 'krb5' 'grantlee' 'qca' 'libdbusmenu-qt' 'polkit-qt' + 'shared-mime-info' 'enchant' 'giflib' 'jasper' 'openexr' 'strigi' + 'docbook-xsl' 'upower' 'udisks2' 'libxcursor' 'phonon-qt4' + 'media-player-info' 'libxtst' 'libutempter' 'qtwebkit' 'icu') +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' 'khtml-fsdg.diff' 'qt4.patch') +sha1sums=('d8c56abfa101b0bd39e05ae36b7f6063d8fe360c' + '86ee8c8660f19de8141ac99cd6943964d97a1ed7' + 'a1502a964081ad583a00cf90c56e74bf60121830' + 'ed1f57ee661e5c7440efcaba7e51d2554709701c') + +prepare() { + mkdir build + cd ${pkgname}-${pkgver} + # avoid file conflict with gnome-menus + patch -p1 -i "${srcdir}"/kde-applications-menu.patch + # don't ask the user to download a plugin, it's probably nonfree. + patch -p1 -i "${srcdir}"/khtml-fsdg.diff + # qmake refers to Qt5 + patch -p1 -i "${srcdir}"/qt4.patch +} + +build() { + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DKDE4_BUILD_TESTS=OFF \ + -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 \ + -DWITH_SOLID_UDISKS2=ON + 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/kde-applications-menu.patch b/libre/kdelibs/kde-applications-menu.patch new file mode 100644 index 000000000..4b513298a --- /dev/null +++ b/libre/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/libre/kdelibs/kdelibs-cve-2014-5033.patch b/libre/kdelibs/kdelibs-cve-2014-5033.patch new file mode 100644 index 000000000..c85eccd6b --- /dev/null +++ b/libre/kdelibs/kdelibs-cve-2014-5033.patch @@ -0,0 +1,36 @@ +--- a/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp ++++ b/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp +@@ -144,7 +144,7 @@ + + Action::AuthStatus Polkit1Backend::actionStatus(const QString &action) + { +- PolkitQt1::UnixProcessSubject subject(QCoreApplication::applicationPid()); ++ PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID())); + PolkitQt1::Authority::Result r = PolkitQt1::Authority::instance()->checkAuthorizationSync(action, subject, + PolkitQt1::Authority::None); + switch (r) { +@@ -160,21 +160,12 @@ + + QByteArray Polkit1Backend::callerID() const + { +- QByteArray a; +- QDataStream s(&a, QIODevice::WriteOnly); +- s << QCoreApplication::applicationPid(); +- +- return a; ++ return QDBusConnection::systemBus().baseService().toUtf8(); + } + + bool Polkit1Backend::isCallerAuthorized(const QString &action, QByteArray callerID) + { +- QDataStream s(&callerID, QIODevice::ReadOnly); +- qint64 pid; +- +- s >> pid; +- +- PolkitQt1::UnixProcessSubject subject(pid); ++ PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID)); + PolkitQt1::Authority *authority = PolkitQt1::Authority::instance(); + + PolkitResultEventLoop e; + diff --git a/libre/kdelibs/kdelibs.install b/libre/kdelibs/kdelibs.install new file mode 100644 index 000000000..c77e68041 --- /dev/null +++ b/libre/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 +} diff --git a/libre/kdelibs/khtml-fsdg.diff b/libre/kdelibs/khtml-fsdg.diff new file mode 100644 index 000000000..1a531b3c8 --- /dev/null +++ b/libre/kdelibs/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; +- } +- } +- } + } + + diff --git a/libre/kdelibs/pyqt.patch b/libre/kdelibs/pyqt.patch new file mode 100644 index 000000000..eadd2f2ac --- /dev/null +++ b/libre/kdelibs/pyqt.patch @@ -0,0 +1,247 @@ +Make FindPyKDE4 work with PyQt's new build system. +Make FindPyQt4 work with PyQt's new build system. + +Since PyQt 4.10, PyQt.pyqtconfig is deprecated and not available unless +PyQt is built using the old configure script. + +PyKDE4 itself has recently been adjusted to mimic PyQt itself and only +install its pykdeconfig module if pyqtconfig is present. Additionally, +information such as SIP flags and the directory where PyKDE's SIP files +are installed are now also provided in the +PyKDE4.kdecore.PYKDE_CONFIGURATION dict. + +This commit completely rewrites FindPyKDE4.py to make it look like +FindPyQt.cmake after commit a7e4743: most of the information used by +FindPyKDE4.cmake is fetched from PyKDE4.kdecore, and we first try to +obtain the SIP flags and directory from pykdeconfig and, if it fails, we +use PYKDE_CONFIGURATION. + +Furthermore, FindPyKDE4.py now only prints the variables that are +actually consumed by FindPyKDE4.cmake -- it is not possible to obtain +all the data provided by pykdeconfig in PYKDE_CONFIGURATION. We've also +stopped reading and setting PYKDE4_VERSION_TAG, since PyKDE4 stopped +setting a KDE tag in 2008 (and its value was 3_92_0 at the time). + +CCBUG: 327633 +REVIEW: 119454 + +BUG: 337462 +FIXED-IN: 4.14.0 +REVIEW: 119302 +--- kdelibs-4.13.3/cmake/modules/FindPyKDE4.cmake~ 2014-08-06 21:54:27.564432282 +0000 ++++ kdelibs-4.13.3/cmake/modules/FindPyKDE4.cmake 2014-08-06 21:54:43.417702615 +0000 +@@ -25,7 +25,6 @@ + STRING(REGEX REPLACE ".*\npykde_version_str:([^\n]+).*$" "\\1" PYKDE4_VERSION_STR ${pykde_config}) + STRING(REGEX REPLACE ".*\npykde_kde_sip_flags:([^\n]+).*$" "\\1" PYKDE4_SIP_FLAGS ${pykde_config}) + STRING(REGEX REPLACE ".*\npykde_sip_dir:([^\n]+).*$" "\\1" PYKDE4_SIP_DIR ${pykde_config}) +- STRING(REGEX REPLACE ".*\npykde_version_tag:([^\n]+).*$" "\\1" PYKDE4_VERSION_TAG ${pykde_config}) + MESSAGE(STATUS "Found PyKDE4 version ${PYKDE4_VERSION_STR} ${PYKDE4_SIP_DIR}") + + SET(PYKDE4_FOUND TRUE) +@@ -183,3 +182,4 @@ + endif(WIN32) + ENDMACRO(PYKDE4_ADD_EXECUTABLE) + ++ +--- kdelibs-4.13.3/cmake/modules/FindPyKDE4.py~ 2014-08-06 21:54:56.427650960 +0000 ++++ kdelibs-4.13.3/cmake/modules/FindPyKDE4.py 2014-08-06 21:55:04.400952596 +0000 +@@ -1,46 +1,23 @@ +-# By Simon Edwards +-# modified by Paul Giannaros to add better PyKDE4 +-# sip directory finding +-# This file is in the public domain. ++# Copyright (c) 2014, Raphael Kubo da Costa ++# Redistribution and use is allowed according to the terms of the BSD license. ++# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +-import sys +-import os +-import PyKDE4.pykdeconfig +-import PyQt4.pyqtconfig ++import PyKDE4.kdecore + +-if "_pkg_config" in dir(PyKDE4.pykdeconfig): +- _pkg_config = PyKDE4.pykdeconfig._pkg_config ++if __name__ == '__main__': ++ try: ++ import PyKDE4.pykdeconfig ++ pykdecfg = PyKDE4.pykdeconfig.Configuration() ++ sip_dir = pykdecfg.pykde_sip_dir ++ sip_flags = pykdecfg.pykde_kde_sip_flags ++ except ImportError: ++ # PyQt4 >= 4.10.0 was built with configure-ng.py instead of ++ # configure.py, so pyqtconfig.py and pykdeconfig.py are not installed. ++ sip_dir = PyKDE4.kdecore.PYKDE_CONFIGURATION['sip_dir'] ++ sip_flags = PyKDE4.kdecore.PYKDE_CONFIGURATION['sip_flags'] + +- for varname in [ +- 'kde_version', +- 'kde_version_extra', +- 'kdebasedir', +- 'kdeincdir', +- 'kdelibdir', +- 'libdir', +- 'pykde_kde_sip_flags', +- 'pykde_mod_dir', +- 'pykde_modules', +- 'pykde_sip_dir', +- 'pykde_version', +- 'pykde_version_str']: +- varvalue = _pkg_config[varname] +- if varname == 'pykde_sip_dir': +- d = os.path.join(_pkg_config[varname], 'PyKDE4') +- if os.path.exists(d): +- varvalue = d +- print("%s:%s\n" % (varname, varvalue)) +- pykde_version_tag = '' +- in_t = False +- for item in _pkg_config['pykde_kde_sip_flags'].split(): +- if item == "-t": +- in_t = True +- elif in_t: +- if item.startswith("KDE_"): +- pykde_version_tag = item +- else: +- in_t = False +- print("pykde_version_tag:%s" % pykde_version_tag) ++ print('pykde_version:%06.x' % PyKDE4.kdecore.version()) ++ print('pykde_version_str:%s' % PyKDE4.kdecore.versionString()) ++ print('pykde_sip_dir:%s' % sip_dir) ++ print('pykde_sip_flags:%s' % sip_flags) + +-else: +- sys.exit(1) +--- kdelibs-4.13.3/cmake/modules/FindPyQt.py~ 2014-08-06 21:55:55.874081319 +0000 ++++ kdelibs-4.13.3/cmake/modules/FindPyQt.py 2014-08-06 21:56:06.250706848 +0000 +@@ -1,24 +1,49 @@ + # Copyright (c) 2007, Simon Edwards ++# Copyright (c) 2014, Raphael Kubo da Costa + # Redistribution and use is allowed according to the terms of the BSD license. + # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +-import PyQt4.pyqtconfig ++import PyQt4.QtCore ++import os ++import sys + +-pyqtcfg = PyQt4.pyqtconfig.Configuration() +-print("pyqt_version:%06.0x" % pyqtcfg.pyqt_version) +-print("pyqt_version_str:%s" % pyqtcfg.pyqt_version_str) +- +-pyqt_version_tag = "" +-in_t = False +-for item in pyqtcfg.pyqt_sip_flags.split(' '): +- if item=="-t": +- in_t = True +- elif in_t: +- if item.startswith("Qt_4"): +- pyqt_version_tag = item ++def get_default_sip_dir(): ++ # This is based on QScintilla's configure.py, and only works for the ++ # default case where installation paths have not been changed in PyQt's ++ # configuration process. ++ if sys.platform == 'win32': ++ pyqt_sip_dir = os.path.join(sys.prefix, 'sip', 'PyQt4') + else: +- in_t = False +-print("pyqt_version_tag:%s" % pyqt_version_tag) ++ pyqt_sip_dir = os.path.join(sys.prefix, 'share', 'sip', 'PyQt4') ++ return pyqt_sip_dir ++ ++def get_qt4_tag(sip_flags): ++ in_t = False ++ for item in sip_flags.split(' '): ++ if item == '-t': ++ in_t = True ++ elif in_t: ++ if item.startswith('Qt_4'): ++ return item ++ else: ++ in_t = False ++ raise ValueError('Cannot find Qt\'s tag in PyQt4\'s SIP flags.') ++ ++if __name__ == '__main__': ++ try: ++ import PyQt4.pyqtconfig ++ pyqtcfg = PyQt4.pyqtconfig.Configuration() ++ sip_dir = pyqtcfg.pyqt_sip_dir ++ sip_flags = pyqtcfg.pyqt_sip_flags ++ except ImportError: ++ # PyQt4 >= 4.10.0 was built with configure-ng.py instead of ++ # configure.py, so pyqtconfig.py is not installed. ++ sip_dir = get_default_sip_dir() ++ sip_flags = PyQt4.QtCore.PYQT_CONFIGURATION['sip_flags'] ++ ++ print('pyqt_version:%06.x' % PyQt4.QtCore.PYQT_VERSION) ++ print('pyqt_version_str:%s' % PyQt4.QtCore.PYQT_VERSION_STR) ++ print('pyqt_version_tag:%s' % get_qt4_tag(sip_flags)) ++ print('pyqt_sip_dir:%s' % sip_dir) ++ print('pyqt_sip_flags:%s' % sip_flags) + +-print("pyqt_sip_dir:%s" % pyqtcfg.pyqt_sip_dir) +-print("pyqt_sip_flags:%s" % pyqtcfg.pyqt_sip_flags) +--- kdelibs-4.13.3/cmake/modules/FindPyQt4.cmake~ 2014-08-06 21:55:16.697570407 +0000 ++++ kdelibs-4.13.3/cmake/modules/FindPyQt4.cmake 2014-08-06 21:55:38.597483393 +0000 +@@ -9,16 +9,20 @@ + # Find the installed version of PyQt4. FindPyQt4 should only be called after + # Python has been found. + # +-# This file defines the following variables: ++# This file defines the following variables, which can also be overriden by ++# users: + # + # PYQT4_VERSION - The version of PyQt4 found expressed as a 6 digit hex number + # suitable for comparison as a string + # + # PYQT4_VERSION_STR - The version of PyQt4 as a human readable string. + # +-# PYQT4_VERSION_TAG - The PyQt version tag using by PyQt's sip files. ++# PYQT4_VERSION_TAG - The Qt4 version tag used by PyQt's sip files. + # +-# PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. ++# PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files. This can be unset ++# if PyQt4 was built using its new build system and pyqtconfig.py is not ++# present on the system, as in this case its value cannot be determined ++# automatically. + # + # PYQT4_SIP_FLAGS - The SIP flags used to build PyQt. + +@@ -31,13 +35,27 @@ + + EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${_find_pyqt_py} OUTPUT_VARIABLE pyqt_config) + IF(pyqt_config) +- STRING(REGEX REPLACE "^pyqt_version:([^\n]+).*$" "\\1" PYQT4_VERSION ${pyqt_config}) +- STRING(REGEX REPLACE ".*\npyqt_version_str:([^\n]+).*$" "\\1" PYQT4_VERSION_STR ${pyqt_config}) +- STRING(REGEX REPLACE ".*\npyqt_version_tag:([^\n]+).*$" "\\1" PYQT4_VERSION_TAG ${pyqt_config}) +- STRING(REGEX REPLACE ".*\npyqt_sip_dir:([^\n]+).*$" "\\1" PYQT4_SIP_DIR ${pyqt_config}) +- STRING(REGEX REPLACE ".*\npyqt_sip_flags:([^\n]+).*$" "\\1" PYQT4_SIP_FLAGS ${pyqt_config}) ++ STRING(REGEX MATCH "^pyqt_version:([^\n]+).*$" _dummy ${pyqt_config}) ++ SET(PYQT4_VERSION "${CMAKE_MATCH_1}" CACHE STRING "PyQt4's version as a 6-digit hexadecimal number") + +- SET(PYQT4_FOUND TRUE) ++ STRING(REGEX MATCH ".*\npyqt_version_str:([^\n]+).*$" _dummy ${pyqt_config}) ++ SET(PYQT4_VERSION_STR "${CMAKE_MATCH_1}" CACHE STRING "PyQt4's version as a human-readable string") ++ ++ STRING(REGEX MATCH ".*\npyqt_version_tag:([^\n]+).*$" _dummy ${pyqt_config}) ++ SET(PYQT4_VERSION_TAG "${CMAKE_MATCH_1}" CACHE STRING "The Qt4 version tag used by PyQt4's .sip files") ++ ++ STRING(REGEX MATCH ".*\npyqt_sip_dir:([^\n]+).*$" _dummy ${pyqt_config}) ++ SET(PYQT4_SIP_DIR "${CMAKE_MATCH_1}" CACHE PATH "The base directory where PyQt4's .sip files are installed") ++ ++ STRING(REGEX MATCH ".*\npyqt_sip_flags:([^\n]+).*$" _dummy ${pyqt_config}) ++ SET(PYQT4_SIP_FLAGS "${CMAKE_MATCH_1}" CACHE STRING "The SIP flags used to build PyQt4") ++ ++ IF(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") ++ MESSAGE(WARNING "The base directory where PyQt4's SIP files are installed could not be determined. This usually means PyQt4 was built with its new build system and pyqtconfig.py is not present.\n" ++ "Please set the PYQT4_SIP_DIR variable manually.") ++ ELSE(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") ++ SET(PYQT4_FOUND TRUE) ++ ENDIF(NOT IS_DIRECTORY "${PYQT4_SIP_DIR}") + ENDIF(pyqt_config) + + IF(PYQT4_FOUND) +@@ -51,3 +69,4 @@ + ENDIF(PYQT4_FOUND) + + ENDIF(EXISTS PYQT4_VERSION) ++ diff --git a/libre/kdelibs/qt4.patch b/libre/kdelibs/qt4.patch new file mode 100644 index 000000000..bb4312d40 --- /dev/null +++ b/libre/kdelibs/qt4.patch @@ -0,0 +1,11 @@ +--- kdelibs-4.10.1/cmake/modules/FindQt4.cmake~ 2013-03-07 16:57:29.735552097 +0000 ++++ kdelibs-4.10.1/cmake/modules/FindQt4.cmake 2013-03-07 16:57:52.038725421 +0000 +@@ -446,7 +446,7 @@ + # check for qmake + # Debian uses qmake-qt4 + # macports' Qt uses qmake-mac +-FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 qmake-mac PATHS ++FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake4 qmake-qt4 qmake-mac PATHS + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" + "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin" diff --git a/libre/kdenetwork-kopete-libre/PKGBUILD b/libre/kdenetwork-kopete-libre/PKGBUILD deleted file mode 100644 index d003aa80e..000000000 --- a/libre/kdenetwork-kopete-libre/PKGBUILD +++ /dev/null @@ -1,48 +0,0 @@ -# $Id: PKGBUILD 217314 2014-07-18 11:45:55Z svenstaro $ -# Maintainer (Arch): Andrea Scarpino -# Maintainer: André Silva - -_pkgname=kdenetwork-kopete -pkgname=kdenetwork-kopete-libre -pkgver=4.14.0 -pkgrel=1 -pkgdesc='Instant Messenger, without nonfree Skype support' -url='http://kde.org/applications/internet/kopete/' -arch=('i686' 'x86_64' 'mips64el') -license=('GPL' 'LGPL' 'FDL') -groups=('kde' 'kdenetwork') -replaces=($_pkgname) -conflicts=($_pkgname) -provides=($_pkgname=$pkgver) -depends=('kdebase-runtime' 'kdepimlibs' 'qca-ossl' 'libotr' 'libidn' - 'qimageblitz' 'libgadu' 'mediastreamer' 'jsoncpp') -makedepends=('cmake' 'automoc4' 'boost' 'kdepim-libkdepim') -install=${_pkgname}.install -source=("http://download.kde.org/stable/${pkgver}/src/kopete-${pkgver}.tar.xz") -sha1sums=('bd247af3b25650bedcdb983fc285469dcacea964') - -prepare() { - cd kopete-${pkgver} - # Based on http://bzr.trisquel.info/package-helpers/trunk/annotate/head%3A/helpers/natty/make-kdenetwork, revision 34. - rm -rv protocols/skype - sed 's/, Skype//' -i doc/index.docbook - cd .. - mkdir build -} - -build() { - cd build - cmake ../kopete-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_SKIP_RPATH=ON \ - -DWITH_Libmsn=OFF \ - -DWITH_skype=OFF - make -} - -package() { - cd build - make DESTDIR=$pkgdir install -} diff --git a/libre/kdenetwork-kopete-libre/kdenetwork-kopete.install b/libre/kdenetwork-kopete-libre/kdenetwork-kopete.install deleted file mode 100644 index 5495fb1b5..000000000 --- a/libre/kdenetwork-kopete-libre/kdenetwork-kopete.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/kdenetwork-kopete-libre/kdenetwork.install b/libre/kdenetwork-kopete-libre/kdenetwork.install deleted file mode 100644 index e70c054ec..000000000 --- a/libre/kdenetwork-kopete-libre/kdenetwork.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/kdenetwork-kopete/PKGBUILD b/libre/kdenetwork-kopete/PKGBUILD new file mode 100644 index 000000000..eac942b9c --- /dev/null +++ b/libre/kdenetwork-kopete/PKGBUILD @@ -0,0 +1,46 @@ +# $Id: PKGBUILD 217314 2014-07-18 11:45:55Z svenstaro $ +# Maintainer (Arch): Andrea Scarpino +# Maintainer: André Silva + +pkgname=kdenetwork-kopete +pkgver=4.14.0 +pkgrel=1.parabola1 +pkgdesc='Instant Messenger, without nonfree Skype support' +url='http://kde.org/applications/internet/kopete/' +arch=('i686' 'x86_64' 'mips64el') +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdenetwork') +replaces=(${pkgname}-libre) +conflicts=(${pkgname}-libre) +depends=('kdebase-runtime' 'kdepimlibs' 'qca-ossl' 'libotr' 'libidn' + 'qimageblitz' 'libgadu' 'mediastreamer' 'jsoncpp') +makedepends=('cmake' 'automoc4' 'boost' 'kdepim-libkdepim') +install=${pkgname}.install +source=("http://download.kde.org/stable/${pkgver}/src/kopete-${pkgver}.tar.xz") +sha1sums=('bd247af3b25650bedcdb983fc285469dcacea964') + +prepare() { + cd kopete-${pkgver} + # Based on http://bzr.trisquel.info/package-helpers/trunk/annotate/head%3A/helpers/natty/make-kdenetwork, revision 34. + rm -rv protocols/skype + sed 's/, Skype//' -i doc/index.docbook + cd .. + mkdir build +} + +build() { + cd build + cmake ../kopete-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DKDE4_BUILD_TESTS=OFF \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_SKIP_RPATH=ON \ + -DWITH_Libmsn=OFF \ + -DWITH_skype=OFF + make +} + +package() { + cd build + make DESTDIR=$pkgdir install +} diff --git a/libre/kdenetwork-kopete/kdenetwork-kopete.install b/libre/kdenetwork-kopete/kdenetwork-kopete.install new file mode 100644 index 000000000..5495fb1b5 --- /dev/null +++ b/libre/kdenetwork-kopete/kdenetwork-kopete.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/libre/kdenetwork-kopete/kdenetwork.install b/libre/kdenetwork-kopete/kdenetwork.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/libre/kdenetwork-kopete/kdenetwork.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/libre/kdeutils-ark-libre/PKGBUILD b/libre/kdeutils-ark-libre/PKGBUILD deleted file mode 100644 index 303b7b372..000000000 --- a/libre/kdeutils-ark-libre/PKGBUILD +++ /dev/null @@ -1,46 +0,0 @@ -# $Id: PKGBUILD 217366 2014-07-18 11:50:35Z svenstaro $ -# Maintainer (Arch): Andrea Scarpino -# Maintainer: André Silva - -_pkgname=kdeutils-ark -pkgname=kdeutils-ark-libre -pkgver=4.14.0 -pkgrel=1 -pkgdesc='Archiving Tool, with unar support' -url='http://kde.org/applications/utilities/ark/' -arch=('i686' 'x86_64' 'mips64el') -license=('GPL' 'LGPL' 'FDL') -groups=('kde' 'kdeutils') -provides=("kdeutils-ark=$pkgver") -replaces=('kdeutils-ark') -conflicts=('kdeutils-ark') -depends=('kdebase-runtime' 'kdebase-lib' 'libarchive' 'qjson') -makedepends=('cmake' 'automoc4') -optdepends=('p7zip' 'zip' 'unzip' 'unar') -install=${_pkgname}.install -source=("http://download.kde.org/stable/${pkgver}/src/ark-${pkgver}.tar.xz" - 'ark-unar-06.patch') -sha1sums=('fc5d388ccedddfa1e68254b4de00186e93930669' - 'a0a836950f185d9b2245204579f969203036fdec') - -prepare() { - cd "${srcdir}/ark-${pkgver}" - # This patch will allow Ark to use The Unarchiver command line utilities (unar/lsar) to operate on RAR files, particularly RARv3. - patch -Np1 -i "${srcdir}/ark-unar-06.patch" -} - -build() { - cd "${srcdir}" - mkdir build - cd build - cmake ../ark-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr - make -} - -package() { - cd $srcdir/build - make DESTDIR=$pkgdir install -} diff --git a/libre/kdeutils-ark-libre/ark-unar-06.patch b/libre/kdeutils-ark-libre/ark-unar-06.patch deleted file mode 100644 index ab2ef274f..000000000 --- a/libre/kdeutils-ark-libre/ark-unar-06.patch +++ /dev/null @@ -1,236 +0,0 @@ -diff --git a/plugins/cliunarchiverplugin/kerfuffle_cliunarchiver.desktop b/plugins/cliunarchiverplugin/kerfuffle_cliunarchiver.desktop -new file mode 100644 -index 0000000..2b5bd9e ---- /dev/null -+++ b/plugins/cliunarchiverplugin/kerfuffle_cliunarchiver.desktop -@@ -0,0 +1,15 @@ -+[Desktop Entry] -+Type=Service -+X-KDE-ServiceTypes=Kerfuffle/Plugin -+X-KDE-Library=kerfuffle_cliunarchiver -+X-KDE-PluginInfo-Author=Luke Shumaker -+X-KDE-PluginInfo-Email=lukeshu@sbcglobal.net -+X-KDE-PluginInfo-Name= kerfuffle_cliunarchiver -+X-KDE-PluginInfo-Version=0.0.1 -+X-KDE-PluginInfo-Website=http://www.kde.org -+X-KDE-PluginInfo-License=GPLv2+ -+X-KDE-Priority=150 -+X-KDE-Kerfuffle-APIRevision=1 -+X-KDE-Kerfuffle-ReadWrite=false -+Name=The Unarchiver plugin -+MimeType=application/x-rar; -diff --git a/plugins/cliunarchiverplugin/cliplugin.cpp b/plugins/cliunarchiverplugin/cliplugin.cpp -new file mode 100644 -index 0000000..e0adcf7 ---- /dev/null -+++ b/plugins/cliunarchiverplugin/cliplugin.cpp -@@ -0,0 +1,170 @@ -+ /* -+ * ark -- archiver for the KDE project -+ * -+ * Copyright (C) 2011 Luke Shumaker -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version 2 -+ * of the License, or (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -+ * -+ */ -+ -+#include "kerfuffle/cliinterface.h" -+#include "kerfuffle/kerfuffle_export.h" -+ -+#include -+ -+#include -+#include -+#include -+#include -+#include -+ -+using namespace Kerfuffle; -+ -+class CliPlugin: public CliInterface -+{ -+public: -+ explicit CliPlugin(QObject *parent, const QVariantList & args) -+ : CliInterface(parent, args) { -+ m_indentLevel = 0; -+ } -+ -+ virtual ~CliPlugin() { -+ } -+ -+ virtual ParameterList parameterList() const { -+ static ParameterList p; -+ if (p.isEmpty()) { -+ /* Limitations: -+ * 01 - creates an empty file upon entering wrong password -+ * 02 - unar detects if output is being redirected and then does not accept any input -+ */ -+ -+ ///////////////[ COMMON ]///////////// -+ -+ p[CaptureProgress] = false; -+ p[PasswordPromptPattern] = QLatin1String("Password (will not be shown): "); -+ -+ ///////////////[ LIST ]///////////// -+ -+ p[ListProgram] = QLatin1String("lsar"); -+ p[ListArgs] = QStringList() << QLatin1String("-json") << QLatin1String("$Archive"); -+ -+ ///////////////[ EXTRACT ]///////////// -+ -+ p[ExtractProgram] = QLatin1String("unar"); -+ p[ExtractArgs] = QStringList() << QLatin1String("$Archive") << QLatin1String("$Files") << QLatin1String("$PasswordSwitch") << QLatin1String("$RootNodeSwitch"); -+ p[NoTrailingSlashes] = true; -+ p[PasswordSwitch] = QStringList() << QLatin1String("-password") << QLatin1String("$Password"); -+ p[RootNodeSwitch] = QStringList() << QLatin1String("-output-directory") << QLatin1String("$Path"); -+ p[FileExistsExpression] = QLatin1String("^\\\"(.+)\\\" already exists."); -+ p[FileExistsInput] = QStringList() -+ << QLatin1String("o") //overwrite -+ << QLatin1String("s") //skip -+ << QLatin1String("O") //overwrite all -+ << QLatin1String("S") //autoskip -+ << QLatin1String("q") //cancel -+ ; -+ -+ ///////////////[ DELETE ]///////////// -+ -+ p[DeleteProgram] = QLatin1String("x-fakeprogram"); -+ //p[DeleteArgs] = -+ -+ ///////////////[ ADD ]///////////// -+ -+ p[AddProgram] = QLatin1String("x-fakeprogram"); -+ //p[AddArgs] = -+ -+ ///////////////[ ERRORS ]///////////// -+ -+ p[ExtractionFailedPatterns] = QStringList() -+ << QLatin1String("Failed! \\((.+)\\)$") -+ << QLatin1String("Segmentation fault$"); -+ -+ p[WrongPasswordPatterns] = QStringList() -+ << QLatin1String("Failed! \\((.+)\\)$"); -+ } -+ return p; -+ } -+ -+ QString m_entryFilename, m_internalId; -+ ArchiveEntry m_currentEntry; -+ int m_indentLevel; -+ -+ bool readListLine(const QString &line) { -+ /* lsar will give us JSON output. However, we actually parse based on -+ * the indentation. Ugly, I know, but -+ * 1. It's easier -+ * 2. lsar's JSON is invalid JSON, so actual parsers bork. -+ */ -+ -+ int spaces; -+ for(spaces=0;(spacesm_indentLevel) { -+ if (m_newIndentLevel==3) { -+ m_currentEntry.clear(); -+ m_currentEntry[IsDirectory] = false; -+ } -+ } else if (m_newIndentLevel=3) ) { -+ EntryMetaDataType index = IsDirectory; -+ if (m_currentEntry[index].toBool()) { -+ m_currentEntry[FileName].toString().append(QLatin1String("/")); -+ } -+ kDebug() << "Added entry:" << m_currentEntry; -+ entry(m_currentEntry); -+ } -+ } -+ m_indentLevel = m_newIndentLevel; -+ -+ QRegExp rx(QLatin1String("^\\s*\"([^\"]*)\": (.*),$")); -+ if (rx.indexIn(line) >= 0) { -+ QRegExp rx_unquote(QLatin1String("^\"(.*)\"$")); -+ QString key = rx.cap(1); -+ QString value = rx.cap(2); -+ -+ if (false) { -+ } else if (key==QLatin1String("XADFileName")) { -+ rx_unquote.indexIn(value); -+ m_currentEntry[FileName] = m_currentEntry[InternalID] = rx_unquote.cap(1); -+ } else if (key==QLatin1String("XADFileSize")) { -+ m_currentEntry[Size] = value.toInt(); -+ } else if (key==QLatin1String("XADCompressedSize")) { -+ m_currentEntry[CompressedSize] = value.toInt(); -+ } else if (key==QLatin1String("XADLastModificationDate")) { -+ QDateTime ts(QDate::fromString(value, QLatin1String("\"YYYY-MM-DD hh:mm:ss"))); -+ m_currentEntry[Timestamp] = ts; -+ } else if (key==QLatin1String("XADIsDirectory")) { -+ m_currentEntry[IsDirectory] = (value==QLatin1String("1")); -+ } else if (key==QLatin1String("RARCRC32")) { -+ m_currentEntry[CRC] = value.toInt(); -+ } else if (key==QLatin1String("RARCompressionMethod")) { -+ m_currentEntry[Method] = value.toInt(); -+ } else if (key==QLatin1String("Encrypted")) { -+ m_currentEntry[IsPasswordProtected] = (value.toInt() != 0); -+ } -+ // TODO: add RAR version. ([Version]) -+ } -+ -+ return true; -+ } -+}; -+ -+KERFUFFLE_EXPORT_PLUGIN(CliPlugin) -+ -diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt -index 3619412..6368839 100644 ---- a/plugins/CMakeLists.txt -+++ b/plugins/CMakeLists.txt -@@ -20,6 +20,7 @@ if (LIBARCHIVE_FOUND) - endif (LIBARCHIVE_FOUND) - - add_subdirectory( clirarplugin ) -+add_subdirectory( cliunarchiverplugin ) - add_subdirectory( cli7zplugin ) - add_subdirectory( clizipplugin ) - add_subdirectory( libsinglefileplugin ) -diff --git a/plugins/cliunarchiverplugin/CMakeLists.txt b/plugins/cliunarchiverplugin/CMakeLists.txt -new file mode 100644 -index 0000000..ccd52e7 ---- /dev/null -+++ b/plugins/cliunarchiverplugin/CMakeLists.txt -@@ -0,0 +1,21 @@ -+ -+include_directories( -+ ${CMAKE_CURRENT_SOURCE_DIR}/../.. -+ ${CMAKE_CURRENT_BINARY_DIR}/../.. -+ ) -+ -+########### next target ############### -+ -+set(kerfuffle_cliunarchiver_SRCS cliplugin.cpp) -+ -+kde4_add_plugin(kerfuffle_cliunarchiver ${kerfuffle_cliunarchiver_SRCS}) -+ -+target_link_libraries(kerfuffle_cliunarchiver ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} kerfuffle ) -+ -+ -+ -+########### install files ############### -+ -+install(TARGETS kerfuffle_cliunarchiver DESTINATION ${PLUGIN_INSTALL_DIR} ) -+install( FILES kerfuffle_cliunarchiver.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -+ diff --git a/libre/kdeutils-ark-libre/kdeutils-ark.install b/libre/kdeutils-ark-libre/kdeutils-ark.install deleted file mode 100644 index 8a26818d8..000000000 --- a/libre/kdeutils-ark-libre/kdeutils-ark.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - update-desktop-database -q - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - -post_update() { - post_install -} - -post_remove() { - post_install -} diff --git a/libre/kdeutils-ark/PKGBUILD b/libre/kdeutils-ark/PKGBUILD new file mode 100644 index 000000000..4810ac95c --- /dev/null +++ b/libre/kdeutils-ark/PKGBUILD @@ -0,0 +1,44 @@ +# $Id: PKGBUILD 217366 2014-07-18 11:50:35Z svenstaro $ +# Maintainer (Arch): Andrea Scarpino +# Maintainer: André Silva + +pkgname=kdeutils-ark +pkgver=4.14.0 +pkgrel=1.parabola1 +pkgdesc='Archiving Tool, with unar support' +url='http://kde.org/applications/utilities/ark/' +arch=('i686' 'x86_64' 'mips64el') +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdeutils') +replaces=('kdeutils-ark-libre') +conflicts=('kdeutils-ark-libre') +depends=('kdebase-runtime' 'kdebase-lib' 'libarchive' 'qjson') +makedepends=('cmake' 'automoc4') +optdepends=('p7zip' 'zip' 'unzip' 'unar') +install=${pkgname}.install +source=("http://download.kde.org/stable/${pkgver}/src/ark-${pkgver}.tar.xz" + 'ark-unar-06.patch') +sha1sums=('fc5d388ccedddfa1e68254b4de00186e93930669' + 'a0a836950f185d9b2245204579f969203036fdec') + +prepare() { + cd "${srcdir}/ark-${pkgver}" + # This patch will allow Ark to use The Unarchiver command line utilities (unar/lsar) to operate on RAR files, particularly RARv3. + patch -Np1 -i "${srcdir}/ark-unar-06.patch" +} + +build() { + cd "${srcdir}" + mkdir build + cd build + cmake ../ark-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DKDE4_BUILD_TESTS=OFF \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd $srcdir/build + make DESTDIR=$pkgdir install +} diff --git a/libre/kdeutils-ark/ark-unar-06.patch b/libre/kdeutils-ark/ark-unar-06.patch new file mode 100644 index 000000000..ab2ef274f --- /dev/null +++ b/libre/kdeutils-ark/ark-unar-06.patch @@ -0,0 +1,236 @@ +diff --git a/plugins/cliunarchiverplugin/kerfuffle_cliunarchiver.desktop b/plugins/cliunarchiverplugin/kerfuffle_cliunarchiver.desktop +new file mode 100644 +index 0000000..2b5bd9e +--- /dev/null ++++ b/plugins/cliunarchiverplugin/kerfuffle_cliunarchiver.desktop +@@ -0,0 +1,15 @@ ++[Desktop Entry] ++Type=Service ++X-KDE-ServiceTypes=Kerfuffle/Plugin ++X-KDE-Library=kerfuffle_cliunarchiver ++X-KDE-PluginInfo-Author=Luke Shumaker ++X-KDE-PluginInfo-Email=lukeshu@sbcglobal.net ++X-KDE-PluginInfo-Name= kerfuffle_cliunarchiver ++X-KDE-PluginInfo-Version=0.0.1 ++X-KDE-PluginInfo-Website=http://www.kde.org ++X-KDE-PluginInfo-License=GPLv2+ ++X-KDE-Priority=150 ++X-KDE-Kerfuffle-APIRevision=1 ++X-KDE-Kerfuffle-ReadWrite=false ++Name=The Unarchiver plugin ++MimeType=application/x-rar; +diff --git a/plugins/cliunarchiverplugin/cliplugin.cpp b/plugins/cliunarchiverplugin/cliplugin.cpp +new file mode 100644 +index 0000000..e0adcf7 +--- /dev/null ++++ b/plugins/cliunarchiverplugin/cliplugin.cpp +@@ -0,0 +1,170 @@ ++ /* ++ * ark -- archiver for the KDE project ++ * ++ * Copyright (C) 2011 Luke Shumaker ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License ++ * as published by the Free Software Foundation; either version 2 ++ * of the License, or (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ * ++ */ ++ ++#include "kerfuffle/cliinterface.h" ++#include "kerfuffle/kerfuffle_export.h" ++ ++#include ++ ++#include ++#include ++#include ++#include ++#include ++ ++using namespace Kerfuffle; ++ ++class CliPlugin: public CliInterface ++{ ++public: ++ explicit CliPlugin(QObject *parent, const QVariantList & args) ++ : CliInterface(parent, args) { ++ m_indentLevel = 0; ++ } ++ ++ virtual ~CliPlugin() { ++ } ++ ++ virtual ParameterList parameterList() const { ++ static ParameterList p; ++ if (p.isEmpty()) { ++ /* Limitations: ++ * 01 - creates an empty file upon entering wrong password ++ * 02 - unar detects if output is being redirected and then does not accept any input ++ */ ++ ++ ///////////////[ COMMON ]///////////// ++ ++ p[CaptureProgress] = false; ++ p[PasswordPromptPattern] = QLatin1String("Password (will not be shown): "); ++ ++ ///////////////[ LIST ]///////////// ++ ++ p[ListProgram] = QLatin1String("lsar"); ++ p[ListArgs] = QStringList() << QLatin1String("-json") << QLatin1String("$Archive"); ++ ++ ///////////////[ EXTRACT ]///////////// ++ ++ p[ExtractProgram] = QLatin1String("unar"); ++ p[ExtractArgs] = QStringList() << QLatin1String("$Archive") << QLatin1String("$Files") << QLatin1String("$PasswordSwitch") << QLatin1String("$RootNodeSwitch"); ++ p[NoTrailingSlashes] = true; ++ p[PasswordSwitch] = QStringList() << QLatin1String("-password") << QLatin1String("$Password"); ++ p[RootNodeSwitch] = QStringList() << QLatin1String("-output-directory") << QLatin1String("$Path"); ++ p[FileExistsExpression] = QLatin1String("^\\\"(.+)\\\" already exists."); ++ p[FileExistsInput] = QStringList() ++ << QLatin1String("o") //overwrite ++ << QLatin1String("s") //skip ++ << QLatin1String("O") //overwrite all ++ << QLatin1String("S") //autoskip ++ << QLatin1String("q") //cancel ++ ; ++ ++ ///////////////[ DELETE ]///////////// ++ ++ p[DeleteProgram] = QLatin1String("x-fakeprogram"); ++ //p[DeleteArgs] = ++ ++ ///////////////[ ADD ]///////////// ++ ++ p[AddProgram] = QLatin1String("x-fakeprogram"); ++ //p[AddArgs] = ++ ++ ///////////////[ ERRORS ]///////////// ++ ++ p[ExtractionFailedPatterns] = QStringList() ++ << QLatin1String("Failed! \\((.+)\\)$") ++ << QLatin1String("Segmentation fault$"); ++ ++ p[WrongPasswordPatterns] = QStringList() ++ << QLatin1String("Failed! \\((.+)\\)$"); ++ } ++ return p; ++ } ++ ++ QString m_entryFilename, m_internalId; ++ ArchiveEntry m_currentEntry; ++ int m_indentLevel; ++ ++ bool readListLine(const QString &line) { ++ /* lsar will give us JSON output. However, we actually parse based on ++ * the indentation. Ugly, I know, but ++ * 1. It's easier ++ * 2. lsar's JSON is invalid JSON, so actual parsers bork. ++ */ ++ ++ int spaces; ++ for(spaces=0;(spacesm_indentLevel) { ++ if (m_newIndentLevel==3) { ++ m_currentEntry.clear(); ++ m_currentEntry[IsDirectory] = false; ++ } ++ } else if (m_newIndentLevel=3) ) { ++ EntryMetaDataType index = IsDirectory; ++ if (m_currentEntry[index].toBool()) { ++ m_currentEntry[FileName].toString().append(QLatin1String("/")); ++ } ++ kDebug() << "Added entry:" << m_currentEntry; ++ entry(m_currentEntry); ++ } ++ } ++ m_indentLevel = m_newIndentLevel; ++ ++ QRegExp rx(QLatin1String("^\\s*\"([^\"]*)\": (.*),$")); ++ if (rx.indexIn(line) >= 0) { ++ QRegExp rx_unquote(QLatin1String("^\"(.*)\"$")); ++ QString key = rx.cap(1); ++ QString value = rx.cap(2); ++ ++ if (false) { ++ } else if (key==QLatin1String("XADFileName")) { ++ rx_unquote.indexIn(value); ++ m_currentEntry[FileName] = m_currentEntry[InternalID] = rx_unquote.cap(1); ++ } else if (key==QLatin1String("XADFileSize")) { ++ m_currentEntry[Size] = value.toInt(); ++ } else if (key==QLatin1String("XADCompressedSize")) { ++ m_currentEntry[CompressedSize] = value.toInt(); ++ } else if (key==QLatin1String("XADLastModificationDate")) { ++ QDateTime ts(QDate::fromString(value, QLatin1String("\"YYYY-MM-DD hh:mm:ss"))); ++ m_currentEntry[Timestamp] = ts; ++ } else if (key==QLatin1String("XADIsDirectory")) { ++ m_currentEntry[IsDirectory] = (value==QLatin1String("1")); ++ } else if (key==QLatin1String("RARCRC32")) { ++ m_currentEntry[CRC] = value.toInt(); ++ } else if (key==QLatin1String("RARCompressionMethod")) { ++ m_currentEntry[Method] = value.toInt(); ++ } else if (key==QLatin1String("Encrypted")) { ++ m_currentEntry[IsPasswordProtected] = (value.toInt() != 0); ++ } ++ // TODO: add RAR version. ([Version]) ++ } ++ ++ return true; ++ } ++}; ++ ++KERFUFFLE_EXPORT_PLUGIN(CliPlugin) ++ +diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt +index 3619412..6368839 100644 +--- a/plugins/CMakeLists.txt ++++ b/plugins/CMakeLists.txt +@@ -20,6 +20,7 @@ if (LIBARCHIVE_FOUND) + endif (LIBARCHIVE_FOUND) + + add_subdirectory( clirarplugin ) ++add_subdirectory( cliunarchiverplugin ) + add_subdirectory( cli7zplugin ) + add_subdirectory( clizipplugin ) + add_subdirectory( libsinglefileplugin ) +diff --git a/plugins/cliunarchiverplugin/CMakeLists.txt b/plugins/cliunarchiverplugin/CMakeLists.txt +new file mode 100644 +index 0000000..ccd52e7 +--- /dev/null ++++ b/plugins/cliunarchiverplugin/CMakeLists.txt +@@ -0,0 +1,21 @@ ++ ++include_directories( ++ ${CMAKE_CURRENT_SOURCE_DIR}/../.. ++ ${CMAKE_CURRENT_BINARY_DIR}/../.. ++ ) ++ ++########### next target ############### ++ ++set(kerfuffle_cliunarchiver_SRCS cliplugin.cpp) ++ ++kde4_add_plugin(kerfuffle_cliunarchiver ${kerfuffle_cliunarchiver_SRCS}) ++ ++target_link_libraries(kerfuffle_cliunarchiver ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} kerfuffle ) ++ ++ ++ ++########### install files ############### ++ ++install(TARGETS kerfuffle_cliunarchiver DESTINATION ${PLUGIN_INSTALL_DIR} ) ++install( FILES kerfuffle_cliunarchiver.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) ++ diff --git a/libre/kdeutils-ark/kdeutils-ark.install b/libre/kdeutils-ark/kdeutils-ark.install new file mode 100644 index 000000000..8a26818d8 --- /dev/null +++ b/libre/kdeutils-ark/kdeutils-ark.install @@ -0,0 +1,12 @@ +post_install() { + update-desktop-database -q + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_update() { + post_install +} + +post_remove() { + post_install +} diff --git a/nonprism/kde-meta-nonprism/PKGBUILD b/nonprism/kde-meta-nonprism/PKGBUILD deleted file mode 100644 index 71ae7d6c6..000000000 --- a/nonprism/kde-meta-nonprism/PKGBUILD +++ /dev/null @@ -1,115 +0,0 @@ -# $Id: PKGBUILD 208325 2014-03-21 13:57:48Z andrea $ -# Contributor (Arch): Andrea Scarpino -# Contributor (Arch): Pierre Schmitz -# Maintainer: André Silva - -pkgbase=kde-meta -pkgname=('kde-meta-kdepim-nonprism' - 'kde-meta-kdeplasma-addons-nonprism') -pkgver=4.13 -pkgrel=3.1 -arch=('any') -url='http://parabolagnulinux.org/' -license=('GPL') -groups=('kde-meta') - -package_kde-meta-kdepim-nonprism() { - pkgdesc=('Meta package for kdepim, with nonprism packages included and kdepim-blogilo removed') - depends=('kdepim-akonadiconsole-nonprism' - 'kdepim-akregator' - 'kdepim-console' - 'kdepim-kaddressbook-nonprism' - 'kdepim-kalarm' - 'kdepim-kjots-nonprism' - 'kdepim-kleopatra' - 'kdepim-kmail-nonprism' - 'kdepim-knode-nonprism' - 'kdepim-knotes-nonprism' - 'kdepim-kontact' - 'kdepim-korganizer-nonprism' - 'kdepim-kresources' - 'kdepim-ktimetracker' - 'kdepim-ktnef') - replaces=('kdepim' 'kde-meta-kdepim') - conflicts=('kdepim' 'kde-meta-kdepim') - provides=(kde-meta-kdepim=$pkgver) -} - -package_kde-meta-kdeplasma-addons-nonprism() { - pkgdesc=('Meta package for kdeplasma-addons, without kdeplasma-addons-runners-translator') - depends=('kdeplasma-addons-applets-bball' - 'kdeplasma-addons-applets-binary-clock' - 'kdeplasma-addons-applets-blackboard' - 'kdeplasma-addons-applets-bookmarks' - 'kdeplasma-addons-applets-bubblemon' - 'kdeplasma-addons-applets-calculator' - 'kdeplasma-addons-applets-charselect' - 'kdeplasma-addons-applets-comic' - 'kdeplasma-addons-applets-community' - 'kdeplasma-addons-applets-dict' - 'kdeplasma-addons-applets-eyes' - 'kdeplasma-addons-applets-fifteenpuzzle' - 'kdeplasma-addons-applets-filewatcher' - 'kdeplasma-addons-applets-frame' - 'kdeplasma-addons-applets-fuzzy-clock' - 'kdeplasma-addons-applets-icontasks' - 'kdeplasma-addons-applets-incomingmsg' - 'kdeplasma-addons-applets-kimpanel' - 'kdeplasma-addons-applets-knowledgebase' - 'kdeplasma-addons-applets-kolourpicker' - 'kdeplasma-addons-applets-konqprofiles' - 'kdeplasma-addons-applets-konsoleprofiles' - 'kdeplasma-addons-applets-lancelot' - 'kdeplasma-addons-applets-leavenote' - 'kdeplasma-addons-applets-life' - 'kdeplasma-addons-applets-luna' - 'kdeplasma-addons-applets-magnifique' - 'kdeplasma-addons-applets-mediaplayer' - 'kdeplasma-addons-applets-microblog' - 'kdeplasma-addons-applets-news' - 'kdeplasma-addons-applets-notes' - 'kdeplasma-addons-applets-nowplaying' - 'kdeplasma-addons-applets-paste' - 'kdeplasma-addons-applets-pastebin' - 'kdeplasma-addons-applets-plasmaboard' - 'kdeplasma-addons-applets-previewer' - 'kdeplasma-addons-applets-qalculate' - 'kdeplasma-addons-applets-rememberthemilk' - 'kdeplasma-addons-applets-rssnow' - 'kdeplasma-addons-applets-showdashboard' - 'kdeplasma-addons-applets-showdesktop' - 'kdeplasma-addons-applets-social-news' - 'kdeplasma-addons-applets-spellcheck' - 'kdeplasma-addons-applets-systemloadviewer' - 'kdeplasma-addons-applets-timer' - 'kdeplasma-addons-applets-unitconverter' - 'kdeplasma-addons-applets-weather' - 'kdeplasma-addons-applets-weatherstation' - 'kdeplasma-addons-applets-webslice' - 'kdeplasma-addons-containments' - 'kdeplasma-addons-runners-audioplayercontrol' - 'kdeplasma-addons-runners-browserhistory' - 'kdeplasma-addons-runners-characters' - 'kdeplasma-addons-runners-contacts' - 'kdeplasma-addons-runners-converter' - 'kdeplasma-addons-runners-datetime' - 'kdeplasma-addons-runners-dictionary' - 'kdeplasma-addons-runners-events' - 'kdeplasma-addons-runners-katesessions' - 'kdeplasma-addons-runners-konquerorsessions' - 'kdeplasma-addons-runners-konsolesessions' - 'kdeplasma-addons-runners-kopete' - 'kdeplasma-addons-runners-mediawiki' - 'kdeplasma-addons-runners-spellchecker' - 'kdeplasma-addons-runners-youtube' - 'kdeplasma-addons-wallpapers-mandelbrot' - 'kdeplasma-addons-wallpapers-marble' - 'kdeplasma-addons-wallpapers-pattern' - 'kdeplasma-addons-wallpapers-potd' - 'kdeplasma-addons-wallpapers-qmlwallpapers' - 'kdeplasma-addons-wallpapers-virus' - 'kdeplasma-addons-wallpapers-weather') - replaces=('kdeplasma-addons' 'kde-meta-kdeplasma-addons') - conflicts=('kdeplasma-addons' 'kde-meta-kdeplasma-addons') - provides=(kde-meta-kdeplasma-addons=$pkgver) -} diff --git a/nonprism/kde-meta/PKGBUILD b/nonprism/kde-meta/PKGBUILD new file mode 100644 index 000000000..96419a7cb --- /dev/null +++ b/nonprism/kde-meta/PKGBUILD @@ -0,0 +1,113 @@ +# $Id: PKGBUILD 208325 2014-03-21 13:57:48Z andrea $ +# Contributor (Arch): Andrea Scarpino +# Contributor (Arch): Pierre Schmitz +# Maintainer: André Silva + +pkgbase=kde-meta +pkgname=('kde-meta-kdepim' + 'kde-meta-kdeplasma-addons') +pkgver=4.13 +pkgrel=3.nonprism1 +arch=('any') +url='http://parabolagnulinux.org/' +license=('GPL') +groups=('kde-meta') + +package_kde-meta-kdepim() { + pkgdesc=('Meta package for kdepim, without kdepim-blogilo') + depends=('kdepim-akonadiconsole' + 'kdepim-akregator' + 'kdepim-console' + 'kdepim-kaddressbook' + 'kdepim-kalarm' + 'kdepim-kjots' + 'kdepim-kleopatra' + 'kdepim-kmail' + 'kdepim-knode' + 'kdepim-knotes' + 'kdepim-kontact' + 'kdepim-korganizer' + 'kdepim-kresources' + 'kdepim-ktimetracker' + 'kdepim-ktnef') + replaces=('kdepim' 'kde-meta-kdepim-nonprism') + conflicts=('kdepim' 'kde-meta-kdepim-nonprism') +} + +package_kde-meta-kdeplasma-addons() { + pkgdesc=('Meta package for kdeplasma-addons, without kdeplasma-addons-runners-translator') + depends=('kdeplasma-addons-applets-bball' + 'kdeplasma-addons-applets-binary-clock' + 'kdeplasma-addons-applets-blackboard' + 'kdeplasma-addons-applets-bookmarks' + 'kdeplasma-addons-applets-bubblemon' + 'kdeplasma-addons-applets-calculator' + 'kdeplasma-addons-applets-charselect' + 'kdeplasma-addons-applets-comic' + 'kdeplasma-addons-applets-community' + 'kdeplasma-addons-applets-dict' + 'kdeplasma-addons-applets-eyes' + 'kdeplasma-addons-applets-fifteenpuzzle' + 'kdeplasma-addons-applets-filewatcher' + 'kdeplasma-addons-applets-frame' + 'kdeplasma-addons-applets-fuzzy-clock' + 'kdeplasma-addons-applets-icontasks' + 'kdeplasma-addons-applets-incomingmsg' + 'kdeplasma-addons-applets-kimpanel' + 'kdeplasma-addons-applets-knowledgebase' + 'kdeplasma-addons-applets-kolourpicker' + 'kdeplasma-addons-applets-konqprofiles' + 'kdeplasma-addons-applets-konsoleprofiles' + 'kdeplasma-addons-applets-lancelot' + 'kdeplasma-addons-applets-leavenote' + 'kdeplasma-addons-applets-life' + 'kdeplasma-addons-applets-luna' + 'kdeplasma-addons-applets-magnifique' + 'kdeplasma-addons-applets-mediaplayer' + 'kdeplasma-addons-applets-microblog' + 'kdeplasma-addons-applets-news' + 'kdeplasma-addons-applets-notes' + 'kdeplasma-addons-applets-nowplaying' + 'kdeplasma-addons-applets-paste' + 'kdeplasma-addons-applets-pastebin' + 'kdeplasma-addons-applets-plasmaboard' + 'kdeplasma-addons-applets-previewer' + 'kdeplasma-addons-applets-qalculate' + 'kdeplasma-addons-applets-rememberthemilk' + 'kdeplasma-addons-applets-rssnow' + 'kdeplasma-addons-applets-showdashboard' + 'kdeplasma-addons-applets-showdesktop' + 'kdeplasma-addons-applets-social-news' + 'kdeplasma-addons-applets-spellcheck' + 'kdeplasma-addons-applets-systemloadviewer' + 'kdeplasma-addons-applets-timer' + 'kdeplasma-addons-applets-unitconverter' + 'kdeplasma-addons-applets-weather' + 'kdeplasma-addons-applets-weatherstation' + 'kdeplasma-addons-applets-webslice' + 'kdeplasma-addons-containments' + 'kdeplasma-addons-runners-audioplayercontrol' + 'kdeplasma-addons-runners-browserhistory' + 'kdeplasma-addons-runners-characters' + 'kdeplasma-addons-runners-contacts' + 'kdeplasma-addons-runners-converter' + 'kdeplasma-addons-runners-datetime' + 'kdeplasma-addons-runners-dictionary' + 'kdeplasma-addons-runners-events' + 'kdeplasma-addons-runners-katesessions' + 'kdeplasma-addons-runners-konquerorsessions' + 'kdeplasma-addons-runners-konsolesessions' + 'kdeplasma-addons-runners-kopete' + 'kdeplasma-addons-runners-mediawiki' + 'kdeplasma-addons-runners-spellchecker' + 'kdeplasma-addons-runners-youtube' + 'kdeplasma-addons-wallpapers-mandelbrot' + 'kdeplasma-addons-wallpapers-marble' + 'kdeplasma-addons-wallpapers-pattern' + 'kdeplasma-addons-wallpapers-potd' + 'kdeplasma-addons-wallpapers-qmlwallpapers' + 'kdeplasma-addons-wallpapers-virus' + 'kdeplasma-addons-wallpapers-weather') + replaces=('kdeplasma-addons' 'kde-meta-kdeplasma-addons-nonprism') + conflicts=('kdeplasma-addons' 'kde-meta-kdeplasma-addons-nonprism') +} diff --git a/nonprism/kdenetwork-kopete-libre-nonprism/PKGBUILD b/nonprism/kdenetwork-kopete-libre-nonprism/PKGBUILD deleted file mode 100644 index 60af2de58..000000000 --- a/nonprism/kdenetwork-kopete-libre-nonprism/PKGBUILD +++ /dev/null @@ -1,68 +0,0 @@ -# $Id: PKGBUILD 217314 2014-07-18 11:45:55Z svenstaro $ -# Maintainer (Arch): Andrea Scarpino -# Maintainer: André Silva - -_pkgname=kdenetwork-kopete -pkgname=kdenetwork-kopete-libre-nonprism -pkgver=4.14.0 -pkgrel=1 -pkgdesc='Instant Messenger, without nonfree Skype support and support for unsafe and dangerous for privacy protocols' -url='http://kde.org/applications/internet/kopete/' -arch=('i686' 'x86_64' 'mips64el') -license=('GPL' 'LGPL' 'FDL') -groups=('kde' 'kdenetwork') -replaces=($_pkgname) -conflicts=($_pkgname) -provides=($_pkgname=$pkgver) -depends=('kdebase-runtime' 'kdepimlibs' 'qca-ossl' 'libotr' 'libidn' - 'qimageblitz' 'mediastreamer' 'jsoncpp') -makedepends=('cmake' 'automoc4' 'boost' 'kdepim-libkdepim') -install=${_pkgname}.install -source=("http://download.kde.org/stable/${pkgver}/src/kopete-${pkgver}.tar.xz" - 'libre-nonprism.patch') -sha1sums=('bd247af3b25650bedcdb983fc285469dcacea964' - 'ddde6ed0b6f281512dc12cb80f712f33c6932c92') - -prepare() { - cd kopete-${pkgver} - # Based on http://bzr.trisquel.info/package-helpers/trunk/annotate/head%3A/helpers/natty/make-kdenetwork, revision 34. - rm -rv protocols/skype - # remove unsafe/dangerous services - rm -rv protocols/oscar - rm -rv protocols/yahoo - rm -rv protocols/qq - rm -rv protocols/groupwise - rm -rv protocols/gadu - rm -rv protocols/wlm - rm -rv protocols/meanwhile - patch -p1 -i "${srcdir}"/libre-nonprism.patch - cd .. - mkdir build -} - -build() { - cd build - cmake ../kopete-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_SKIP_RPATH=ON \ - -DWITH_Libmsn=OFF \ - -DWITH_Libgadu=OFF \ - -DWITH_skype=OFF \ - -DWITH_oscar=OFF \ - -DWITH_yahoo=OFF \ - -DWITH_qq=OFF \ - -DWITH_groupwise=OFF \ - -DWITH_gadu=OFF \ - -DWITH_GOOGLETALK=OFF \ - -DWITH_wlm=OFF \ - -DWITH_WLM_MEDIASTREAMER=OFF \ - -DWITH_meanwhile=OFF - make -} - -package() { - cd build - make DESTDIR=$pkgdir install -} diff --git a/nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork-kopete.install b/nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork-kopete.install deleted file mode 100644 index 5495fb1b5..000000000 --- a/nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork-kopete.install +++ /dev/null @@ -1,12 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null - update-desktop-database -q -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork.install b/nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork.install deleted file mode 100644 index e70c054ec..000000000 --- a/nonprism/kdenetwork-kopete-libre-nonprism/kdenetwork.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/nonprism/kdenetwork-kopete-libre-nonprism/libre-nonprism.patch b/nonprism/kdenetwork-kopete-libre-nonprism/libre-nonprism.patch deleted file mode 100644 index 6d73766cc..000000000 --- a/nonprism/kdenetwork-kopete-libre-nonprism/libre-nonprism.patch +++ /dev/null @@ -1,110 +0,0 @@ -diff --git a/doc/index.docbook b/doc/index.docbook -index b55fd88..416de49 100644 ---- a/doc/index.docbook -+++ b/doc/index.docbook -@@ -24,7 +24,6 @@ - - - -- - ]> - --latest features."> -- --Choose from thousands of add-ons."> -- --Know your rights…"> -- - - - -diff -Nur mozilla-release.orig/browser/locales/en-US/chrome/browser-region/region.properties mozilla-release/browser/locales/en-US/chrome/browser-region/region.properties ---- mozilla-release.orig/browser/locales/en-US/chrome/browser-region/region.properties 2014-07-16 22:45:07.000000000 -0300 -+++ mozilla-release/browser/locales/en-US/chrome/browser-region/region.properties 2014-07-23 13:32:03.204266405 -0300 -@@ -3,17 +3,12 @@ - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - - # Default search engine --browser.search.defaultenginename=Google -+browser.search.defaultenginename=DuckDuckGo HTML - - # Search engine order (order displayed in the search bar dropdown)s --browser.search.order.1=Google --browser.search.order.2=Yahoo --browser.search.order.3=Bing -- --# This is the default set of web based feed handlers shown in the reader --# selection UI --browser.contentHandlers.types.0.title=My Yahoo! --browser.contentHandlers.types.0.uri=https://add.my.yahoo.com/rss?url=%s -+browser.search.order.1=DuckDuckGo HTML -+browser.search.order.2=DuckDuckGo Lite -+browser.search.order.3=Seeks Search - - # increment this number when anything gets changed in the list below. This will - # cause Firefox to re-read these prefs and inject any new handlers into the -@@ -22,20 +17,10 @@ - # don't make any spelling errors here. - gecko.handlerService.defaultHandlersVersion=4 - --# The default set of protocol handlers for webcal: --gecko.handlerService.schemes.webcal.0.name=30 Boxes --gecko.handlerService.schemes.webcal.0.uriTemplate=https://30boxes.com/external/widget?refer=ff&url=%s -- --# The default set of protocol handlers for mailto: --gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail --gecko.handlerService.schemes.mailto.0.uriTemplate=https://compose.mail.yahoo.com/?To=%s --gecko.handlerService.schemes.mailto.1.name=Gmail --gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s -- - # The default set of protocol handlers for irc: --gecko.handlerService.schemes.irc.0.name=Mibbit --gecko.handlerService.schemes.irc.0.uriTemplate=https://www.mibbit.com/?url=%s -+gecko.handlerService.schemes.irc.0.name=Freenode Web IRC -+gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net - - # The default set of protocol handlers for ircs: --gecko.handlerService.schemes.ircs.0.name=Mibbit --gecko.handlerService.schemes.ircs.0.uriTemplate=https://www.mibbit.com/?url=%s -+gecko.handlerService.schemes.ircs.0.name=Freenode Web IRC -+gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net -diff -Nur mozilla-release.orig/browser/locales/generic/profile/bookmarks.html.in mozilla-release/browser/locales/generic/profile/bookmarks.html.in ---- mozilla-release.orig/browser/locales/generic/profile/bookmarks.html.in 2014-06-05 22:15:18.000000000 -0300 -+++ mozilla-release/browser/locales/generic/profile/bookmarks.html.in 2014-06-11 23:51:17.869465669 -0300 -@@ -15,13 +15,20 @@ -

@bookmarks_toolbarfolder@

-
@bookmarks_toolbarfolder_description@ -

--

@getting_started@ -+
Parabola GNU/Linux-libre -

--

@firefox_heading@

-+

Parabola GNU/Linux-libre

-

--

@firefox_help@ --
@firefox_customize@ --
@firefox_community@ --
@firefox_about@ -+
Parabola GNU/Linux-libre -+
Parabola GNU/Linux-libre Packages -+
Parabola GNU/Linux-libre Wiki -+
Parabola GNU/Linux-libre Labs -+

-+

Free Software Foundation

-+

-+

Free Software Foundation -+
LibrePlanet -+
Free addons -+
h-node -

-

-diff -Nur mozilla-release.orig/browser/modules/AboutHome.jsm mozilla-release/browser/modules/AboutHome.jsm ---- mozilla-release.orig/browser/modules/AboutHome.jsm 2014-06-05 22:15:18.000000000 -0300 -+++ mozilla-release/browser/modules/AboutHome.jsm 2014-06-11 23:51:17.926132826 -0300 -@@ -8,7 +8,7 @@ - let Ci = Components.interfaces; - let Cu = Components.utils; - --this.EXPORTED_SYMBOLS = [ "AboutHomeUtils", "AboutHome" ]; -+this.EXPORTED_SYMBOLS = [ "AboutHome" ]; - - Components.utils.import("resource://gre/modules/XPCOMUtils.jsm"); - Components.utils.import("resource://gre/modules/Services.jsm"); -@@ -18,66 +18,6 @@ - XPCOMUtils.defineLazyModuleGetter(this, "fxAccounts", - "resource://gre/modules/FxAccounts.jsm"); - --// Url to fetch snippets, in the urlFormatter service format. --const SNIPPETS_URL_PREF = "browser.aboutHomeSnippets.updateUrl"; -- --// Should be bumped up if the snippets content format changes. --const STARTPAGE_VERSION = 4; -- --this.AboutHomeUtils = { -- get snippetsVersion() STARTPAGE_VERSION, -- -- /* -- * showKnowYourRights - Determines if the user should be shown the -- * about:rights notification. The notification should *not* be shown if -- * we've already shown the current version, or if the override pref says to -- * never show it. The notification *should* be shown if it's never been seen -- * before, if a newer version is available, or if the override pref says to -- * always show it. -- */ -- get showKnowYourRights() { -- // Look for an unconditional override pref. If set, do what it says. -- // (true --> never show, false --> always show) -- try { -- return !Services.prefs.getBoolPref("browser.rights.override"); -- } catch (e) { } -- // Ditto, for the legacy EULA pref. -- try { -- return !Services.prefs.getBoolPref("browser.EULA.override"); -- } catch (e) { } -- --#ifndef MOZILLA_OFFICIAL -- // Non-official builds shouldn't show the notification. -- return false; --#endif -- -- // Look to see if the user has seen the current version or not. -- var currentVersion = Services.prefs.getIntPref("browser.rights.version"); -- try { -- return !Services.prefs.getBoolPref("browser.rights." + currentVersion + ".shown"); -- } catch (e) { } -- -- // Legacy: If the user accepted a EULA, we won't annoy them with the -- // equivalent about:rights page until the version changes. -- try { -- return !Services.prefs.getBoolPref("browser.EULA." + currentVersion + ".accepted"); -- } catch (e) { } -- -- // We haven't shown the notification before, so do so now. -- return true; -- } --}; -- --/** -- * Returns the URL to fetch snippets from, in the urlFormatter service format. -- */ --XPCOMUtils.defineLazyGetter(AboutHomeUtils, "snippetsURL", function() { -- let updateURL = Services.prefs -- .getCharPref(SNIPPETS_URL_PREF) -- .replace("%STARTPAGE_VERSION%", STARTPAGE_VERSION); -- return Services.urlFormatter.formatURL(updateURL); --}); -- - /** - * This code provides services to the about:home page. Whenever - * about:home needs to do something chrome-privileged, it sends a -@@ -202,18 +142,9 @@ - ss.promiseInitialized.then(function() { - let data = { - showRestoreLastSession: ss.canRestoreLastSession, -- snippetsURL: AboutHomeUtils.snippetsURL, -- showKnowYourRights: AboutHomeUtils.showKnowYourRights, -- snippetsVersion: AboutHomeUtils.snippetsVersion, - defaultEngineName: Services.search.defaultEngine.name - }; - -- if (AboutHomeUtils.showKnowYourRights) { -- // Set pref to indicate we've shown the notification. -- let currentVersion = Services.prefs.getIntPref("browser.rights.version"); -- Services.prefs.setBoolPref("browser.rights." + currentVersion + ".shown", true); -- } -- - if (target) { - target.messageManager.sendAsyncMessage("AboutHome:Update", data); - } else { diff --git a/libre/iceweasel-libre/mozconfig b/libre/iceweasel-libre/mozconfig deleted file mode 100644 index 37ad56fda..000000000 --- a/libre/iceweasel-libre/mozconfig +++ /dev/null @@ -1,40 +0,0 @@ -. $topsrcdir/browser/config/mozconfig - -ac_add_options --prefix=/usr -ac_add_options --libdir=/usr/lib - -# Iceweasel -ac_add_options --disable-official-branding -ac_add_options --with-branding=debian/branding - -# System libraries -ac_add_options --with-system-nspr -ac_add_options --with-system-nss -ac_add_options --with-system-jpeg -ac_add_options --with-system-zlib -ac_add_options --with-system-bz2 -ac_add_options --with-system-png -ac_add_options --with-system-libevent -ac_add_options --with-system-libvpx -ac_add_options --with-system-icu -ac_add_options --enable-system-hunspell -ac_add_options --enable-system-sqlite -ac_add_options --enable-system-ffi -#ac_add_options --enable-system-cairo -ac_add_options --enable-system-pixman - -# Features -ac_add_options --enable-startup-notification -ac_add_options --enable-pulseaudio -ac_add_options --enable-gstreamer=1.0 - -ac_add_options --disable-crashreporter -ac_add_options --disable-updater -ac_add_options --disable-installer -ac_add_options --disable-debug-symbols - -# Parabola features -ac_add_options --disable-safe-browsing - -# Other -mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/moz-objdir diff --git a/libre/iceweasel-libre/mozconfig.pgo b/libre/iceweasel-libre/mozconfig.pgo deleted file mode 100644 index 71ba205a4..000000000 --- a/libre/iceweasel-libre/mozconfig.pgo +++ /dev/null @@ -1,3 +0,0 @@ - -# PGO -mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 $(MAKE) -C $(MOZ_OBJDIR) pgo-profile-run' diff --git a/libre/iceweasel-libre/vendor.js b/libre/iceweasel-libre/vendor.js deleted file mode 100644 index da8118138..000000000 --- a/libre/iceweasel-libre/vendor.js +++ /dev/null @@ -1,25 +0,0 @@ -// Use LANG environment variable to choose locale -pref("intl.locale.matchOS", true); - -// Disable default browser checking. -pref("browser.shell.checkDefaultBrowser", false); - -// Don't disable our bundled extensions in the application directory -pref("extensions.autoDisableScopes", 11); -pref("extensions.shownSelectionUI", true); - -// Disable Social API -pref("social.remote-install.enabled", false); - -// Make sure that safebrowsing is disabled -pref("browser.safebrowsing.enabled", false); -pref("browser.safebrowsing.malware.enabled", false); - -// Disable localstorage for privacy reasons. -pref("dom.storage.enabled", false); - -// Disable missing nonfree flash notification -pref("plugins.notifyMissingFlash", false); - -// Disable "alt" as a shortcut key to open full menu bar. Conflicts with "alt" as a modifier -pref("ui.key.menuAccessKeyFocuses", false); diff --git a/libre/iceweasel/PKGBUILD b/libre/iceweasel/PKGBUILD new file mode 100644 index 000000000..122e6138e --- /dev/null +++ b/libre/iceweasel/PKGBUILD @@ -0,0 +1,225 @@ +# Maintainer: André Silva +# Contributor: Márcio Silva +# Contributor (ConnochaetOS): Henry Jensen +# Contributor: Luke Shumaker +# Contributor: fauno +# Contributor: vando +# Contributor (Arch): Jakub Schmidtke +# Contributor: Figue +# Thank you very much to the older contributors: +# Contributor: evr +# Contributor: Muhammad 'MJ' Jassim + +_pgo=true + +# We're getting this from Debian Sid +_debname=iceweasel +_debver=31.0 +_debrel=deb3 +_debrepo=http://ftp.debian.org/debian/pool/main/ +debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; } + +pkgname=iceweasel +epoch=1 +pkgver=$_debver.$_debrel +pkgrel=1 + +pkgdesc="A libre version of Debian Iceweasel, the standalone web browser based on Mozilla Firefox." +arch=(i686 x86_64 mips64el) +license=(MPL GPL LGPL) +depends=(alsa-lib dbus-glib desktop-file-utils gtk2 hicolor-icon-theme hunspell icu libevent libnotify libvpx libxt mime-types mozilla-common mozilla-searchplugins nss sqlite startup-notification) +makedepends=(autoconf2.13 diffutils gst-plugins-base-libs imagemagick imake inetutils libidl2 libpulse librsvg libxslt mesa pkg-config python2 quilt unzip zip) +[ "$CARCH" != "mips64el" ] && makedepends+=('yasm') +options=(!emptydirs !makeflags debug) +if $_pgo; then + makedepends+=(xorg-server-xvfb) + options+=(!ccache) +fi +optdepends=('networkmanager: Location detection via available WiFi networks' + 'gst-plugins-good: h.264 video' + 'gst-libav: h.264 video') +url="http://packages.debian.org/sid/${pkgname}" +install=iceweasel.install +replaces=('firefox' "${pkgname}-libre") +conflicts=('firefox' "${pkgname}-libre") +provides=('firefox') +source=("$_debrepo/`debfile $_debname`_$_debver.orig.tar.bz2" + "$_debrepo/`debfile $_debname`_$_debver-${_debrel#deb}.debian.tar.xz" + mozconfig + mozconfig.pgo + libre.patch + gnu_headshadow.png + iceweasel.desktop + iceweasel-install-dir.patch + vendor.js + iceweasel-20.0.1-fixed-loading-icon.png) +md5sums=('52fc839ddc92223023d98c600075cd9e' + '11f646159f802ac0bdb4900d9953e9f6' + '2f5cb3df42b09fbfeaee5e72e5433ab9' + 'df08eaa1ac3bc6c2356be4fbf8ec8932' + '038ce8cedafb790041fb9842ad0f21f4' + 'b03a979a78484503ba8dddad4f2c96d1' + '7b9e5996dd9fe0b186a43a297db1c6b5' + '1c42509891cf6843660a5f3c69896e80' + 'd6d1d8fa09082766ba8df2ca4b898cba' + '6e335a517c68488941340ee1c23f97b0') + +prepare() { + export DEBIAN_BUILD="mozilla-release" + + export QUILT_PATCHES=debian/patches + export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index' + export QUILT_DIFF_ARGS='--no-timestamps' + + mv debian "$srcdir/$DEBIAN_BUILD" + cd "$srcdir/$DEBIAN_BUILD" + + # Doesn't apply and seems unimportant + rm -v debian/patches/l10n/Place-google-and-gmail-before-yandex.patch || true + + quilt push -av + + # Put gnu_headshadow.png on the source code + install -m644 "$srcdir/gnu_headshadow.png" \ + browser/base/content/abouthome + + # Install to /usr/lib/iceweasel + patch -Np1 -i "$srcdir/iceweasel-install-dir.patch" + + # Patch and remove anything that's left + patch -Np1 -i "$srcdir/libre.patch" + sed -i 's|Adobe Flash|SWF Player|g; + ' browser/base/content/pageinfo/permissions.js \ + browser/base/content/browser-plugins.js + sed -i '\|["]displayName["][:] ["]Flash["]| s|Flash|SWF Player| + \|["]displayName["][:] ["]Shockwave["]| s|Shockwave|DCR Player| + \|["]displayName["][:] ["]QuickTime["]| s|QuickTime|MOV Player| + \|installLinux| s|true|false| + ' browser/base/content/browser-plugins.js + sed -i '\|URL of the GeoLocation backend|d; + \|geo[.]wifi[.]uri|d; + ' browser/app/profile/firefox.js \ + browser/metro/profile/metro.js + rm -v browser/base/content/abouthome/snippet*.png || true + sed -i '\|abouthome/snippet|d + ' browser/base/jar.mn + + # Replace common URLs + sed -i '\|extensions[.]getAddons[.]get[.]url| s|https://services[.]addons[.]mozilla[.]org.\+["][)][;]|https://trisquel.info/en/browser");|g; + \|extensions[.]getAddons[.]search[.]browseURL| s|https://addons[.]mozilla[.]org.\+["][)][;]|https://trisquel.info/en/browser");|g; + \|extensions[.]getAddons[.]search[.]url| s|https://services[.]addons[.]mozilla[.]org.\+["][)][;]|https://trisquel.info/en/browser");|g; + \|extensions[.]webservice[.]discoverURL| s|https://services[.]addons[.]mozilla[.]org.\+["][)][;]|https://trisquel.info/en/browser");|g; + \|browser[.]search[.]searchEnginesURL| s|https://addons[.]mozilla[.]org.\+["][)][;]|https://trisquel.info/en/browser");|g; + \|plugins[.]update[.]url| s|https://www[.]mozilla[.]org/[%]LOCALE[%]/plugincheck/["][)][;]|https://trisquel.info/en/browser");|g; + ' browser/app/profile/firefox.js + + # Load our build config, disable SafeSearch + cp "$srcdir/mozconfig" .mozconfig + + if $_pgo; then + cat "$srcdir/mozconfig.pgo" >> .mozconfig + fi + + # From js on abslibre-mips64el.git + if [ "$CARCH" = "mips64el" ]; then + msg "Force disabling JIT." + sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \ + js/src/assembler/wtf/Platform.h + sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.{in,ref} + + echo "ac_add_options --disable-methodjit" >> .mozconfig + echo "ac_add_options --disable-tracejit" >> .mozconfig + fi + + # This is a bug, we should fix it + if [ "$CARCH" = "mips64el" ]; then + # Fix MIPS N32 support. + sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \ + js/src/assembler/wtf/Platform.h + # Disable JIT. + sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \ + js/src/assembler/wtf/Platform.h + sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.in + echo 'ac_add_options --disable-methodjit' >> .mozconfig + echo 'ac_add_options --disable-tracejit' >> .mozconfig + echo 'ac_add_options --disable-jemalloc' >> .mozconfig + fi + + mkdir "$srcdir/path" + + # WebRTC build tries to execute "python" and expects Python 2 + ln -s /usr/bin/python2 "$srcdir/path/python" + + # Use gold, as Mozilla can use some of its features, such as safe ICF + #ln -s /usr/bin/ld.gold "$srcdir/path/ld" + + # configure script misdetects the preprocessor without an optimization level + # https://bugs.archlinux.org/task/34644 + sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure + + # Fix tab loading icon (flickers with libpng 1.6) + # https://bugzilla.mozilla.org/show_bug.cgi?id=841734 + # TODO: Remove this; Iceweasel 32 will use CSS animations for the loading icon + # https://bugzilla.mozilla.org/show_bug.cgi?id=759252 + cp "$srcdir/iceweasel-20.0.1-fixed-loading-icon.png" \ + browser/themes/linux/tabbrowser/loading.png + + # Remove non-existent file on Makefile.in + sed -i '\|build/pgo/blueprint/valid.png|d' build/Makefile.in +} + +build() { + export DEBIAN_BUILD="mozilla-release" + + cd "$srcdir/$DEBIAN_BUILD" + + export PATH="$srcdir/path:$PATH" + export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/$pkgname" + export PYTHON="/usr/bin/python2" + + if $_pgo; then + # Do PGO + xvfb-run -a -s "-extension GLX -screen 0 1280x1024x24" \ + make -f client.mk build MOZ_PGO=1 + else + make -f client.mk build + fi +} + +package() { + export DEBIAN_BUILD="mozilla-release" + + cd "$srcdir/$DEBIAN_BUILD" + make -f client.mk DESTDIR="$pkgdir" INSTALL_SDK= install + + install -Dm644 ../vendor.js "$pkgdir/usr/lib/$pkgname/browser/defaults/preferences/vendor.js" + + # I don't even know why we're hitting the objdir, and ConnOS didn't + _brandingdir=debian/branding + brandingdir=moz-objdir/$_brandingdir + icondir="$pkgdir/usr/share/icons/hicolor" + for i in 16x16 32x32 48x48 64x64; do + install -Dm644 "$brandingdir/default${i/x*/}.png" "$icondir/$i/apps/$pkgname.png" + done + install -Dm644 "$brandingdir/mozicon128.png" \ + "$icondir/128x128/apps/$pkgname.png" + install -Dm644 "$_brandingdir/iceweasel_icon.svg" \ + "$icondir/scalable/apps/$pkgname.svg" + + install -d "$pkgdir/usr/share/applications" + install -m644 "$srcdir/iceweasel.desktop" \ + "$pkgdir/usr/share/applications" + + # Use system-provided dictionaries + rm -rf "$pkgdir/usr/lib/$pkgname/"{dictionaries,hyphenation} + ln -s /usr/share/hunspell "$pkgdir/usr/lib/$pkgname/dictionaries" + ln -s /usr/share/hyphen "$pkgdir/usr/lib/$pkgname/hyphenation" + + rm -rf "$pkgdir/usr/lib/$pkgname/browser/"{searchplugins,plugins} + ln -sf /usr/lib/mozilla/plugins "$pkgdir/usr/lib/$pkgname/browser/plugins" + ln -sf /usr/lib/mozilla/searchplugins "$pkgdir/usr/lib/$pkgname/browser/searchplugins" + + # Workaround for now: + #https://bugzilla.mozilla.org/show_bug.cgi?id=658850 + ln -sf $pkgname "$pkgdir/usr/lib/$pkgname/$pkgname-bin" +} diff --git a/libre/iceweasel/gnu_headshadow.png b/libre/iceweasel/gnu_headshadow.png new file mode 100644 index 000000000..e0f73a3bf Binary files /dev/null and b/libre/iceweasel/gnu_headshadow.png differ diff --git a/libre/iceweasel/iceweasel-20.0.1-fixed-loading-icon.png b/libre/iceweasel/iceweasel-20.0.1-fixed-loading-icon.png new file mode 100644 index 000000000..55f25e591 Binary files /dev/null and b/libre/iceweasel/iceweasel-20.0.1-fixed-loading-icon.png differ diff --git a/libre/iceweasel/iceweasel-install-dir.patch b/libre/iceweasel/iceweasel-install-dir.patch new file mode 100644 index 000000000..af113fa85 --- /dev/null +++ b/libre/iceweasel/iceweasel-install-dir.patch @@ -0,0 +1,13 @@ +diff --git a/config/baseconfig.mk b/config/baseconfig.mk +index 7ca8e35..6e92846 100644 +--- a/config/baseconfig.mk ++++ b/config/baseconfig.mk +@@ -5,7 +5,7 @@ + MOZ_APP_BASE_VERSION = $(firstword $(subst ., ,$(MOZ_APP_VERSION))).$(word 2,$(subst ., ,$(MOZ_APP_VERSION))) + includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_BASE_VERSION) + idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_BASE_VERSION) +-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_BASE_VERSION) ++installdir = $(libdir)/$(MOZ_APP_NAME) + sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_BASE_VERSION) + ifndef TOP_DIST + TOP_DIST = dist diff --git a/libre/iceweasel/iceweasel.desktop b/libre/iceweasel/iceweasel.desktop new file mode 100644 index 000000000..c4a338cc6 --- /dev/null +++ b/libre/iceweasel/iceweasel.desktop @@ -0,0 +1,105 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Iceweasel +Name[bg]=Iceweasel +Name[ca]=Iceweasel +Name[cs]=Iceweasel +Name[el]=Iceweasel +Name[es]=Iceweasel +Name[fa]=Iceweasel +Name[fi]=Iceweasel +Name[fr]=Iceweasel +Name[hu]=Iceweasel +Name[it]=Iceweasel +Name[ja]=Iceweasel +Name[ko]=Iceweasel +Name[nb]=Iceweasel +Name[nl]=Iceweasel +Name[nn]=Iceweasel +Name[no]=Iceweasel +Name[pl]=Iceweasel +Name[pt]=Iceweasel +Name[pt_BR]=Iceweasel +Name[ru]=Iceweasel +Name[sk]=Iceweasel +Name[sv]=Iceweasel +Comment=Browse the World Wide Web +Comment[bg]=Сърфиране в Мрежата +Comment[ca]=Navegueu per el web +Comment[cs]=Prohlížení stránek World Wide Webu +Comment[de]=Im Internet surfen +Comment[el]=Περιηγηθείτε στον παγκόσμιο ιστό +Comment[es]=Navegue por la web +Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید +Comment[fi]=Selaa Internetin WWW-sivuja +Comment[fr]=Navigue sur Internet +Comment[hu]=A világháló böngészése +Comment[it]=Esplora il web +Comment[ja]=ウェブを閲覧します +Comment[ko]=웹을 돌아 다닙니다 +Comment[nb]=Surf på nettet +Comment[nl]=Verken het internet +Comment[nn]=Surf på nettet +Comment[no]=Surf på nettet +Comment[pl]=Przeglądanie stron WWW +Comment[pt]=Navegue na Internet +Comment[pt_BR]=Navegue na Internet +Comment[ru]=Обозреватель Всемирной Паутины +Comment[sk]=Prehliadanie internetu +Comment[sv]=Surfa på webben +GenericName=Web Browser +GenericName[bg]=Интернет браузър +GenericName[ca]=Navegador web +GenericName[cs]=Webový prohlížeč +GenericName[de]=Webbrowser +GenericName[el]=Περιηγητής ιστού +GenericName[es]=Navegador web +GenericName[fa]=مرورگر اینترنتی +GenericName[fi]=WWW-selain +GenericName[fr]=Navigateur Web +GenericName[hu]=Webböngésző +GenericName[it]=Browser Web +GenericName[ja]=ウェブ・ブラウザ +GenericName[ko]=웹 브라우저 +GenericName[nb]=Nettleser +GenericName[nl]=Webbrowser +GenericName[nn]=Nettlesar +GenericName[no]=Nettleser +GenericName[pl]=Przeglądarka WWW +GenericName[pt]=Navegador Web +GenericName[pt_BR]=Navegador Web +GenericName[ru]=Интернет-браузер +GenericName[sk]=Internetový prehliadač +GenericName[sv]=Webbläsare +X-GNOME-FullName=Iceweasel Web Browser +X-GNOME-FullName[bg]=Интернет браузър (Iceweasel) +X-GNOME-FullName[ca]=Navegador web Iceweasel +X-GNOME-FullName[cs]=Iceweasel Webový prohlížeč +X-GNOME-FullName[el]=Περιηγήτης Ιστού Iceweasel +X-GNOME-FullName[es]=Navegador web Iceweasel +X-GNOME-FullName[fa]=مرورگر اینترنتی Iceweasel +X-GNOME-FullName[fi]=Iceweasel-selain +X-GNOME-FullName[fr]=Navigateur Web Iceweasel +X-GNOME-FullName[hu]=Iceweasel webböngésző +X-GNOME-FullName[it]=Iceweasel Browser Web +X-GNOME-FullName[ja]=Iceweasel ウェブ・ブラウザ +X-GNOME-FullName[ko]=Iceweasel 웹 브라우저 +X-GNOME-FullName[nb]=Iceweasel Nettleser +X-GNOME-FullName[nl]=Iceweasel webbrowser +X-GNOME-FullName[nn]=Iceweasel Nettlesar +X-GNOME-FullName[no]=Iceweasel Nettleser +X-GNOME-FullName[pl]=Przeglądarka WWW Iceweasel +X-GNOME-FullName[pt]=Iceweasel Navegador Web +X-GNOME-FullName[pt_BR]=Navegador Web Iceweasel +X-GNOME-FullName[ru]=Интернет-браузер Iceweasel +X-GNOME-FullName[sk]=Internetový prehliadač Iceweasel +X-GNOME-FullName[sv]=Webbläsaren Iceweasel +Exec=/usr/lib/iceweasel/iceweasel %u +Terminal=false +X-MultipleArgs=false +Type=Application +Icon=iceweasel +Categories=Network;WebBrowser; +MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https; +StartupWMClass=Iceweasel +StartupNotify=true diff --git a/libre/iceweasel/iceweasel.install b/libre/iceweasel/iceweasel.install new file mode 100644 index 000000000..1a1f4b16b --- /dev/null +++ b/libre/iceweasel/iceweasel.install @@ -0,0 +1,13 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} + diff --git a/libre/iceweasel/libre.patch b/libre/iceweasel/libre.patch new file mode 100644 index 000000000..08704affd --- /dev/null +++ b/libre/iceweasel/libre.patch @@ -0,0 +1,909 @@ +diff -Nur mozilla-release.orig/browser/app/profile/firefox.js mozilla-release/browser/app/profile/firefox.js +--- mozilla-release.orig/browser/app/profile/firefox.js 2014-07-23 13:16:30.287622288 -0300 ++++ mozilla-release/browser/app/profile/firefox.js 2014-07-23 13:19:13.362141893 -0300 +@@ -281,11 +281,6 @@ + pref("browser.slowStartup.timeThreshold", 50000); + pref("browser.slowStartup.maxSamples", 5); + +-// This url, if changed, MUST continue to point to an https url. Pulling arbitrary content to inject into +-// this page over http opens us up to a man-in-the-middle attack that we'd rather not face. If you are a downstream +-// repackager of this code using an alternate snippet url, please keep your users safe +-pref("browser.aboutHomeSnippets.updateUrl", "https://snippets.mozilla.com/%STARTPAGE_VERSION%/%NAME%/%VERSION%/%APPBUILDID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/"); +- + pref("browser.enable_automatic_image_resizing", true); + pref("browser.chrome.site_icons", true); + pref("browser.chrome.favicons", true); +@@ -1489,12 +1484,7 @@ + // (This is intentionally on the high side; see bug 746055.) + pref("image.mem.max_decoded_image_kb", 256000); + +-// Default social providers +-pref("social.manifest.facebook", "{\"origin\":\"https://www.facebook.com\",\"name\":\"Facebook Share\",\"shareURL\":\"https://www.facebook.com/sharer/sharer.php?u=%{url}\",\"iconURL\":\"data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAAX0lEQVQ4jWP4%2F%2F8%2FAyUYTFhHzjgDxP9JxGeQDSBVMxgTbUBCxer%2Fr999%2BQ8DJBuArJksA9A10s8AXIBoA0B%2BR%2FY%2FjD%2BEwoBoA1yT5v3PbdmCE8MAshhID%2FUMoDgzUYIBj0Cgi7ar4coAAAAASUVORK5CYII%3D\",\"icon32URL\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAADbklEQVRYCc1Xv08UQRj99tctexAuCEFjRE0kGBEtLDSGqIWNxkYKbTAxNlY2JhaGWltNtNFeKgsKKxITK43/gCYW+IsoRhA4D47bH7fn9+bcvdm5JR7sefolC3Ozu9978+bNN7PayUv3HN3umdY0Y6IWBtSJ0HSTarXqTOiuTep6Lj+tdxAcA8RAgSmwdd2aCDs0clldYALb/FvgYVhjmfliVA2XpjEgWo0Attn42Z6WH1RFor5ehwo9XQIUZMoVn4qlCoVMSo62EvD8Kh0b3U2Xz43R2PBO6mUCGDlAf65V6MadZzT/rUimoccc2kYA4BfPHqJb105RzjJigKhRq9kEJUBIjgYVuXeL7SAI6eD+Abp5dTwVHOmEHxT50d8WBYJqSOdPj5BjW8gZR8UNqFR2xagx/65XFYaMH+BGWwiYpi4UkBPPLxTp9v1Z+lHc4DWvCQXWmIy6EjITgKowVd5Jjv7N3Hd6y5esigoOwpkJIAmMpZpLJGdiaaC4F0UmAj6bD84GCEwmB/qxMmRilmnwb/mpjAocHh4UEoNAt5NLZB7oy9OJo0PxqkAtePdhiSqunyC1LQUwWMPQaOr6GRre258Ajn4cP7KHcEXhsxpXbj+lT19X2TMNGTLVAcjcalS8gDwsQ2UOMhH4k8FkcrEn5E5ub2sKohxLK2VR77Hl9RUcsrgeRIEiVOT6z+tDbIeLy+vk+kGTCbXxycet6xhl//3f6bJEkdHYhA+mLtDIvoH4ieev5+juoxdk5+pjhALYEdXIpEB5w+NlSKSzqVQ/+H7IO6BLtl3fngGMiqhGJgIwlM6qpyUGFjySdk8m0Zg0ubeD7X9OIDEFajltRQgUJaUKx69tdgaQa0FMADuahZPMFtcEwNPm2hA7ZI5sK4aoE2NvYI+o8hkCIe7CwTv68zS0q9Dk5vpbm/8FXxitSzmMFHpsGj0wyLUheTwD2Y9fVgh1Ae0EPUgD9241ZEnld+v5kgnVZ/8fE0brVh5BK+1oCqKKF72Dk7HwBsssB/pklU1dfChy3S659H5+uelgIb+8WRv1/uGTV9Sdb5wJFlfW6fPCalMhwhSU1j2xKwKbP838GcOwJja4TqO0bjdmXxYTy1EYjFdCWoCEYZhseH/GDL3yJPHnuW6YmT7P1SlIA4768Hke4vOcsX8BE346lLHhDUQAAAAASUVORK5CYII=\", \"icon64URL\":\"data:image/png;base64,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\", \"description\":\"Easily share the web to your Facebook friends.\",\"author\":\"Facebook\",\"homepageURL\":\"https://www.facebook.com\",\"builtin\":\"true\",\"version\":1}"); +- +-pref("social.sidebar.unload_timeout_ms", 10000); +- +-pref("dom.identity.enabled", false); ++// Removed Facebook sidebar with Iceweasel. + + // Turn on the CSP 1.0 parser for Content Security Policy headers + pref("security.csp.speccompliant", true); +diff -Nur mozilla-release.orig/browser/base/content/abouthome/aboutHome.css mozilla-release/browser/base/content/abouthome/aboutHome.css +--- mozilla-release.orig/browser/base/content/abouthome/aboutHome.css 2014-07-16 22:45:05.000000000 -0300 ++++ mozilla-release/browser/base/content/abouthome/aboutHome.css 2014-07-23 13:21:52.223313722 -0300 +@@ -49,11 +49,6 @@ + background-repeat: no-repeat; + } + +-#searchForm, +-#snippets { +- width: 470px; +-} +- + #searchForm { + display: -moz-box; + } +@@ -72,8 +67,7 @@ + #searchEngineLogo { + display: inline-block; + height: 28px; +- width: 70px; +- min-width: 70px; ++ width: 47px; + } + + #searchText { +@@ -145,48 +139,6 @@ + transition-duration: 0ms; + } + +-#defaultSnippet1, +-#defaultSnippet2, +-#rightsSnippet { +- display: block; +- min-height: 38px; +- background: 30px center no-repeat; +- padding: 6px 0; +- -moz-padding-start: 79px; +-} +- +-#rightsSnippet[hidden] { +- display: none; +-} +- +-#defaultSnippet1:-moz-dir(rtl), +-#defaultSnippet2:-moz-dir(rtl), +-#rightsSnippet:-moz-dir(rtl) { +- background-position: right 30px center; +-} +- +-#defaultSnippet1 { +- background-image: url("chrome://browser/content/abouthome/snippet1.png"); +-} +- +-#defaultSnippet2 { +- background-image: url("chrome://browser/content/abouthome/snippet2.png"); +-} +- +-#snippets { +- display: inline-block; +- text-align: start; +- margin: 12px 0; +- color: #3c3c3c; +- font-size: 75%; +- /* 12px is the computed font size, 15px the computed line height of the snippets +- with Segoe UI on a default Windows 7 setup. The 15/12 multiplier approximately +- converts em from units of font-size to units of line-height. The goal is to +- preset the height of a three-line snippet to avoid visual moving/flickering as +- the snippets load. */ +- min-height: calc(15/12 * 3em); +-} +- + #launcher { + display: -moz-box; + -moz-box-align: center; +@@ -335,26 +287,25 @@ + width: 32px; + } + +-#aboutMozilla { ++#aboutGNU { + display: block; +- position: relative; /* pin wordmark to edge of document, not of viewport */ + -moz-box-ordinal-group: 0; + opacity: .5; + transition: opacity 150ms; + } + +-#aboutMozilla:hover { ++#aboutGNU:hover { + opacity: 1; + } + +-#aboutMozilla::before { +- content: url("chrome://browser/content/abouthome/mozilla.png"); ++#aboutGNU::before { ++ content: url("chrome://browser/content/abouthome/gnu_headshadow.png"); + display: block; + position: absolute; + top: 12px; + right: 12px; +- width: 69px; +- height: 19px; ++ width: 200px; ++ height: 110px; + } + + /* [HiDPI] +@@ -366,26 +317,6 @@ + background-image: url("chrome://branding/content/about-logo@2x.png"); + } + +- #defaultSnippet1, +- #defaultSnippet2, +- #rightsSnippet { +- background-size: 40px; +- } +- +- #defaultSnippet1 { +- background-image: url("chrome://browser/content/abouthome/snippet1@2x.png"); +- } +- +- #defaultSnippet2 { +- background-image: url("chrome://browser/content/abouthome/snippet2@2x.png"); +- } +- +- .launchButton::before, +- #aboutMozilla::before { +- transform: scale(.5); +- transform-origin: 0 0; +- } +- + .launchButton:-moz-dir(rtl)::before, + #aboutMozilla:-moz-dir(rtl)::before { + transform: scale(.5) translateX(32px); +@@ -431,9 +362,5 @@ + transform: scale(-0.5, 0.5) translateX(24px); + transform-origin: top center; + } +- +- #aboutMozilla::before { +- content: url("chrome://browser/content/abouthome/mozilla@2x.png"); +- } + } + +diff -Nur mozilla-release.orig/browser/base/content/abouthome/aboutHome.js mozilla-release/browser/base/content/abouthome/aboutHome.js +--- mozilla-release.orig/browser/base/content/abouthome/aboutHome.js 2014-07-16 22:45:05.000000000 -0300 ++++ mozilla-release/browser/base/content/abouthome/aboutHome.js 2014-07-23 13:28:38.816155432 -0300 +@@ -3,154 +3,44 @@ + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + + const SEARCH_ENGINES = { +- "Google": { +- // This is the "2x" image designed for OS X retina resolution, Windows at 192dpi, etc.; +- // it will be scaled down as necessary on lower-dpi displays. +- // This needs to be defined in a single line to keep the JS parser from creating many +- // intermediate strings in memory. See bug 986672. +- image: "data:image/png;base64,\ +-iVBORw0KGgoAAAANSUhEUgAAAIwAAAA4CAYAAAAvmxBdAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ\ +-bWFnZVJlYWR5ccllPAAAGrFJREFUeNrtfHt4VdW172+utZOASLJ5+BaIFrUeXkFsa0Fl++gDnznV\ +-VlvFxt7aqvUUarXtse3Bau35ak/rZ9XT26NtfOvV6wFET+FYCQEKWqsQIT5RCAgSXnlnrzXneNw/\ +-1lphJSSQ8BB7bub3zW+LO3uN+fiNMcf4jTEX0N/6W3/rb/2tv30smtnXB3zmRi2FQakxQNKX3WkW\ +-9S/tgW3HLpmQM543A0BWVSHMYGIwOTDxzxrOf3/RQQfMZ2/SLAvKhTFVBGUqKFONH2QAzwOMF38a\ +-wHhYZAxWAqhe/iszp3+b970d/sInc57vz/J8L2eMB2MAEYkBQ6DQ3dRw4dq7AUjcP3rAfPZmLWXC\ +-LHKoIAcQAUxaB5EaEfc6AEBhjDEwmcx43/fO9HxT4vkReBIAAZgjgodW3NcPnn1sHgD/iHknn+0d\ +-6s8XEUhsXXac/34WAAGw8afuT8GZ3X055YeSJcIsG+pMZwFn0UihezRofPt3G54f/0E8cNMN+Myo\ +-8jVTCgYd823PLzrPeIBnABiUQ1F+UoWsVOYb33mkoKp/7/dKyT0AGc47X4s0sjBEoLxbBqAQAMfW\ +-Rfe38B4BM+VHUkYOs8mi1FrABbK4dcvK73zwp1M3xYPOxANKBqbpCdXNGb0UwPKRF74xpfDQ0t+K\ +-54+IvlKoahmAhaO/mv/ZmicG3tqPgT61ZM2dZMQJOYhIdByRM/F3dCCOox4Bc3oEliqyyNoQCPPu\ +-sXceKZqRsigu7pwaWBowiRb46+f9Q1V2wl1nDx09/R7jF30x9adNlN8yPx4DHwht+B/cBIBoRqeI\ +-E4hE/oshTcB0wNbT6/o/zrhFyohR5ZxmrVWE+fDxdx4puhGAH4OkPe5B6pykeJAc/7cDEMZ/095Y\ +-870P339m+BXs2v4kbCFsm9u2vnpJ3bzR7wAo2B/R2v+PjSnyXcRxtOLUSXFxwAFz5i2SZUIVO82S\ +-BWye/vLOIwNvjL8OYqCEfXCmJAZPHkC7sK1REbj2+lmbq86qTVmmfuuyN2cTiREWKCvACgml9kDL\ +-7HQksehsZmSdA6yVpsa6P38v3swg7m4vN1dGXrThKGP8yS5fP33j/LEvxKDbl2f2A0YFCtkZQDOa\ +-PjLAnP4jrmBGjh1AVhG2ttxfX33++vjY2eeNXf/siLUAzgEwMJZrY2vF/Vu/t4BRqCqgCmj07wMV\ +-HXUCzJQfUlZE72ICnANcqNj21h8eiK1AX46gXh29KT9H+rd9XxBjYGCgig7QHOgjPgMAKigXQZYp\ +-si4uCOc3v35zY2wF9ufGSgxA7fdd9g8ho9ol4P4ojiQWnSUMMANECrJNy1NWYH8eGfsEvJbLv1IK\ +-1XIAUwEtA0xplJMwjcaYlTDeShg8dOgjj6/cJxNYfWIWkHJoh5yyjkSZ8RbB89YBZq4/pXafGeuz\ +-b9WciXJxo2B2houqgAjABJCLOwFMqFv57+bBxMIAJm1det3avnl1OYCLAeSgWhofaY1QXQSRuYc+\ +-/OiD3QLmUzNdqTBKhRVMADsF5beuToXJB90KtFz+lVIVniXOVUAUqjpXVB4WwPjGTPB8/0zjeTnj\ +-ezl43szmKy6vNkDF4MeeXNc3oJyUhfAMkJsJkSxUVrLos6o6z/O8Ucb3phrPzyHKeVTwkpPXseg3\ +-Cqe+1SfG+swfaw6KGTAoJ5eyGF3IBeEIJB2AcXxb0FI/L45uFQBMGiu6Z3ai9eqrclBUClFWVatV\ +-5GERNT5wEVQnQLUcIuVNX75kFjn60rA5c1d0AoywlkcxfdwZ2LSgbOmBZAv70povu7RcyFUqcZYd\ +-Pbxix44fnLv8pbYUOWh+P3ZM9uJRo34xoLDgq8b3YTxvqhqsaPzyJTdmn36msjdyqPqkMhWqBFGZ\ +-MtV8uDX4zMjp2zemyEoPgGn4zyOvGzy48A54GcD3Sz1jFrqqE+4uOOvdmb0ASlYEs5mQE9afUdhy\ +-0yv3lHzwya/8ZcjgI0+5yssU3QKYkgQ4Ivp60LL1n8kBQfOWuvdnj6uLldgHQKoKxU7HV/eg2y1X\ +-XXmXEs1U0ZVb29o//4k5c5P5eQB+s+68aVeUFBTcCxUoS6kRWfjhueecc9SfX3ytA9QTr7eVACqY\ +-FDYEwnbB2qcHHg6gLY6ODhpomi77coUyVaojhKH9+ZHzF/wqXiztEg34APxNX/jCvQOLCi83fpy8\ +-UsCJXHLYnGdn785S0uKTyyBUBXJZcW5x4bSN56ciyLQcD4Bf/+ThVwwbUvRb+JkoswqAWX5b9Lm1\ +-M3uSM/UnUiaCKiZk2blvvnxX0ePxuBNAmpMur51wyLBPzjVeBBoVwIXBk6vuP+SG+LkcuwkWAA96\ +-/JjZKnKxkACkkFb5Nztz220xX9bJlWi+6opKFalQlpqlmzZNu6B6SaJ0knKJ/DW5qd8p8TO3x6AB\ +-qza1EE06cdmy9wDAY5LjmBTMkQnUnZ42H0ywNF52aU6FK4UY5NySI+cv+E3MCnMM5HyqtwFoO3rB\ +-gmuDMFjGjiCOIEQwzH9c+7lzju+JTaYlJ2ehUqXMWWFqeurFxqsAFMVf25Ss9kTOEZdvebClJbxT\ +-yUGZoEzwlL/b9tzRX+pOztSfSBZApSqyIrL45buKnkaUJEzLCN5+csxr+ab6fyILkI2OIZYBlx9/\ +-2bYvpLgw2+EqKLKdwoceVKJp+tfuEpYKZcaW1tZbLqheEsbj3GV+oxdV3x0GwQZrHUIiWKIST3Vm\ +-DG54zFrKrBBWiGgSyx9Uv6Xh0n/MKlGlOII4h80trQ+kuJt8HGklZHg6FZF/Y/uOb7O1YOvAzkGt\ +-Kxmoehe6SYNEpkErwZIFC4I2fuLKf2tLtDOPzumPhA6wAPJDLt1yuzjaAEcAMUCMApXfvPP7IcO6\ +-gkYFs4RRpgy49qanUsAPu/T8W48e/YwL6S/kYtBYwM8U/yu6KVlQUShr9CkKyK7b1vDVy0qVeaYy\ +-gaxbdeK85/8a/z7sYR3zgXM1gXUInEPoCEw8PR6z8YQxaidQPh6RrgrPEOZS4chKjFuydEEKFD1x\ +-QgrAnfO3V98Jw/B5dhFgmByU+MK/nnrq6K6gcQtPyqlIubJAibCxPv/fsVVNgCI9yGEAQdBq71NH\ +-UEdQIoBo5PBBeklazuQfSpYFM0UAFsDmd2yMf9+1XkUT3otc8AiRwpFChCBCI0detGbSLtYr5uw6\ +-tk26XctZwgxhRt65ZSmr1t389M1Jk85wzKcHRAiJkCfasDnI/0sMGN+jlLMrAigMhp0+f+TBBIw4\ +-milEYOcQBHZZAoZeEIgKgIIgeJbD2MqEFhxaDAFmdAWMisxQFigzlAUnX9e4rA9yeHuTna3koBQB\ +-RogxwOPvxNbQAAA7VHQEFKSQKEFIu4lA5d3HiiuFNB4XQZlhUHBK11QO0oRdD7ouROVCkeJZG7ak\ +-/KBOYHlz4sTy1WVlVY5oYego2+bs82+3tFw6YcVrp01dteqpxNfyhKQuGlxCMSsKBh570ABT/8XP\ +-5dhRVpyDWAd2Ns0O9yrhWdfcMpvCEByEoNCCwhBgvgBdM+PM5TH5FPW+1ZLo8de2viehe12dhVoH\ +-OAtDPO61O4o+kYCTnE5wVuGsxlzKHul7BUDKdomKgwpB2QHAyNiP2Dl+0Z2WRXZ9YP0F55WJczvX\ +-0jp09U3fLiurWD1+/NqQaHZIVNbu3O1vt7aM+fSqVRWXvPvu0pRldwAkQ5brjO+NMh0kgMIvGjYZ\ +-wIKETPxIrYt1U5M8iThKJil9yZGc++ab298dP36Jb8wZohqhQHRErKEeAA6fG5FT5yIlYYI6tzfO\ +-vtiQni3MYDw0ChqEgUMyejyAdwGwDeW4ZI9FAGQOmwzgv/cERmZbDXhnKBNUGMJkUhGVduSSJJ1P\ +-6rw8HIalJo7ilBkchgCgL48fVzLceDc4kZnWUdap1AQi10x+660n4jXyk1M7ZXEZgHhMUkMO4Njp\ +-hQGMf8h56Fx++ZE1a+1xZC2Szjs3sk9uUEhUbSMvP3LeyOGZ0tKJiearo1J1DHVRPYmS7JUcG2g1\ +-pxxUsooBnpmQWAOb10YbKGygcKFCZOC0XqxrRKokCBQG5euX77In2k1P+2hhWEZBAAoCuCCEcW7E\ +-2xMn/m6oYo0jyjnmuc3Off6UN96YMvmtt5LILSmQ61r3xAA0I+xqPBiIejAd1f7e2MPPfvm4LQs/\ +-89a+bP6nZuSzfsaU+T7g+UBixYQVRFGS01kFO22srRy0EgA4CEvFRHS3MANMY/fGbybmlQqAFSBV\ +-sCp8kWwCGA5dqefFShnnRV77ecHYU37iXuqLoB0tsuIo34v3NfJR1GlJsrnOuiXGy1y8k+rwxh57\ +-3srSD/6rbLdra7yMqgjUCGAULR8uWr0LJPYAGApCeCbKNygLPKIxJ65YOSU+YpLUUCYGiqBzQVy3\ +-Ft1zbevnJl60UARqACgcVDo9ZZr63Mqua68QxlpmrWJC1FmrmLSKCFVktcpZrbKhzg4D26E5Lgjg\ +-8vnoMwwh1hU/dvTRo/qcDyJqcESw5Dp6o3XNHVrqLDSubAdFjuXwwWZcX+Wc9APboKxQUoiLurXa\ +-IYfCpjlCDsoxZ6OCouLRt+xpbY3nA8aDMR6E2+9vffOWxl02cQ+Bbdjevt7l83D5ABRaKNHYO484\ +-YmgMkoJ4jElCOL8Lz9NN87YumrRDxc2DElQZKgIVhZcZcO1hZ74wtK/H0thvtuXGXdM2S0S/ziQ1\ +-FPJiG7pHwvbgDhtKnQ0VNhCEeUHQLmiuf2fymieGvJGY8DCfX+yCEC5xWIlwtO+P6+s4VESJGS4+\ +-liwxKjZ/2FGRZvPhYgktxEZdHWOAr2P34ihWIQWTgJ2CnWJbo9Ymz1g/5+h1QsF9wgKJ19Z4hV87\ +-4fKNE3cnx8v4V8H4UOjqhvce+zW6qdWVlOvSjQsDlw/WUT4A5QNQGIJDizMPHXR+CiRBb4GSzlYr\ +-26Z7vYKSC42nUOPBqA9VU1I0ZOJPEYWj1NvVW/3AoEUAFgO4IzZ1hYk2jf9WUw7IjCIXHUVhXrFp\ +-/sQtKZPIoXXr/PjoSkZeoHo6gP/bFyeciECqcHG3IrXp37a2SF3xQNPxRAXgq5nS1bHsDWCYALYA\ +-u+h0W/impI8Pad9ec/vAoWVTjV84Nsn5FAwcvmDMN5rOqf1jyatdHzjuGjvThloKYH3b5qVXt775\ +-44ZuN1QEKknF3a6ImfDee4tWjBrV6R5Qoeq1AP6Avaxx8gDolhdPXAh2qzQmZFQ4ZhALrj/mvLpT\ +-+qhxya0BP5VVZQBkA6jNR0AJ2xUUcjKGjsx4k3PVYUwaJU6rJ3reLiHlHppjBjF3fLYSzU/noEZ8\ +-3611VusoVJBVsFWAdezim/3jemSFe+SNIsvCpAhCXf7TBZI+PnTr4nO2t2xcME3ZroYKIouEEqDo\ +-xfHfav/GxOttFgBOucGWll0XVqrqXYDWNLz3aG7bsovWp4i2TvkhScLqNBezq/M/zxLBxV2Yx/75\ +-yCPP6usc04CJ+B3bcLMwQTiK+0UIwgz1ip8+4pyaYX0x0SnWMkjnYGygkm9nBO0MGzoI2TTDyQBw\ +-7ubNawPmeZYZNt5wZhrxX8OHX9yXSTJzGcVgIWasbs8/hc7XRzXM670cg0Vs5H+MHm6u74ucrb/K\ +-lAlFPoySoqFFn+rm+OCGV762df2cYWe4fP0M5qDWhoowRIm1/h+s1YZx3wrVOV1LDhXMaGzfXntF\ +-46vXtMQRS/clsqRRT9SNd0GMBo6edRStZbKeg4D//ciQIcP2CTDbqsdVKQePq1JMFkXxv4qO9AaM\ +-fPGoaeuG9kXp0LkU0wGgMFC1gYAdAeyg0m3IrE3W3mtTvodjRpHq9X3xL4h5Qsq63P/z9ra6LqSc\ +-vvmBPkwOTex2lnf4wNee/47fa99NGGVJ8Zl1qP3UPfwkdr15mDDV+Y3Pf+Kh9c9kz9pee89J7dve\ +-vaRt+7qLbVv47y5UUKggp3BB/okNz0/aHI8332OaIgELxWDpptQtt6X+Qcu03nVYGQYxjxzl+7/e\ +-GyvjdYrCtv31JiW7QTjy6qWj83jF4AeP/MLaodiHRtZBXAihEEIWkq4eSgGmvKGhqpX5d1YEVhiW\ +-BaI6Zf6QITN7s5ELhw4tZZavkwhIZMOC1rZfo5s64nPv4+1NzXot2/hYiqKckglH4/7eRojCOosp\ +-St6u2ijfS1Hv3I0SdVy5aam9ecumBeOqN8w7aRkxSlMVdRDmRHa4m5xWPKPEusUA6maIrcy/cCKw\ +-InASKaCoXrlo2LAH+xpMpAEjLauu2ObaNnxVmZqUHaI8SaR+KnIhTPHCo6ZtOn6vk4qUPNNGnV2P\ +-J0ptENweMq92zHBMcMwwIrfMLS6etKdJEnMlCYOZm9YE4dUPkWvsIUckJ/+SZwd5PCEOEBc5rh7j\ +-grqf+VfvSc7mO/xZSihVAra3YMY/PqqrUhZVe7C8yRHTBqAVQJuQN5idgJ2ASQAz4PJjptWevKc0\ +-RZQ0TQATRWDd/dmFDQ2VeaLH0z4dRVTK9EXZ7IqFJSXH7W6eLw0blntp2NAydGOSqPGVs/5mW9Zc\ +-JGKbRSxELIRDCFuIuAmiBa8eMW37rcdc1JDtM+3PYdSp43k9/ulPgmDrsnz+vFBktRWBZYEVKSlU\ +-feH5wYPP7u5Hfy4uzi4oLq50IjkSaXrf2vIfBPnV6PlKiwKg0XfyNe2BPkmJ8+oUGeh/bLjNu7En\ +-0Gy+w5sppLcyKRra9IZJ98hTvciop9MPSSFUwGTnEjHICsgpyKHYHzjquWMvrJ+wewUENPFjCIAx\ +-k3uStyIMbw5FVieWJvJpBE5kgqq+X1VcPGdRcfHMxSUluSUlJbmlUZ+1tKRkLRGVnrZ9Rw12rSLt\ +-sDpFg8vmfbpw0HH3wcuMMSaiao2XAbwMjPFhPL/ReN6DfsY8tHHekN0WXR929vqsCpWruFshPEqF\ +-o3IyADuWTxgea1rYTbRVeEMmc+SnCwp+OcB4l3kmLq0D4BnzkA/MMUBjvDMXC1DBqlkCFr9N9E//\ +-HIZpPyDsQVuTFwsMfP273k8GFeLbvo9izwe8DGA8VMPgIc/D2piALlPFDGWUMqNuazOun/RbeQU7\ +-L/zl0cfC+SPOXjG84NBRawCvJNoSE7PiBgr5Xx/MKf7jLnzIbUPKlHVF5C11KgJfD9+shY8Vxjd3\ +-0780rEvP8bFDDvnVQGO+lU5MeTDwzM5aTbOzNyrw/XNbWx9JFLknk+sjqjobUHJq9XS/cNj3jZcZ\ +-Ac9PwBIDyAeMD2O8RhhvpTFYqYpGqMQOM2UhlFOhsvjfgNJ6ofxyoZaXbHPt8mDNjDU9ACYBbyGA\ +-AT/KZEZ/MpO5qciYyRlgROeJGSh0nQCL21Ufmx4EL8dMpqScRt4DFVAAYMCtORx+0Rhz7aFF+GJB\ +-BmNM/JKklGo1KlBtHZ474U79P9hZOZcQYb0unD/mwu05qADCZwE4C8Y7I3kTk4kFx+mUuzfMKf5e\ +-+rn+rUMq4PR4hFII0gw0xpdvGAWGoDqHf9m8IuV8m2Qtf1pQMPok37+50JhpHlC8EzwRcAzwOqs+\ +-Vkv06I+da04nInd3RvuxgCIAhcUTF5zvFQ79oucP+Cy8zIjE6qQnt5Pviu5IqAogVKNCNSrBUte6\ +-blnrqi/Vo3O9rI3Pc7cbP6sgGQcAf7rvl3zK908uBKjAGK5jrrmNKKHj/RS3E6L3V2USLUzkZAB4\ +-i75pTivwwQMyoKYQ685+QOtScvzUHPbIlJ54ZVsuDPTrZDmnQqUQggo1qkoNRDyFeJ6XGQfjF0fW\ +-3O9YWxW6adNzw36Dzm/JKEJ0k7QgtfiSygd1vSrkdZ3jlb6fneT7Y+MN1xrmVX9gbkw9q1MdsemF\ +-U5wkpwqSRSw49gfZAcPPHOsVlIww/sBjjPEVnqfGZEQlWKVCjWK31TW/dv56pCruU126TGxPl+US\ +-IrAgNQ7TQ+pNukQqfalLNimApvMt6CZMTvsiu3VOJ17XnrNWZ9m85oK8Qmz4sFB+CeXrF29dfOqG\ +-1PwKs6fOKyvKjrnb8wrHGD8TWfCOEoX85zb96dgXY9leN2NM+y3SJZG4u7XsSldIykFPz09NHxbR\ +-T2U3M11AsKf8aRqtnBqQoG91oWkGOS0/XaQo2Pf3u5mUDK9LukD7Mv5Tv9teSQ4VzipsINUtW9Zc\ +-t/mFiRu7WbcOuQNP+MXQ4hGX3mEKBl1mjB9bbwAqSz6cf+TZ8Qaabta/u6hM92ItpZs5dvyor5R/\ +-dwvp9QAa6eFzfxRlpVMk2mXh93czeyPn1Bn5ShWtYAJsyEve+OPgC7Hzmgx3USDtejQedlbtDX7h\ +-0Ns6HChV5LcvP7rpb1+qx/690dHrtewL05c2c7ZLtrM91fOpDGjXyvT9+WYBPQAg3NPcey1n4vVt\ +-FUJSIfGNjJZNy2ekkqzpazIJOefSoTaA9q1VY+5Wbvs9NAoYVBkFh5Sesi9lJ/u6lt5+WETpoi2M\ +-PpZU/k9szmKGtVGRWBjQ6g3zP78pxfSGKb+tJ4LPAsi31S/+uXCUlVZmCIc+DlI15L4Cpr/1FA1d\ +-0VLqAilzgcCGChdQc5eoTXqpkNS66hv1YLsUElURiG1sOZj7lunf3v3fwlBKjRfX9EjEHKcscV98\ +-D40zRKIqgEpz4yvTVnfjU/VbmL/r4yhwTTbPCNsZNi8g50/OnvbCsXu5wQqVURCBuOb7seu98n7A\ +-/L23Tc8NX8mW6pL73UoOhYPH/GJv/I7Dzlqbg5pRUG1q++A//+Ng+4f9gDlATVzLHfErZiHioKrn\ +-H37uhgeG597sdYnIYeeszypQqQawre9dHNbd0Yj9/5KnfsB8DJpuXXj8Q+ryj3dUZglD1Uz3MsWv\ +-HX7uh1fv6QGHn7upAmrWQpEV2zSt+bVptamw+6C9VaP/hcoHrvkABgydUjPLywy6Oboh6HW6PgLj\ +-LYqStqYRQHKDMQflMhXOQrnata27tvGvufrEn8ZBfmdPP2AO7NpmAAw85B8qTyjKlt1svAHTjPGL\ +-k4w0jAcTAyllnBoh9Kxw/tEdS8cuT0WyH4vX1PYD5qMBzQDE2eFDxz09zsscWuwVHX6a8YwaFAiM\ +-NAkHr4vdUdf82rQN6JwnSl4N4vAxeKdxP2A+mjXuKTvcXcY9TdOnyxPk4zKZ/vbRAqe75C3QfZZY\ +-0P/y6/7299z+H4QrdGsoib8JAAAAAElFTkSuQmCC" ++ "DuckDuckGo HTML": { ++ image: "data:image/png;base64," + ++ "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" + } + }; + +-// The process of adding a new default snippet involves: +-// * add a new entity to aboutHome.dtd +-// * add a for it in aboutHome.xhtml +-// * add an entry here in the proper ordering (based on spans) +-// The part of the snippet will be linked to the corresponding url. +-const DEFAULT_SNIPPETS_URLS = [ +- "https://www.mozilla.org/firefox/features/?utm_source=snippet&utm_medium=snippet&utm_campaign=default+feature+snippet" +-, "https://addons.mozilla.org/firefox/?utm_source=snippet&utm_medium=snippet&utm_campaign=addons" +-]; +- +-const SNIPPETS_UPDATE_INTERVAL_MS = 86400000; // 1 Day. +- +-// IndexedDB storage constants. +-const DATABASE_NAME = "abouthome"; +-const DATABASE_VERSION = 1; +-const SNIPPETS_OBJECTSTORE_NAME = "snippets"; +- + // This global tracks if the page has been set up before, to prevent double inits + let gInitialized = false; + let gObserver = new MutationObserver(function (mutations) { +@@ -158,7 +48,6 @@ + if (mutation.attributeName == "searchEngineName") { + setupSearchEngine(); + if (!gInitialized) { +- ensureSnippetsMapThen(loadSnippets); + gInitialized = true; + } + return; +@@ -183,117 +72,6 @@ + window.removeEventListener("resize", fitToWidth); + }); + +-// This object has the same interface as Map and is used to store and retrieve +-// the snippets data. It is lazily initialized by ensureSnippetsMapThen(), so +-// be sure its callback returned before trying to use it. +-let gSnippetsMap; +-let gSnippetsMapCallbacks = []; +- +-/** +- * Ensure the snippets map is properly initialized. +- * +- * @param aCallback +- * Invoked once the map has been initialized, gets the map as argument. +- * @note Snippets should never directly manage the underlying storage, since +- * it may change inadvertently. +- */ +-function ensureSnippetsMapThen(aCallback) +-{ +- if (gSnippetsMap) { +- aCallback(gSnippetsMap); +- return; +- } +- +- // Handle multiple requests during the async initialization. +- gSnippetsMapCallbacks.push(aCallback); +- if (gSnippetsMapCallbacks.length > 1) { +- // We are already updating, the callbacks will be invoked when done. +- return; +- } +- +- let invokeCallbacks = function () { +- if (!gSnippetsMap) { +- gSnippetsMap = Object.freeze(new Map()); +- } +- +- for (let callback of gSnippetsMapCallbacks) { +- callback(gSnippetsMap); +- } +- gSnippetsMapCallbacks.length = 0; +- } +- +- let openRequest = indexedDB.open(DATABASE_NAME, DATABASE_VERSION); +- +- openRequest.onerror = function (event) { +- // Try to delete the old database so that we can start this process over +- // next time. +- indexedDB.deleteDatabase(DATABASE_NAME); +- invokeCallbacks(); +- }; +- +- openRequest.onupgradeneeded = function (event) { +- let db = event.target.result; +- if (!db.objectStoreNames.contains(SNIPPETS_OBJECTSTORE_NAME)) { +- db.createObjectStore(SNIPPETS_OBJECTSTORE_NAME); +- } +- } +- +- openRequest.onsuccess = function (event) { +- let db = event.target.result; +- +- db.onerror = function (event) { +- invokeCallbacks(); +- } +- +- db.onversionchange = function (event) { +- event.target.close(); +- invokeCallbacks(); +- } +- +- let cache = new Map(); +- let cursorRequest = db.transaction(SNIPPETS_OBJECTSTORE_NAME) +- .objectStore(SNIPPETS_OBJECTSTORE_NAME).openCursor(); +- cursorRequest.onerror = function (event) { +- invokeCallbacks(); +- } +- +- cursorRequest.onsuccess = function(event) { +- let cursor = event.target.result; +- +- // Populate the cache from the persistent storage. +- if (cursor) { +- cache.set(cursor.key, cursor.value); +- cursor.continue(); +- return; +- } +- +- // The cache has been filled up, create the snippets map. +- gSnippetsMap = Object.freeze({ +- get: function (aKey) cache.get(aKey), +- set: function (aKey, aValue) { +- db.transaction(SNIPPETS_OBJECTSTORE_NAME, "readwrite") +- .objectStore(SNIPPETS_OBJECTSTORE_NAME).put(aValue, aKey); +- return cache.set(aKey, aValue); +- }, +- has: function (aKey) cache.has(aKey), +- delete: function (aKey) { +- db.transaction(SNIPPETS_OBJECTSTORE_NAME, "readwrite") +- .objectStore(SNIPPETS_OBJECTSTORE_NAME).delete(aKey); +- return cache.delete(aKey); +- }, +- clear: function () { +- db.transaction(SNIPPETS_OBJECTSTORE_NAME, "readwrite") +- .objectStore(SNIPPETS_OBJECTSTORE_NAME).clear(); +- return cache.clear(); +- }, +- get size() cache.size +- }); +- +- setTimeout(invokeCallbacks, 0); +- } +- } +-} +- + function onSearchSubmit(aEvent) + { + let searchTerms = document.getElementById("searchText").value; +@@ -352,147 +130,6 @@ + document.dispatchEvent(event); + } + +-/** +- * Update the local snippets from the remote storage, then show them through +- * showSnippets. +- */ +-function loadSnippets() +-{ +- if (!gSnippetsMap) +- throw new Error("Snippets map has not properly been initialized"); +- +- // Allow tests to modify the snippets map before using it. +- var event = new CustomEvent("AboutHomeLoadSnippets", {bubbles:true}); +- document.dispatchEvent(event); +- +- // Check cached snippets version. +- let cachedVersion = gSnippetsMap.get("snippets-cached-version") || 0; +- let currentVersion = document.documentElement.getAttribute("snippetsVersion"); +- if (cachedVersion < currentVersion) { +- // The cached snippets are old and unsupported, restart from scratch. +- gSnippetsMap.clear(); +- } +- +- // Check last snippets update. +- let lastUpdate = gSnippetsMap.get("snippets-last-update"); +- let updateURL = document.documentElement.getAttribute("snippetsURL"); +- let shouldUpdate = !lastUpdate || +- Date.now() - lastUpdate > SNIPPETS_UPDATE_INTERVAL_MS; +- if (updateURL && shouldUpdate) { +- // Try to update from network. +- let xhr = new XMLHttpRequest(); +- try { +- xhr.open("GET", updateURL, true); +- } catch (ex) { +- showSnippets(); +- loadSucceeded(); +- return; +- } +- // Even if fetching should fail we don't want to spam the server, thus +- // set the last update time regardless its results. Will retry tomorrow. +- gSnippetsMap.set("snippets-last-update", Date.now()); +- xhr.onerror = function (event) { +- showSnippets(); +- }; +- xhr.onload = function (event) +- { +- if (xhr.status == 200) { +- gSnippetsMap.set("snippets", xhr.responseText); +- gSnippetsMap.set("snippets-cached-version", currentVersion); +- } +- showSnippets(); +- loadSucceeded(); +- }; +- xhr.send(null); +- } else { +- showSnippets(); +- loadSucceeded(); +- } +-} +- +-/** +- * Shows locally cached remote snippets, or default ones when not available. +- * +- * @note: snippets should never invoke showSnippets(), or they may cause +- * a "too much recursion" exception. +- */ +-let _snippetsShown = false; +-function showSnippets() +-{ +- let snippetsElt = document.getElementById("snippets"); +- +- // Show about:rights notification, if needed. +- let showRights = document.documentElement.getAttribute("showKnowYourRights"); +- if (showRights) { +- let rightsElt = document.getElementById("rightsSnippet"); +- let anchor = rightsElt.getElementsByTagName("a")[0]; +- anchor.href = "about:rights"; +- snippetsElt.appendChild(rightsElt); +- rightsElt.removeAttribute("hidden"); +- return; +- } +- +- if (!gSnippetsMap) +- throw new Error("Snippets map has not properly been initialized"); +- if (_snippetsShown) { +- // There's something wrong with the remote snippets, just in case fall back +- // to the default snippets. +- showDefaultSnippets(); +- throw new Error("showSnippets should never be invoked multiple times"); +- } +- _snippetsShown = true; +- +- let snippets = gSnippetsMap.get("snippets"); +- // If there are remotely fetched snippets, try to to show them. +- if (snippets) { +- // Injecting snippets can throw if they're invalid XML. +- try { +- snippetsElt.innerHTML = snippets; +- // Scripts injected by innerHTML are inactive, so we have to relocate them +- // through DOM manipulation to activate their contents. +- Array.forEach(snippetsElt.getElementsByTagName("script"), function(elt) { +- let relocatedScript = document.createElement("script"); +- relocatedScript.type = "text/javascript;version=1.8"; +- relocatedScript.text = elt.text; +- elt.parentNode.replaceChild(relocatedScript, elt); +- }); +- return; +- } catch (ex) { +- // Bad content, continue to show default snippets. +- } +- } +- +- showDefaultSnippets(); +-} +- +-/** +- * Clear snippets element contents and show default snippets. +- */ +-function showDefaultSnippets() +-{ +- // Clear eventual contents... +- let snippetsElt = document.getElementById("snippets"); +- snippetsElt.innerHTML = ""; +- +- // ...then show default snippets. +- let defaultSnippetsElt = document.getElementById("defaultSnippets"); +- let entries = defaultSnippetsElt.querySelectorAll("span"); +- // Choose a random snippet. Assume there is always at least one. +- let randIndex = Math.floor(Math.random() * entries.length); +- let entry = entries[randIndex]; +- // Inject url in the eventual link. +- if (DEFAULT_SNIPPETS_URLS[randIndex]) { +- let links = entry.getElementsByTagName("a"); +- // Default snippets can have only one link, otherwise something is messed +- // up in the translation. +- if (links.length == 1) { +- links[0].href = DEFAULT_SNIPPETS_URLS[randIndex]; +- } +- } +- // Move the default snippet to the snippets element. +- snippetsElt.appendChild(entry); +-} +- + function fitToWidth() { + if (window.scrollMaxX) { + document.body.setAttribute("narrow", "true"); +diff -Nur mozilla-release.orig/browser/base/content/abouthome/aboutHome.xhtml mozilla-release/browser/base/content/abouthome/aboutHome.xhtml +--- mozilla-release.orig/browser/base/content/abouthome/aboutHome.xhtml 2014-06-05 22:15:17.000000000 -0300 ++++ mozilla-release/browser/base/content/abouthome/aboutHome.xhtml 2014-06-11 23:51:17.789464976 -0300 +@@ -43,15 +43,6 @@ + + + +- +-

+
+ +@@ -67,6 +58,6 @@ + +
+ +-
++ + + +diff -Nur mozilla-release.orig/browser/base/jar.mn mozilla-release/browser/base/jar.mn +--- mozilla-release.orig/browser/base/jar.mn 2014-06-05 22:15:17.000000000 -0300 ++++ mozilla-release/browser/base/jar.mn 2014-06-11 23:51:17.812798511 -0300 +@@ -32,7 +32,7 @@ + content/browser/abouthome/settings.png (content/abouthome/settings.png) + content/browser/abouthome/restore.png (content/abouthome/restore.png) + content/browser/abouthome/restore-large.png (content/abouthome/restore-large.png) +- content/browser/abouthome/mozilla.png (content/abouthome/mozilla.png) ++ content/browser/abouthome/gnu_headshadow.png (content/abouthome/gnu_headshadow.png) + content/browser/abouthome/snippet1@2x.png (content/abouthome/snippet1@2x.png) + content/browser/abouthome/snippet2@2x.png (content/abouthome/snippet2@2x.png) + content/browser/abouthome/downloads@2x.png (content/abouthome/downloads@2x.png) +@@ -44,7 +44,6 @@ + content/browser/abouthome/settings@2x.png (content/abouthome/settings@2x.png) + content/browser/abouthome/restore@2x.png (content/abouthome/restore@2x.png) + content/browser/abouthome/restore-large@2x.png (content/abouthome/restore-large@2x.png) +- content/browser/abouthome/mozilla@2x.png (content/abouthome/mozilla@2x.png) + #ifdef MOZ_SERVICES_HEALTHREPORT + content/browser/abouthealthreport/abouthealth.xhtml (content/abouthealthreport/abouthealth.xhtml) + content/browser/abouthealthreport/abouthealth.js (content/abouthealthreport/abouthealth.js) +diff -Nur mozilla-release.orig/browser/locales/en-US/chrome/browser/aboutHome.dtd mozilla-release/browser/locales/en-US/chrome/browser/aboutHome.dtd +--- mozilla-release.orig/browser/locales/en-US/chrome/browser/aboutHome.dtd 2014-06-05 22:15:18.000000000 -0300 ++++ mozilla-release/browser/locales/en-US/chrome/browser/aboutHome.dtd 2014-06-11 23:51:17.836132046 -0300 +@@ -13,17 +13,6 @@ + + + +- +-latest features."> +- +-Choose from thousands of add-ons."> +- +-Know your rights…"> +- + + + +diff -Nur mozilla-release.orig/browser/locales/en-US/chrome/browser-region/region.properties mozilla-release/browser/locales/en-US/chrome/browser-region/region.properties +--- mozilla-release.orig/browser/locales/en-US/chrome/browser-region/region.properties 2014-07-16 22:45:07.000000000 -0300 ++++ mozilla-release/browser/locales/en-US/chrome/browser-region/region.properties 2014-07-23 13:32:03.204266405 -0300 +@@ -3,17 +3,12 @@ + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + + # Default search engine +-browser.search.defaultenginename=Google ++browser.search.defaultenginename=DuckDuckGo HTML + + # Search engine order (order displayed in the search bar dropdown)s +-browser.search.order.1=Google +-browser.search.order.2=Yahoo +-browser.search.order.3=Bing +- +-# This is the default set of web based feed handlers shown in the reader +-# selection UI +-browser.contentHandlers.types.0.title=My Yahoo! +-browser.contentHandlers.types.0.uri=https://add.my.yahoo.com/rss?url=%s ++browser.search.order.1=DuckDuckGo HTML ++browser.search.order.2=DuckDuckGo Lite ++browser.search.order.3=Seeks Search + + # increment this number when anything gets changed in the list below. This will + # cause Firefox to re-read these prefs and inject any new handlers into the +@@ -22,20 +17,10 @@ + # don't make any spelling errors here. + gecko.handlerService.defaultHandlersVersion=4 + +-# The default set of protocol handlers for webcal: +-gecko.handlerService.schemes.webcal.0.name=30 Boxes +-gecko.handlerService.schemes.webcal.0.uriTemplate=https://30boxes.com/external/widget?refer=ff&url=%s +- +-# The default set of protocol handlers for mailto: +-gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail +-gecko.handlerService.schemes.mailto.0.uriTemplate=https://compose.mail.yahoo.com/?To=%s +-gecko.handlerService.schemes.mailto.1.name=Gmail +-gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s +- + # The default set of protocol handlers for irc: +-gecko.handlerService.schemes.irc.0.name=Mibbit +-gecko.handlerService.schemes.irc.0.uriTemplate=https://www.mibbit.com/?url=%s ++gecko.handlerService.schemes.irc.0.name=Freenode Web IRC ++gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net + + # The default set of protocol handlers for ircs: +-gecko.handlerService.schemes.ircs.0.name=Mibbit +-gecko.handlerService.schemes.ircs.0.uriTemplate=https://www.mibbit.com/?url=%s ++gecko.handlerService.schemes.ircs.0.name=Freenode Web IRC ++gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net +diff -Nur mozilla-release.orig/browser/locales/generic/profile/bookmarks.html.in mozilla-release/browser/locales/generic/profile/bookmarks.html.in +--- mozilla-release.orig/browser/locales/generic/profile/bookmarks.html.in 2014-06-05 22:15:18.000000000 -0300 ++++ mozilla-release/browser/locales/generic/profile/bookmarks.html.in 2014-06-11 23:51:17.869465669 -0300 +@@ -15,13 +15,20 @@ +

@bookmarks_toolbarfolder@

+
@bookmarks_toolbarfolder_description@ +

+-

@getting_started@ ++
Parabola GNU/Linux-libre +

+-

@firefox_heading@

++

Parabola GNU/Linux-libre

+

+-

@firefox_help@ +-
@firefox_customize@ +-
@firefox_community@ +-
@firefox_about@ ++
Parabola GNU/Linux-libre ++
Parabola GNU/Linux-libre Packages ++
Parabola GNU/Linux-libre Wiki ++
Parabola GNU/Linux-libre Labs ++

++

Free Software Foundation

++

++

Free Software Foundation ++
LibrePlanet ++
Free addons ++
h-node +

+

+diff -Nur mozilla-release.orig/browser/modules/AboutHome.jsm mozilla-release/browser/modules/AboutHome.jsm +--- mozilla-release.orig/browser/modules/AboutHome.jsm 2014-06-05 22:15:18.000000000 -0300 ++++ mozilla-release/browser/modules/AboutHome.jsm 2014-06-11 23:51:17.926132826 -0300 +@@ -8,7 +8,7 @@ + let Ci = Components.interfaces; + let Cu = Components.utils; + +-this.EXPORTED_SYMBOLS = [ "AboutHomeUtils", "AboutHome" ]; ++this.EXPORTED_SYMBOLS = [ "AboutHome" ]; + + Components.utils.import("resource://gre/modules/XPCOMUtils.jsm"); + Components.utils.import("resource://gre/modules/Services.jsm"); +@@ -18,66 +18,6 @@ + XPCOMUtils.defineLazyModuleGetter(this, "fxAccounts", + "resource://gre/modules/FxAccounts.jsm"); + +-// Url to fetch snippets, in the urlFormatter service format. +-const SNIPPETS_URL_PREF = "browser.aboutHomeSnippets.updateUrl"; +- +-// Should be bumped up if the snippets content format changes. +-const STARTPAGE_VERSION = 4; +- +-this.AboutHomeUtils = { +- get snippetsVersion() STARTPAGE_VERSION, +- +- /* +- * showKnowYourRights - Determines if the user should be shown the +- * about:rights notification. The notification should *not* be shown if +- * we've already shown the current version, or if the override pref says to +- * never show it. The notification *should* be shown if it's never been seen +- * before, if a newer version is available, or if the override pref says to +- * always show it. +- */ +- get showKnowYourRights() { +- // Look for an unconditional override pref. If set, do what it says. +- // (true --> never show, false --> always show) +- try { +- return !Services.prefs.getBoolPref("browser.rights.override"); +- } catch (e) { } +- // Ditto, for the legacy EULA pref. +- try { +- return !Services.prefs.getBoolPref("browser.EULA.override"); +- } catch (e) { } +- +-#ifndef MOZILLA_OFFICIAL +- // Non-official builds shouldn't show the notification. +- return false; +-#endif +- +- // Look to see if the user has seen the current version or not. +- var currentVersion = Services.prefs.getIntPref("browser.rights.version"); +- try { +- return !Services.prefs.getBoolPref("browser.rights." + currentVersion + ".shown"); +- } catch (e) { } +- +- // Legacy: If the user accepted a EULA, we won't annoy them with the +- // equivalent about:rights page until the version changes. +- try { +- return !Services.prefs.getBoolPref("browser.EULA." + currentVersion + ".accepted"); +- } catch (e) { } +- +- // We haven't shown the notification before, so do so now. +- return true; +- } +-}; +- +-/** +- * Returns the URL to fetch snippets from, in the urlFormatter service format. +- */ +-XPCOMUtils.defineLazyGetter(AboutHomeUtils, "snippetsURL", function() { +- let updateURL = Services.prefs +- .getCharPref(SNIPPETS_URL_PREF) +- .replace("%STARTPAGE_VERSION%", STARTPAGE_VERSION); +- return Services.urlFormatter.formatURL(updateURL); +-}); +- + /** + * This code provides services to the about:home page. Whenever + * about:home needs to do something chrome-privileged, it sends a +@@ -202,18 +142,9 @@ + ss.promiseInitialized.then(function() { + let data = { + showRestoreLastSession: ss.canRestoreLastSession, +- snippetsURL: AboutHomeUtils.snippetsURL, +- showKnowYourRights: AboutHomeUtils.showKnowYourRights, +- snippetsVersion: AboutHomeUtils.snippetsVersion, + defaultEngineName: Services.search.defaultEngine.name + }; + +- if (AboutHomeUtils.showKnowYourRights) { +- // Set pref to indicate we've shown the notification. +- let currentVersion = Services.prefs.getIntPref("browser.rights.version"); +- Services.prefs.setBoolPref("browser.rights." + currentVersion + ".shown", true); +- } +- + if (target) { + target.messageManager.sendAsyncMessage("AboutHome:Update", data); + } else { +diff -Nur mozilla-release.orig/modules/libpref/src/init/all.js mozilla-release/modules/libpref/src/init/all.js +--- mozilla-release.orig/modules/libpref/src/init/all.js 2014-09-03 04:25:46.017695291 -0300 ++++ mozilla-release/modules/libpref/src/init/all.js 2014-09-03 04:44:10.801521540 -0300 +@@ -4268,19 +4268,6 @@ + // Number of stack frames to capture in createObjectURL for about:memory. + pref("memory.blob_report.stack_frames", 0); + +-// comma separated list of domain origins (e.g. https://domain.com) for +-// providers that can install from their own website without user warnings. +-// entries are +-pref("social.whitelist", "https://mozsocial.cliqz.com,https://now.msn.com,https://mixi.jp"); +-// comma separated list of domain origins (e.g. https://domain.com) for +-// directory websites (e.g. AMO) that can install providers for other sites +-pref("social.directories", "https://activations.cdn.mozilla.net"); +-// remote-install allows any website to activate a provider, with extended UI +-// notifying user of installation. we can later pref off remote install if +-// necessary. This does not affect whitelisted and directory installs. +-pref("social.remote-install.enabled", true); +-pref("social.toast-notifications.enabled", true); +- + // Disable idle observer fuzz, because only privileged content can access idle + // observers (bug 780507). + pref("dom.idle-observers-api.fuzz_time.disabled", true); diff --git a/libre/iceweasel/mozconfig b/libre/iceweasel/mozconfig new file mode 100644 index 000000000..37ad56fda --- /dev/null +++ b/libre/iceweasel/mozconfig @@ -0,0 +1,40 @@ +. $topsrcdir/browser/config/mozconfig + +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib + +# Iceweasel +ac_add_options --disable-official-branding +ac_add_options --with-branding=debian/branding + +# System libraries +ac_add_options --with-system-nspr +ac_add_options --with-system-nss +ac_add_options --with-system-jpeg +ac_add_options --with-system-zlib +ac_add_options --with-system-bz2 +ac_add_options --with-system-png +ac_add_options --with-system-libevent +ac_add_options --with-system-libvpx +ac_add_options --with-system-icu +ac_add_options --enable-system-hunspell +ac_add_options --enable-system-sqlite +ac_add_options --enable-system-ffi +#ac_add_options --enable-system-cairo +ac_add_options --enable-system-pixman + +# Features +ac_add_options --enable-startup-notification +ac_add_options --enable-pulseaudio +ac_add_options --enable-gstreamer=1.0 + +ac_add_options --disable-crashreporter +ac_add_options --disable-updater +ac_add_options --disable-installer +ac_add_options --disable-debug-symbols + +# Parabola features +ac_add_options --disable-safe-browsing + +# Other +mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/moz-objdir diff --git a/libre/iceweasel/mozconfig.pgo b/libre/iceweasel/mozconfig.pgo new file mode 100644 index 000000000..71ba205a4 --- /dev/null +++ b/libre/iceweasel/mozconfig.pgo @@ -0,0 +1,3 @@ + +# PGO +mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 $(MAKE) -C $(MOZ_OBJDIR) pgo-profile-run' diff --git a/libre/iceweasel/vendor.js b/libre/iceweasel/vendor.js new file mode 100644 index 000000000..78b5eeb45 --- /dev/null +++ b/libre/iceweasel/vendor.js @@ -0,0 +1,22 @@ +// Use LANG environment variable to choose locale +pref("intl.locale.matchOS", true); + +// Disable default browser checking. +pref("browser.shell.checkDefaultBrowser", false); + +// Don't disable our bundled extensions in the application directory +pref("extensions.autoDisableScopes", 11); +pref("extensions.shownSelectionUI", true); + +// Make sure that safebrowsing is disabled +pref("browser.safebrowsing.enabled", false); +pref("browser.safebrowsing.malware.enabled", false); + +// Disable localstorage for privacy reasons. +pref("dom.storage.enabled", false); + +// Disable missing nonfree flash notification +pref("plugins.notifyMissingFlash", false); + +// Disable "alt" as a shortcut key to open full menu bar. Conflicts with "alt" as a modifier +pref("ui.key.menuAccessKeyFocuses", false); -- cgit v1.2.3