summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Dye2016-01-11 17:52:11 -0800
committerJosh Dye2016-01-11 17:52:11 -0800
commit5af3125402e8f93572f49674153d2d6204ce0e56 (patch)
tree625b67dbbe3ff68afbc03f67b1e40031120e7dac
downloadaur-5af3125402e8f93572f49674153d2d6204ce0e56.tar.gz
Initial import
-rw-r--r--.SRCINFO85
-rw-r--r--PKGBUILD77
-rw-r--r--plex-ffmpeg-compat.patch29
-rw-r--r--plex-libcec.patch63
-rw-r--r--plexhometheater.sh5
5 files changed, 259 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..4df773ef09ec
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,85 @@
+# Generated by mksrcinfo v8
+# Tue Jan 12 01:49:04 UTC 2016
+pkgbase = plex-home-theater
+ pkgdesc = OpenPHT is a community driven fork of Plex Home Theater
+ pkgver = 1.5.0.502
+ pkgrel = 1
+ url = https://github.com/RasPlex/OpenPHT/
+ arch = i686
+ arch = x86_64
+ license = GPL2
+ makedepends = boost
+ makedepends = cmake
+ makedepends = doxygen
+ makedepends = ffmpeg-compat
+ makedepends = git
+ makedepends = java-environment
+ makedepends = libcec
+ makedepends = libplist
+ makedepends = libshairport
+ makedepends = nasm
+ makedepends = swig
+ makedepends = unzip
+ makedepends = zip
+ depends = alsa-lib
+ depends = avahi
+ depends = boost-libs
+ depends = curl
+ depends = expat
+ depends = freetype2
+ depends = fribidi
+ depends = gcc-libs
+ depends = glew
+ depends = glibc
+ depends = glu
+ depends = libcdio
+ depends = libgl
+ depends = libjpeg
+ depends = libmad
+ depends = libmicrohttpd
+ depends = libmpeg2
+ depends = libpng
+ depends = libpulse
+ depends = libsamplerate
+ depends = libssh
+ depends = libtiff
+ depends = libusb-compat
+ depends = libva
+ depends = libvdpau
+ depends = libx11
+ depends = libxext
+ depends = libxrandr
+ depends = lzo
+ depends = pcre
+ depends = python2
+ depends = sdl
+ depends = sdl_image
+ depends = sdl_mixer
+ depends = sqlite
+ depends = smbclient
+ depends = taglib
+ depends = tinyxml
+ depends = yajl
+ depends = zlib
+ depends = libavcodec.so
+ depends = libavfilter.so
+ depends = libavformat.so
+ depends = libavutil.so
+ depends = libpostproc.so
+ depends = libswresample.so
+ depends = libswscale.so
+ optdepends = libplist: AirPlay support
+ optdepends = libshairport: AirPlay support
+ optdepends = libcec: Pulse-Eight USB-CEC adapter support
+ optdepends = pulseaudio: PulseAudio support
+ source = https://github.com/RasPlex/OpenPHT/archive/v1.5.0.502-7563ca94.tar.gz
+ source = plex-ffmpeg-compat.patch
+ source = plex-libcec.patch
+ source = plexhometheater.sh
+ sha256sums = SKIP
+ sha256sums = 5b370e4dec6998130df46ad6bd5ca6258e3a040dd6c6cc4085c335dc3d6050bd
+ sha256sums = 7e5f6c1e07184a0b0affe4ef7c0bd06d1094f7a28cf5baa35d31a69cf488a9db
+ sha256sums = dc6bd394c07a2ececbb2f8c53cb54afd5d78f7c00a0b34acab3e71217da085fb
+
+pkgname = plex-home-theater
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..ed9e144af88c
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,77 @@
+# Maintainer: Josh Dye <josh.jpenguin@gmail.com>
+# Contributor: Maxime Gauduin <alucryd@archlinux.org>
+# Contributor: Daniel Wallace <daniel.wallace@gatech.edu>
+
+pkgname=plex-home-theater
+pkgver=1.5.0.502
+_pkghash=7563ca94
+pkgrel=1
+pkgdesc='OpenPHT is a community driven fork of Plex Home Theater '
+arch=('i686' 'x86_64')
+url='https://github.com/RasPlex/OpenPHT/'
+license=('GPL2')
+depends=('alsa-lib' 'avahi' 'boost-libs' 'curl' 'expat' 'freetype2' 'fribidi'
+ 'gcc-libs' 'glew' 'glibc' 'glu' 'libcdio' 'libgl' 'libjpeg' 'libmad'
+ 'libmicrohttpd' 'libmpeg2' 'libpng' 'libpulse' 'libsamplerate'
+ 'libssh' 'libtiff' 'libusb-compat' 'libva' 'libvdpau' 'libx11'
+ 'libxext' 'libxrandr' 'lzo' 'pcre' 'python2' 'sdl' 'sdl_image'
+ 'sdl_mixer' 'sqlite' 'smbclient' 'taglib' 'tinyxml' 'yajl' 'zlib'
+ 'libavcodec.so' 'libavfilter.so' 'libavformat.so' 'libavutil.so'
+ 'libpostproc.so' 'libswresample.so' 'libswscale.so')
+makedepends=('boost' 'cmake' 'doxygen' 'ffmpeg-compat' 'git' 'java-environment'
+ 'libcec' 'libplist' 'libshairport' 'nasm' 'swig' 'unzip' 'zip')
+optdepends=('libplist: AirPlay support'
+ 'libshairport: AirPlay support'
+ 'libcec: Pulse-Eight USB-CEC adapter support'
+ 'pulseaudio: PulseAudio support')
+source=("https://github.com/RasPlex/OpenPHT/archive/v${pkgver}-${_pkghash}.tar.gz"
+ 'plex-ffmpeg-compat.patch'
+ 'plex-libcec.patch'
+ 'plexhometheater.sh')
+sha256sums=('SKIP'
+ '5b370e4dec6998130df46ad6bd5ca6258e3a040dd6c6cc4085c335dc3d6050bd'
+ '7e5f6c1e07184a0b0affe4ef7c0bd06d1094f7a28cf5baa35d31a69cf488a9db'
+ 'dc6bd394c07a2ececbb2f8c53cb54afd5d78f7c00a0b34acab3e71217da085fb')
+
+prepare() {
+ cd OpenPHT-${pkgver}-${_pkghash}
+
+ patch -Np1 -i ../plex-libcec.patch
+ patch -Np1 -i ../plex-ffmpeg-compat.patch
+}
+
+build() {
+ cd OpenPHT-${pkgver}-${_pkghash}
+
+ if [[ -d build ]]; then
+ rm -rf build
+ fi
+ mkdir build && cd build
+
+ cmake .. \
+ -DCMAKE_INSTALL_PREFIX='/usr' \
+ -DCMAKE_C_FLAGS="$CMAKE_C_FLAGS -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include" \
+ -DCMAKE_CXX_FLAGS="$CMAKE_CXX_FLAGS -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include" \
+ -DCREATE_BUNDLE='FALSE' \
+ -DDUMP_SYMBOLS='FALSE' \
+ -DENABLE_AUTOUPDATE='FALSE' \
+ -DENABLE_PYTHON='TRUE' \
+ -DPYTHON_EXEC='/usr/bin/python2' \
+ -DUSE_INTERNAL_FFMPEG='FALSE'
+ make
+}
+
+package() {
+ cd OpenPHT-${pkgver}-${_pkghash}/build
+
+ make DESTDIR="${pkgdir}" install
+ install -dm 755 "${pkgdir}"/usr/{lib/plexhometheater,share/{applications,pixmaps}}
+ mv "${pkgdir}"/usr/bin/{system,xbmc-xrandr} "${pkgdir}"/usr/lib/plexhometheater/
+ mv "${pkgdir}"/usr/share/XBMC "${pkgdir}"/usr/share/plexhometheater
+ rm -rf "${pkgdir}"/usr/bin/*.so
+ install -m 755 "${srcdir}"/plexhometheater.sh "${pkgdir}"/usr/bin/
+ install -m 644 ../plex/Resources/plexhometheater.desktop "${pkgdir}"/usr/share/applications/
+ install -m 644 ../plex/Resources/plex-icon-256.png "${pkgdir}"/usr/share/pixmaps/plexhometheater.png
+}
+
+# vim: ts=2 sw=2 et:
diff --git a/plex-ffmpeg-compat.patch b/plex-ffmpeg-compat.patch
new file mode 100644
index 000000000000..1601500141fc
--- /dev/null
+++ b/plex-ffmpeg-compat.patch
@@ -0,0 +1,29 @@
+diff -rupN plex-home-theater.orig/plex/CMakeModules/FindFFmpeg.cmake plex-home-theater/plex/CMakeModules/FindFFmpeg.cmake
+--- plex-home-theater.orig/plex/CMakeModules/FindFFmpeg.cmake 2014-09-15 11:46:21.751638700 +0200
++++ plex-home-theater/plex/CMakeModules/FindFFmpeg.cmake 2014-09-15 11:43:25.678039000 +0200
+@@ -41,7 +41,7 @@ MACRO(FFMPEG_FIND varname shortname head
+ /opt/csw/include # Blastwave
+ /opt/include
+ /usr/freeware/include
+- PATH_SUFFIXES ffmpeg
++ PATH_SUFFIXES ffmpeg-compat
+ DOC "Location of FFMPEG Headers"
+ )
+
+@@ -62,7 +62,7 @@ MACRO(FFMPEG_FIND varname shortname head
+ /opt/csw/include # Blastwave
+ /opt/include
+ /usr/freeware/include
+- PATH_SUFFIXES ffmpeg
++ PATH_SUFFIXES ffmpeg-compat
+ DOC "Location of FFMPEG Headers"
+ )
+ ENDIF(NOT FFMPEG_${varname}_INCLUDE_DIRS)
+@@ -85,6 +85,7 @@ MACRO(FFMPEG_FIND varname shortname head
+ /opt/csw/lib
+ /opt/lib
+ /usr/freeware/lib64
++ PATH_SUFFIXES ffmpeg-compat
+ DOC "Location of FFMPEG Libraries"
+ )
+
diff --git a/plex-libcec.patch b/plex-libcec.patch
new file mode 100644
index 000000000000..208756958014
--- /dev/null
+++ b/plex-libcec.patch
@@ -0,0 +1,63 @@
+diff -rupN plex-home-theater-public-1.4.1.469-47a90f01.orig/system/peripherals.xml plex-home-theater-public-1.4.1.469-47a90f01/system/peripherals.xml
+--- plex-home-theater-public-1.4.1.469-47a90f01.orig/system/peripherals.xml 2015-07-22 11:09:33.213307552 +0200
++++ plex-home-theater-public-1.4.1.469-47a90f01/system/peripherals.xml 2015-07-22 11:09:47.349594239 +0200
+@@ -28,7 +28,7 @@
+ <setting key="device_type" type="int" value="1" configurable="0" />
+ <setting key="wake_devices_advanced" type="string" value="" configurable="0" />
+ <setting key="standby_devices_advanced" type="string" value="" configurable="0" />
+- <setting key="double_tap_timeout_ms" type="int" min="0" value="2000" configurable="0" />
++ <setting key="double_tap_timeout_ms" type="int" min="0" value="300" configurable="0" />
+ </peripheral>
+
+ <peripheral vendor_product="2548:1001,2548:1002" bus="usb" name="Pulse-Eight CEC Adapter" mapTo="cec">
+diff -rupN plex-home-theater-public-1.4.1.469-47a90f01.orig/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp plex-home-theater-public-1.4.1.469-47a90f01/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp
+--- plex-home-theater-public-1.4.1.469-47a90f01.orig/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp 2015-07-22 11:09:32.826651274 +0200
++++ plex-home-theater-public-1.4.1.469-47a90f01/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp 2015-07-22 11:09:47.349594239 +0200
+@@ -101,6 +101,8 @@ bool CPeripheralBusCEC::PerformDeviceSca
+ break;
+ case ADAPTERTYPE_RPI:
+ result.m_mappedBusType = PERIPHERAL_BUS_RPI;
++ // the Pi's adapter cannot be removed, no need to rescan
++ m_bNeedsPolling = false;
+ break;
+ default:
+ break;
+diff -rupN plex-home-theater-public-1.4.1.469-47a90f01.orig/xbmc/peripherals/devices/PeripheralCecAdapter.cpp plex-home-theater-public-1.4.1.469-47a90f01/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
+--- plex-home-theater-public-1.4.1.469-47a90f01.orig/xbmc/peripherals/devices/PeripheralCecAdapter.cpp 2015-07-22 11:09:32.826651274 +0200
++++ plex-home-theater-public-1.4.1.469-47a90f01/xbmc/peripherals/devices/PeripheralCecAdapter.cpp 2015-07-22 11:13:05.310907421 +0200
+@@ -282,7 +283,7 @@ bool CPeripheralCecAdapter::InitialiseFe
+ }
+ else
+ {
+- CLog::Log(LOGDEBUG, "%s - using libCEC v%s", __FUNCTION__, m_cecAdapter->ToString((cec_server_version)m_configuration.serverVersion));
++ CLog::Log(LOGDEBUG, "%s - using libCEC v%s", __FUNCTION__, m_cecAdapter->ToString((cec_version)m_configuration.serverVersion));
+ SetVersionInfo(m_configuration);
+ }
+
+@@ -295,7 +296,7 @@ bool CPeripheralCecAdapter::InitialiseFe
+
+ void CPeripheralCecAdapter::SetVersionInfo(const libcec_configuration &configuration)
+ {
+- m_strVersionInfo.Format("libCEC %s - firmware v%d", m_cecAdapter->ToString((cec_server_version)configuration.serverVersion), configuration.iFirmwareVersion);
++ m_strVersionInfo.Format("libCEC %s - firmware v%d", m_cecAdapter->ToString((cec_version)configuration.serverVersion), configuration.iFirmwareVersion);
+
+ // append firmware build date
+ if (configuration.iFirmwareBuildDate != CEC_FW_BUILD_UNKNOWN)
+@@ -1303,7 +1304,7 @@ void CPeripheralCecAdapter::SetConfigura
+ void CPeripheralCecAdapter::SetConfigurationFromSettings(void)
+ {
+ // use the same client version as libCEC version
+- m_configuration.clientVersion = CEC_CLIENT_VERSION_CURRENT;
++ m_configuration.clientVersion = LIBCEC_VERSION_CURRENT;
+
+ // device name 'XBMC'
+ snprintf(m_configuration.strDeviceName, 13, "%s", GetSettingString("device_name").c_str());
+@@ -1379,7 +1380,7 @@ void CPeripheralCecAdapter::SetConfigura
+ m_configuration.bShutdownOnStandby = iStandbyAction == 13005 ? 1 : 0;
+
+ // double tap prevention timeout in ms
+- m_configuration.iDoubleTapTimeoutMs = GetSettingInt("double_tap_timeout_ms");
++ m_configuration.iDoubleTapTimeout50Ms = GetSettingInt("double_tap_timeout_ms") / 50;
+ }
+
+ void CPeripheralCecAdapter::ReadLogicalAddresses(const CStdString &strString, cec_logical_addresses &addresses)
diff --git a/plexhometheater.sh b/plexhometheater.sh
new file mode 100644
index 000000000000..53276ffedc76
--- /dev/null
+++ b/plexhometheater.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+export XBMC_BIN_HOME='/usr/lib/plexhometheater'
+export XBMC_HOME='/usr/share/plexhometheater'
+exec plexhometheater