1
0
mirror of https://github.com/SuperBFG7/ympd synced 2024-11-13 01:29:54 +00:00
ympd/contrib/archlinux.install

98 lines
2.9 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
echo "INFO: Fixing ownership of /var/lib/mympd"
chown -R mympd.mympd /var/lib/mympd
# 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
echo "Linking pics directory"
[ -e /usr/share/mympd/htdocs/pics ] || ln -s /var/lib/mympd/pics /usr/share/mympd/htdocs/
# 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 smartpls into place unless already existing
for PLDIST in /var/lib/mympd/smartpls/*.dist
do
PLS=$(basename $PLDIST .dist)
if [ -f /var/lib/mympd/smartpls/$PLS ]
then
rm $PLDIST
else
mv $PLDIST /var/lib/mympd/smartpls/$PLS
fi
done
# 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
# remove leftover directories
rm -v -f /usr/share/mympd/htdocs/pics
rm -v -f /usr/share/mympd/htdocs/library
rmdir -v /usr/share/mympd/htdocs/
rmdir -v /usr/share/mympd/
}