diff options
author | Tomas Chvatal (scarabeus) <tomas.chvatal@gmail.com> | 2008-10-30 23:54:38 +0100 |
---|---|---|
committer | Tomas Chvatal (scarabeus) <tomas.chvatal@gmail.com> | 2008-10-30 23:54:38 +0100 |
commit | 417ca9f05458c7b4bfe3529de3cc8e7ae659c5ca (patch) | |
tree | eb4070cae0ef882c82a5efe089af96722706a155 /net-im | |
parent | Initial commit (diff) | |
download | scarabeus-417ca9f05458c7b4bfe3529de3cc8e7ae659c5ca.tar.gz scarabeus-417ca9f05458c7b4bfe3529de3cc8e7ae659c5ca.tar.bz2 scarabeus-417ca9f05458c7b4bfe3529de3cc8e7ae659c5ca.zip |
Initial commit for my messy stuff.
Diffstat (limited to 'net-im')
21 files changed, 946 insertions, 0 deletions
diff --git a/net-im/jabbim/Manifest b/net-im/jabbim/Manifest new file mode 100644 index 0000000..fd8f0da --- /dev/null +++ b/net-im/jabbim/Manifest @@ -0,0 +1,7 @@ +AUX 0.4.3/Makefile 2292 RMD160 6d6b203d063e216b09f9d761b0dae04226517c06 SHA1 6c4fe0b6e96b21f60e50e922673ea5759e02700c SHA256 4bd8c0dd5eb600d12666f15a09162e236a30f805afb4b9a847cee13b65128a26 +AUX 0.4.3/install-files.py 1879 RMD160 9fcd3751959a3979460c99059604ed562b3eb6d0 SHA1 171a49be77c8f97347bf16d7669e683c33650c58 SHA256 a43dc33b9a741668ff014d42c17407ab42624b6f2de5464ca2f12f69eb678c98 +AUX 0.4.3/installation-blacklist 543 RMD160 0c797a0620385005a1314f80b7a001cc0ea7f13b SHA1 a1c3d1f33766f0c09faa6f598401d3b288f563c2 SHA256 08e0e9b18be302c6aba83df738e23fbf356c84d3f9b669aa04b1187516ebcd4a +AUX 0.4.3/jabbim.in 57 RMD160 a003184680ef55bded98ba21a84500d2a4333ffc SHA1 8cd8de970c3ec537d45455ccf5674106637ba692 SHA256 75873e0dbe8c295403622f085a6120e31ef1cdd2ecb17f7d13982dbd0aac7d82 +DIST jabbim-0.4.3.tar.bz2 2047466 RMD160 c07086373f07a1e991d193740c652e107b583b58 SHA1 b50ae2c373dff6fdf56d923f0a88be3b3bfcf678 SHA256 8f1a062edfd23f2a977bf84d4f34f156b4588f9c672090a3b746deafbd98f49e +EBUILD jabbim-0.4.3.ebuild 1101 RMD160 25a89015478e4eb738888612f30f438380fdf67b SHA1 154d09193043631b41a8b72999aa8f98a9ba7ccd SHA256 8d061012baf8ffb955e9628f5f7d67fdeec6bcf896a3104a762e789e86125f0e +EBUILD jabbim-9999.ebuild 960 RMD160 5fb1ef8e4d477a264ab38a220518c84a1cd5b7d2 SHA1 1f9139fadb72750338398ea60d5edd099f70187b SHA256 d9466c810864fd0b6a2c19f1d0f11fb5ea8aa3c0c54d586ea25e2342593dc345 diff --git a/net-im/jabbim/files/0.4.3/Makefile b/net-im/jabbim/files/0.4.3/Makefile new file mode 100644 index 0000000..7f57b89 --- /dev/null +++ b/net-im/jabbim/files/0.4.3/Makefile @@ -0,0 +1,66 @@ +# Hierarchy under which Jabbim can expect to be installed. +# Can be changed on the command line, eg.: +# make PREFIX=/usr +PREFIX = /usr/local + +# But you'd better leave these alone +bindir = $(PREFIX)/bin +datadir = $(PREFIX)/share +jabbimdata = $(datadir)/jabbim + +# Builds generated files +ts_files := $(shell find . -name '*.ts') +qm_files := $(ts_files:.ts=.qm) +build: $(qm_files) jabbim .configured-prefix + +.configured-prefix: jabbim + echo $(PREFIX) > .configured-prefix + +# Fills in the template for the starting script +jabbim: jabbim.in + sed -e "s|@JABBIMDATA@|$(jabbimdata)|g" $< > $@ + +%.qm: %.ts + lrelease-qt4 -compress $< -qm $@ + + +# Installs Jabbim into the system. +# DESTDIR is mainly useful for packagers. +# This variable can be overridden on the command line, eg.: +# make install DESTDIR=/var/tmp/buildroot +DESTDIR = + +configured_prefix = $(shell cat .configured-prefix) +inst_bindir = $(DESTDIR)$(configured_prefix)/bin +inst_datadir = $(DESTDIR)$(configured_prefix)/share +inst_jabbimdata = $(inst_datadir)/jabbim +.PHONY: install +install: build + @echo "configured prefix is $(configured_prefix)" + @[ -n "$(DESTDIR)" ] && echo "DESTDIR is $(DESTDIR)" ||: + @echo "installation bindir is $(inst_bindir)" + @echo "installation datadir is $(inst_datadir)" + @echo "installation jabbimdata is $(inst_jabbimdata)" + python install-files.py -v -b installation-blacklist . "$(inst_jabbimdata)" + @#cp -dR --preserve=mode,timestamps,context,links . "$(DESTDIR)$(inst_jabbimdata)" + install -D -p -m 755 jabbim "$(inst_bindir)/jabbim" + install -D -p -m 644 jabbim.desktop "$(inst_datadir)/applications/jabbim.desktop" + for i in 16 22 32 48 ; do \ + d="$(inst_datadir)/icons/hicolor/$${i}x$${i}/apps" ;\ + install -D -m 644 -p images/$${i}x$${i}/apps/jabbim.png "$$d/jabbim.png" ;\ + done + d="$(inst_datadir)/icons/hicolor/scalable/apps" ;\ + install -D -m 644 -p images/scalable/apps/jabbim.svg "$$d/jabbim.svg" + install -dm 755 $(inst_datadir)/pixmaps + pushd $(inst_datadir)/pixmaps ;\ + ln -sf ../icons/hicolor/48x48/apps/jabbim.png . ;\ + ln -sf ../icons/hicolor/scalable/apps/jabbim.svg . ;\ + popd + @echo Jabbim has been installed. + + +# Removes generated files +.PHONY: clean +clean: + find . \( -name '*.py[co]' -o -name '*.qm' \) -print0 | xargs -0 --no-run-if-empty rm + rm -f jabbim .configured-prefix diff --git a/net-im/jabbim/files/0.4.3/install-files.py b/net-im/jabbim/files/0.4.3/install-files.py new file mode 100644 index 0000000..d5e7278 --- /dev/null +++ b/net-im/jabbim/files/0.4.3/install-files.py @@ -0,0 +1,69 @@ +import re, os +import shutil +from optparse import OptionParser + +parser = OptionParser(usage="usage: %prog [options] srcdir destdir") +parser.add_option("-b", "--blacklist", dest="blacklist", + help="skip files matching a regexp from FILE", metavar="FILE") +parser.add_option("-v", "--verbose", dest="verbose", action="store_true", + default=False, help="print messages about files being copied") +(options, args) = parser.parse_args() + +if len(args) != 2: + parser.error("Incorrect number of arguments") + +(srcdir, destdir) = args + +black_re = None +if options.blacklist != None: + blacklist = [] + f = open(options.blacklist, 'r') + for l in f.readlines(): + if l.startswith('#'): + continue + blacklist.append('(' + l.rstrip() + ')') + f.close() + black_re = re.compile('\./(' + '|'.join(blacklist) + ')$') + +def mk_filter(regex): + if not regex: + def does_not_match(p): + return True + else: + def does_not_match(p): + return not regex.match(p) + return does_not_match + +passes_blacklist = mk_filter(black_re) + +def errwalk(err): + raise err + +os.chdir(srcdir) + +for root, dirs, files in os.walk('.', topdown=True, onerror=errwalk): + destroot = os.path.join(destdir, root) + if options.verbose: + print "Creating %s" % destroot + try: + os.makedirs(destroot, 0755) + except OSError, e: + # only "file exists" is ok + if e.errno != 17: + raise e + + # prevent descending into blacklisted dirs + fullpaths = [os.path.join(root,d) for d in dirs] + fullpaths = filter(passes_blacklist, fullpaths) + del dirs[:] # dirs must be edited in-place + dirs.extend([ p[p.rindex('/')+1:] for p in fullpaths ]) + + # copy files + fullpaths = [os.path.join(root,f) for f in files] + fullpaths = filter(passes_blacklist, fullpaths) + for f in fullpaths: + destfile = os.path.join(destroot, f[f.rindex('/')+1:]) + if options.verbose: + print "Installing %s" % destfile + shutil.copy2(f, destfile) + os.chmod(destfile, 0644) diff --git a/net-im/jabbim/files/0.4.3/installation-blacklist b/net-im/jabbim/files/0.4.3/installation-blacklist new file mode 100644 index 0000000..ff6e9be --- /dev/null +++ b/net-im/jabbim/files/0.4.3/installation-blacklist @@ -0,0 +1,22 @@ +# This file contains regexps for files which are NOT to be installed into +# /usr/share/jabbim by 'make install' +# The whole relative path is matched against them and it must match exactly +# (imagine a $ at the end of every regex here) +.*\.py[co] +.*\.pro +.*\.orig +epydoc.cfg +(gui-)?test.py +installation-blacklist +install-files.py +jabbim +jabbim.(desktop|in|sh) +ui2py.py +AUTHORS +COPYING +Makefile +# dot-files and directories (catches .svn and .git directories): +(.*/)?\..* +# qm files suffice for end use: +locales/[^/]+\.ts +plugins/[^/]+/[^/]+\.ts diff --git a/net-im/jabbim/files/0.4.3/jabbim.in b/net-im/jabbim/files/0.4.3/jabbim.in new file mode 100644 index 0000000..4c32146 --- /dev/null +++ b/net-im/jabbim/files/0.4.3/jabbim.in @@ -0,0 +1,3 @@ +#!/bin/sh +cd "@JABBIMDATA@" +exec python -OO jabbim.py $@ diff --git a/net-im/jabbim/jabbim-0.4.3.ebuild b/net-im/jabbim/jabbim-0.4.3.ebuild new file mode 100644 index 0000000..b4787b6 --- /dev/null +++ b/net-im/jabbim/jabbim-0.4.3.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=1 + +inherit eutils + +DESCRIPTION="Jabbim is Jabber/XMPP client written in Python language using Qt" +HOMEPAGE="http://dev.jabbim.cz/jabbim" +SRC_URI="http://disk.jabbim.cz/michich@jabber.cz/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+ssl" + +DEPEND="dev-python/ctypes + >=dev-python/PyQt4-4.3 + >=dev-python/twisted-names-0.4 + >=dev-python/twisted-web-0.7 + >=dev-python/twisted-words-0.5 + dev-python/pysqlite + ssl? ( dev-python/pyopenssl )" +RDEPEND="${DEPEND}" + +src_unpack() { + unpack ${A} + # copy install scripts + cp "${FILESDIR}"/"${PV}"/Makefile "${S}" + cp "${FILESDIR}"/"${PV}"/install-files.py "${S}" + cp "${FILESDIR}"/"${PV}"/installation-blacklist "${S}" + cp "${FILESDIR}"/"${PV}"/"${PN}".in "${S}" + cd "${S}" + sed -i \ + -e "s:lrelease-qt4:lrelease:" \ + Makefile || die "sed Makefile failed" +} +src_compile() { + emake PREFIX="/usr/"|| die "emake failed!" +} + +src_install() { + emake DESTDIR="${D}" install + make_desktop_entry "${PN}" "JabbIM" +} diff --git a/net-im/jabbim/jabbim-9999.ebuild b/net-im/jabbim/jabbim-9999.ebuild new file mode 100644 index 0000000..407eb96 --- /dev/null +++ b/net-im/jabbim/jabbim-9999.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=1 + +ESVN_REPO_URI="svn://dev.jabbim.cz/jabbim/trunk" + +inherit subversion eutils + +DESCRIPTION="Jabbim is Jabber/XMPP client written in Python language using Qt" +HOMEPAGE="http://dev.jabbim.cz/jabbim" +#SRC_URI="http://disk.jabbim.cz/michich@jabber.cz/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="" +IUSE="+ssl" + +DEPEND="dev-python/ctypes + >=dev-python/PyQt4-4.3 + >=dev-python/twisted-names-0.4 + >=dev-python/twisted-web-0.7 + >=dev-python/twisted-words-0.5 + dev-python/pysqlite + ssl? ( dev-python/pyopenssl )" +RDEPEND="${DEPEND}" + +src_unpack() { + subversion_src_unpack + #unpack ${A} + cd "${S}" + sed -i \ + -e "s:lrelease-qt4:lrelease:" \ + Makefile || die "sed Makefile failed" +} +src_compile() { + emake PREFIX="/usr/"|| die "emake failed!" +} + +src_install() { + emake DESTDIR="${D}" install + make_desktop_entry "${PN}" "JabbIM" +} diff --git a/net-im/licq/Manifest b/net-im/licq/Manifest new file mode 100644 index 0000000..ac74a7e --- /dev/null +++ b/net-im/licq/Manifest @@ -0,0 +1,12 @@ +AUX 1.2.7-debugflag.patch 396 RMD160 c1c52e57c34dd1b218fd26b338be7b3a47aa7cc6 SHA1 c184cb6d3aa70a3790a2b16a669d483d1f9ba666 SHA256 a00700f5170bf56bef28ffce010c530734f97fbf5d4341b08e9804d022314655 +AUX 1.2.7-nptl.patch 1178 RMD160 dd48fbebb541e6e4257b99cd09a72701e3cbc4b9 SHA1 23cb8638ebfd3664a42e26ade08d4343cd422667 SHA256 cf319b0a91f563fbae6a3590264f8bfe9d767ad55179f616adf804609b1aa0db +AUX 1.3.0-gpgme3_hack.patch 878 RMD160 d01f33df1e045791ba169759a0476c2a4bfe20c9 SHA1 1fcf053c89ae51d3d109fab7b4c3d817a078dd33 SHA256 7cdf7f5a111b07b1b37db144dec58464851ff4daa7c6cef7155ca9d5254afb2b +AUX 1.3.0-no_stupid_koloboks.patch 3160 RMD160 242a92a26fcaa1e86efdadfe330ae780ae80d713 SHA1 04d2be6a7a989334f92ddacf76eabe6a859bd5b3 SHA256 a227ed596bd50fdbee52854fde7381f12b1ab4326b7f222ab89f6e6254ca9c1c +AUX 1.3.0-suse_bool.patch 191 RMD160 0b8b913f192328485f213c9d7cf12575158c4584 SHA1 4112dd355aea01b9c5c8f89d9ed2681eb616c4d7 SHA256 e061f929c965d28724cc2ff5ad7a859035331e24c52f8fd9cd2c73a07d32898a +AUX 1.3.2-email_typo.patch 620 RMD160 7b8b9edb0f88e2d1a1372d86e8d174ffee910cd2 SHA1 73152f8161cb54897d978783dab536b9abffebad SHA256 18a9a5b10d25ee4f017b78183257950a71af20a7927e071f5f05191c078d3eb3 +AUX licq-1.3.2-gcc41.patch 1238 RMD160 99a4628325ee2818a215dd2af870b0fdd7a76659 SHA1 638b3e985efbbc5f9099e229b08da4bed875d81a SHA256 eca8a5920942d8ce938e3bf907daf4f5353721a95af4447db9e65874b58e745e +AUX licq-1.3.5-gcc43.patch 3640 RMD160 9ab77b228e9426082d8015f452c9f25e46548b4c SHA1 ea20203897d26f9c842fa6fc648b9ce5db5c4b8b SHA256 4acd8891b02ce496176a4724d193fbf07330bc6ca40834a00ccfd0f2ea3b70dc +AUX licq-1.3.5-logonfix.patch 451 RMD160 c951b408e545e0aac009830061a93c614d19aeb7 SHA1 0a1d2ecab14d8f453727dbe47ad01b1c6021c9b9 SHA256 7b64b67852392278efa6ff081033fe16efe261da9093606e69799bfdfe249b5a +AUX licq-1.3.5-prevent-dos.patch 3866 RMD160 55a44ea3cbcdbac57c839f56fce5f90231d846bb SHA1 ff3c92832827ad2a132ce2946b42e5f912b59025 SHA256 9f9ddcd1469445b1c3aa08b39956d040ccb583b747e3bbf6d79504f0aba8806e +DIST licq-1.3.6.tar.bz2 4777777 RMD160 0d626640e02c9991309d6f7c32725cd1d5bdfa37 SHA1 1451da41c82b9a13424c96d8641e642895b723ac SHA256 ad6ea66301923e5d106111a6b4654aaa72131d8b5c499d16dc9fbbc8cd29845e +EBUILD licq-1.3.6.ebuild 3226 RMD160 30ccb78dc5ba097dcd41a753ccd80c7e2da4586f SHA1 40a22cc72c5a0291a784819521e2b0637455bcf4 SHA256 d72163f90943b978f3d308b9f3a00d2184c61bc1482dc3c140c70763d9d6a193 diff --git a/net-im/licq/files/1.2.7-debugflag.patch b/net-im/licq/files/1.2.7-debugflag.patch new file mode 100644 index 0000000..f76f278 --- /dev/null +++ b/net-im/licq/files/1.2.7-debugflag.patch @@ -0,0 +1,13 @@ +--- configure 2003-06-25 13:23:18.000000000 -0400 ++++ configure.new 2003-06-27 05:14:46.000000000 -0400 +@@ -3335,8 +3335,8 @@ + fi; + + if test "$licqdaemon_use_debug" = "no"; then +- CXXFLAGS="`echo $CXXFLAGS | sed 's/-g[^ ]*//'`" +- CFLAGS="`echo $CFLAGS | sed 's/-g[^ ]*//'`" ++ CXXFLAGS="`echo $CXXFLAGS | sed \"s/-g[^ ]*//\"`" ++ CFLAGS="`echo $CFLAGS | sed \"s/-g[^ ]*//\"`" + fi + + ac_ext=cc diff --git a/net-im/licq/files/1.2.7-nptl.patch b/net-im/licq/files/1.2.7-nptl.patch new file mode 100644 index 0000000..0308b33 --- /dev/null +++ b/net-im/licq/files/1.2.7-nptl.patch @@ -0,0 +1,34 @@ +Index: configure.in +=================================================================== +RCS file: /cvsroot/licq/licq/configure.in,v +retrieving revision 1.63 +diff -u -d -p -r1.63 configure.in +--- configure.in 2 Jul 2003 04:44:47 -0000 1.63 ++++ configure.in 1 Jan 2004 01:46:12 -0000 +@@ -142,6 +142,8 @@ dlopen(NULL, RTLD_NOW) + + AC_CHECK_FUNCS(inet_addr inet_aton mktime select strdup strerror hstrerror readdir_r) + ++AC_CHECK_FUNC(pthread_kill_other_threads_np,[AC_DEFINE([HAVE_PTHREAD_KILL_OTHER_THREADS_NP], ++[], [we are not using NTPL])]) + AC_CHECK_SOCKS5 + LICQ_CHECK_OPENSSL + +Index: src/sighandler.c +=================================================================== +RCS file: /cvsroot/licq/licq/src/sighandler.c,v +retrieving revision 1.5 +diff -u -d -p -r1.5 sighandler.c +--- src/sighandler.c 16 Jun 2003 17:09:46 -0000 1.5 ++++ src/sighandler.c 1 Jan 2004 01:46:12 -0000 +@@ -83,7 +83,10 @@ void licq_handle_sigsegv(int s) + fprintf(stderr, "%s\n", res[0]);*/ + } + fprintf(stderr, "Attempting to generate core file.\n"); ++ ++ #ifdef HAVE_PTHREAD_KILL_OTHER_THREADS_NP + pthread_kill_other_threads_np(); ++ #endif + #endif + + abort(); diff --git a/net-im/licq/files/1.3.0-gpgme3_hack.patch b/net-im/licq/files/1.3.0-gpgme3_hack.patch new file mode 100644 index 0000000..996b416 --- /dev/null +++ b/net-im/licq/files/1.3.0-gpgme3_hack.patch @@ -0,0 +1,31 @@ +--- configure~ 2004-08-22 20:10:52.000000000 +0400 ++++ configure 2004-08-22 20:11:10.000000000 +0400 +@@ -6388,7 +6388,7 @@ + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lgpgme $LIBS" ++LIBS="-lgpgme3 $LIBS" + cat >conftest.$ac_ext <<_ACEOF + #line $LINENO "configure" + /* confdefs.h. */ +@@ -6438,7 +6438,7 @@ + echo "${ECHO_T}$ac_cv_lib_gpgme_gpgme_check_version" >&6 + if test $ac_cv_lib_gpgme_gpgme_check_version = yes; then + +- LIBS="$LIBS -lgpgme" ++ LIBS="$LIBS -lgpgme3" + + cat >>confdefs.h <<_ACEOF + #define HAVE_LIBGPGME 1 +--- include/licq_gpg.h.orig 2004-08-22 22:58:46.660566481 +0400 ++++ include/licq_gpg.h 2004-08-22 22:57:15.460429001 +0400 +@@ -3,7 +3,7 @@ + #define _LICQ_GPG_H_INCLUDED_ + + #ifdef HAVE_LIBGPGME +-#include <gpgme.h> ++#include <gpgme3/gpgme.h> + #endif + #include <pthread.h> + diff --git a/net-im/licq/files/1.3.0-no_stupid_koloboks.patch b/net-im/licq/files/1.3.0-no_stupid_koloboks.patch new file mode 100644 index 0000000..76ee1be --- /dev/null +++ b/net-im/licq/files/1.3.0-no_stupid_koloboks.patch @@ -0,0 +1,65 @@ +diff -uraN src/mainwin.h src~/mainwin.h +--- src/mainwin.h 2004-09-15 19:14:06.000000000 +0400 ++++ src~/mainwin.h 2004-09-28 19:16:56.485815523 +0400 +@@ -150,6 +150,7 @@ + m_bAutoPosReplyWin, + m_bAutoSendThroughServer, + m_bEnableMainwinMouseMovement, ++ m_bShowKoloboks, + m_bPopEmail, + m_bPopPhone, + m_bPopFax, +diff -uraN src/mlview3.cpp src~/mlview3.cpp +--- src/mlview3.cpp 2004-01-17 16:18:18.000000000 +0300 ++++ src~/mlview3.cpp 2004-09-28 19:17:53.767142190 +0400 +@@ -83,7 +83,8 @@ + // not used for html now QString text = QStyleSheet::escape(s); + QString text = useHTML ? s: QStyleSheet::escape(s); + +- gMainWindow->emoticons->ParseMessage(text); ++ if (gMainWindow->m_bShowKoloboks) ++ gMainWindow->emoticons->ParseMessage(text); + + // We must hightlight URLs at this step, before we convert + // linebreaks to richtext tags and such. Also, check to make sure +diff -uraN src/optionsdlg.cpp src~/optionsdlg.cpp +--- src/optionsdlg.cpp 2004-09-06 16:50:56.000000000 +0400 ++++ src~/optionsdlg.cpp 2004-09-28 19:19:38.975690580 +0400 +@@ -216,6 +216,7 @@ + chkAutoPosReplyWin->setChecked(mainwin->m_bAutoPosReplyWin); + chkAutoSendThroughServer->setChecked(mainwin->m_bAutoSendThroughServer); + chkEnableMainwinMouseMovement->setChecked(mainwin->m_bEnableMainwinMouseMovement); ++ chkShowKoloboks->setChecked(mainwin->m_bShowKoloboks); + popEmail->setChecked(mainwin->m_bPopEmail); + popPhone->setChecked(mainwin->m_bPopPhone); + popFax->setChecked(mainwin->m_bPopFax); +@@ -494,6 +495,7 @@ + mainwin->m_bAutoPosReplyWin = chkAutoPosReplyWin->isChecked(); + mainwin->m_bAutoSendThroughServer = chkAutoSendThroughServer->isChecked(); + mainwin->m_bEnableMainwinMouseMovement = chkEnableMainwinMouseMovement->isChecked(); ++ mainwin->m_bShowKoloboks = chkShowKoloboks->isChecked(); + + mainwin->m_bPopEmail= popEmail->isChecked(); + mainwin->m_bPopPhone= popPhone->isChecked(); +@@ -768,6 +770,8 @@ + chkEnableMainwinMouseMovement = new QCheckBox(tr("Allow dragging main window"), boxMainWin); + QWhatsThis::add(chkEnableMainwinMouseMovement, tr("Lets you drag around the main window " + "with your mouse")); ++ chkShowKoloboks = new QCheckBox(tr("Show graphical smiles instead of text ones"), boxMainWin); ++ QWhatsThis::add(chkShowKoloboks, tr("Lets you see only text messages, without any emotional icons")); + + chkMsgChatView = new QCheckBox(tr("Chatmode Messageview"), boxMainWin); + QWhatsThis::add(chkMsgChatView, tr("Show the current chat history in Send Window")); +diff -uraN src/optionsdlg.h src~/optionsdlg.h +--- src/optionsdlg.h 2004-07-12 05:36:17.000000000 +0400 ++++ src~/optionsdlg.h 2004-09-28 19:19:52.303971975 +0400 +@@ -79,7 +79,8 @@ + *chkAlwaysShowONU, *chkScrollBar, *chkShowExtIcons, + *chkSysBack, *chkSendFromClipboard, *chkMsgChatView, *chkAutoPosReplyWin, + *chkAutoSendThroughServer, *chkTabbedChatting, +- *chkEnableMainwinMouseMovement; ++ *chkEnableMainwinMouseMovement, ++ *chkShowKoloboks; + QRadioButton *rdbDockDefault, *rdbDockThemed, *rdbDockSmall; + QComboBox *cmbDockTheme, *cmbSortBy; + diff --git a/net-im/licq/files/1.3.0-suse_bool.patch b/net-im/licq/files/1.3.0-suse_bool.patch new file mode 100644 index 0000000..e9d952e --- /dev/null +++ b/net-im/licq/files/1.3.0-suse_bool.patch @@ -0,0 +1,11 @@ +--- plugins/console/src/console.h ++++ plugins/console/src/console.h +@@ -10,6 +10,8 @@ + #include "window.h" + #include "licq_user.h" + ++#undef bool ++ + using namespace std; + + #define MAX_CON 8 diff --git a/net-im/licq/files/1.3.2-email_typo.patch b/net-im/licq/files/1.3.2-email_typo.patch new file mode 100644 index 0000000..07237eb --- /dev/null +++ b/net-im/licq/files/1.3.2-email_typo.patch @@ -0,0 +1,11 @@ +--- plugins/email/src/forwarder.cpp 2005-10-21 19:55:08.032358648 +0400 ++++ plugins/email/src/forwarder.cpp 2005-10-21 19:55:13.245566120 +0400 +@@ -373,7 +373,7 @@ + if (nPPID == LICQ_PPID) + sprintf (szFrom, "From: \"%s\" <%s@pager.icq.com>", u->GetAlias(), u->IdString()); + else +- sprintf (szFrom, "From: \"%s\" <%s>", u->GeAlias(), u->GetEmailPrimary()); ++ sprintf (szFrom, "From: \"%s\" <%s>", u->GetAlias(), u->GetEmailPrimary()); + sprintf (szReplyTo, "Reply-To: \"%s %s\" <%s>", u->GetFirstName(), u->GetLastName(), u->GetEmailPrimary()); + } + sprintf (szDate, "Date: %s", ctime(&t)); diff --git a/net-im/licq/files/licq-1.3.2-gcc41.patch b/net-im/licq/files/licq-1.3.2-gcc41.patch new file mode 100644 index 0000000..72ae1f7 --- /dev/null +++ b/net-im/licq/files/licq-1.3.2-gcc41.patch @@ -0,0 +1,34 @@ +diff -ur licq-1.3.2-orig/include/licq_buffer.h licq-1.3.2/include/licq_buffer.h +--- licq-1.3.2-orig/include/licq_buffer.h 2006-03-15 00:41:39.000000000 -0500 ++++ licq-1.3.2/include/licq_buffer.h 2006-03-15 00:42:25.000000000 -0500 +@@ -62,7 +62,7 @@ + + char *Pack(CBuffer *); + char *Pack(const char *data, int size); +- char *CBuffer::PackLNTS(const char *); ++ char *PackLNTS(const char *); + char *PackString(const char *data, unsigned short max = 0); + char *PackUnsignedShort(unsigned short data); + char *PackUnsignedLong(unsigned long data); +diff -ur licq-1.3.2-orig/include/licq_icqd.h licq-1.3.2/include/licq_icqd.h +--- licq-1.3.2-orig/include/licq_icqd.h 2006-03-15 00:41:39.000000000 -0500 ++++ licq-1.3.2/include/licq_icqd.h 2006-03-15 00:45:49.000000000 -0500 +@@ -837,6 +837,17 @@ + bool bFinished; + }; + ++//Forward declarations for friend functions ++void *ProcessRunningEvent_Server_tep(void *p); ++void *Ping_tep(void *p); ++void *UpdateUsers_tep(void *p); ++void *MonitorSockets_tep(void *p); ++void *ReverseConnectToUser_tep(void *p); ++void *ProcessRunningEvent_Client_tep(void *p); ++void *ProcessRunningEvent_Server_tep(void *p); ++void *Shutdown_tep(void *p); ++void *ConnectToServer_tep(void *s); ++ + + + #endif + diff --git a/net-im/licq/files/licq-1.3.5-gcc43.patch b/net-im/licq/files/licq-1.3.5-gcc43.patch new file mode 100644 index 0000000..fa064cf --- /dev/null +++ b/net-im/licq/files/licq-1.3.5-gcc43.patch @@ -0,0 +1,111 @@ +Source: Anders Olofsson, zimous, Peter Alfredsen, maybe others too. +Upstream: Probably fixed in next release. +Reason: gcc-4.3 and glibc-2.8 errors, bugs #218814 and #228373 +diff -NrU5 licq-1.3.5.orig/plugins/auto-reply/configure.ac licq-1.3.5/plugins/auto-reply/configure.ac +--- licq-1.3.5.orig/plugins/auto-reply/configure.ac 2008-06-21 14:49:20.000000000 +0200 ++++ licq-1.3.5/plugins/auto-reply/configure.ac 2008-06-21 14:52:18.000000000 +0200 +@@ -44,11 +44,11 @@ + + dnl Switch to C++ mode and check for needed C++ headers + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + +-AC_CHECK_HEADER(vector.h,, ++AC_CHECK_HEADER(vector,, + AC_MSG_ERROR(You need to have the libstdc++ headers installed)) + + AC_LANG_RESTORE + + AC_OUTPUT( +diff -NrU5 licq-1.3.5.orig/plugins/auto-reply/src/autoreply.cpp licq-1.3.5/plugins/auto-reply/src/autoreply.cpp +--- licq-1.3.5.orig/plugins/auto-reply/src/autoreply.cpp 2008-06-21 14:49:20.000000000 +0200 ++++ licq-1.3.5/plugins/auto-reply/src/autoreply.cpp 2008-06-21 14:52:18.000000000 +0200 +@@ -10,10 +10,11 @@ + #include <ctype.h> + #include <stdio.h> + #include <stdlib.h> + #include <sys/wait.h> + #include <signal.h> ++#include <climits> + #ifdef HAVE_ERRNO_H + #include <errno.h> + #else + extern int errno; + #endif +diff -NrU5 licq-1.3.5.orig/plugins/email/configure.ac licq-1.3.5/plugins/email/configure.ac +--- licq-1.3.5.orig/plugins/email/configure.ac 2008-06-21 14:49:20.000000000 +0200 ++++ licq-1.3.5/plugins/email/configure.ac 2008-06-21 14:52:18.000000000 +0200 +@@ -46,11 +46,11 @@ + + dnl Switch to C++ mode and check for needed C++ headers + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + +-AC_CHECK_HEADER(vector.h,, ++AC_CHECK_HEADER(vector,, + AC_MSG_ERROR(You need to have the libstdc++ headers installed)) + + AC_LANG_RESTORE + + AC_OUTPUT( +diff -NrU5 licq-1.3.5.orig/plugins/email/src/forwarder.cpp licq-1.3.5/plugins/email/src/forwarder.cpp +--- licq-1.3.5.orig/plugins/email/src/forwarder.cpp 2008-06-21 14:49:20.000000000 +0200 ++++ licq-1.3.5/plugins/email/src/forwarder.cpp 2008-06-21 15:17:53.000000000 +0200 +@@ -7,10 +7,11 @@ + #include <sys/types.h> + #include <unistd.h> + #include <string.h> + #include <ctype.h> + #include <stdio.h> ++#include <climits> + #ifdef HAVE_ERRNO_H + #include <errno.h> + #else + extern int errno; + #endif +diff -NrU5 licq-1.3.5.orig/plugins/msn/configure.ac licq-1.3.5/plugins/msn/configure.ac +--- licq-1.3.5.orig/plugins/msn/configure.ac 2008-06-21 14:49:20.000000000 +0200 ++++ licq-1.3.5/plugins/msn/configure.ac 2008-06-21 14:52:18.000000000 +0200 +@@ -51,11 +51,11 @@ + + dnl Switch to C++ mode and check for needed C++ headers + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + +-AC_CHECK_HEADER(vector.h,, ++AC_CHECK_HEADER(vector,, + AC_MSG_ERROR(You need to have the libstdc++ headers installed)) + + AC_LANG_RESTORE + + msn_gcc_major_version=0 +diff -NrU5 licq-1.3.5.orig/plugins/rms/src/rms.cpp licq-1.3.5/plugins/rms/src/rms.cpp +--- licq-1.3.5.orig/plugins/rms/src/rms.cpp 2008-06-21 14:49:20.000000000 +0200 ++++ licq-1.3.5/plugins/rms/src/rms.cpp 2008-06-21 15:08:27.000000000 +0200 +@@ -7,10 +7,11 @@ + #include <sys/types.h> + #include <unistd.h> + #include <string.h> + #include <ctype.h> + #include <stdio.h> ++#include <climits> + #ifdef HAVE_ERRNO_H + #include <errno.h> + #else + extern int errno; + #endif +diff -NrU5 licq-1.3.5.orig/src/fifo.cpp licq-1.3.5/src/fifo.cpp +--- licq-1.3.5.orig/src/fifo.cpp 2008-06-21 14:49:20.000000000 +0200 ++++ licq-1.3.5/src/fifo.cpp 2008-06-21 14:52:18.000000000 +0200 +@@ -28,10 +28,11 @@ + #include <stdio.h> + #include <stdlib.h> + #include <sys/stat.h> + #include <fcntl.h> + #include <ctype.h> ++#include <climits> + #include "time-fix.h" + + #ifdef HAVE_ERRNO_H + #include <errno.h> + #else diff --git a/net-im/licq/files/licq-1.3.5-logonfix.patch b/net-im/licq/files/licq-1.3.5-logonfix.patch new file mode 100644 index 0000000..bf8cbaa --- /dev/null +++ b/net-im/licq/files/licq-1.3.5-logonfix.patch @@ -0,0 +1,13 @@ +Source: Upstream homepage, already applied. +Reason: Can't login after protocol change, bug #230387 +--- src/icqpacket.cpp ++++ src/icqpacket.cpp +@@ -821,7 +821,7 @@ + + // Static versioning + buffer->PackUnsignedLongBE(0x00160002); +- buffer->PackUnsignedShortBE(0x010A); ++ buffer->PackUnsignedShortBE(0x010B); + // Client version major (4 == ICQ2000, 5 == ICQ2001) + buffer->PackUnsignedLongBE(0x00170002); + buffer->PackUnsignedShortBE(0x0014); diff --git a/net-im/licq/files/licq-1.3.5-prevent-dos.patch b/net-im/licq/files/licq-1.3.5-prevent-dos.patch new file mode 100644 index 0000000..3aaa2bc --- /dev/null +++ b/net-im/licq/files/licq-1.3.5-prevent-dos.patch @@ -0,0 +1,111 @@ +Source: http://www.licq.org/changeset/6146 +Reason: DoS via large number of connections, bug #219708 +--- /trunk/licq/include/licq_socket.h ++++ /trunk/licq/include/licq_socket.h +@@ -251,4 +251,5 @@ + fd_set SocketSet() { return m_sSockets.SocketSet(); } + int LargestSocket() { return m_sSockets.Largest(); } ++ unsigned short Num() { return m_sSockets.Num(); } + + protected: +--- /trunk/licq/src/socket.cpp ++++ /trunk/licq/src/socket.cpp +@@ -818,6 +818,24 @@ + socklen_t sizeofSockaddr = sizeof(struct sockaddr_in); + +- newSocket.m_nDescriptor = accept(m_nDescriptor, (struct sockaddr *)&newSocket.m_sRemoteAddr, &sizeofSockaddr); +- newSocket.SetLocalAddress(); ++ // Make sure we stay under FD_SETSIZE ++ // See: ++ // * http://www.securityfocus.com/archive/1/490711 ++ // * http://securityvulns.com/docs7669.html ++ // for more details ++ // This probably has no affect, since we are using multiple threads, but keep it here ++ // to be used as a sanity check. ++ int newDesc = accept(m_nDescriptor, (struct sockaddr *)&newSocket.m_sRemoteAddr, &sizeofSockaddr); ++ if (newDesc < FD_SETSIZE) ++ { ++ newSocket.m_nDescriptor = newDesc; ++ newSocket.SetLocalAddress(); ++ } ++ else ++ { ++ gLog.Error(tr("%sCannot accept new connection, too many descriptors in use.\n"), L_ERRORxSTR); ++ close(newDesc); ++ ++ // TODO throw an exception, or do something to tell the caller it failed ++ } + } + +--- /trunk/licq/src/icqd-threads.cpp ++++ /trunk/licq/src/icqd-threads.cpp +@@ -24,4 +24,5 @@ + #include "gettext.h" + ++#define MAX_CONNECTS 256 + #define DEBUG_THREADS(x) + //#define DEBUG_THREADS(x) gLog.Info(x) +@@ -781,6 +782,19 @@ + tcp->RecvConnection(*newSocket); + gSocketManager.DropSocket(tcp); +- gSocketManager.AddSocket(newSocket); +- gSocketManager.DropSocket(newSocket); ++ ++ // Make sure we can handle another socket before accepting it ++ if (gSocketManager.Num() > MAX_CONNECTS) ++ { ++ // Too many sockets, drop this one ++ char remoteIp[32]; ++ gLog.Warn(tr("%sToo many connected sockets, rejecting connection from %s.\n"), ++ L_WARNxSTR, newSocket->RemoteIpStr(remoteIp)); ++ delete newSocket; ++ } ++ else ++ { ++ gSocketManager.AddSocket(newSocket); ++ gSocketManager.DropSocket(newSocket); ++ } + } + } +--- /trunk/licq/src/icqd-chat.cpp ++++ /trunk/licq/src/icqd-chat.cpp +@@ -24,4 +24,5 @@ + #include "gettext.h" + ++#define MAX_CONNECTS 256 + #define DEBUG_THREADS(x) + +@@ -2384,14 +2385,22 @@ + else if (nCurrentSocket == chatman->chatServer.Descriptor()) + { +- CChatUser *u = new CChatUser; +- u->m_pClient = new CChatClient; +- +- chatman->chatServer.RecvConnection(u->sock); +- chatman->sockman.AddSocket(&u->sock); +- chatman->sockman.DropSocket(&u->sock); +- +- u->state = CHAT_STATE_HANDSHAKE; +- chatman->chatUsers.push_back(u); +- gLog.Info(tr("%sChat: Received connection.\n"), L_TCPxSTR); ++ if (chatman->sockman.Num() >= MAX_CONNECTS) ++ { ++ // Too many sockets, drop this one ++ gLog.Warn(tr("%sToo many connected clients, rejecting new connection.\n"), L_WARNxSTR); ++ } ++ else ++ { ++ CChatUser *u = new CChatUser; ++ u->m_pClient = new CChatClient; ++ ++ chatman->chatServer.RecvConnection(u->sock); ++ chatman->sockman.AddSocket(&u->sock); ++ chatman->sockman.DropSocket(&u->sock); ++ ++ u->state = CHAT_STATE_HANDSHAKE; ++ chatman->chatUsers.push_back(u); ++ gLog.Info(tr("%sChat: Received connection.\n"), L_TCPxSTR); ++ } + } + + diff --git a/net-im/licq/licq-1.3.6.ebuild b/net-im/licq/licq-1.3.6.ebuild new file mode 100644 index 0000000..d7c4064 --- /dev/null +++ b/net-im/licq/licq-1.3.6.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="1" + +inherit eutils kde-functions multilib + +DESCRIPTION="ICQ Client with v8 support" +HOMEPAGE="http://www.licq.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="2" +KEYWORDS="~amd64 ~x86" +IUSE="crypt debug kde msn ncurses nls qt3 qt4 socks5 ssl xosd" + +# we use kde as KDE4 +RDEPEND="kde? ( + qt4? ( kde-base/kdelibs:4.1 ) + qt3? ( kde-base/kdelibs:3.5 ) + ) + ssl? ( dev-libs/openssl ) + qt3? ( x11-libs/qt:3 ) + qt4? ( x11-libs/qt-gui:4 ) + nls? ( sys-devel/gettext ) + ncurses? ( sys-libs/ncurses =dev-libs/cdk-5* ) + crypt? ( app-crypt/gpgme:1 ) + xosd? ( x11-libs/xosd )" +DEPEND="${RDEPEND} + dev-libs/boost + qt4? ( >=dev-util/cmake-2.6.2 )" + +_generate_plugins_directories() { + PLUGINS="auto-reply email rms" + use msn && PLUGINS="${PLUGINS} msn" + use ncurses && PLUGINS="${PLUGINS} console" + use xosd && PLUGINS="${PLUGINS} osd" + # QT4 is something extra. Uses cmake. + use qt4 && PLUGINS_CMAKE="${PLUGINS_CMAKE} qt4-gui" + use qt3 && PLUGINS="${PLUGINS} qt-gui" + elog "I will generate these plugins/frontends for licq:" + elog "${PLUGINS} ${PLUGINS_CMAKE}" +} + +pkg_setup() { + _generate_plugins_directories +} + +src_compile() { + local myconf myconf2 plugin + # global config setup for automake + myconf="$(use_enable crypt gpgme) + $(use_enable ssl openssl) + $(use_enable socks5) + $(use_enable debug) + $(use_enable nls)" + + einfo "Compiling Licq core." + econf ${myconf} || die "econf failed" + emake || die "emake failed" + + for plugin in ${PLUGINS}; do + cd "${S}"/plugins/"${plugin}" + einfo "Compiling Licq: \"${plugin}\"." + if use qt3; then + set-qtdir 3 + set-kdedir 3 + use kde && myconf2="${myconf} --with-kde" + myconf2="${myconf2} --with-qt-libraries=${QTDIR}/$(get_libdir)" + fi + econf ${myconf} ${myconf2} || die "econf failed" + emake || die "emake failed" + done + # we like qt4 it uses cmake + if use qt4; then + cd "${S}"/plugins/qt4-gui + einfo "Compiling Licq: \"qt4-gui\"." + # Possible error because of one tiny issue we introduce in kde + # it is called kdeprefix and in that case you can't be sure where it + # find kde stuff. This is working only for -kdeprefix so someone will + # need to fix this later + myconf2="-DCMAKE_INSTALL_PREFIX=/usr" + # kde not yet workie + # use kde && myconf2="${myconf2} -DWITH_KDE=1" + use kde && ewarn "Sorry but kde4 support is duped and not working so not + enabling for now" + cmake . ${myconf2} || die "cmake failed" + emake || die "emake failed" + fi +} + +src_install() { + # install core + einfo "Installing Licq core." + emake DESTDIR="${D}" install || die "emake install failed" + dodoc ChangeLog INSTALL README* doc/* + # Install the plug-ins + for plugin in ${PLUGINS}; do + cd "${S}"/plugins/"${plugin}" + einfo "Installing Licq: \"${plugin}\"." + emake DESTDIR="${D}" install || die "emake install failed" + dodoc README* *.conf + done + if use qt4; then + cd "${S}"/plugins/qt4-gui + einfo "Installing Licq: \"qt4-gui\"." + emake DESTDIR="${D}" install || die + docinto plugins/qt4-gui + dodoc doc/README* + fi + + exeinto /usr/share/${PN}/upgrade + doexe "${S}"/upgrade/* + + # fixes bug #22136 and #149464 + rm -fR "${D}"/var +} + diff --git a/net-im/psi/Manifest b/net-im/psi/Manifest new file mode 100644 index 0000000..6b71dee --- /dev/null +++ b/net-im/psi/Manifest @@ -0,0 +1,14 @@ +DIST psi-0.12.tar.bz2 2122406 RMD160 be5922ef84040113b257aaf99ac9bd350b69349c SHA1 2927497a53d1eb00720718ec41cf61a911914922 SHA256 0309d48891ab18cb8afc15416db2e9db979bc66f5cd879b382de226043e91e6c +DIST psi_cs.qm 251976 RMD160 a4fded917f7dacf445870962bf14219aa9dafe41 SHA1 4a44ef9c4228c9e74c0a08651aa6f9080668c679 SHA256 971998a67180ae4cd17bb4154caf50bd767743a5d7ba9bc392bfa76be30f5459 +DIST psi_de.qm 271177 RMD160 fdff482096339a9799dd8ead9b6cadd5e5fb24e5 SHA1 c986f7a1122d2a8eacf786f39b213f2197c125c7 SHA256 7e15485ec95600c05632ca73a39841b2f5c5aad41d010d0557b03b2217deece5 +DIST psi_es_ES.qm 273904 RMD160 829d7e92a54f84c08ca8aa67f6bca080a9f590bc SHA1 45448c63c0c88e6e4772079d10cc0469bb115404 SHA256 8131fc84286da39dfa48eb41f9ddef5c5938bd6244a7d573956f447e122fe6ec +DIST psi_fr.qm 280650 RMD160 f638dddbe0b925fd747f32767329add984e2a044 SHA1 b763760c49f9f2ed957609cf7bf552147a66944b SHA256 cc57b71bb7683093eca46608ee5420282c6b979b4dedfab59fa2445c4c9cf3c7 +DIST psi_mk.qm 260157 RMD160 b62319af02c713a30fe219ab067e78132994db19 SHA1 654af0069c7f449ae49a0a2f27431031dc86dc50 SHA256 32faf2c9ec0028bdc6d22a2da73cdd51ea474e9cfa159192c3d172e848fa5163 +DIST psi_pl.qm 269104 RMD160 68ea69ca395912475396b2a77ec9b8d2ad5c2324 SHA1 d6d87a9b2ff26c87e01e310d517073968c3a0767 SHA256 e05fca7f2f0bbf0e5c68c26c3fcb0d7e7dd94a87239fa5731eee2d6d65dec322 +DIST psi_pt_BR.qm 129586 RMD160 c24d8d6a917ea3fca358f19b8d3be43d4e72e531 SHA1 e010811b9cbce1d4f19758dc8870b083e0d9d37f SHA256 7655568d28998a099469f9eb3352f3de3ea06566846ba2a1d012fffb277d7778 +DIST psi_ru.qm 248934 RMD160 f2c3d76a71e6c2d84eafd0ae388df38586417808 SHA1 c16504293bb13f523601adae7242ff965d384e85 SHA256 241a256071e620af0178189cf42379095fb085ffbb6693efe91b07283adca1c6 +DIST psi_uk.qm 166998 RMD160 f5bc49e8a184719420dc596346ff3fa64832ed62 SHA1 8acdeec2a817484973d931fcb16cc864f467f2cd SHA256 62935f377325308eaa1b90f0406aec20ff4356217e83c807b3491a4bdcce7b84 +DIST psi_vi.qm 153623 RMD160 dcb3df04081d6fbda2592755de13e16bb8cbc4e3 SHA1 f5925ec17c954f26b0543e2bd0aa524670bf32c1 SHA256 b732c093bb7c68487ae394bb0f3686c8834344603ad6d0317cc417de72f4d73f +DIST psi_zh.qm 145352 RMD160 f6274c09f4378117ebc8eab8f0283cee178a9ec1 SHA1 54a9391f374c2f5024670d03015275f93854a11a SHA256 e8f7261c47583f8fd1b4d9af5c522431ccc2cc3d5f9855ab9c752ed3e3587ac3 +DIST psi_zh_TW.qm 167415 RMD160 df2464d29d310bf4dc574faa54d6309071afe939 SHA1 23e4f01dd0047b352559684275aebaefc5a01692 SHA256 0d0ddb6a9e29c000a1ae7e71273e7fda95b605d034078b56569261030338dbdb +EBUILD psi-0.12-r1.ebuild 2908 RMD160 96873e970f60554bd18e645d70b2bff2ef69a720 SHA1 e793e33d574905054c39f2abbf093ee7f4f77424 SHA256 acaea7cceae2b27c12bb84cc59c03b0a8e18d99eca267de784c5f59e8de30f00 diff --git a/net-im/psi/psi-0.12-r1.ebuild b/net-im/psi/psi-0.12-r1.ebuild new file mode 100644 index 0000000..c7f9efc --- /dev/null +++ b/net-im/psi/psi-0.12-r1.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="1" + +inherit eutils qt4 multilib + +DESCRIPTION="Qt4 Jabber client, with Licq-like interface" +HOMEPAGE="http://psi-im.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" +LANGS="cs de es_ES fr mk pl pt_BR ru uk vi zh zh_TW" + +for TRANS in ${LANGS} ; do + IUSE="${IUSE} linguas_${TRANS}" + SRC_URI="${SRC_URI} linguas_${TRANS}? ( + http://psi-im.org/download/lang/psi_${TRANS}.qm )" +done + +IUSE="${IUSE} crypt dbus debug doc kernel_linux spell ssl xscreensaver" +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +RESTRICT="test" + +COMMON_DEPEND="|| ( x11-libs/qt-gui:4 =x11-libs/qt-4.3* ) + =app-crypt/qca-2* + spell? ( app-text/aspell ) + xscreensaver? ( x11-libs/libXScrnSaver )" + +DEPEND="${COMMON_DEPEND} + doc? ( app-doc/doxygen )" + +RDEPEND="${COMMON_DEPEND} + crypt? ( >=app-crypt/qca-gnupg-2.0.0_beta2 ) + ssl? ( >=app-crypt/qca-ossl-2.0.0_beta2 )" + +pkg_setup() { + if has_version "=x11-libs/qt-4.3*"; then + QT4_BUILT_WITH_USE_CHECK="qt3support png" + QT4_OPTIONAL_BUILT_WITH_USE_CHECK="dbus" + else + if ! built_with_use "x11-libs/qt-gui:4" qt3support; then + eerror "You have to build x11-libs/qt-gui:4 with qt3support." + die "qt3support in qt-gui disabled" + fi + if ( use dbus && ! built_with_use "x11-libs/qt-gui:4" dbus ); then + eerror "You have to build x11-libs/qt-gui:4 with dbus" + die "dbus in qt-gui disabled" + fi + fi + qt4_pkg_setup +} + +src_unpack() { + # unpack psi + unpack "${P}.tar.bz2" + # copy languages + for TRANS in ${LINGUAS}; do + echo "LANG: ${TRANS}" + done + for TRANS in ${LANGS}; do + if use linguas_${TRANS}; then + cp "${DISTDIR}"/${PN}_${TRANS}.qm "${S}" + fi + done +} + +src_compile() { + # disable growl as it is a MacOS X extension only + local myconf="--prefix=/usr --qtdir=/usr" + myconf="${myconf} --disable-growl --disable-bundled-qca" + use debug && myconf="${myconf} --enable-debug" + use dbus || myconf="${myconf} --disable-qdbus" + use kernel_linux || myconf="${myconf} --disable-dnotify" + use spell || myconf="${myconf} --disable-aspell" + use xscreensaver || myconf="${myconf} --disable-xss" + + # cannot use econf because of non-standard configure script + ./configure ${myconf} || die "configure failed" + + eqmake4 ${PN}.pro + + SUBLIBS="-L/usr/${get_libdir}/qca2" emake || die "emake failed" + + if use doc; then + cd doc + make api_public || die "make api_public failed" + fi +} + +src_install() { + emake INSTALL_ROOT="${D}" install || die "emake install failed" + + # this way the docs will be installed in the standard gentoo dir + newdoc iconsets/roster/README README.roster + newdoc iconsets/system/README README.system + newdoc certs/README README.certs + dodoc README + + if use doc; then + cd doc + dohtml -r api || die "dohtml failed" + fi + + # install translations + cd "${S}" + insinto "/usr/share/${PN}/" + doins "${PN}"_*.qm +} |