diff options
Diffstat (limited to 'multimedia/plexmediaserver/plexmediaserver.SlackBuild')
-rw-r--r-- | multimedia/plexmediaserver/plexmediaserver.SlackBuild | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/multimedia/plexmediaserver/plexmediaserver.SlackBuild b/multimedia/plexmediaserver/plexmediaserver.SlackBuild new file mode 100644 index 0000000000..a7500077a0 --- /dev/null +++ b/multimedia/plexmediaserver/plexmediaserver.SlackBuild @@ -0,0 +1,114 @@ +#!/bin/sh +# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST +# Copyright 2009, 2010, 2011, 2012, 2013 Eric Hameleers, Eindhoven, Netherlands +# Slackware build script for plexmediaserver +# Written by Lionel Young <lionelyoung@gmail.com> +# Based on http://slackbuilds.org/template.SlackBuild + +PRGNAM=plexmediaserver +VERSION=${VERSION:-0.9.8.10.215-020456b} +PKG_VERSION=0.9.8.10.215.020456b +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +ARCH=${ARCH:-$(uname -m)} +if [ "$ARCH" = "i386" ]; then + DEBARCH="i386" + LIBDIRSUFFIX="" + ARCH="i386" +elif [ "$ARCH" = "i486" ]; then + DEBARCH="i386" + LIBDIRSUFFIX="" + ARCH="i386" +elif [ "$ARCH" = "x86_64" ]; then + DEBARCH="amd64" + LIBDIRSUFFIX="64" + ARCH="x86_64" +else + echo "Package for $(uname -m) architecture is not available." + exit 1 +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +PLEX_USER=${PLEX_USER:-279} +PLEX_GROUP=${PLEX_GROUP:-279} + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $PKG +rm -rf $PRGNAM-$PKG_VERSION +ar xv $CWD/${PRGNAM}_${VERSION}_${DEBARCH}.deb +tar xvf data.tar.gz +# Remove debian files +rm -f debian-binary control.tar.gz data.tar.gz +rm -rf $PKG/etc/apt/ $PKG/etc/init $PKG/etc/init.d +chown -R root:root . + +# Bail if user or group isn't valid on your system +if ! grep ^plex: /etc/passwd 2>&1 > /dev/null; then + +cat << EOF + + You must have a plex user to run this script + + # groupadd -g $PLEX_USER plex + # useradd -u $PLEX_USER -d /var/lib/$PRGNAM -s /bin/false -g plex plex + +EOF + + exit +elif ! grep ^plex: /etc/group 2>&1 > /dev/null; then + +cat << EOF + + You must have a plex group to run this script + # groupadd -g $PLEX_GROUP plex + +EOF + exit +fi + +mkdir -p $PKG/opt/$PRGNAM/bin/ +mv $PKG/usr/lib/plexmediaserver $PKG/opt/$PRGNAM/lib + +# Fix binary paths +mv usr/sbin/start_pms $PKG/opt/$PRGNAM/bin/ +sed -i -e "s#/usr/lib/plexmediaserver#/opt/$PRGNAM/lib#" \ + $PKG/opt/$PRGNAM/bin/start_pms +mkdir -p $PKG/usr/bin/ +ln -s /opt/$PRGNAM/bin/start_pms \ + $PKG/usr/bin/start_pms + +# Install a .desktop launcher: +mv usr/share/applications/plexmediamanager.desktop $PKG/opt/$PRGNAM/ +sed -i -e "s/x-www-browser/xdg-open/" \ + $PKG/opt/$PRGNAM/plexmediamanager.desktop +mkdir -p $PKG/usr/share/applications +ln -s /opt/$PRGNAM/plexmediamanager.desktop \ + $PKG/usr/share/applications/plexmediamanager.desktop + +rm -rf $PKG/usr/share/doc $PKG/usr/sbin $PKG/usr/lib + +mkdir -p $PKG/usr/doc/$PRGNAM-$PKG_VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$PKG_VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/var/lib/$PRGNAM +chown -R $PLEX_USER:$PLEX_GROUP $PKG/var/lib/$PRGNAM + +mkdir -p $PKG/etc/rc.d/ +cat $CWD/rc.$PRGNAM > $PKG/etc/rc.d/rc.$PRGNAM.new +chmod 0644 $PKG/etc/rc.d/rc.$PRGNAM.new + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +# makepkg +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$PKG_VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} |