diff options
Diffstat (limited to 'nonprism/pidgin/PKGBUILD')
-rw-r--r-- | nonprism/pidgin/PKGBUILD | 150 |
1 files changed, 89 insertions, 61 deletions
diff --git a/nonprism/pidgin/PKGBUILD b/nonprism/pidgin/PKGBUILD index 3baaaae49..cffffaacb 100644 --- a/nonprism/pidgin/PKGBUILD +++ b/nonprism/pidgin/PKGBUILD @@ -1,78 +1,99 @@ -# $Id: PKGBUILD 290450 2017-03-10 02:57:28Z foutrelis $ -# Maintainer (Arch): Evangelos Foutras <evangelos@foutrelis.com> -# Contributor (Arch): Ionut Biru <ibiru@archlinux.org> -# Contributor (Arch): Andrea Scarpino <andrea@archlinux.org> -# Contributor (Arch): Alexander Fehr <pizzapunk gmail com> -# Contributor (Arch): Lucien Immink <l.immink@student.fnt.hvu.nl> -# Maintainer: André Silva <emulatorman@hyperbola.info> +# Maintainer (arch): Evangelos Foutras <evangelos@foutrelis.com> +# Contributor: Ionut Biru <ibiru@archlinux.org> +# Contributor: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Alexander Fehr <pizzapunk gmail com> +# Contributor: Lucien Immink <l.immink@student.fnt.hvu.nl> +# Contributor: André Silva <emulatorman@hyperbola.info> # Contributor: Márcio Silva <coadde@hyperbola.info> +# Contributor: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - remove modules for and artwork non-privacy-respecting services +# - generate and install doxygen API docs (upstream no longer publishes them) + pkgname=('pidgin' 'libpurple' 'finch') -pkgver=2.13.0 -pkgrel=9.nonprism1 -arch=('i686' 'x86_64' 'armv7h') +pkgver=2.14.4 +# _libnsl_ver=3 # WIP - pin to coupled dependency versions +pkgrel=1 +pkgrel+=.nonprism3 +arch=('x86_64') +arch+=('armv7h' 'i686') url="https://pidgin.im/" license=('GPL') makedepends=('startup-notification' 'gtkspell' 'libxss' 'nss' 'libsasl' 'libsm' - 'libidn' 'python' 'hicolor-icon-theme' 'farstream' 'tk' - 'libnsl' 'avahi' 'ca-certificates' 'intltool' 'libnm' 'dbus-glib') -source=(https://bitbucket.org/pidgin/main/downloads/$pkgname-$pkgver.tar.bz2{,.asc} - purple-remote-python3.patch - pidgin-python-3.8.patch - pidgin-nm-1.0.patch - nonprism.patch) - -sha256sums=('2747150c6f711146bddd333c496870bfd55058bab22ffb7e4eb784018ec46d8f' - 'SKIP' - '4eb6be9310e4d5d1b906b1d579c395000ee0af6d6f5056307233512151d1f4b1' - 'afc824771b7409859f06b18f88ed9db97e90e3a5b10e5bab60f880c19f058c4f' - 'ca00ab0f502690f7a1551020dfc9a0119edf1eabaae9127658313d6635acda33' - '7024ead994efd4fe0fb404db92ff4358ba2dfa83d31a1871818faf2894744f97') -validpgpkeys=('364E2EB38EA6A8D61FB963AD75FE259AA8AC8032') # Gary Kramlich (grim) <grim@reaperworld.com> + 'libidn' 'libgadu' 'python' 'hicolor-icon-theme' 'farstream' 'tk' + 'libnsl' 'avahi' 'ca-certificates' 'intltool' 'libnm' 'dbus-glib' + 'libgnt' 'libxcrypt') +makedepends=(${makedepends[*]/libgadu}) +makedepends+=(doxygen) +# WIP - pin to coupled dependency versions +# depends=( ${depends[*]/libnsl/libnsl>=${_libnsl_ver}} ) # pin to coupled dependency versions +# depends+=( ${depends[*]/libnsl/libnsl.so} ) # pin to coupled dependency versions +depends+=( libnsl.so ) # WIP - pin to coupled dependency versions +options=('!emptydirs') +source=(https://downloads.sourceforge.net/project/pidgin/Pidgin/$pkgver/$pkgname-$pkgver.tar.bz2{,.asc}) +source+=(remove-services.patch) +sha256sums=('67c1a0104b0624a50100c6d73cd5504d53c9d221922b1b28fa86020531a9904e' + 'SKIP') +sha256sums+=('49b54d48ada9008b88c16af0cb059f307a2e90ad81a2d0f9f727cf573784962e') +validpgpkeys=('40DE1DC7288FE3F50AB938C548F66AFFD9BDB729') # Gary Kramlich <grim@reaperworld.com> + prepare() { cd $pkgbase-$pkgver - # https://developer.pidgin.im/ticket/17065 - patch -Np1 -i ../purple-remote-python3.patch - # Fix networkmanager 1.0 detection (Fedora) - patch -p1 -i ../pidgin-nm-1.0.patch - # Fix build with python 3.8 - patch -p1 -i ../pidgin-python-3.8.patch - msg "Remove Google Talk and Facebook protocols" - patch -Np1 -i "$srcdir/nonprism.patch" + # FIXME: option 'subdir-objects' is disabled + autoreconf -fiv + + echo "applying remove-services.patch" + patch -Np1 -i "${srcdir}"/remove-services.patch - msg "Remove wrong OS term" + # replace 'Linux' with 'GNU/Linux' in doc strings + sed -i 's|on Linux|on GNU/Linux|' doc/pidgin.1.in sed -i 's|on Linux|on GNU/Linux|' libpurple/valgrind.h sed -i 's|On Linux|On GNU/Linux|' libpurple/connection.h - autoreconf -vi + # delete icons for removed services + # ASSERT: these correspond to the remove-services.patch changes to pidgin/pixmaps/Makefile.am + # and mutially exclusive to those in 'available_protocols' in build() + local remove_imgs_rx='aim\.|facebook\.|gadu-gadu\.|google-talk\.|icq\.|meanwhile\.|novell\.' + local remove_imgs=$(find pidgin/pixmaps/protocols/ -name '*.png' -or -name '*.svg' | \ + grep -E "${remove_imgs_rx}" ) + rm ${remove_imgs} + rm pidgin/pixmaps/Makefile.in ; automake ; + + # delete references to removed services + local desktop_file=pidgin/data/pidgin.desktop.in + rm ${desktop_file} + sed -i 's|^\(_Comment=\).*|\1Chat over IRC, Jabber/XMPP, and more|' ${desktop_file}.in } build() { cd $pkgbase-$pkgver + local available_protocols='bonjour,irc,jabber,silc,simple,zephyr' ./configure \ + --with-dynamic-prpls=${available_protocols} \ --prefix=/usr \ --sysconfdir=/etc \ --disable-schemas-install \ + --disable-gevolution \ --disable-meanwhile \ --disable-gnutls \ --enable-cyrus-sasl \ - --disable-doxygen \ --enable-nm \ - --with-system-ssl-certs=/etc/ssl/certs \ - --with-dynamic-prpls=bonjour,irc,jabber,silc,simple,zephyr - make + --with-system-ssl-certs=/etc/ssl/certs + make } package_pidgin(){ - pkgdesc="Multi-protocol instant messaging client, without support for unsafe and dangerous for privacy protocols" + pkgdesc="Multi-protocol instant messaging client" + pkgdesc+=", without support for non-privacy-respecting services" depends=('libpurple' 'startup-notification' 'gtkspell' 'libxss' 'libsm' 'gst-plugins-base' 'gst-plugins-good' 'hicolor-icon-theme') optdepends=('aspell: for spelling correction') - conflicts=(${pkgname}-nonprism) - replaces=(${pkgname}-nonprism) cd $pkgbase-$pkgver @@ -85,42 +106,51 @@ package_pidgin(){ # Remove files that are packaged in libpurle make -C libpurple DESTDIR="$pkgdir" uninstall-libLTLIBRARIES + # Remove files that are packaged in finch rm "$pkgdir/usr/share/man/man1/finch.1" - msg "Removing PRISM images" - rm -v "$pkgdir"/usr/share/pixmaps/pidgin/emblems/{16/aol-client.png,scalable/aol-client.svg} - rm -v "$pkgdir"/usr/share/pixmaps/pidgin/protocols/{16,22}/google-talk.png - rm -v "$pkgdir"/usr/share/pixmaps/pidgin/protocols/{16,22,48}/{aim,facebook,gadu-gadu,icq,meanwhile,novell}.png - rm -v "$pkgdir"/usr/share/pixmaps/pidgin/protocols/scalable/{aim,gadu-gadu,google-talk,icq,meanwhile,novell}.svg + # generate doxygen API docs + make docs - msg "Pidgin desktop patching" - sed -i "\|Comment\[|d - s|Supports AIM, Google Talk, Jabber/XMPP, and more|Supports Jabber/XMPP and more| - " "$pkgdir"/usr/share/applications/pidgin.desktop + # https://bugs.archlinux.org/task/53770 + # https://bugs.archlinux.org/task/69026 + find "$pkgdir/usr/lib/perl5" -name perllocal.pod -delete } package_libpurple(){ - pkgdesc="IM library extracted from Pidgin, without support for unsafe and dangerous for privacy protocols" - depends=('farstream' 'libsasl' 'libidn' 'libnsl' 'dbus-glib' 'nss') + pkgdesc="IM library extracted from Pidgin" + pkgdesc+=", without support for non-privacy-respecting services" + depends=('farstream' 'libsasl' 'libidn' 'libnsl' 'libgadu' 'dbus-glib' 'nss' + 'libnm' 'libxcrypt') + depends=(${depends[*]/libgadu}) optdepends=('avahi: Bonjour protocol support' 'ca-certificates: SSL CA certificates' 'python-dbus: for purple-remote and purple-url-handler' 'tk: Tcl/Tk scripting support') - conflicts=(${pkgname}-nonprism) - replaces=(${pkgname}-nonprism) cd $pkgbase-$pkgver for _dir in libpurple share/sounds share/ca-certs m4macros po; do make -C "$_dir" DESTDIR="$pkgdir" install done + + # install doxygen API docs + install -Dm644 doc/html/search/* -t "$pkgdir"/usr/share/gtk-doc/html/pidgin/search/ + rm -rf doc/html/search/ + install -Dm644 doc/html/* -t "$pkgdir"/usr/share/gtk-doc/html/pidgin/ + + # https://bugs.archlinux.org/task/53770 + # https://bugs.archlinux.org/task/69026 + find "$pkgdir/usr/lib/perl5" -name perllocal.pod -delete + + # FIXME: redmine #3465 - error while loading shared libraries: libnsl.so.2: + ln -s libnsl.so "$pkgdir/usr/lib/libnsl.so.2" } package_finch(){ - pkgdesc="A ncurses-based messaging client, without support for unsafe and dangerous for privacy protocols" - depends=('libpurple' 'libx11' 'python') - conflicts=(${pkgname}-nonprism) - replaces=(${pkgname}-nonprism) + pkgdesc="A ncurses-based messaging client" + pkgdesc+=", without support for non-privacy-respecting services" + depends=('libpurple' 'libgnt' 'libx11') cd $pkgbase-$pkgver @@ -135,5 +165,3 @@ package_finch(){ rm "$pkgdir"/usr/share/man/man1/pidgin.1 } - -# vim:set ts=2 sw=2 et: |