freeswitch/build/startup/install_systemd.sh.in

60 lines
1.9 KiB
Bash

#!/bin/bash
# Niek Vlessert
USER=`whoami`
DISTRO=$(source /etc/os-release && echo $PRETTY_NAME)
if [ $USER != "root" ] ; then
SUDO=`which sudo | awk -F"/" '{print $NF}'`
if [ -z $SUDO ] ; then
echo "No root and no sudo... please run this as root or install sudo and make sure your user has permissions to use it."
exit
else
read -p "The currently active user is not root but sudo is available... do you want to install using sudo? (y/n) " -n 1 -r
if ! [[ $REPLY =~ ^[yY]$ ]]
then
echo
exit
fi
fi
fi
echo
echo "This will do several things on your $DISTRO installation:"
echo "- Create user freeswitch and add it to group freeswitch"
FSPATH=@prefix@
if [[ $FSPATH == *"freeswitch"* ]]
then
echo "- Set permissions on @prefix@ and files in @bindir_expanded@"
fi
echo "- Install systemd unit file and other required files"
echo
read -p "Do you want to continue? (y/n) " -n 1 -r
if [[ $REPLY =~ ^[yY]$ ]]
then
echo
echo "Installing..."
$SUDO useradd -d @confdir@ -r -U -s /bin/false -c "FreeSWITCH open source softswitch" freeswitch
if [[ $FSPATH == *"freeswitch"* ]]
then
$SUDO chown -R freeswitch:freeswitch @prefix@
$SUDO chmod -R ug=rwX,o= @prefix@
$SUDO chmod -R u=rwx,g=rx @bindir_expanded@/*
fi
$SUDO cp build/startup/freeswitch.service /etc/systemd/system/
$SUDO cp build/startup/freeswitch.tmpfile /etc/tmpfiles.d/freeswitch.conf
if [ -d /etc/sysconfig ]; then
$SUDO cp build/startup/freeswitch.default /etc/sysconfig/freeswitch
else
$SUDO cp build/startup/freeswitch.default /etc/default/freeswitch
fi
$SUDO systemd-tmpfiles --clean --create
$SUDO systemctl daemon-reload
echo
if [ -f @confdir@/vars.xml ] ; then
echo "You may now start Freeswitch using 'systemctl start freeswitch'"
else
echo "Make sure your config files are in place in @confdir@, if they are you can start Freeswitch using 'systemctl start freeswitch'"
fi
echo "Then start fs_cli by running @bindir_expanded@/fs_cli"
fi