summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGustavo Felisberto <humpback@gentoo.org>2006-01-30 17:53:19 +0000
committerGustavo Felisberto <humpback@gentoo.org>2006-01-30 17:53:19 +0000
commit4239d47dffa7d6bb051916e62bca41417464f05f (patch)
tree0883c59f4355d0a8dddab53c28c748259dc36c40 /net-im/skype/files
parentadd reminder to keep 3 function in sync with eselect-mysql (diff)
downloadhistorical-4239d47dffa7d6bb051916e62bca41417464f05f.tar.gz
historical-4239d47dffa7d6bb051916e62bca41417464f05f.tar.bz2
historical-4239d47dffa7d6bb051916e62bca41417464f05f.zip
amd64 fix
Package-Manager: portage-2.1_pre4-r1
Diffstat (limited to 'net-im/skype/files')
-rw-r--r--net-im/skype/files/digest-skype-1.2.0.21-r16
-rw-r--r--net-im/skype/files/sDaemonWrapper-r110
-rwxr-xr-xnet-im/skype/files/skype-callto-handler83
3 files changed, 97 insertions, 2 deletions
diff --git a/net-im/skype/files/digest-skype-1.2.0.21-r1 b/net-im/skype/files/digest-skype-1.2.0.21-r1
new file mode 100644
index 000000000000..77caa46f1076
--- /dev/null
+++ b/net-im/skype/files/digest-skype-1.2.0.21-r1
@@ -0,0 +1,6 @@
+MD5 b73a2d828f262a45506d2b95a005a605 skype-1.2.0.21-1mdk.i586.rpm 7802660
+RMD160 0f76ee645d1e90d52a4478a4397e90c6473f86b0 skype-1.2.0.21-1mdk.i586.rpm 7802660
+SHA256 c70e7ff0add74ceb1b833398eaa07c5699207845f70ebc0a35414af8ff473b12 skype-1.2.0.21-1mdk.i586.rpm 7802660
+MD5 5b3195993d01ed0d439a28b505665382 skype-avatars-1.0.tgz 377763
+RMD160 54f6faeebc6509ebec8418fc27d0b2fbdc383bcf skype-avatars-1.0.tgz 377763
+SHA256 de7a9187a99ef7a13bba99c4ad61f6809bbd1e129f6456267b416090e57d71d6 skype-avatars-1.0.tgz 377763
diff --git a/net-im/skype/files/sDaemonWrapper-r1 b/net-im/skype/files/sDaemonWrapper-r1
index ab9c935289f5..900296188b5f 100644
--- a/net-im/skype/files/sDaemonWrapper-r1
+++ b/net-im/skype/files/sDaemonWrapper-r1
@@ -13,6 +13,12 @@ esdcheck=` ps ax | grep "esd ." | grep -v grep `
skypecmd="${progpath}${progname}.bin"
wrapsound="yes"
+#Use 32bits wrapper in 64 bits system
+xdspsuffix=""
+if [ `uname -m` == "x86_64" ]; then
+ xdspsuffix=32
+fi
+
[ "$1" == "oss" ] && wrapsound="no"
[ -d "$(dirname "${logfile}")" ] || mkdir "$(dirname "${logfile}")"
@@ -28,12 +34,12 @@ else
then
echo "Running artsd found"
echo "Starting artsd wrapped ${progname}" | tee --append "${logfile}"
- skypecmd="env MALLOC_CHECK_=0 artsdsp -m ${skypecmd}"
+ skypecmd="env MALLOC_CHECK_=0 artsdsp${xdspsuffix} -m ${skypecmd}"
elif [[ ${wrapsound} == "yes" && ${shellcheck2} == /usr/bin/esd && -n ${esdcheck} ]]
then
echo "Running esd found"
echo "Starting esd wrapped ${progname}" | tee --append "${logfile}"
- skypecmd="esddsp ${skypecmd}"
+ skypecmd="esddsp${xdspsuffix} ${skypecmd}"
else
if [ ${wrapsound} == "yes" ]
then
diff --git a/net-im/skype/files/skype-callto-handler b/net-im/skype/files/skype-callto-handler
new file mode 100755
index 000000000000..e4614d754e0c
--- /dev/null
+++ b/net-im/skype/files/skype-callto-handler
@@ -0,0 +1,83 @@
+#!/bin/sh
+
+SKYPE="skype"
+DBUS_SEND="dbus-send"
+BUS="--system"
+SKYPE_BUS=""
+ID=`id -u`
+
+print_help()
+{
+ cat << EOF
+Skype "callto://" handler
+ Usage: skype-callto-handler [BUS] callto://user
+ Where BUS can be either "--system" (default) or "--session"
+EOF
+}
+
+if [ -z "$1" -o "$1" = "--help" ]; then
+ print_help
+ exit 1
+fi
+
+if [ "--system" = "$1" -o "--session" = "$1" ];then
+ BUS="$1"
+ shift 1
+fi
+
+if [ "--session" = "$BUS" ]; then
+ SKYPE_BUS="--use-session-dbus"
+fi
+
+if [ -z "$1" ];then
+ print_help
+ exit 1
+fi
+
+CALLTO=`echo $1 | sed 's/callto:\/\///'`
+
+PING=`$DBUS_SEND $BUS --type=method_call --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ServiceExists string:com.Skype.API 2> /dev/null`; RESULT=$?
+
+if [ $RESULT -ne 0 ]; then
+ echo "ERROR: Failed to connect to DBUS daemon!"
+ exit 1
+fi
+
+echo "$PING" | grep -q "boolean:true"; RESULT=$?
+
+if [ $RESULT -ne 0 ]; then
+ echo "Running Skype instance not found, launching"
+ $SKYPE $SKYPE_BUS --callto "$CALLTO" &
+ exit 0
+fi
+
+SKYPE_ID=`$DBUS_SEND $BUS --type=method_call --print-reply --dest=com.Skype.API /com/Skype com.Skype.API.Ping 2> /dev/null`;RESULT=$?
+
+if [ $RESULT -ne 0 ]; then
+ echo "ERROR: Skype is running on specified bus, but is misbehaving!"
+ exit 1
+fi
+
+TEMP=`echo "$SKYPE_ID" | grep -o "int32:[0-9]*"`
+
+SKYPE_ID=`echo "$TEMP" | cut -f2 -d':'`
+
+if [ $ID -ne $SKYPE_ID ]; then
+ echo "ERROR: Skype is running on specified bus, but for different UNIX user!"
+ exit 1
+fi
+
+REPLY=`$DBUS_SEND $BUS --type=method_call --print-reply --dest=com.Skype.API /com/Skype com.Skype.API.Invoke string:CALL\ $CALLTO 2> /dev/null`;RESULT=$?
+
+if [ $RESULT -ne 0 ]; then
+ echo "ERROR: Error when communicating with Skype!"
+ exit 1
+fi
+
+TEMP=`echo "$REPLY" | grep -o "string:.*"`
+
+REPLY=`echo "$TEMP" | cut -f2 -d':'`
+
+echo $REPLY
+
+exit 0