virtual-appliance/teamplayer/postinstall

56 lines
2.0 KiB
Bash
Executable File

#!/bin/sh -ve
CHROOT="$1"
HOSTNAME="$2"
APPLIANCE="`dirname $0`"
HG_REPO="../teamplayer"
TP_USER="teamplayer"
TP_HOME="/opt/teamplayer"
TP_DB="/var/lib/teamplayer"
PGVER="8.4"
INSTALL="/usr/bin/install"
M4="/usr/bin/m4"
M4_DEFS="-D HOSTNAME=${HOSTNAME} -D TP_USER=${TP_USER} -D TP_HOME=${TP_HOME}"
M4_DEFS="${M4_DEFS} -D TP_DB=${TP_DB}"
M4C="${M4} ${M4_DEFS}"
# Postgres config
chroot ${CHROOT} passwd -d postgres
yes | chroot ${CHROOT} emerge --config =postgresql-server-${PGVER}*
chroot ${CHROOT} rc-update add postgresql-${PGVER} default
chroot ${CHROOT} getent passwd ${TP_USER} || \
chroot ${CHROOT} useradd -c "Teamplayer Server" -G postgres -U \
-d ${TP_HOME} ${TP_USER}
rm -rf ${CHROOT}/${TP_HOME}
hg clone --pull ${HG_REPO} ${CHROOT}/${TP_HOME}
cp ${APPLIANCE}/bash_profile ${CHROOT}${TP_HOME}/.bash_profile
chroot ${CHROOT} mkdir -p /etc/teamplayer
${M4C} ${APPLIANCE}/settings_local.py > ${CHROOT}/etc/teamplayer/settings_local.py
mkdir -p ${CHROOT}${TP_HOME}/bin
${M4C} ${APPLIANCE}/start-teamplayer > ${CHROOT}${TP_HOME}/bin/start-teamplayer
chmod +x ${CHROOT}${TP_HOME}/bin/start-teamplayer
${M4C} ${APPLIANCE}/stop-teamplayer > ${CHROOT}${TP_HOME}/bin/stop-teamplayer
chmod +x ${CHROOT}${TP_HOME}/bin/stop-teamplayer
chroot ${CHROOT} ${INSTALL} -d -o ${TP_USER} -g ${TP_USER} ${TP_DB}
chroot ${CHROOT} ${INSTALL} -d -o ${TP_USER} -g ${TP_USER} ${TP_DB}/songs
chroot ${CHROOT} rm -rf ${TP_HOME}/web/media/songs
chroot ${CHROOT} ln -s ${TP_DB}/songs ${TP_HOME}/web/media/songs
chroot ${CHROOT} ${INSTALL} -d -o ${TP_USER} -g ${TP_USER} ${TP_DB}/mpd
chroot ${CHROOT} ${INSTALL} -d -o ${TP_USER} -g ${TP_USER} /var/log/teamplayer
${M4C} ${APPLIANCE}/local.start > ${CHROOT}/etc/conf.d/local.start
${M4C} ${APPLIANCE}/local.stop > ${CHROOT}/etc/conf.d/local.stop
cp ${APPLIANCE}/issue ${CHROOT}/etc/issue
# lighttpd config
${M4C} ${APPLIANCE}/lighttpd.conf > ${CHROOT}/etc/lighttpd/lighttpd.conf
chroot ${CHROOT} gpasswd -a lighttpd teamplayer
chroot ${CHROOT} rc-update add lighttpd default
chroot ${CHROOT} rc-update add ntpd default