Преглед изворни кода

Merge pull request #11 from jellyfin/debian-packaging

Debian packaging 2.0
Andrew Rabert пре 6 година
родитељ
комит
afb78675b5

+ 0 - 121
debian/bin/emby-server

@@ -1,121 +0,0 @@
-#!/bin/bash
-# vim:set ft=sh sw=2 sts=2 st=2 et:
-# Author: HurricaneHernandez <carlos@techbyte.ca>
-# Modified for CentOS/Fedora by: FC7 <casasfernando@outlook.com>
-
-DESC=EmbyServer
-PATH=/sbin:/usr/sbin:/bin:/usr/bin
-NAME=emby-server
-CONF_FILE=/etc/${NAME}.conf
-DEFAULT_FILE=/etc/default/${NAME}
-SCRIPTNAME=/usr/bin/emby-server
-
-# Source Emby server default configuration
-. $DEFAULT_FILE
-
-# Source Emby server user configuration overrides
-if [[ -f $CONF_FILE ]]; then
-  . $CONF_FILE
-else
-  echo "${CONF_FILE} not found using default settings.";
-fi
-
-# Ensure the runas user has restart privilege to restart the service if not try to add the user to emby group. WARN on failure
-if [[ "$EMBY_USER" != "emby" ]]; then
-  groups $EMBY_USER | grep -q emby
-  if [[ $? -ne 0 ]]; then
-    if [[ $EUID -eq 0 ]]; then
-      usermod -a -G emby $EMBY_USER
-    else
-      echo "WARNING: The runas user is not part of emby group and you don't have enough privileges to add it. The restart button in the GUI will probably fail."
-      echo "To solve this start the emby-server service using the startup scripts (systemd/sysv) or"
-      echo "add the runas user ($EMBY_USER) to the emby group manually and restart Emby."
-    fi
-  fi
-fi
-
-# Data directory where Emby database, cache and logs are stored
-PROGRAMDATA=$EMBY_DATA
-PROGRAMDATA_OPT="-programdata $PROGRAMDATA"
-
-# Path to store PID file
-PIDFILE=$EMBY_PIDFILE
-
-# Full path of Emby binary
-EMBY_EXEC=$EMBY_BIN
-
-# Path of emby program files
-EMBY_PATH=$EMBY_DIR
-
-# path to mono bin
-MONO_EXEC=$MONO_BIN
-
-# umask
-UMASK=${UMASK:-002}
-
-# Mono environment variables
-MAGICK_HOME_ENV="MAGICK_HOME=${EMBY_PATH}"
-EMBY_LIBRARY_PATH=$(find /usr/lib/emby-server/ -maxdepth 1 -mindepth 1 -type d| grep -v bin | grep -v etc | grep -v -e "/\.")
-MAGICK_CODER_FILTER_PATH_ENV="MAGICK_CODER_FILTER_PATH=$(find ${EMBY_LIBRARY_PATH} -type d -name "filters" | grep EmbyMagick)"
-MAGICK_CODER_MODULE_PATH_ENV="MAGICK_CODER_MODULE_PATH=$(find ${EMBY_LIBRARY_PATH} -type d -name "coders" | grep EmbyMagick)"
-MONO_EXEC_ENV="$MONO_ENV ${EMBY_LIBRARY_PATH:+"LD_LIBRARY_PATH=${EMBY_LIBRARY_PATH}${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH"}"
-
-# Mono options
-MONO_EXEC_OPTS=$MONO_OPTS
-
-# restart function
-RESTART_OPTS="-restartpath ${EMBY_PATH}/restart.sh"
-
-# Emby options
-EMBY_OPTS="$PROGRAMDATA_OPT $RESTART_OPTS $EMBY_ADD_OPTS"
-
-PID_PATH=$(dirname $PIDFILE)
-
-# Exit if the mono-sgen not installed
-if [[ ! -x $MONO_EXEC ]]; then
-  if [[ -n "$(command -v mono-sgen)" ]]; then
-    MONO_EXEC=$(command -v mono-sgen)
-  else
-    MONO_EXEC=$(command -v mono)
-  fi
-fi
-
-# Create programdata  directory if not exist and ensure the emby user can write to it
-if [[ ! -d $PROGRAMDATA ]]; then
-  if [[ $EUID -eq 0 ]]; then
-    mkdir -p $PROGRAMDATA
-  else
-    echo "WARNING: $EMBY_DATA directory does not exist."
-    echo "To solve this, if it is an upgrade verify that \"EMBY_DATA\" is set to the correct path in /etc/emby-server.conf."
-    echo "You may need to locate the path of your library files and set EMBY_DATA to that path."
-    echo "If this is an new installation please rerun last command with elevated permissions."
-  fi
-fi
-
-# Set right permission for directories
-DATA_CURRENT_USER=$(ls -lad $PROGRAMDATA | awk '{print $3}')
-
-if [[ "$DATA_CURRENT_USER" != "$EMBY_USER" ]]; then
-  if [[ $EUID -eq 0 ]]; then
-    chown -R $EMBY_USER.$EMBY_GROUP $PROGRAMDATA
-  else
-    echo "WARNING: $EMBY_DATA directory does not have the correct permissions."
-    echo "Please rerun this script with elevated permissions."
-  fi
-fi
-
-case "$1" in
-  start)
-    echo $$ > $PIDFILE
-    exec su -s /bin/sh -c 'umask $0; exec "$1" "$@"' $EMBY_USER -- \
-      $UMASK env $MAGICK_HOME_ENV $MAGICK_CODER_FILTER_PATH_ENV $MAGICK_CODER_MODULE_PATH_ENV \
-      $MONO_EXEC_ENV $MONO_EXEC $MONO_EXEC_OPTS $EMBY_EXEC $EMBY_OPTS
-    ;;
-  clear)
-    [[ -e $PIDFILE ]] && rm -rf $PIDFILE
-    ;;
-  *)
-    echo "Usage: $SCRIPTNAME {start|clear}" >&2
-    exit 3
-    ;;
-esac

+ 37 - 0
debian/bin/jellyfin-sudoers

@@ -0,0 +1,37 @@
+#Allow jellyfin group to start, stop and restart itself
+Cmnd_Alias RESTARTSERVER_SYSV = /sbin/service jellyfin restart, /usr/sbin/service jellyfin restart
+Cmnd_Alias STARTSERVER_SYSV = /sbin/service jellyfin start, /usr/sbin/service jellyfin start
+Cmnd_Alias STOPSERVER_SYSV = /sbin/service jellyfin stop, /usr/sbin/service jellyfin stop
+Cmnd_Alias RESTARTSERVER_SYSTEMD = /usr/bin/systemctl restart jellyfin, /bin/systemctl restart jellyfin
+Cmnd_Alias STARTSERVER_SYSTEMD = /usr/bin/systemctl start jellyfin, /bin/systemctl start jellyfin
+Cmnd_Alias STOPSERVER_SYSTEMD = /usr/bin/systemctl stop jellyfin, /bin/systemctl stop jellyfin
+Cmnd_Alias RESTARTSERVER_INITD = /etc/init.d/jellyfin restart
+Cmnd_Alias STARTSERVER_INITD = /etc/init.d/jellyfin start
+Cmnd_Alias STOPSERVER_INITD = /etc/init.d/jellyfin stop
+
+
+%jellyfin ALL=(ALL) NOPASSWD: RESTARTSERVER_SYSV
+%jellyfin ALL=(ALL) NOPASSWD: STARTSERVER_SYSV
+%jellyfin ALL=(ALL) NOPASSWD: STOPSERVER_SYSV
+%jellyfin ALL=(ALL) NOPASSWD: RESTARTSERVER_SYSTEMD
+%jellyfin ALL=(ALL) NOPASSWD: STARTSERVER_SYSTEMD
+%jellyfin ALL=(ALL) NOPASSWD: STOPSERVER_SYSTEMD
+%jellyfin ALL=(ALL) NOPASSWD: RESTARTSERVER_INITD
+%jellyfin ALL=(ALL) NOPASSWD: STARTSERVER_INITD
+%jellyfin ALL=(ALL) NOPASSWD: STOPSERVER_INITD
+
+Defaults!RESTARTSERVER_SYSV !requiretty
+Defaults!STARTSERVER_SYSV !requiretty
+Defaults!STOPSERVER_SYSV !requiretty
+Defaults!RESTARTSERVER_SYSTEMD !requiretty
+Defaults!STARTSERVER_SYSTEMD !requiretty
+Defaults!STOPSERVER_SYSTEMD !requiretty
+Defaults!RESTARTSERVER_INITD !requiretty
+Defaults!STARTSERVER_INITD !requiretty
+Defaults!STOPSERVER_INITD !requiretty
+
+#Allow the server to mount iso images
+%jellyfin ALL=(ALL) NOPASSWD: /bin/mount
+%jellyfin ALL=(ALL) NOPASSWD: /bin/umount
+
+Defaults:%jellyfin !requiretty

+ 1 - 1
debian/restart.sh → debian/bin/restart.sh

@@ -1,6 +1,6 @@
 #!/bin/bash
 #!/bin/bash
 
 
-NAME=emby-server
+NAME=jellyfin
 
 
 restart_cmds=("s6-svc -t /var/run/s6/services/${NAME}" \
 restart_cmds=("s6-svc -t /var/run/s6/services/${NAME}" \
   "systemctl restart ${NAME}" \
   "systemctl restart ${NAME}" \

+ 6 - 0
debian/changelog

@@ -1,3 +1,9 @@
+jellyfin (3.5.2) unstable; urgency=medium
+
+  * Rename from emby-server on version 3.5.2
+
+ -- Joshua Boniface <joshua@boniface.me>  Sun, 9 Dec 2018 15:20:58 -0400
+
 emby-server (3.5.2-unlocked) unstable; urgency=medium
 emby-server (3.5.2-unlocked) unstable; urgency=medium
 
 
   * Taking changes from upstream 3.5.2, beautifying some JS files
   * Taking changes from upstream 3.5.2, beautifying some JS files

+ 37 - 0
debian/conf/jellyfin

@@ -0,0 +1,37 @@
+# Defaults for jellyfin initscript
+# sourced by /etc/init.d/jellyfin and /usr/lib/jellyfin/jellyfin.sh
+# installed at /etc/default/jellyfin by the maintainer scripts
+
+#
+# This is a POSIX shell fragment
+#
+
+## Don't edit this file
+## Edit user configuration in /etc/jellyfin.conf to change
+##
+## JELLYFIN_USER=       #$JELLYFIN_USER, username to run Jellyfin under, the default is jellyfin
+## JELLYFIN_GROUP=      #$JELLYFIN_GROUP, Jellyfin group where Jellyfin user belongs
+## JELLYFIN_DIR=        #$JELLYFIN_DIR, the location of Jellyfin program files the default is /usr/lib/jellyfin
+## JELLYFIN_BIN=        #$JELLYFIN_BIN, full path of MediaBrowser.Server.Mono.exe the default is /usr/lib/jellyfin/bin/MediaBrowser.Server.Mono.exe
+## JELLYFIN_DATA=       #$JELLYFIN_DATA, the location of Jellyfin data, cache, logs, the default is /var/lib/jellyfin
+## JELLYFIN_PIDFILE=    #$JELLYFIN_PIDFILE, the location of jellyfin.pid, the default is /var/run/jellyfin/jellyfin.pid
+## JELLYFIN_ADD_OPTS=   #$JELLYFIN_ADD_OPTS, additional options to pass to the Jellyfin executable, beyond ffmpeg, ffprobe and restart
+## MONO_BIN=        #$MONO_BIN, full path of mono binary, the default is /usr/bin/mono-sgen
+## MONO_OPTS=       #$MONO_OPTS, list of additional options to pass to mono binary
+## MONO_ENV=        #$MONO_ENV, list of environment variables for running mono binary
+##
+## EXAMPLE if want to run as different user
+## add JELLYFIN_USER=username to /etc/jellyfin.conf
+## otherwise default jellyfin is used
+
+JELLYFIN_USER="jellyfin"
+JELLYFIN_GROUP="jellyfin"
+JELLYFIN_DIR="/usr/lib/jellyfin"
+JELLYFIN_BIN="/usr/lib/jellyfin/bin/MediaBrowser.Server.Mono.exe"
+JELLYFIN_DATA="/var/lib/jellyfin"
+JELLYFIN_PIDFILE="/var/run/jellyfin.pid"
+JELLYFIN_ADD_OPTS=""
+MONO_BIN="/usr/bin/mono-sgen"
+MONO_OPTS="--optimize=all"
+MONO_ENV="MONO_THREADS_PER_CPU=250 MONO_GC_PARAMS=nursery-size=128m"
+UMASK="002"

+ 24 - 0
debian/conf/jellyfin.conf

@@ -0,0 +1,24 @@
+# Override defaults for jellyfin initscript
+# sourced by /etc/init.d/jellyfin and /usr/bin/jellyfin
+# installed at /etc/jellyfin.conf by the maintainer scripts
+
+#
+# This is a POSIX shell fragment
+#
+
+## To change the defaults add any of the following settings below the comments
+##
+## JELLYFIN_USER=       #$JELLYFIN_USER, username to run Jellyfin under, the default is jellyfin
+## JELLYFIN_GROUP=      #$JELLYFIN_GROUP, Jellyfin group where Jellyfin user belongs
+## JELLYFIN_DIR=        #$JELLYFIN_DIR, the location of Jellyfin program files the default is /usr/lib/jellyfin
+## JELLYFIN_BIN=        #$JELLYFIN_BIN, full path of MediaBrowser.Server.Mono.exe the default is /usr/lib/jellyfin/bin/MediaBrowser.Server.Mono.exe
+## JELLYFIN_DATA=       #$JELLYFIN_DATA, the location of Jellyfin data, cache, logs, the default is /var/lib/jellyfin
+## JELLYFIN_PIDFILE=    #$JELLYFIN_PIDFILE, the location of jellyfin.pid, the default is /var/run/jellyfin/jellyfin.pid
+## JELLYFIN_ADD_OPTS=   #$JELLYFIN_ADD_OPTS, additional options to pass to the Jellyfin executable, beyond ffmpeg, ffprobe and restart
+## MONO_BIN=        #$MONO_BIN, full path of mono binary, the default is /usr/bin/mono-sgen
+## MONO_OPTS=       #$MONO_OPTS, list of additional options to pass to mono binary
+## MONO_ENV=        #$MONO_ENV, list of environment variables for running mono binary
+##
+## EXAMPLE if want to run as different user
+## add JELLYFIN_USER=username
+## otherwise default jellyfin is used

+ 6 - 6
debian/control

@@ -1,4 +1,4 @@
-Source: emby-server
+Source: jellyfin
 Section: misc
 Section: misc
 Priority: optional
 Priority: optional
 Maintainer: Vasily <just.one.man@yandex.ru>
 Maintainer: Vasily <just.one.man@yandex.ru>
@@ -7,11 +7,11 @@ Build-Depends:  debhelper (>= 9),
                 libc6-dev
                 libc6-dev
 Standards-Version: 3.9.4
 Standards-Version: 3.9.4
 
 
-Package: emby-server
-Replaces: mediabrowser, emby, emby-server-beta, emby-server-dev
-Breaks: mediabrowser, emby, emby-server-beta, emby-server-dev
-Conflicts: mediabrowser, emby, emby-server-beta, emby-server-dev
+Package: jellyfin
+Replaces: mediabrowser, emby, emby-server-beta, jellyfin-dev, emby-server
+Breaks: mediabrowser, emby, emby-server-beta, jellyfin-dev, emby-server
+Conflicts: mediabrowser, emby, emby-server-beta, jellyfin-dev, emby-server
 Architecture: all
 Architecture: all
 Depends: ${shlibs:Depends}, ${misc:Depends}, at, libsqlite3-0, dotnet-runtime-2.1
 Depends: ${shlibs:Depends}, ${misc:Depends}, at, libsqlite3-0, dotnet-runtime-2.1
-Description: Emby Server is a home media server.
+Description: Jellyfin is a home media server.
  It is built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. It features a REST-based api with built-in documentation to facilitate client development. We also have client libraries for our api to enable rapid development.
  It is built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. It features a REST-based api with built-in documentation to facilitate client development. We also have client libraries for our api to enable rapid development.

+ 4 - 3
debian/copyright

@@ -1,12 +1,13 @@
 Format: http://dep.debian.net/deps/dep5
 Format: http://dep.debian.net/deps/dep5
-Upstream-Name: emby
-Source: https://raw.githubusercontent.com/MediaBrowser/MediaBrowser/master/LICENSE.md
+Upstream-Name: jellyfin
+Source: https://github.com/jellyfin/jellyfin
 
 
 Files: *
 Files: *
-Copyright: 2015 Luke Pulverenti <luke.pulverenti@gmail.com>
+Copyright: 2018 Jellyfin Team
 License: GPL-2.0+
 License: GPL-2.0+
 
 
 Files: debian/*
 Files: debian/*
+Copyright: 2018 Joshua Boniface <joshua@boniface.me>
 Copyright: 2014 Carlos Hernandez <carlos@techbyte.ca>
 Copyright: 2014 Carlos Hernandez <carlos@techbyte.ca>
 License: GPL-2.0+
 License: GPL-2.0+
 
 

+ 0 - 37
debian/emby

@@ -1,37 +0,0 @@
-#Allow emby group to start, stop and restart itself
-Cmnd_Alias RESTARTSERVER_SYSV = /sbin/service emby-server restart, /usr/sbin/service emby-server restart
-Cmnd_Alias STARTSERVER_SYSV = /sbin/service emby-server start, /usr/sbin/service emby-server start
-Cmnd_Alias STOPSERVER_SYSV = /sbin/service emby-server stop, /usr/sbin/service emby-server stop
-Cmnd_Alias RESTARTSERVER_SYSTEMD = /usr/bin/systemctl restart emby-server, /bin/systemctl restart emby-server
-Cmnd_Alias STARTSERVER_SYSTEMD = /usr/bin/systemctl start emby-server, /bin/systemctl start emby-server
-Cmnd_Alias STOPSERVER_SYSTEMD = /usr/bin/systemctl stop emby-server, /bin/systemctl stop emby-server
-Cmnd_Alias RESTARTSERVER_INITD = /etc/init.d/emby-server restart
-Cmnd_Alias STARTSERVER_INITD = /etc/init.d/emby-server start
-Cmnd_Alias STOPSERVER_INITD = /etc/init.d/emby-server stop
-
-
-%emby ALL=(ALL) NOPASSWD: RESTARTSERVER_SYSV
-%emby ALL=(ALL) NOPASSWD: STARTSERVER_SYSV
-%emby ALL=(ALL) NOPASSWD: STOPSERVER_SYSV
-%emby ALL=(ALL) NOPASSWD: RESTARTSERVER_SYSTEMD
-%emby ALL=(ALL) NOPASSWD: STARTSERVER_SYSTEMD
-%emby ALL=(ALL) NOPASSWD: STOPSERVER_SYSTEMD
-%emby ALL=(ALL) NOPASSWD: RESTARTSERVER_INITD
-%emby ALL=(ALL) NOPASSWD: STARTSERVER_INITD
-%emby ALL=(ALL) NOPASSWD: STOPSERVER_INITD
-
-Defaults!RESTARTSERVER_SYSV !requiretty
-Defaults!STARTSERVER_SYSV !requiretty
-Defaults!STOPSERVER_SYSV !requiretty
-Defaults!RESTARTSERVER_SYSTEMD !requiretty
-Defaults!STARTSERVER_SYSTEMD !requiretty
-Defaults!STOPSERVER_SYSTEMD !requiretty
-Defaults!RESTARTSERVER_INITD !requiretty
-Defaults!STARTSERVER_INITD !requiretty
-Defaults!STOPSERVER_INITD !requiretty
-
-#Allow the server to mount iso images
-%emby ALL=(ALL) NOPASSWD: /bin/mount
-%emby ALL=(ALL) NOPASSWD: /bin/umount
-
-Defaults:%emby !requiretty

+ 0 - 24
debian/emby-server.conf

@@ -1,24 +0,0 @@
-# Override defaults for emby initscript
-# sourced by /etc/init.d/emby-server and /usr/bin/emby-server
-# installed at /etc/emby-server.conf by the maintainer scripts
-
-#
-# This is a POSIX shell fragment
-#
-
-## To change the defaults add any of the following settings below the comments
-##
-## EMBY_USER=       #$EMBY_USER, username to run Emby under, the default is emby
-## EMBY_GROUP=      #$EMBY_GROUP, Emby server group where Emby user belongs
-## EMBY_DIR=        #$EMBY_DIR, the location of Emby program files the default is /usr/lib/emby-server
-## EMBY_BIN=        #$EMBY_BIN, full path of MediaBrowser.Server.Mono.exe the default is /usr/lib/emby-server/bin/MediaBrowser.Server.Mono.exe
-## EMBY_DATA=       #$EMBY_DATA, the location of Emby data, cache, logs, the default is /var/lib/emby-server
-## EMBY_PIDFILE=    #$EMBY_PIDFILE, the location of emby.pid, the default is /var/run/emby/emby-server.pid
-## EMBY_ADD_OPTS=   #$EMBY_ADD_OPTS, additional options to pass to the Emby server executable, beyond ffmpeg, ffprobe and restart
-## MONO_BIN=        #$MONO_BIN, full path of mono binary, the default is /usr/bin/mono-sgen
-## MONO_OPTS=       #$MONO_OPTS, list of additional options to pass to mono binary
-## MONO_ENV=        #$MONO_ENV, list of environment variables for running mono binary
-##
-## EXAMPLE if want to run as different user
-## add EMBY_USER=username
-## otherwise default emby is used

+ 0 - 37
debian/emby-server.emby-server.default

@@ -1,37 +0,0 @@
-# Defaults for emby initscript
-# sourced by /etc/init.d/emby-server and /usr/lib/emby-server/emby-server.sh
-# installed at /etc/default/emby-server by the maintainer scripts
-
-#
-# This is a POSIX shell fragment
-#
-
-## Don't edit this file
-## Edit user configuration in /etc/emby-server.conf to change
-##
-## EMBY_USER=       #$EMBY_USER, username to run Emby under, the default is emby
-## EMBY_GROUP=      #$EMBY_GROUP, Emby server group where Emby user belongs
-## EMBY_DIR=        #$EMBY_DIR, the location of Emby program files the default is /usr/lib/emby-server
-## EMBY_BIN=        #$EMBY_BIN, full path of MediaBrowser.Server.Mono.exe the default is /usr/lib/emby-server/bin/MediaBrowser.Server.Mono.exe
-## EMBY_DATA=       #$EMBY_DATA, the location of Emby data, cache, logs, the default is /var/lib/emby-server
-## EMBY_PIDFILE=    #$EMBY_PIDFILE, the location of emby.pid, the default is /var/run/emby/emby-server.pid
-## EMBY_ADD_OPTS=   #$EMBY_ADD_OPTS, additional options to pass to the Emby server executable, beyond ffmpeg, ffprobe and restart
-## MONO_BIN=        #$MONO_BIN, full path of mono binary, the default is /usr/bin/mono-sgen
-## MONO_OPTS=       #$MONO_OPTS, list of additional options to pass to mono binary
-## MONO_ENV=        #$MONO_ENV, list of environment variables for running mono binary
-##
-## EXAMPLE if want to run as different user
-## add EMBY_USER=username to /etc/emby-server.conf
-## otherwise default emby is used
-
-EMBY_USER="emby"
-EMBY_GROUP="emby"
-EMBY_DIR="/usr/lib/emby-server"
-EMBY_BIN="/usr/lib/emby-server/bin/MediaBrowser.Server.Mono.exe"
-EMBY_DATA="/var/lib/emby-server"
-EMBY_PIDFILE="/var/run/emby-server.pid"
-EMBY_ADD_OPTS=""
-MONO_BIN="/usr/bin/mono-sgen"
-MONO_OPTS="--optimize=all"
-MONO_ENV="MONO_THREADS_PER_CPU=250 MONO_GC_PARAMS=nursery-size=128m"
-UMASK="002"

+ 0 - 88
debian/emby-server.emby-server.init

@@ -1,88 +0,0 @@
-#!/bin/bash
-### BEGIN INIT INFO
-# Provides:          emby-server
-# Required-Start:    $remote_fs $local_fs $network
-# Required-Stop:     $remote_fs $local_fs $network
-# Default-Start:     2 3 4 5
-# Default-Stop:      0 1 6
-# Short-Description: starts instance of Emby
-# Description:       starts instance of Emby
-### END INIT INFO
-
-
-# chkconfig: 2345 20 80
-#The above indicates that the script should be started in levels 2, 3, 4, and 5, #that its start priority should be 20, and that its stop priority should be 80.
-# Load the VERBOSE setting and other rcS variables
-. /lib/init/vars.sh
-
-# Define LSB log_* functions.
-# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
-. /lib/lsb/init-functions
-
-NAME=emby-server
-CONF_FILE=/etc/${NAME}.conf
-DEFAULT_FILE=/etc/default/${NAME}
-
-# Source Emby server default configuration
-. $DEFAULT_FILE
-
-# Source Emby server user configuration overrides
-if [[ -f $CONF_FILE ]]; then
-  . $CONF_FILE
-else
-  echo "${CONF_FILE} not found using default settings.";
-fi
-
-# Path of emby binary
-EMBYSERVER=/usr/bin/emby-server
-PIDFILE=${EMBY_PIDFILE-/var/run/emby-server.pid}
-
-case "$1" in
-  start)
-    log_daemon_msg "Starting $NAME daemon"
-    if [[ -s $PIDFILE ]] && [[ -n "$(ps -p $(cat $PIDFILE) -o pid=)" ]]; then
-      log_daemon_msg "apparently already running"
-      log_end_msg 0
-      exit 0
-    fi
-    exec $EMBYSERVER start &
-    sleep 2
-    if [[ -s $PIDFILE ]] && [[ -n "$(ps -p $(cat $PIDFILE) -o pid=)" ]]; then
-      log_end_msg 0
-    else
-      log_end_msg 1
-    fi
-    ;;
-  stop)
-    log_daemon_msg "Stopping $NAME daemon"
-    if [[ ! -s $PIDFILE ]] ||  [[ -z "$(ps -p $(cat $PIDFILE) -o pid=)" ]]; then
-      [[ -e $PIDFILE ]] && rm -rf $PIDFILE
-      log_success_msg "apparently already stopped"
-      log_end_msg 0
-      exit 0
-    fi
-    PID=$(cat $PIDFILE)
-    CPIDS=$(pgrep -P $PID)
-    sleep 2 && kill -KILL $CPIDS
-    kill -TERM $CPIDS > /dev/null 2>&1
-    sleep 2
-    if [[ -z "$(ps -p $PID -o pid=)" ]]; then
-      rm -rf $PIDFILE
-      log_end_msg 0
-    else
-      log_end_msg 1
-    fi
-    ;;
-  status)
-    status_of_proc -p $PIDFILE "$EMBYSERVER" "$NAME"
-    exit $? # notreached due to set -e
-    ;;
-  restart|force-reload)
-    $0 stop || exit $?
-    $0 start || exit $?
-    ;;
-  *)
-    echo "Usage: /etc/init.d/emby-server {start|stop|status|restart|force-reload}" >&2
-    exit 3
-    ;;
-esac

+ 0 - 12
debian/emby-server.emby-server.service

@@ -1,12 +0,0 @@
-[Unit]
-Description=Emby Media Server
-After=network.target
-
-[Service]
-ExecStart=/usr/bin/emby-server start
-Restart=on-abort
-TimeoutSec=20
-ExecStopPost=/usr/bin/emby-server clear
-
-[Install]
-WantedBy=multi-user.target

+ 5 - 5
debian/install

@@ -1,5 +1,5 @@
-usr/lib/emby-server usr/lib/
-debian/emby-server.conf etc/
-debian/emby etc/sudoers.d/
-debian/bin/emby-server usr/bin/
-debian/restart.sh usr/lib/emby-server
+usr/lib/jellyfin usr/lib/
+debian/conf/jellyfin.conf etc/
+debian/conf/jellyfin etc/default/
+debian/bin/jellyfin-sudoers etc/sudoers.d/
+debian/bin/restart.sh usr/lib/jellyfin/

+ 44 - 0
debian/jellyfin.init

@@ -0,0 +1,44 @@
+### BEGIN INIT INFO
+# Provides:          Jellyfin Media Server
+# Required-Start:    $local_fs $network
+# Required-Stop:     $local_fs
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Jellyfin Media Server
+# Description:       Runs Jellyfin Server
+### END INIT INFO
+
+# Carry out specific functions when asked to by the system
+pid=`ps -fA|grep dotnet|grep JellyfinServer|awk '{print $2}'| tr -d '\n'`
+
+case "$1" in
+  start)
+        if [ "$pid" == "" ]; then
+                echo "Starting Jellyfin..."
+                nohup dotnet /usr/lib/jellyfin/bin/EmbyServer.dll >/dev/null 2>&1 &
+        else
+                echo "Jellyfin already running"
+        fi
+    ;;
+  stop)
+        if [ "$pid" != "" ]; then
+                echo "Stopping Jellyfin..."
+                kill $pid
+                sleep 2
+        else
+                echo "Jellyfin not running"
+        fi
+    ;;
+  status)
+        if [ "$pid" != "" ]; then
+                echo "Jellyfin running as $pid"
+                ps -f $pid
+        else
+                echo "Jellyfin is not running"
+        fi
+  ;;
+  *)
+    echo "Usage: $0 {start|stop}"
+    exit 1
+    ;;
+esac

+ 12 - 0
debian/jellyfin.service

@@ -0,0 +1,12 @@
+[Unit]
+Description=Jellyfin Media Server
+After=network.target
+
+[Service]
+User=jellyfin
+ExecStart=/usr/bin/dotnet /usr/lib/jellyfin/bin/EmbyServer.dll
+Restart=on-abort
+TimeoutSec=20
+
+[Install]
+WantedBy=multi-user.target

+ 3 - 6
debian/emby-server.emby-server.upstart → debian/jellyfin.upstart

@@ -1,4 +1,4 @@
-description "emby-server daemon"
+description "jellyfin daemon"
 
 
 start on (local-filesystems and net-device-up IFACE!=lo)
 start on (local-filesystems and net-device-up IFACE!=lo)
 stop on runlevel [!2345]
 stop on runlevel [!2345]
@@ -15,9 +15,6 @@ script
 
 
 	# Log file
 	# Log file
 	logger -t "$0" "DEBUG: `set`"
 	logger -t "$0" "DEBUG: `set`"
-	exec /usr/bin/emby-server start
-end script
-
-post-stop script
-	exec /usr/bin/emby-server clear
+	exec /usr/bin/jellyfin start
+    exec /usr/bin/dotnet /usr/lib/jellyfin/bin/EmbyServer.dll 
 end script
 end script

+ 10 - 10
debian/po/templates.pot

@@ -6,8 +6,8 @@
 #, fuzzy
 #, fuzzy
 msgid ""
 msgid ""
 msgstr ""
 msgstr ""
-"Project-Id-Version: emby-server\n"
-"Report-Msgid-Bugs-To: emby-server@packages.debian.org\n"
+"Project-Id-Version: jellyfin-server\n"
+"Report-Msgid-Bugs-To: jellyfin-server@packages.debian.org\n"
 "POT-Creation-Date: 2015-06-12 20:51-0600\n"
 "POT-Creation-Date: 2015-06-12 20:51-0600\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
@@ -20,38 +20,38 @@ msgstr ""
 #. Type: note
 #. Type: note
 #. Description
 #. Description
 #: ../templates:1001
 #: ../templates:1001
-msgid "Emby permission info:"
+msgid "Jellyfin permission info:"
 msgstr ""
 msgstr ""
 
 
 #. Type: note
 #. Type: note
 #. Description
 #. Description
 #: ../templates:1001
 #: ../templates:1001
 msgid ""
 msgid ""
-"Emby by default runs under a user named \"emby\".  Please ensure that the "
-"user emby has read and write access to any folders you wish to add to your "
-"library. Otherwise please run emby under a different user."
+"Jellyfin by default runs under a user named \"jellyfin\".  Please ensure that the "
+"user jellyfin has read and write access to any folders you wish to add to your "
+"library. Otherwise please run jellyfin under a different user."
 msgstr ""
 msgstr ""
 
 
 #. Type: string
 #. Type: string
 #. Description
 #. Description
 #: ../templates:2001
 #: ../templates:2001
-msgid "Username to run Emby as:"
+msgid "Username to run Jellyfin as:"
 msgstr ""
 msgstr ""
 
 
 #. Type: string
 #. Type: string
 #. Description
 #. Description
 #: ../templates:2001
 #: ../templates:2001
-msgid "The user that emby will run as."
+msgid "The user that jellyfin will run as."
 msgstr ""
 msgstr ""
 
 
 #. Type: note
 #. Type: note
 #. Description
 #. Description
 #: ../templates:3001
 #: ../templates:3001
-msgid "Emby still running"
+msgid "Jellyfin still running"
 msgstr ""
 msgstr ""
 
 
 #. Type: note
 #. Type: note
 #. Description
 #. Description
 #: ../templates:3001
 #: ../templates:3001
-msgid "Emby is currently running. Please close it and try again."
+msgid "Jellyfin is currently running. Please close it and try again."
 msgstr ""
 msgstr ""

+ 26 - 25
debian/postinst

@@ -1,45 +1,46 @@
 #!/bin/bash
 #!/bin/bash
 set -e
 set -e
 
 
-NAME=emby-server
+NAME=jellyfin
 CONF_FILE=/etc/${NAME}.conf
 CONF_FILE=/etc/${NAME}.conf
 DEFAULT_FILE=/etc/default/${NAME}
 DEFAULT_FILE=/etc/default/${NAME}
 
 
-# Source Emby server default configuration
+# Source Jellyfin default configuration
 if [[ -f $DEFAULT_FILE ]]; then
 if [[ -f $DEFAULT_FILE ]]; then
   . $DEFAULT_FILE
   . $DEFAULT_FILE
 fi
 fi
 
 
-# Source Emby server user configuration overrides
+# Source Jellyfin user configuration overrides
 if [[ -f $CONF_FILE ]]; then
 if [[ -f $CONF_FILE ]]; then
   . $CONF_FILE
   . $CONF_FILE
 fi
 fi
 
 
-# Data directory where Emby database, cache and logs are stored
-PROGRAMDATA=${EMBY_DATA-/var/lib/$NAME}
+# Data directory where Jellyfin database, cache and logs are stored
+PROGRAMDATA=${JELLYFIN_DATA-/var/lib/$NAME}
 
 
 case "$1" in
 case "$1" in
   configure)
   configure)
-    # create emby group if it does not exist
-    if [[ -z "$(getent group emby)" ]]; then
-      addgroup --quiet --system emby > /dev/null 2>&1
+    # create jellyfin group if it does not exist
+    if [[ -z "$(getent group jellyfin)" ]]; then
+      addgroup --quiet --system jellyfin > /dev/null 2>&1
     fi
     fi
-    # create emby user if it does not exist
-    if [[ -z "$(getent passwd emby)"  ]]; then
-      adduser --system --ingroup emby --shell /bin/false emby --no-create-home --home ${PROGRAMDATA} \
-        --gecos "Emby Server default user" > /dev/null 2>&1
+    # create jellyfin user if it does not exist
+    if [[ -z "$(getent passwd jellyfin)"  ]]; then
+      adduser --system --ingroup jellyfin --shell /bin/false jellyfin --no-create-home --home ${PROGRAMDATA} \
+        --gecos "Jellyfin default user" > /dev/null 2>&1
     fi
     fi
     # ensure $PROGRAMDATA has appropriate permissions
     # ensure $PROGRAMDATA has appropriate permissions
     if [[ ! -d $PROGRAMDATA ]]; then
     if [[ ! -d $PROGRAMDATA ]]; then
       mkdir $PROGRAMDATA
       mkdir $PROGRAMDATA
-      chown -R emby:emby $PROGRAMDATA
+      chown -R jellyfin:jellyfin $PROGRAMDATA
     fi
     fi
-    # ensure emby-server binary has appropriate permissions
-    chmod 755 /usr/bin/emby-server
+    # ensure jellyfin binary has appropriate permissions
+    chmod 755 /usr/bin/jellyfin
 
 
-    /usr/bin/mono --aot=full -O=all $EMBY_BIN > /dev/null 2>&1 || true
+    chmod +x ${JELLYFIN_DIR}/restart.sh > /dev/null 2>&1 || true
 
 
-    chmod +x ${EMBY_DIR}/restart.sh > /dev/null 2>&1 || true
+    # Link hardcoded /var/lib/emby to /var/lib/jellyfin (TEMPORARY)
+    ln -sf /var/lib/jellyfin /var/lib/emby
 
 
     ;;
     ;;
     abort-upgrade|abort-remove|abort-deconfigure)
     abort-upgrade|abort-remove|abort-deconfigure)
@@ -54,16 +55,16 @@ esac
 
 
 if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
 if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
   # Manual init script handling
   # Manual init script handling
-  deb-systemd-helper unmask emby-server.service >/dev/null || true
+  deb-systemd-helper unmask jellyfin.service >/dev/null || true
   # was-enabled defaults to true, so new installations run enable.
   # was-enabled defaults to true, so new installations run enable.
-  if deb-systemd-helper --quiet was-enabled emby-server.service; then
+  if deb-systemd-helper --quiet was-enabled jellyfin.service; then
     # Enables the unit on first installation, creates new
     # Enables the unit on first installation, creates new
     # symlinks on upgrades if the unit file has changed.
     # symlinks on upgrades if the unit file has changed.
-    deb-systemd-helper enable emby-server.service >/dev/null || true
+    deb-systemd-helper enable jellyfin.service >/dev/null || true
   else
   else
     # Update the statefile to add new symlinks (if any), which need to be
     # Update the statefile to add new symlinks (if any), which need to be
     # cleaned up on purge. Also remove old symlinks.
     # cleaned up on purge. Also remove old symlinks.
-    deb-systemd-helper update-state emby-server.service >/dev/null || true
+    deb-systemd-helper update-state jellyfin.service >/dev/null || true
   fi
   fi
 fi
 fi
 
 
@@ -72,10 +73,10 @@ fi
 if [[ "$1" == "configure" ]] || [[ "$1" == "abort-upgrade" ]]; then
 if [[ "$1" == "configure" ]] || [[ "$1" == "abort-upgrade" ]]; then
   if [[ -d "/run/systemd/systemd" ]]; then
   if [[ -d "/run/systemd/systemd" ]]; then
     systemctl --system daemon-reload >/dev/null || true
     systemctl --system daemon-reload >/dev/null || true
-    deb-systemd-invoke start emby-server >/dev/null || true
-  elif [[ -x "/etc/init.d/emby-server" ]] || [[ -e "/etc/init/emby-server.conf" ]]; then
-    update-rc.d emby-server defaults >/dev/null
-    invoke-rc.d emby-server start || exit $?
+    deb-systemd-invoke start jellyfin >/dev/null || true
+  elif [[ -x "/etc/init.d/jellyfin" ]] || [[ -e "/etc/init/jellyfin.conf" ]]; then
+    update-rc.d jellyfin defaults >/dev/null
+    invoke-rc.d jellyfin start || exit $?
   fi
   fi
 fi
 fi
 exit 0
 exit 0

+ 15 - 15
debian/postrm

@@ -1,22 +1,22 @@
 #!/bin/bash
 #!/bin/bash
 set -e
 set -e
 
 
-NAME=emby-server
+NAME=jellyfin
 CONF_FILE=/etc/${NAME}.conf
 CONF_FILE=/etc/${NAME}.conf
 DEFAULT_FILE=/etc/default/${NAME}
 DEFAULT_FILE=/etc/default/${NAME}
 
 
-# Source Emby server default configuration
+# Source Jellyfin default configuration
 if [[ -f $DEFAULT_FILE ]]; then
 if [[ -f $DEFAULT_FILE ]]; then
   . $DEFAULT_FILE
   . $DEFAULT_FILE
 fi
 fi
 
 
-# Source Emby server user configuration overrides
+# Source Jellyfin user configuration overrides
 if [[ -f $CONF_FILE ]]; then
 if [[ -f $CONF_FILE ]]; then
   . $CONF_FILE
   . $CONF_FILE
 fi
 fi
 
 
-# Data directory where Emby database, cache and logs are stored
-PROGRAMDATA=${EMBY_DATA-/var/lib/$NAME}
+# Data directory where Jellyfin database, cache and logs are stored
+PROGRAMDATA=${JELLYFIN_DATA-/var/lib/$NAME}
 
 
 # In case this system is running systemd, we make systemd reload the unit files
 # In case this system is running systemd, we make systemd reload the unit files
 # to pick up changes.
 # to pick up changes.
@@ -28,27 +28,27 @@ case "$1" in
   purge)
   purge)
     echo PURGE | debconf-communicate $NAME > /dev/null 2>&1 || true
     echo PURGE | debconf-communicate $NAME > /dev/null 2>&1 || true
 
 
-    if [[ -x "/etc/init.d/emby-server" ]] || [[ -e "/etc/init/emby-server.connf" ]]; then
-      update-rc.d emby-server remove >/dev/null 2>&1 || true
+    if [[ -x "/etc/init.d/jellyfin" ]] || [[ -e "/etc/init/jellyfin.connf" ]]; then
+      update-rc.d jellyfin remove >/dev/null 2>&1 || true
     fi
     fi
 
 
     if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
     if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
-      deb-systemd-helper purge emby-server.service >/dev/null
-      deb-systemd-helper unmask emby-server.service >/dev/null
+      deb-systemd-helper purge jellyfin.service >/dev/null
+      deb-systemd-helper unmask jellyfin.service >/dev/null
     fi
     fi
 
 
-    userdel emby > /dev/null 2>&1 || true
-    delgroup --quiet emby > /dev/null 2>&1 || true
+    userdel jellyfin > /dev/null 2>&1 || true
+    delgroup --quiet jellyfin > /dev/null 2>&1 || true
     if [[ -d $PROGRAMDATA ]]; then
     if [[ -d $PROGRAMDATA ]]; then
       rm -rf $PROGRAMDATA
       rm -rf $PROGRAMDATA
     fi
     fi
-    [[ -f /usr/bin/emby-server ]] && rm /usr/bin/emby-server
-    [[ -f /etc/sudoers.d/emby ]] && rm /etc/sudoers.d/emby
-    [[ -d /var/lib/emby-server ]] && rm -rf /var/lib/emby-server
+    [[ -f /usr/bin/jellyfin ]] && rm /usr/bin/jellyfin
+    [[ -f /etc/sudoers.d/jellyfin-sudoers ]] && rm /etc/sudoers.d/jellyfin-sudoers
+    [[ -d /var/lib/jellyfin ]] && rm -rf /var/lib/jellyfin
     ;;
     ;;
   remove)
   remove)
     if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
     if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
-      deb-systemd-helper mask emby-server.service >/dev/null
+      deb-systemd-helper mask jellyfin.service >/dev/null
     fi
     fi
     ;;
     ;;
   upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
   upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)

+ 15 - 15
debian/preinst

@@ -1,22 +1,22 @@
 #!/bin/bash
 #!/bin/bash
 set -e
 set -e
 
 
-NAME=emby-server
+NAME=jellyfin
 CONF_FILE=/etc/${NAME}.conf
 CONF_FILE=/etc/${NAME}.conf
 DEFAULT_FILE=/etc/default/${NAME}
 DEFAULT_FILE=/etc/default/${NAME}
 
 
-# Source Emby server default configuration
+# Source Jellyfin default configuration
 if [[ -f $DEFAULT_FILE ]]; then
 if [[ -f $DEFAULT_FILE ]]; then
   . $DEFAULT_FILE
   . $DEFAULT_FILE
 fi
 fi
 
 
-# Source Emby server user configuration overrides
+# Source Jellyfin user configuration overrides
 if [[ -f $CONF_FILE ]]; then
 if [[ -f $CONF_FILE ]]; then
   . $CONF_FILE
   . $CONF_FILE
 fi
 fi
 
 
-# Data directory where Emby database, cache and logs are stored
-PROGRAMDATA=${EMBY_DATA-/var/lib/$NAME}
+# Data directory where Jellyfin database, cache and logs are stored
+PROGRAMDATA=${JELLYFIN_DATA-/var/lib/$NAME}
 
 
 # In case this system is running systemd, we make systemd reload the unit files
 # In case this system is running systemd, we make systemd reload the unit files
 # to pick up changes.
 # to pick up changes.
@@ -32,22 +32,22 @@ case "$1" in
     elif [ -x "/etc/init.d/${NAME}" ] || [ -e "/etc/init/${NAME}.conf" ]; then
     elif [ -x "/etc/init.d/${NAME}" ] || [ -e "/etc/init/${NAME}.conf" ]; then
       invoke-rc.d ${NAME} stop > /dev/null 2>&1 || true
       invoke-rc.d ${NAME} stop > /dev/null 2>&1 || true
     fi
     fi
-    # try and figure out if emby is running
-    PIDFILE=$(find /var/run/ -maxdepth 1 -mindepth 1  -name "emby*.pid" -print -quit)
-    [[ -n "$PIDFILE" ]] && [[ -s "$PIDFILE" ]] && EMBY_PID=$(cat ${PIDFILE})
+    # try and figure out if jellyfin is running
+    PIDFILE=$(find /var/run/ -maxdepth 1 -mindepth 1  -name "jellyfin*.pid" -print -quit)
+    [[ -n "$PIDFILE" ]] && [[ -s "$PIDFILE" ]] && JELLYFIN_PID=$(cat ${PIDFILE})
     # if its running, let's stop it
     # if its running, let's stop it
-    if [[ -n "$EMBY_PID" ]]; then
-      echo "Stopping Emby Server!"
-      # if emby is still running, kill it
-      if [[ -n "$(ps -p $EMBY_PID -o pid=)" ]]; then
-        CPIDS=$(pgrep -P $EMBY_PID)
+    if [[ -n "$JELLYFIN_PID" ]]; then
+      echo "Stopping Jellyfin!"
+      # if jellyfin is still running, kill it
+      if [[ -n "$(ps -p $JELLYFIN_PID -o pid=)" ]]; then
+        CPIDS=$(pgrep -P $JELLYFIN_PID)
         sleep 2 && kill -KILL $CPIDS
         sleep 2 && kill -KILL $CPIDS
         kill -TERM $CPIDS > /dev/null 2>&1
         kill -TERM $CPIDS > /dev/null 2>&1
       fi
       fi
       sleep 1
       sleep 1
       # if it's still running, show error
       # if it's still running, show error
-      if [[ -n "$(ps -p $EMBY_PID -o pid=)" ]]; then
-        echo "Could not successfully stop EmbyServer, please do so before uninstalling."
+      if [[ -n "$(ps -p $JELLYFIN_PID -o pid=)" ]]; then
+        echo "Could not successfully stop JellyfinServer, please do so before uninstalling."
         exit 1
         exit 1
       else
       else
         [[ -f $PIDFILE ]] && rm $PIDFILE
         [[ -f $PIDFILE ]] && rm $PIDFILE

+ 16 - 16
debian/prerm

@@ -1,26 +1,26 @@
 #!/bin/bash
 #!/bin/bash
 set -e
 set -e
 
 
-NAME=emby-server
+NAME=jellyfin
 CONF_FILE=/etc/${NAME}.conf
 CONF_FILE=/etc/${NAME}.conf
 DEFAULT_FILE=/etc/default/${NAME}
 DEFAULT_FILE=/etc/default/${NAME}
 
 
-# Source Emby server default configuration
+# Source Jellyfin default configuration
 if [[ -f $DEFAULT_FILE ]]; then
 if [[ -f $DEFAULT_FILE ]]; then
   . $DEFAULT_FILE
   . $DEFAULT_FILE
 fi
 fi
 
 
-# Source Emby server user configuration overrides
+# Source Jellyfin user configuration overrides
 if [[ -f $CONF_FILE ]]; then
 if [[ -f $CONF_FILE ]]; then
   . $CONF_FILE
   . $CONF_FILE
 fi
 fi
 
 
-# Data directory where Emby database, cache and logs are stored
-PROGRAMDATA=${EMBY_DATA-/var/lib/$NAME}
+# Data directory where Jellyfin database, cache and logs are stored
+PROGRAMDATA=${JELLYFIN_DATA-/var/lib/$NAME}
 
 
 case "$1" in
 case "$1" in
   remove|upgrade|deconfigure)
   remove|upgrade|deconfigure)
-    echo "Stopping Emby Server!"
+    echo "Stopping Jellyfin!"
     # try graceful termination;
     # try graceful termination;
     if [[ -d /run/systemd/system ]]; then
     if [[ -d /run/systemd/system ]]; then
       deb-systemd-invoke stop ${NAME}.service > /dev/null 2>&1 || true
       deb-systemd-invoke stop ${NAME}.service > /dev/null 2>&1 || true
@@ -28,27 +28,27 @@ case "$1" in
       invoke-rc.d ${NAME} stop > /dev/null 2>&1 || true
       invoke-rc.d ${NAME} stop > /dev/null 2>&1 || true
     fi
     fi
     # Ensure that it is shutdown
     # Ensure that it is shutdown
-    PIDFILE=$(find /var/run/ -maxdepth 1 -mindepth 1 -name "emby*.pid" -print -quit)
-    [[ -n "$PIDFILE" ]] && [[ -s "$PIDFILE" ]] && EMBY_PID=$(cat ${PIDFILE})
+    PIDFILE=$(find /var/run/ -maxdepth 1 -mindepth 1 -name "jellyfin*.pid" -print -quit)
+    [[ -n "$PIDFILE" ]] && [[ -s "$PIDFILE" ]] && JELLYFIN_PID=$(cat ${PIDFILE})
     # if its running, let's stop it
     # if its running, let's stop it
-    if [[ -n "$EMBY_PID" ]]; then
-      # if emby is still running, kill it
-      if [[ -n "$(ps -p $EMBY_PID -o pid=)" ]]; then
-        CPIDS=$(pgrep -P $EMBY_PID)
+    if [[ -n "$JELLYFIN_PID" ]]; then
+      # if jellyfin is still running, kill it
+      if [[ -n "$(ps -p $JELLYFIN_PID -o pid=)" ]]; then
+        CPIDS=$(pgrep -P $JELLYFIN_PID)
         sleep 2 && kill -KILL $CPIDS
         sleep 2 && kill -KILL $CPIDS
         kill -TERM $CPIDS > /dev/null 2>&1
         kill -TERM $CPIDS > /dev/null 2>&1
       fi
       fi
       sleep 1
       sleep 1
       # if it's still running, show error
       # if it's still running, show error
-      if [[ -n "$(ps -p $EMBY_PID -o pid=)" ]]; then
-        echo "Could not successfully stop EmbyServer, please do so before uninstalling."
+      if [[ -n "$(ps -p $JELLYFIN_PID -o pid=)" ]]; then
+        echo "Could not successfully stop Jellyfin, please do so before uninstalling."
         exit 1
         exit 1
       else
       else
         [[ -f $PIDFILE ]] && rm $PIDFILE
         [[ -f $PIDFILE ]] && rm $PIDFILE
       fi
       fi
     fi
     fi
-    if [[ -f /usr/lib/emby-server/bin/MediaBrowser.Server.Mono.exe.so ]]; then
-      rm /usr/lib/emby-server/bin/MediaBrowser.Server.Mono.exe.so
+    if [[ -f /usr/lib/jellyfin/bin/MediaBrowser.Server.Mono.exe.so ]]; then
+      rm /usr/lib/jellyfin/bin/MediaBrowser.Server.Mono.exe.so
     fi
     fi
     ;;
     ;;
   failed-upgrade)
   failed-upgrade)

+ 6 - 4
debian/rules

@@ -14,9 +14,11 @@ override_dh_auto_test:
 override_dh_clistrip:
 override_dh_clistrip:
 
 
 override_dh_auto_build:
 override_dh_auto_build:
-#	dotnet build --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln --output='$(CURDIR)/usr/lib/emby-server/bin'
-	dotnet publish --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln --output='$(CURDIR)/usr/lib/emby-server/bin'
+	git submodule init
+	git submodule update
+	dotnet build --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln --output='$(CURDIR)/usr/lib/jellyfin/bin'
+	dotnet publish --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln --output='$(CURDIR)/usr/lib/jellyfin/bin'
 
 
 override_dh_auto_clean:
 override_dh_auto_clean:
-	dotnet clean --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln
-	rm -rf '$(CURDIR)/usr/lib/emby-server'
+	dotnet clean --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln || true
+	rm -rf '$(CURDIR)/usr/lib/jellyfin'

+ 2 - 2
debian/source.lintian-overrides

@@ -1,3 +1,3 @@
 # This is an override for the following lintian errors:
 # This is an override for the following lintian errors:
-emby-server source: license-problem-md5sum-non-free-file Emby.Drawing/ImageMagick/fonts/webdings.ttf*
-emby-server source: source-is-missing
+jellyfin source: license-problem-md5sum-non-free-file Emby.Drawing/ImageMagick/fonts/webdings.ttf*
+jellyfin source: source-is-missing