bunkdeck/install.sh

51 lines
1.1 KiB
Bash
Raw Normal View History

2024-04-13 18:48:32 +00:00
#!/bin/sh -e
2024-04-13 23:35:41 +00:00
2024-04-13 18:48:32 +00:00
installtarget=/usr/local/bin
chatlogdir=/var/log/bunkchat
chatlog=chat.log
chattrfailed() {
set +e
rm -rf $chatlogdir
echo
echo "ERROR: could not set append only attribute in ${chatlogdir}"
echo " does your filesystem support 'chattr +a' ?"
exit 1
}
2024-04-13 23:35:41 +00:00
prep() {
mkdir -p $chatlogdir
chmod 755 $chatlogdir
touch ${chatlogdir}/${chatlog}
chmod 666 ${chatlogdir}/${chatlog}
# if chattr +a not supported on this file system, catch error and clean up
chattr +a ${chatlogdir}/${chatlog} || chattrfailed
}
2024-04-13 18:48:32 +00:00
2024-04-13 23:35:41 +00:00
install() {
cp proclaim heed scry $installtarget
chmod 755 ${installtarget}/proclaim
chmod 755 ${installtarget}/heed
chmod 755 ${installtarget}/scry
chown root:root ${installtarget}/proclaim
chown root:root ${installtarget}/heed
chown root:root ${installtarget}/scry
echo "SUCCESS! bunkchat installed!"
exit 0
}
2024-04-13 18:48:32 +00:00
2024-04-13 23:35:41 +00:00
# check for root perms
if ! [ "$(id -u)" = 0 ]; then
echo "ERROR: please run install with root permission" >&2
exit 1
fi
2024-04-13 18:48:32 +00:00
2024-04-13 23:35:41 +00:00
# if chat.log exists, skip prep
if [ -f ${chatlogdir}/${chatlog} ]; then
install
else
prep
install
fi