Date: Sunday, May 18, 2014 @ 15:42:50 Author: idevolder Revision: 111418
xbmc :: 13.0-4 cleaned and improved pkgbuild updated install script for 420 uid/gid Modified: xbmc/trunk/PKGBUILD xbmc/trunk/xbmc.install --------------+ PKGBUILD | 22 +++++++++++----------- xbmc.install | 29 +++++++++++++++++++---------- 2 files changed, 30 insertions(+), 21 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2014-05-18 12:34:06 UTC (rev 111417) +++ PKGBUILD 2014-05-18 13:42:50 UTC (rev 111418) @@ -5,6 +5,7 @@ # Contributor: Zeqadious <zeqadious.at.gmail.dot.com> # Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com > # Contributor: Bartłomiej Piotrowski <[email protected]> +# Contributor: Maxime Gauduin <[email protected]> _prefix=/usr @@ -11,11 +12,11 @@ pkgname=xbmc pkgver=13.0 _codename=Gotham_r2 -pkgrel=3 +pkgrel=4 pkgdesc="A software media player and entertainment hub for digital media" arch=('i686' 'x86_64') url="http://xbmc.org" -license=('GPL' 'custom') +license=('GPL2') depends=( 'avahi' 'ffmpeg' 'hicolor-icon-theme' 'libcdio' 'libmad' 'libmicrohttpd' 'libmpeg2' 'libmysqlclient' 'libsamplerate' 'libssh' 'libxrandr' 'libxslt' @@ -38,7 +39,6 @@ 'unrar: access compressed files without unpacking them' 'xorg-xinit: autostart xbmc' 'udisks: automount external drives' -'upower: used to trigger power management functionality' ) install="${pkgname}.install" source=( @@ -60,6 +60,10 @@ cd "$srcdir/xbmc-$pkgver-$_codename" patch -p1 -i "$srcdir/enable-external-ffmpeg.patch" patch -p1 -i "$srcdir/0001-rtmp-check-m_rtmp-for-non-NULL-fixes-crashes-with-mi.patch" + + find -type f -name *.py -exec sed 's|^#!.*python$|#!/usr/bin/python2|' -i "{}" + + sed 's|^#!.*python$|#!/usr/bin/python2|' -i tools/depends/native/rpl-native/rpl + sed 's/python/python2/' -i tools/Linux/xbmc.sh.in } build() { @@ -112,19 +116,11 @@ # Running make install make DESTDIR="$pkgdir" install - # Python2 - sed 's/python/python2/g' -i \ - "$pkgdir"/usr/{bin/xbmc,share/xbmc/addons/service.xbmc.versioncheck/service.py} - # Tools - msg2 "Tools" - install -D -m 0755 "$srcdir/xbmc-$pkgver-$_codename/xbmc-xrandr" \ - "${pkgdir}$_prefix/lib/xbmc/xbmc-xrandr" install -D -m 0755 "$srcdir/xbmc-$pkgver-$_codename/tools/TexturePacker/TexturePacker" \ "${pkgdir}$_prefix/lib/xbmc/" # Licenses - msg2 "Copy licenses" install -dm755 "${pkgdir}$_prefix/share/licenses/$pkgname" for licensef in LICENSE.GPL copying.txt; do mv "${pkgdir}$_prefix/share/doc/xbmc/$licensef" \ @@ -137,5 +133,9 @@ # install polkit rules install -dm700 "$pkgdir/user/share/polkit-1/rules.d" install -Dm0644 "$srcdir/polkit.rules" "$pkgdir/user/share/polkit-1/rules.d/10-xbmc.rules" + + # XBMC user home + install -dm 700 "${pkgdir}"/var/lib/xbmc + chown 420:420 "${pkgdir}"/var/lib/xbmc } # vim:set ts=2 sw=2 et: Modified: xbmc.install =================================================================== --- xbmc.install 2014-05-18 12:34:06 UTC (rev 111417) +++ xbmc.install 2014-05-18 13:42:50 UTC (rev 111418) @@ -1,19 +1,28 @@ post_install() { - [[ $(type -p gtk-update-icon-cache) ]] && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor - [[ $(type -p update-desktop-database) ]] && usr/bin/update-desktop-database -q usr/share/applications - getent group xbmc > /dev/null || groupadd -r xbmc - getent passwd xbmc > /dev/null || useradd -r -m -d /var/lib/xbmc -g xbmc xbmc - usermod -a -G xbmc,audio,video,network,optical xbmc - mkdir -p var/lib/xbmc - chown -R xbmc:xbmc var/lib/xbmc + update_icons + getent group xbmc > /dev/null || groupadd -g 420 xbmc + getent passwd xbmc > /dev/null || useradd -c 'XBMC user' -u 420 -g xbmc -G audio,video,network,optical -d /var/lib/xbmc -s /sbin/nologin xbmc + passwd -l xbmc > /dev/null } post_upgrade() { post_install $1 + if ! getent group xbmc | cut -d: -f3 | grep 420 > /dev/null 2>&1; then + groupmod -g 420 xbmc + fi + if ! id -u xbmc | grep 420 > /dev/null 2>&1; then + usermod -u 420 xbmc + chown -R xbmc:xbmc /var/lib/xbmc + fi } post_remove() { - [[ $(type -p gtk-update-icon-cache) ]] && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor - [[ $(type -p update-desktop-database) ]] && usr/bin/update-desktop-database -q usr/share/applications - getent passwd xbmc > /dev/null && userdel xbmc + update_icons + getent passwd xbmc > /dev/null 2>&1 && userdel xbmc + getent group xbmc > /dev/null 2>&1 && groupdel xbmc } + +update_icons() { + type -p gtk-update-icon-cache > /dev/null 2>&1 && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor + type -p update-desktop-database > /dev/null 2>&1 && usr/bin/update-desktop-database -q usr/share/applications +}
