Add updated configurations for log and config dir

1. Add log and config flags to init and config
2. Move the existing logs and config dirs to the right places
3. Some cleanups in the control scripts
4. Prune the changelog of pre-Jellyfin entries
pull/1154/head
Joshua Boniface 6 years ago
parent 3f65cb4f48
commit 177c4835a5

13
debian/changelog vendored

@ -44,16 +44,3 @@ jellyfin (3.5.2) unstable; urgency=medium
* Rename from emby-server on version 3.5.2 * Rename from emby-server on version 3.5.2
-- Joshua Boniface <joshua@boniface.me> Sun, 9 Dec 2018 15:20:58 -0400 -- Joshua Boniface <joshua@boniface.me> Sun, 9 Dec 2018 15:20:58 -0400
emby-server (3.5.2-unlocked) unstable; urgency=medium
* Taking changes from upstream 3.5.2, beautifying some JS files
-- Vasily <just.one.man@yandex.ru> Mon, 22 Oct 2018 03:45:13 +0400
emby-server (3.4.1.18-unlocked) unstable; urgency=medium
* Hard fork of Emby 3.4.1.18 including premium unlock
-- Joshua Boniface <joshua@boniface.me> Thu, 9 Aug 2018 00:33:19 -0400

@ -16,7 +16,11 @@
# #
# Data directory # Data directory
JELLYFIN_DATA="/var/lib/jellyfin" JELLYFIN_DATA_DIRECTORY="/var/lib/jellyfin"
# Config directory
JELLYFIN_CONFIG_DIRECTORY="/etc/jellyfin"
# Logging directory
JELLYFIN_LOG_DIRECTORY="/var/log/jellyfin"
# Restart script for in-app server control # Restart script for in-app server control
JELLYFIN_RESTART_SCRIPT="/usr/lib/jellyfin/restart.sh" JELLYFIN_RESTART_SCRIPT="/usr/lib/jellyfin/restart.sh"
# Additional options for the binary # Additional options for the binary
@ -29,4 +33,4 @@ JELLYFIN_ADD_OPTS=""
# Application username # Application username
JELLYFIN_USER="jellyfin" JELLYFIN_USER="jellyfin"
# Full application command # Full application command
JELLYFIN_ARGS="-programdata $JELLYFIN_DATA -restartpath $JELLYFIN_RESTART_SCRIPT $JELLYFIN_ADD_OPTS" JELLYFIN_ARGS="-programdata $JELLYFIN_DATA_DIRECTORY -configdir $JELLYFIN_CONFIG_DIRECTORY -logdir $JELLYFIN_LOG_DIRECTORY -restartpath $JELLYFIN_RESTART_SCRIPT $JELLYFIN_ADD_OPTS"

@ -0,0 +1,21 @@
{
"Serilog": {
"MinimumLevel": "Information",
"WriteTo": [
{ "Name": "Console",
"Args": {
"outputTemplate": "[{Timestamp:HH:mm:ss}] [{Level:u3}] {Message:lj}{NewLine}{Exception}"
}
},
{ "Name": "File",
"Args": {
"path": "%JELLYFIN_LOG_DIR%//jellyfin.log",
"fileSizeLimitBytes": 10485700,
"rollOnFileSizeLimit": true,
"retainedFileCountLimit": 10,
"outputTemplate": "[{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz}] [{Level:u3}] {Message}{NewLine}{Exception}"
}
}
]
}
}

1
debian/install vendored

@ -1,5 +1,6 @@
usr/lib/jellyfin usr/lib/ usr/lib/jellyfin usr/lib/
debian/conf/jellyfin etc/default/ debian/conf/jellyfin etc/default/
debian/conf/logging.json etc/jellyfin/
debian/conf/jellyfin.service.conf etc/systemd/system/jellyfin.service.d/ debian/conf/jellyfin.service.conf etc/systemd/system/jellyfin.service.d/
debian/bin/jellyfin-sudoers etc/sudoers.d/ debian/bin/jellyfin-sudoers etc/sudoers.d/
debian/bin/restart.sh usr/lib/jellyfin/ debian/bin/restart.sh usr/lib/jellyfin/

@ -6,7 +6,7 @@ After = network.target
Type = simple Type = simple
EnvironmentFile = /etc/default/jellyfin EnvironmentFile = /etc/default/jellyfin
User = jellyfin User = jellyfin
ExecStart = /usr/bin/jellyfin -programdata ${JELLYFIN_DATA} -restartpath ${JELLYFIN_RESTART_SCRIPT} ${JELLYFIN_ADD_OPTS} ExecStart = /usr/bin/jellyfin -programdata ${JELLYFIN_DATA_DIRECTORY} -configdir ${JELLYFIN_CONFIG_DIRECTORY} -logdir ${JELLYFIN_LOG_DIRECTORY} -restartpath ${JELLYFIN_RESTART_SCRIPT} ${JELLYFIN_ADD_OPTS}
Restart = on-failure Restart = on-failure
TimeoutSec = 15 TimeoutSec = 15

24
debian/postinst vendored

@ -2,7 +2,6 @@
set -e set -e
NAME=jellyfin NAME=jellyfin
CONF_FILE=/etc/${NAME}.conf
DEFAULT_FILE=/etc/default/${NAME} DEFAULT_FILE=/etc/default/${NAME}
# Source Jellyfin default configuration # Source Jellyfin default configuration
@ -10,13 +9,10 @@ if [[ -f $DEFAULT_FILE ]]; then
. $DEFAULT_FILE . $DEFAULT_FILE
fi fi
# Source Jellyfin user configuration overrides # Data directories for program data (cache, db), configs, and logs
if [[ -f $CONF_FILE ]]; then PROGRAMDATA=${JELLYFIN_DATA_DIRECTORY-/var/lib/$NAME}
. $CONF_FILE CONFIGDATA=${JELLYFIN_CONFIG_DIRECTORY-/etc/$NAME}
fi LOGDATA=${JELLYFIN_LOG_DIRECTORY-/var/log/$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)
@ -34,8 +30,18 @@ case "$1" in
mkdir $PROGRAMDATA mkdir $PROGRAMDATA
chown -R jellyfin:jellyfin $PROGRAMDATA chown -R jellyfin:jellyfin $PROGRAMDATA
fi fi
# ensure $JELLYFIN_CONFIG_DIRECTORY has appropriate permissions
if [[ -n $JELLYFIN_CONFIG_DIRECTORY && ! -d $JELLYFIN_CONFIG_DIRECTORY ]]; then
mkdir $JELLYFIN_CONFIG_DIRECTORY
chown -R jellyfin:jellyfin $JELLYFIN_CONFIG_DIRECTORY
fi
# ensure $JELLYFIN_LOG_DIRECTORY has appropriate permissions
if [[ -n $JELLYFIN_LOG_DIRECTORY && ! -d $JELLYFIN_LOG_DIRECTORY ]]; then
mkdir $JELLYFIN_LOG_DIRECTORY
chown -R jellyfin:jellyfin $JELLYFIN_LOG_DIRECTORY
fi
chmod +x ${JELLYFIN_DIR}/restart.sh > /dev/null 2>&1 || true chmod +x /usr/lib/jellyfin/restart.sh > /dev/null 2>&1 || true
# Install jellyfin symlink into /usr/bin # Install jellyfin symlink into /usr/bin
ln -sf /usr/lib/jellyfin/bin/jellyfin /usr/bin/jellyfin ln -sf /usr/lib/jellyfin/bin/jellyfin /usr/bin/jellyfin

25
debian/postrm vendored

@ -2,7 +2,6 @@
set -e set -e
NAME=jellyfin NAME=jellyfin
CONF_FILE=/etc/${NAME}.conf
DEFAULT_FILE=/etc/default/${NAME} DEFAULT_FILE=/etc/default/${NAME}
# Source Jellyfin default configuration # Source Jellyfin default configuration
@ -10,13 +9,10 @@ if [[ -f $DEFAULT_FILE ]]; then
. $DEFAULT_FILE . $DEFAULT_FILE
fi fi
# Source Jellyfin user configuration overrides # Data directories for program data (cache, db), configs, and logs
if [[ -f $CONF_FILE ]]; then PROGRAMDATA=${JELLYFIN_DATA_DIRECTORY-/var/lib/$NAME}
. $CONF_FILE CONFIGDATA=${JELLYFIN_CONFIG_DIRECTORY-/etc/$NAME}
fi LOGDATA=${JELLYFIN_DATA_DIRECTORY-/var/log/$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.
@ -37,13 +33,26 @@ case "$1" in
deb-systemd-helper unmask jellyfin.service >/dev/null deb-systemd-helper unmask jellyfin.service >/dev/null
fi fi
# Remove user and group
userdel jellyfin > /dev/null 2>&1 || true userdel jellyfin > /dev/null 2>&1 || true
delgroup --quiet jellyfin > /dev/null 2>&1 || true delgroup --quiet jellyfin > /dev/null 2>&1 || true
# Remove config dir
if [[ -d $CONFIGDATA ]]; then
rm -rf $CONFIGDATA
fi
# Remove log dir
if [[ -d $LOGDATA ]]; then
rm -rf $LOGDATA
fi
# Remove program data dir
if [[ -d $PROGRAMDATA ]]; then if [[ -d $PROGRAMDATA ]]; then
rm -rf $PROGRAMDATA rm -rf $PROGRAMDATA
fi fi
# Remove binary symlink
[[ -f /usr/bin/jellyfin ]] && rm /usr/bin/jellyfin [[ -f /usr/bin/jellyfin ]] && rm /usr/bin/jellyfin
# Remove sudoers config
[[ -f /etc/sudoers.d/jellyfin-sudoers ]] && rm /etc/sudoers.d/jellyfin-sudoers [[ -f /etc/sudoers.d/jellyfin-sudoers ]] && rm /etc/sudoers.d/jellyfin-sudoers
# Remove /var/lib/jellyfin, just in case
[[ -d /var/lib/jellyfin ]] && rm -rf /var/lib/jellyfin [[ -d /var/lib/jellyfin ]] && rm -rf /var/lib/jellyfin
;; ;;
remove) remove)

20
debian/preinst vendored

@ -2,7 +2,6 @@
set -e set -e
NAME=jellyfin NAME=jellyfin
CONF_FILE=/etc/${NAME}.conf
DEFAULT_FILE=/etc/default/${NAME} DEFAULT_FILE=/etc/default/${NAME}
# Source Jellyfin default configuration # Source Jellyfin default configuration
@ -10,13 +9,10 @@ if [[ -f $DEFAULT_FILE ]]; then
. $DEFAULT_FILE . $DEFAULT_FILE
fi fi
# Source Jellyfin user configuration overrides # Data directories for program data (cache, db), configs, and logs
if [[ -f $CONF_FILE ]]; then PROGRAMDATA=${JELLYFIN_DATA_DIRECTORY-/var/lib/$NAME}
. $CONF_FILE CONFIGDATA=${JELLYFIN_CONFIG_DIRECTORY-/etc/$NAME}
fi LOGDATA=${JELLYFIN_DATA_DIRECTORY-/var/log/$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.
@ -57,6 +53,14 @@ case "$1" in
# Clean up old Emby cruft that can break the user's system # Clean up old Emby cruft that can break the user's system
[[ -f /etc/sudoers.d/emby ]] && rm -f /etc/sudoers.d/emby [[ -f /etc/sudoers.d/emby ]] && rm -f /etc/sudoers.d/emby
# If we have existing config or log dirs in /var/lib/jellyfin, move them into the right place
if [[ -d $PROGRAMDATA/config ]]; then
mv $PROGRAMDATA/config $CONFIGDATA
fi
if [[ -d $PROGRAMDATA/logs ]]; then
mv $PROGRAMDATA/logs $LOGDATA
fi
;; ;;
abort-upgrade) abort-upgrade)
;; ;;

12
debian/prerm vendored

@ -2,7 +2,6 @@
set -e set -e
NAME=jellyfin NAME=jellyfin
CONF_FILE=/etc/${NAME}.conf
DEFAULT_FILE=/etc/default/${NAME} DEFAULT_FILE=/etc/default/${NAME}
# Source Jellyfin default configuration # Source Jellyfin default configuration
@ -10,13 +9,10 @@ if [[ -f $DEFAULT_FILE ]]; then
. $DEFAULT_FILE . $DEFAULT_FILE
fi fi
# Source Jellyfin user configuration overrides # Data directories for program data (cache, db), configs, and logs
if [[ -f $CONF_FILE ]]; then PROGRAMDATA=${JELLYFIN_DATA_DIRECTORY-/var/lib/$NAME}
. $CONF_FILE CONFIGDATA=${JELLYFIN_CONFIG_DIRECTORY-/etc/$NAME}
fi LOGDATA=${JELLYFIN_DATA_DIRECTORY-/var/log/$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)

Loading…
Cancel
Save