aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerion Entrup <gerion.entrup@flump.de>2013-08-02 00:46:30 +0200
committerGerion Entrup <gerion.entrup@flump.de>2013-08-02 00:46:30 +0200
commit62fc42b63d7ecbf62d2757b9efb56be6f00df2be (patch)
treec46fd3f480896a15a7486a668f493ca300f8c056 /media-sound
parentAdd Jitsi Ebuild (diff)
downloadgerislay-62fc42b63d7ecbf62d2757b9efb56be6f00df2be.tar.gz
gerislay-62fc42b63d7ecbf62d2757b9efb56be6f00df2be.tar.bz2
gerislay-62fc42b63d7ecbf62d2757b9efb56be6f00df2be.zip
add mumble
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/mumble/files/mumble-1.2.3-fix-cert-validation.patch20
-rw-r--r--media-sound/mumble/files/mumble-1.2.3-set-file-permissions.patch51
-rw-r--r--media-sound/mumble/mumble-1.2.3-r3.ebuild122
3 files changed, 193 insertions, 0 deletions
diff --git a/media-sound/mumble/files/mumble-1.2.3-fix-cert-validation.patch b/media-sound/mumble/files/mumble-1.2.3-fix-cert-validation.patch
new file mode 100644
index 0000000..1417417
--- /dev/null
+++ b/media-sound/mumble/files/mumble-1.2.3-fix-cert-validation.patch
@@ -0,0 +1,20 @@
+Description: Fix certificate validation with QT 4.8. For some reason, the
+ new on-demand root cert loading is not working with mumble.
+Author: Marc Deslauriers <marc.deslauriers@canonical.com>
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/mumble/+bug/928296
+
+diff -Naur mumble-1.2.3/src/SSL.cpp mumble-1.2.3.new/src/SSL.cpp
+--- mumble-1.2.3/src/SSL.cpp 2011-02-19 22:35:16.000000000 +0100
++++ mumble-1.2.3.new/src/SSL.cpp 2012-02-16 02:45:20.353665502 +0100
+@@ -252,6 +252,11 @@
+ QSslSocket::setDefaultCaCertificates(ql);
+ #endif // NO_SYSTEM_CA_OVERRIDE
+
++#if QT_VERSION >= 0x040800
++ // Don't perform on-demand loading of root certificates
++ QSslSocket::setDefaultCaCertificates(QSslSocket::systemCaCertificates());
++#endif
++
+ for (unsigned int i=0;i<sizeof(recommended_cas)/sizeof(recommended_cas[0]);++i) {
+ QSslCertificate cert(recommended_cas[i]);
+ if (! QSslSocket::defaultCaCertificates().contains(cert)) {
diff --git a/media-sound/mumble/files/mumble-1.2.3-set-file-permissions.patch b/media-sound/mumble/files/mumble-1.2.3-set-file-permissions.patch
new file mode 100644
index 0000000..83be96a
--- /dev/null
+++ b/media-sound/mumble/files/mumble-1.2.3-set-file-permissions.patch
@@ -0,0 +1,51 @@
+From 5632c35d6759f5e13a7dfe78e4ee6403ff6a8e3e Mon Sep 17 00:00:00 2001
+From: Thorvald Natvig <slicer@users.sourceforge.net>
+Date: Fri, 27 May 2011 16:59:15 -0700
+Subject: [PATCH] Explicitly remove file permissions for settings and DB
+
+---
+ src/mumble/Database.cpp | 5 +++++
+ src/mumble/Settings.cpp | 11 +++++++++++
+ 2 files changed, 16 insertions(+), 0 deletions(-)
+
+diff --git a/src/mumble/Database.cpp b/src/mumble/Database.cpp
+index 5449fbe..8c3854f 100644
+--- a/src/mumble/Database.cpp
++++ b/src/mumble/Database.cpp
+@@ -94,6 +94,11 @@
+ qWarning("Database: Database is read-only");
+ }
+
++ {
++ QFile f(db.databaseName());
++ f.setPermissions(f.permissions() & ~(QFile::ReadGroup | QFile::WriteGroup | QFile::ExeGroup | QFile::ReadOther | QFile::WriteOther | QFile::ExeOther));
++ }
++
+ QSqlQuery query;
+
+ query.exec(QLatin1String("CREATE TABLE IF NOT EXISTS `servers` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `name` TEXT, `hostname` TEXT, `port` INTEGER DEFAULT " MUMTEXT(DEFAULT_MUMBLE_PORT) ", `username` TEXT, `password` TEXT)"));
+diff --git a/src/mumble/Settings.cpp b/src/mumble/Settings.cpp
+index 404692b..b5e9202 100644
+--- a/src/mumble/Settings.cpp
++++ b/src/mumble/Settings.cpp
+@@ -716,6 +716,17 @@ void OverlaySettings::save() {
+ void OverlaySettings::save(QSettings* settings_ptr) {
+ OverlaySettings def;
+
++ settings_ptr->setValue(QLatin1String("version"), QLatin1String(MUMTEXT(MUMBLE_VERSION_STRING)));
++ settings_ptr->sync();
++
++#if defined(Q_OS_WIN) || defined(Q_OS_MAC)
++ if (settings_ptr->format() == QSettings::IniFormat)
++#endif
++ {
++ QFile f(settings_ptr->fileName());
++ f.setPermissions(f.permissions() & ~(QFile::ReadGroup | QFile::WriteGroup | QFile::ExeGroup | QFile::ReadOther | QFile::WriteOther | QFile::ExeOther));
++ }
++
+ SAVELOAD(bEnable, "enable");
+
+ SAVELOAD(osShow, "show");
+--
+1.7.5.4
+
diff --git a/media-sound/mumble/mumble-1.2.3-r3.ebuild b/media-sound/mumble/mumble-1.2.3-r3.ebuild
new file mode 100644
index 0000000..7322bb0
--- /dev/null
+++ b/media-sound/mumble/mumble-1.2.3-r3.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-sound/mumble/mumble-1.2.3-r1.ebuild,v 1.2 2011/06/14 20:10:41 maekke Exp $
+
+EAPI="4"
+
+inherit eutils multilib qt4-r2
+
+DESCRIPTION="Mumble is an open source, low-latency, high quality voice chat software"
+HOMEPAGE="http://mumble.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="+alsa +dbus debug g15 jack oss pch portaudio pulseaudio speech zeroconf"
+
+RDEPEND=">=dev-libs/boost-1.41.0
+ >=dev-libs/openssl-1.0.0b
+ >=dev-libs/protobuf-2.2.0
+ >=media-libs/libsndfile-1.0.20[-minimal]
+ >=media-libs/speex-1.2_rc1
+ sys-apps/lsb-release
+ dev-qt/qtcore:4[ssl]
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qtsql:4[sqlite]
+ dev-qt/qtsvg:4
+ dev-qt/qtxmlpatterns:4
+ x11-proto/inputproto
+ alsa? ( media-libs/alsa-lib )
+ dbus? ( dev-qt/qtdbus:4 )
+ g15? ( app-misc/g15daemon )
+ jack? ( media-sound/jack-audio-connection-kit )
+ portaudio? ( media-libs/portaudio )
+ pulseaudio? ( media-sound/pulseaudio )
+ speech? ( app-accessibility/speech-dispatcher )
+ zeroconf? ( || ( net-dns/avahi[mdnsresponder-compat] net-misc/mDNSResponder ) )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig"
+
+PATCHDIR="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+ unpack ${A}
+ epatch "${FILESDIR}"/${PN}-1.2.3-fix-cert-validation.patch
+ #don't work
+ #epatch "${FILESDIR}"/${PN}-1.2.3-set-file-permissions.patch
+ use jack && cd ${PATCHDIR}
+ use jack && epatch "${FILESDIR}"/mumble-jack-support-r2.patch
+}
+
+src_configure() {
+ local conf_add
+
+ if has_version '<=sys-devel/gcc-4.2'; then
+ conf_add="${conf_add} no-pch"
+ else
+ use pch || conf_add="${conf_add} no-pch"
+ fi
+
+ use alsa || conf_add="${conf_add} no-alsa"
+ use dbus || conf_add="${conf_add} no-dbus"
+ use debug && conf_add="${conf_add} symbols debug" || conf_add="${conf_add} release"
+ use g15 || conf_add="${conf_add} no-g15"
+ use oss || conf_add="${conf_add} no-oss"
+ use portaudio || conf_add="${conf_add} no-portaudio"
+ use pulseaudio || conf_add="${conf_add} no-pulseaudio"
+ use speech || conf_add="${conf_add} no-speechd"
+ use zeroconf || conf_add="${conf_add} no-bonjour"
+
+ eqmake4 "${S}/main.pro" -recursive \
+ CONFIG+="${conf_add} \
+ bundled-celt \
+ no-11x \
+ no-bundled-speex \
+ no-embed-qt-translations \
+ no-server \
+ no-update" \
+ DEFINES+="PLUGIN_PATH=/usr/$(get_libdir)/mumble" \
+ || die "eqmake4 failed."
+}
+
+src_install() {
+ newdoc README.Linux README
+ dodoc CHANGES
+
+ local dir
+ if use debug; then
+ dir=debug
+ else
+ dir=release
+ fi
+
+ dobin "${dir}"/mumble
+ dobin scripts/mumble-overlay
+
+ insinto /usr/share/services
+ doins scripts/mumble.protocol
+
+ domenu scripts/mumble.desktop
+
+ insinto /usr/share/icons/hicolor/scalable/apps
+ doins icons/mumble.svg
+
+ doman man/mumble-overlay.1
+ doman man/mumble.1
+
+ insopts -o root -g root -m 0755
+ insinto "/usr/$(get_libdir)/mumble"
+ doins "${dir}"/libmumble.so.${PV}
+ dosym libmumble.so.${PV} /usr/$(get_libdir)/mumble/libmumble.so.1
+ doins "${dir}"/libcelt0.so.0.{7,11}.0
+ doins "${dir}"/plugins/lib*.so*
+}
+
+pkg_postinst() {
+ echo
+ elog "Visit http://mumble.sourceforge.net/ for futher configuration instructions."
+ elog "Run mumble-overlay to start the OpenGL overlay (after starting mumble)."
+ echo
+}