XVIII. KDEMultimedia-KMix (KDE4.14)
PKGBUILD
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
pkgname=kdemultimedia-kmix
pkgver=14.12.0
pkgrel=1
pkgdesc="KDE volume control program"
url='http://kde.org/applications/multimedia/kmix/'
arch=('i686' 'x86_64')
license=('GPL' 'LGPL' 'FDL')
groups=('kde' 'kdemultimedia')
depends=('kdebase-runtime')
makedepends=('cmake' 'automoc4')
optdepends=('libcanberra-pulse: PulseAudio support')
install="${pkgname}.install"
source=("http://download.kde.org/stable/applications/${pkgver}/src/kmix-${pkgver}.tar.xz"
        'use-qdbus-qt4.patch')
sha1sums=('4b69d15293af6c98ab52d009b79fad04ee57a222'
          'f89a076c5a29c51d213864e27d07baf5400ece03')
prepare() {
  mkdir build
  cd kmix-${pkgver}
  # FS#40786
  patch -p1 -i "${srcdir}"/use-qdbus-qt4.patch
}
build() {
  cd build
  cmake ../kmix-${pkgver} \
    -DCMAKE_BUILD_TYPE=Release \
    -DKDE4_BUILD_TESTS=OFF \
    -DCMAKE_INSTALL_PREFIX=/usr
  make
}
package() {
  cd build
  make DESTDIR="${pkgdir}" install
}use-qdbus-qt4.patch 
--- kmix-4.13.2/apps/kmixremote~        2014-06-14 15:17:06.856474667 +0000
+++ kmix-4.13.2/apps/kmixremote 2014-06-14 15:17:44.759594763 +0000
@@ -28,7 +28,7 @@
 # Prints the mixer DBUS ID's on the console. leaving out the "/Mixers/" prefix
 function listMixers
 {
-  qdbus org.kde.kmix /Mixers org.freedesktop.DBus.Properties.Get org.kde.KMix.MixSet mixers | cut -f3 -d/
+  qdbus-qt4 org.kde.kmix /Mixers org.freedesktop.DBus.Properties.Get org.kde.KMix.MixSet mixers | cut -f3 -d/
   errorCode=$?
   if test $errorCode != 0; then
     echo "Error $errorCode listing mixers. KMix is not running."
@@ -38,7 +38,7 @@
 # Prints the mixer control DBUS ID's of the given mixer on the console. leaving out the "/Mixers/" prefix
 function listControls
 {
-  qdbus org.kde.kmix $1 org.freedesktop.DBus.Properties.Get org.kde.KMix.Mixer controls  | cut -f4 -d/
+  qdbus-qt4 org.kde.kmix $1 org.freedesktop.DBus.Properties.Get org.kde.KMix.Mixer controls  | cut -f4 -d/
   errorCode=$?
   if test $errorCode != 0; then
     echo "Error $errorCode listing controls. KMix is not running."
@@ -47,8 +47,8 @@
 
 command=""
 
-if ! type qdbus >/dev/null  2>&1 ; then
-  exit_with_error "$0 requires qdbus, but it cannot be found. Please install or check \$PATH"
+if ! type qdbus-qt4 >/dev/null  2>&1 ; then
+  exit_with_error "$0 requires qdbus-qt4, but it cannot be found. Please install or check \$PATH"
 fi
 
 # Read args
@@ -58,8 +58,8 @@
   if test -z "$arg"; then
     break
   elif test "x--master" = "x$arg"; then
-    mixer=`qdbus org.kde.kmix /Mixers org.kde.KMix.MixSet.currentMasterMixer`
-    control=`qdbus org.kde.kmix /Mixers org.kde.KMix.MixSet.currentMasterControl`
+    mixer=`qdbus-qt4 org.kde.kmix /Mixers org.kde.KMix.MixSet.currentMasterMixer`
+    control=`qdbus-qt4 org.kde.kmix /Mixers org.kde.KMix.MixSet.currentMasterControl`
   elif test "x--help" = "x$arg" -o "x-h" = "x$arg"; then
     usage
     exit 0
@@ -113,13 +113,13 @@
 # --- EXECUTE PHASE --------------------------------------------------------------------------------------------------
 if test "xget" = "x$command"; then
   # GET
-  qdbus org.kde.kmix $targetControl org.freedesktop.DBus.Properties.Get org.kde.KMix.Control volume
+  qdbus-qt4 org.kde.kmix $targetControl org.freedesktop.DBus.Properties.Get org.kde.KMix.Control volume
 elif test "xset" = "x$command"; then
   # SET
-  qdbus org.kde.kmix $targetControl org.freedesktop.DBus.Properties.Set org.kde.KMix.Control volume $genericArg
+  qdbus-qt4 org.kde.kmix $targetControl org.freedesktop.DBus.Properties.Set org.kde.KMix.Control volume $genericArg
 elif test "xmute" = "x$command"; then
   # MUTE
-  qdbus org.kde.kmix $targetControl org.freedesktop.DBus.Properties.Set org.kde.KMix.Control mute $genericArg
+  qdbus-qt4 org.kde.kmix $targetControl org.freedesktop.DBus.Properties.Set org.kde.KMix.Control mute $genericArg
 else
   exit_with_error "No such command '$command'"
 fikdemultimedia-kmix.install 
post_install() {
    xdg-icon-resource forceupdate --theme hicolor &> /dev/null
}
post_upgrade() {
    post_install
}
post_remove() {
    post_install
}