Date: Monday, November 9, 2015 @ 15:40:48 Author: bgyorgy Revision: 146428
archrelease: copy trunk to community-any Added: smuxi/repos/community-any/PKGBUILD (from rev 146427, smuxi/trunk/PKGBUILD) smuxi/repos/community-any/boehm.patch (from rev 146427, smuxi/trunk/boehm.patch) smuxi/repos/community-any/smuxi.install (from rev 146427, smuxi/trunk/smuxi.install) Deleted: smuxi/repos/community-any/boehm.patch ---------------+ PKGBUILD | 69 +++++++++++++++++++++++++++++++++++++ boehm.patch | 102 ++++++++++++++++++++++++++++---------------------------- smuxi.install | 11 ++++++ 3 files changed, 131 insertions(+), 51 deletions(-) Copied: smuxi/repos/community-any/PKGBUILD (from rev 146427, smuxi/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2015-11-09 14:40:48 UTC (rev 146428) @@ -0,0 +1,69 @@ +# $Id$ +# Maintainer: Balló György <ballogyor+arch at gmail dot com> +# Contributor: Madek <gonzaloseg...@gmail.com> +# Contributor: Marcelo Cavalcante <marc...@marcelocavalcante.net> +# Contributor: Jens Kleikamp <j...@codes-concepts.com> +# Contributor: Philipp Gildein <r...@openspeak-project.org> + +pkgbase=smuxi +pkgname=('smuxi-server' 'smuxi') +pkgver=1.0 +pkgrel=2 +pkgdesc="User-friendly and cross-platform IRC client for sophisticated users for GNOME/GTK+" +arch=('any') +url="https://smuxi.im/" +license=('GPL') +makedepends=('notify-sharp' 'log4net' 'nini' 'gtkspell' 'stfl' 'intltool') +options=('!emptydirs') +source=(https://smuxi.im/jaws/data/files/$pkgbase-$pkgver.tar.gz + boehm.patch) +md5sums=('8568485702e032d10a70b13a869400a2' + '2b2c372e2c128196083e639a9b91c2f6') + +prepare() { + cd "$srcdir/$pkgbase-$pkgver" + + # Revert broken commit + patch -RNp1 -i ../boehm.patch +} + +build() { + cd "$srcdir/$pkgbase-$pkgver" + + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --enable-frontend-stfl \ + --with-vendor-package-version="Arch Linux $pkgver-$pkgrel" + LANG=C make +} + +package_smuxi-server() { + pkgdesc+=" (common files and server)" + depends=('log4net' 'nini') + cd "$srcdir/$pkgbase-$pkgver" + + make DESTDIR="$pkgdir" install + + # Split frontend + [[ -d $srcdir/frontend ]] && rm -r "$srcdir/frontend/" + mkdir "$srcdir"/frontend + mv "$pkgdir"/usr/bin/smuxi-frontend-{gnome,stfl} \ + "$pkgdir"/usr/lib/pkgconfig/smuxi-frontend.pc \ + "$pkgdir"/usr/lib/smuxi/smuxi-frontend* \ + "$pkgdir"/usr/share/{appdata,applications,icons} \ + "$pkgdir"/usr/share/man/man1/smuxi-frontend* \ + "$srcdir/frontend/" +} + +package_smuxi() { + pkgdesc+=" (frontend)" + depends=('smuxi-server' 'notify-sharp' 'gtkspell' 'stfl') + install=smuxi.install + cd "$srcdir/frontend" + + mkdir -p "$pkgdir"/usr/{bin,lib/{pkgconfig,smuxi},share/man/man1} + mv smuxi-frontend-{gnome,stfl} "$pkgdir/usr/bin" + mv smuxi-frontend.pc "$pkgdir/usr/lib/pkgconfig" + mv smuxi-frontend*.1 "$pkgdir/usr/share/man/man1" + mv smuxi-frontend* "$pkgdir/usr/lib/smuxi" + mv {appdata,applications,icons} "$pkgdir/usr/share" +} Deleted: boehm.patch =================================================================== --- boehm.patch 2015-11-09 14:40:22 UTC (rev 146427) +++ boehm.patch 2015-11-09 14:40:48 UTC (rev 146428) @@ -1,51 +0,0 @@ -commit b4b87f46ec4457ca8da31329bb9f784c6e119fc1 -Author: Mirco Bauer <mee...@meebey.net> -Date: Sat Jun 6 03:15:23 2015 +0200 - - Server, Frontend-GNOME: use Boehm as GC instead of SGen (closes: #1062) - - Mono 3.2.8 (and possibly newer versions) SEGVs in Mono.Data.Sqlite when the GC - is SGen and huge datasets are read from more than one thread at the same time - using different databases. With Boehm this does not happen. Since Smuxi switched - to SQLite by default this is a show stopper for the 1.0 release and thus Boehm - will be used to workaround this issue till the Mono SGen GC or the - Mono.Data.Sqlite binding will be fixed in a later Mono version. Or the used - SQLite binding will be replaced with sqlite-net [0] or Hyena's SQLite binding [1]. - - [0]: https://github.com/praeclarum/sqlite-net - [1]: https://github.com/GNOME/hyena/tree/master/Hyena.Data.Sqlite - -diff --git a/src/Frontend-GNOME/smuxi-frontend-gnome.in b/src/Frontend-GNOME/smuxi-frontend-gnome.in -index 3422198..2c16c35 100644 ---- a/src/Frontend-GNOME/smuxi-frontend-gnome.in -+++ b/src/Frontend-GNOME/smuxi-frontend-gnome.in -@@ -5,6 +5,13 @@ - MONO_TLS_SESSION_CACHE_TIMEOUT=0 - export MONO_TLS_SESSION_CACHE_TIMEOUT - -+# HACK: forcibly disabled SGen, as it has a known SEGV bug related to the -+# Mono.Data.Sqlite binding that does not happen with the boehm GC, see: -+# https://smuxi.im/issues/show/1062 -+MONO_ENV_OPTIONS="$(echo $MONO_ENV_OPTIONS | sed s/--gc=sgen//)" -+MONO_ENV_OPTIONS="--gc=boehm $MONO_ENV_OPTIONS" -+export MONO_ENV_OPTIONS -+ - # Smuxi uses an IPC channel for the single application instance feature and it - # also allows to pass links from commandline to an existing Smuxi instance. This - # IPC channel must be private to the user that executes Smuxi, else other system -diff --git a/src/Server/smuxi-server.in b/src/Server/smuxi-server.in -index 48fc4c9..fbc7b5b 100644 ---- a/src/Server/smuxi-server.in -+++ b/src/Server/smuxi-server.in -@@ -5,4 +5,11 @@ - MONO_TLS_SESSION_CACHE_TIMEOUT=0 - export MONO_TLS_SESSION_CACHE_TIMEOUT - -+# HACK: forcibly disabled SGen, as it has a known SEGV bug related to the -+# Mono.Data.Sqlite binding that does not happen with the boehm GC, see: -+# https://smuxi.im/issues/show/1062 -+MONO_ENV_OPTIONS="$(echo $MONO_ENV_OPTIONS | sed s/--gc=sgen//)" -+MONO_ENV_OPTIONS="--gc=boehm $MONO_ENV_OPTIONS" -+export MONO_ENV_OPTIONS -+ - exec mono --debug "@expanded_libdir@/@PACKAGE@/smuxi-server.exe" "$@" Copied: smuxi/repos/community-any/boehm.patch (from rev 146427, smuxi/trunk/boehm.patch) =================================================================== --- boehm.patch (rev 0) +++ boehm.patch 2015-11-09 14:40:48 UTC (rev 146428) @@ -0,0 +1,51 @@ +commit b4b87f46ec4457ca8da31329bb9f784c6e119fc1 +Author: Mirco Bauer <mee...@meebey.net> +Date: Sat Jun 6 03:15:23 2015 +0200 + + Server, Frontend-GNOME: use Boehm as GC instead of SGen (closes: #1062) + + Mono 3.2.8 (and possibly newer versions) SEGVs in Mono.Data.Sqlite when the GC + is SGen and huge datasets are read from more than one thread at the same time + using different databases. With Boehm this does not happen. Since Smuxi switched + to SQLite by default this is a show stopper for the 1.0 release and thus Boehm + will be used to workaround this issue till the Mono SGen GC or the + Mono.Data.Sqlite binding will be fixed in a later Mono version. Or the used + SQLite binding will be replaced with sqlite-net [0] or Hyena's SQLite binding [1]. + + [0]: https://github.com/praeclarum/sqlite-net + [1]: https://github.com/GNOME/hyena/tree/master/Hyena.Data.Sqlite + +diff --git a/src/Frontend-GNOME/smuxi-frontend-gnome.in b/src/Frontend-GNOME/smuxi-frontend-gnome.in +index 3422198..2c16c35 100644 +--- a/src/Frontend-GNOME/smuxi-frontend-gnome.in ++++ b/src/Frontend-GNOME/smuxi-frontend-gnome.in +@@ -5,6 +5,13 @@ + MONO_TLS_SESSION_CACHE_TIMEOUT=0 + export MONO_TLS_SESSION_CACHE_TIMEOUT + ++# HACK: forcibly disabled SGen, as it has a known SEGV bug related to the ++# Mono.Data.Sqlite binding that does not happen with the boehm GC, see: ++# https://smuxi.im/issues/show/1062 ++MONO_ENV_OPTIONS="$(echo $MONO_ENV_OPTIONS | sed s/--gc=sgen//)" ++MONO_ENV_OPTIONS="--gc=boehm $MONO_ENV_OPTIONS" ++export MONO_ENV_OPTIONS ++ + # Smuxi uses an IPC channel for the single application instance feature and it + # also allows to pass links from commandline to an existing Smuxi instance. This + # IPC channel must be private to the user that executes Smuxi, else other system +diff --git a/src/Server/smuxi-server.in b/src/Server/smuxi-server.in +index 48fc4c9..fbc7b5b 100644 +--- a/src/Server/smuxi-server.in ++++ b/src/Server/smuxi-server.in +@@ -5,4 +5,11 @@ + MONO_TLS_SESSION_CACHE_TIMEOUT=0 + export MONO_TLS_SESSION_CACHE_TIMEOUT + ++# HACK: forcibly disabled SGen, as it has a known SEGV bug related to the ++# Mono.Data.Sqlite binding that does not happen with the boehm GC, see: ++# https://smuxi.im/issues/show/1062 ++MONO_ENV_OPTIONS="$(echo $MONO_ENV_OPTIONS | sed s/--gc=sgen//)" ++MONO_ENV_OPTIONS="--gc=boehm $MONO_ENV_OPTIONS" ++export MONO_ENV_OPTIONS ++ + exec mono --debug "@expanded_libdir@/@PACKAGE@/smuxi-server.exe" "$@" Copied: smuxi/repos/community-any/smuxi.install (from rev 146427, smuxi/trunk/smuxi.install) =================================================================== --- smuxi.install (rev 0) +++ smuxi.install 2015-11-09 14:40:48 UTC (rev 146428) @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +}