mirror of
https://github.com/SuperBFG7/ympd
synced 2024-12-27 19:30:27 +00:00
1b9dde8059
Fix: don't override mympd.conf
101 lines
3.2 KiB
Plaintext
101 lines
3.2 KiB
Plaintext
post_install() {
|
|
post_upgrade;
|
|
}
|
|
|
|
post_upgrade() {
|
|
# create mympd user, group if not already existing
|
|
echo "INFO: Checking status of mympd system user and group"
|
|
getent group mympd > /dev/null
|
|
[ "$?" = "2" ] && groupadd --system mympd
|
|
getent passwd mympd > /dev/null
|
|
[ "$?" = "2" ] && useradd --system -d /var/lib/mympd -s /usr/sbin/nologin -g mympd mympd
|
|
|
|
# fix ownership of /var/lib/mympd
|
|
if ! [ $(stat -c '%U:%G' /var/lib/mympd/) == 'mympd:mympd' ]
|
|
then
|
|
echo "INFO: Fixing ownership of /var/lib/mympd"
|
|
chown -R mympd.mympd /var/lib/mympd
|
|
fi
|
|
|
|
# link music directory to mympd if not already exising
|
|
echo "INFO: Trying to link musicdir to library"
|
|
if [ -f /etc/mpd.conf ]
|
|
then
|
|
LIBRARY=$(grep ^music_directory /etc/mpd.conf | awk {'print $2'} | sed -e 's/"//g')
|
|
[ "$LIBRARY" != "" ] && [ ! -e /usr/share/mympd/htdocs/library ] && ln -s "$LIBRARY" /usr/share/mympd/htdocs/library
|
|
else
|
|
echo "/etc/mpd.conf not found, you must link your musicdir manually to /usr/share/mympd/htdocs/library"
|
|
fi
|
|
|
|
# install systemd service
|
|
echo "INFO: Installing systemd service"
|
|
if [ -d /etc/systemd/system ]
|
|
then
|
|
echo "INFO: reloading systemd"
|
|
systemctl daemon-reload
|
|
if [ ! -f /etc/systemd/system/multi-user.target.wants/mympd.service ]
|
|
then
|
|
echo "INFO: enabling mympd.service"
|
|
systemctl enable mympd
|
|
fi
|
|
fi
|
|
|
|
# create ssl certificates unless already existing
|
|
if [ -d /etc/mympd/ssl ]
|
|
then
|
|
echo "INFO: Certificates already created"
|
|
else
|
|
echo "INFO: Creating certificates"
|
|
/usr/share/mympd/crcert.sh
|
|
fi
|
|
|
|
# move config into place unless already existing
|
|
if [ ! -f /etc/mympd/mympd.conf ]
|
|
then
|
|
mv /etc/mympd/mympd.conf.dist /etc/mympd/mympd.conf
|
|
else
|
|
echo -e "\e[93mWARNING\e[0m: \e[1mmympd.conf \e[0minstalled as \e[1mmympd.conf.dist\e[0m"
|
|
fi
|
|
|
|
# installation complete
|
|
echo -e "\e[93mWARNING\e[0m: Edit \e[1m/etc/mympd/mympd.conf \e[0mbefore starting myMPD"
|
|
}
|
|
|
|
post_remove() {
|
|
# stop and remove systemd service
|
|
systemctl daemon-reload
|
|
if `systemctl is-active --quiet mympd`
|
|
then
|
|
echo "stopping mympd.service" && systemctl stop mympd
|
|
fi
|
|
echo "disabling mympd.service" && systemctl disable mympd
|
|
|
|
# backup config
|
|
if [ -f /etc/mympd/mympd.conf ]
|
|
then
|
|
mv /etc/mympd/mympd.conf /etc/mympd/mympd.conf.pacsave
|
|
echo -e "\e[93mINFO\e[0m: /etc/mympd/mympd.conf backed up to /etc/mympd/mympd.conf.pacsave"
|
|
fi
|
|
|
|
# unlink music dir
|
|
echo "unlinking musicdir to library"
|
|
if [ -f /etc/mpd.conf ]
|
|
then
|
|
LIBRARY=$(grep ^music_directory /etc/mpd.conf | awk {'print $2'} | sed -e 's/"//g')
|
|
[ "$LIBRARY" != "" ] && [ -e /usr/share/mympd/htdocs/library ] && rm /usr/share/mympd/htdocs/library
|
|
else
|
|
echo -e "\e[93mWARNING\e[0m: /etc/mpd.conf not found, you must unlink your musicdir manually from \e[1m/usr/share/mympd/htdocs/library\e[0m"
|
|
fi
|
|
|
|
# remove mympd user and group
|
|
getent passwd mympd > /dev/null
|
|
echo -e "\e[93mWARNING\e[0m: Removing \e[1mmympd \e[0muser and group!"
|
|
[ "$?" != "2" ] && userdel -r mympd
|
|
getent group mympd > /dev/null
|
|
[ "$?" != "2" ] && groupdel mympd
|
|
|
|
# remove leftover directories
|
|
rmdir -v /usr/share/{mympd/htdocs/,mympd/}
|
|
}
|
|
|