2009-02-01 07:51:38 +00:00
|
|
|
#!/bin/sh
|
2009-11-04 10:27:02 +00:00
|
|
|
#
|
|
|
|
#
|
|
|
|
# Now in the future we only need to look for '#I2P' and '#/I2P'
|
|
|
|
# for modifications to rc.local and rc.local_shutdown.
|
|
|
|
# I was a moron for not doing it this way in the first place :-) -- Sponge
|
|
|
|
#
|
|
|
|
#
|
|
|
|
|
2009-02-01 07:51:38 +00:00
|
|
|
touch /etc/rc.d/rc.local
|
|
|
|
touch /etc/rc.d/rc.local_shutdown
|
|
|
|
|
|
|
|
echo
|
2009-11-04 10:27:02 +00:00
|
|
|
echo -n "Check 1: /etc/rc.d/rc.local "
|
|
|
|
I2PRCA=`grep -c /etc/rc.d/rc.local -e '/etc/rc.d/rc.i2p'`
|
2009-02-01 07:51:38 +00:00
|
|
|
|
|
|
|
if [ $I2PRCA -eq 0 ] ; then
|
2009-11-04 10:27:02 +00:00
|
|
|
echo '#I2P' >> /etc/rc.d/rc.local
|
|
|
|
echo '( cd /tmp ; rm -Rf i2p-*.tmp )' >> /etc/rc.d/rc.local
|
2009-02-01 07:51:38 +00:00
|
|
|
echo "if [ -x /etc/rc.d/rc.i2p ] ; then" >> /etc/rc.d/rc.local
|
|
|
|
echo " sh /etc/rc.d/rc.i2p start" >> /etc/rc.d/rc.local
|
|
|
|
echo "fi" >> /etc/rc.d/rc.local
|
2009-11-04 10:27:02 +00:00
|
|
|
echo '#/I2P' >> /etc/rc.d/rc.local
|
|
|
|
echo "modified."
|
2009-02-01 07:51:38 +00:00
|
|
|
else
|
2009-11-04 10:27:02 +00:00
|
|
|
echo -n "looks OK so far,"
|
|
|
|
# Fix old installs, or where people have modified.
|
|
|
|
|
|
|
|
echo -n " Check 1A: "
|
|
|
|
I2PRCC=`grep -c /etc/rc.d/rc.local -e 'i2p-\*\.tmp'`
|
|
|
|
|
|
|
|
if [ $I2PRCC -eq 0 ] ; then
|
|
|
|
DATA=$(cat /etc/rc.d/rc.local | sed -re 's/if \[ -x \/etc\/rc\.d\/rc\.i2p \] ; then/#I2P\n\( cd \/tmp ; rm -Rf i2p-*.tmp \)\nif \[ -x \/etc\/rc.d\/rc.i2p \] ; then/')
|
|
|
|
echo "${DATA}" > /etc/rc.d/rc.local
|
|
|
|
echo -n "additional modifications applied,"
|
|
|
|
else
|
|
|
|
echo -n "looks OK so far,"
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo -n " Check 1B: "
|
|
|
|
I2PRCE=`grep -c /etc/rc.d/rc.local -e 'i2p-\*\.tmp'`
|
|
|
|
if [ $I2PRCE -eq 0 ] ; then
|
|
|
|
DATATOP=$(cat /etc/rc.d/rc.local | sed -n '0,/i2p-\*\.tmp/p' | sed '$d' )
|
|
|
|
DATABOT=$(cat /etc/rc.d/rc.local | sed -n '/i2p-\*\.tmp/,$p' | sed -n '/^fi/,$p' | sed "1d")
|
|
|
|
echo "${DATATOP}" > /etc/rc.d/rc.local
|
|
|
|
echo '#I2P' >> /etc/rc.d/rc.local
|
|
|
|
echo '( cd /tmp ; rm -Rf i2p-*.tmp )' >> /etc/rc.d/rc.local
|
|
|
|
echo "if [ -x /etc/rc.d/rc.i2p ] ; then" >> /etc/rc.d/rc.local
|
|
|
|
echo " sh /etc/rc.d/rc.i2p start" >> /etc/rc.d/rc.local
|
|
|
|
echo "fi" >> /etc/rc.d/rc.local
|
|
|
|
echo '#/I2P' >> /etc/rc.d/rc.local
|
|
|
|
echo "${DATABOT}" >> /etc/rc.d/rc.local
|
|
|
|
|
|
|
|
echo -n "additional modifications applied,"
|
|
|
|
else
|
|
|
|
echo -n "looks ok so far,"
|
|
|
|
fi
|
|
|
|
echo -n " Check 1C: "
|
|
|
|
I2PRCF=`grep -c /etc/rc.d/rc.local -e '#/I2P'`
|
|
|
|
if [ $I2PRCF -eq 0 ] ; then
|
|
|
|
DATATOP=$(cat /etc/rc.d/rc.local | sed -n '0,/^#I2P/p' | sed '$d' )
|
|
|
|
DATABOT=$(cat /etc/rc.d/rc.local | sed -n '/^#I2P/,$p' | sed -n '/^fi/,$p' | sed "1d")
|
|
|
|
echo "${DATATOP}" > /etc/rc.d/rc.local
|
|
|
|
echo '#I2P' >> /etc/rc.d/rc.local
|
|
|
|
echo '( cd /tmp ; rm -Rf i2p-*.tmp )' >> /etc/rc.d/rc.local
|
|
|
|
echo "if [ -x /etc/rc.d/rc.i2p ] ; then" >> /etc/rc.d/rc.local
|
|
|
|
echo " sh /etc/rc.d/rc.i2p start" >> /etc/rc.d/rc.local
|
|
|
|
echo "fi" >> /etc/rc.d/rc.local
|
|
|
|
echo '#/I2P' >> /etc/rc.d/rc.local
|
|
|
|
echo "${DATABOT}" >> /etc/rc.d/rc.local
|
|
|
|
|
|
|
|
echo -n "additional modifications applied,"
|
|
|
|
else
|
|
|
|
echo -n "looks ok so far,"
|
|
|
|
fi
|
|
|
|
echo " Done."
|
2009-02-01 07:51:38 +00:00
|
|
|
fi
|
|
|
|
|
2009-11-04 10:27:02 +00:00
|
|
|
echo -n "Check 2: /etc/rc.d/rc.local_shutdown "
|
|
|
|
I2PRCB=`grep -c /etc/rc.d/rc.local_shutdown -e '/etc/rc.d/rc.i2p'`
|
2009-02-01 07:51:38 +00:00
|
|
|
if [ $I2PRCB -eq 0 ] ; then
|
2009-11-04 10:27:02 +00:00
|
|
|
echo "#I2P" >> /etc/rc.d/rc.local_shutdown
|
2009-02-01 07:51:38 +00:00
|
|
|
echo "if [ -x /etc/rc.d/rc.i2p ] ; then" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo " sh /etc/rc.d/rc.i2p stop" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "fi" >> /etc/rc.d/rc.local_shutdown
|
2009-11-04 10:27:02 +00:00
|
|
|
echo "#/I2P" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "modified."
|
2009-02-01 07:51:38 +00:00
|
|
|
else
|
2009-11-04 10:27:02 +00:00
|
|
|
echo -n "looks OK so far,"
|
|
|
|
# Fix old installs
|
|
|
|
|
|
|
|
echo -n " Check 1A: "
|
|
|
|
I2PRCG=`grep -c /etc/rc.d/rc.local_shutdown -e '#I2P'`
|
|
|
|
if [ $I2PRCG -eq 0 ] ; then
|
|
|
|
DATATOP=$(cat /etc/rc.d/rc.local_shutdown | sed -n '0,/^if \[ -x \/etc\/rc\.d\/rc\.i2p \] ; then/p' | sed '$d' )
|
|
|
|
DATABOT=$(cat /etc/rc.d/rc.local_shutdown | sed -n '/^if \[ -x \/etc\/rc\.d\/rc\.i2p \] ; then/,$p' | sed -n '/^fi/,$p' | sed "1d")
|
|
|
|
echo "${DATATOP}" > /etc/rc.d/rc.local_shutdown
|
|
|
|
echo '#I2P' >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "if [ -x /etc/rc.d/rc.i2p ] ; then" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo " sh /etc/rc.d/rc.i2p stop" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "fi" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "#/I2P" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "${DATABOT}" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo -n "additional modifications applied,"
|
|
|
|
else
|
|
|
|
echo -n "looks OK so far,"
|
|
|
|
fi
|
|
|
|
echo -n " Check 1B: "
|
|
|
|
I2PRCH=`grep -c /etc/rc.d/rc.local_shutdown -e '#/I2P'`
|
|
|
|
if [ $I2PRCH -eq 0 ] ; then
|
|
|
|
DATATOP=$(cat /etc/rc.d/rc.local_shutdown | sed -n '0,/^#I2P/p' | sed '$d' )
|
|
|
|
DATABOT=$(cat /etc/rc.d/rc.local_shutdown | sed -n '/^#I2P/,$p' | sed -n '/^fi/,$p' | sed "1d")
|
|
|
|
echo "${DATATOP}" > /etc/rc.d/rc.local_shutdown
|
|
|
|
echo '#I2P' >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "if [ -x /etc/rc.d/rc.i2p ] ; then" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo " sh /etc/rc.d/rc.i2p stop" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "fi" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "#/I2P" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo "${DATABOT}" >> /etc/rc.d/rc.local_shutdown
|
|
|
|
echo -n "additional modifications applied,"
|
|
|
|
else
|
|
|
|
echo -n "looks OK so far,"
|
|
|
|
fi
|
|
|
|
echo " Done."
|
2009-02-01 07:51:38 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -f /etc/rc.d/rc.i2p ] ; then
|
|
|
|
if [ -x /etc/rc.d/rc.i2p ] ; then
|
|
|
|
chmod +x /etc/rc.d/rc.i2p.new
|
|
|
|
fi
|
2009-11-04 10:27:02 +00:00
|
|
|
# Hopefully get admin's attention.
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -e "\007" ; sleep 0.3
|
2009-02-01 07:51:38 +00:00
|
|
|
echo "It apears that you already have /etc/rc.d/rc.i2p"
|
2009-11-04 10:27:02 +00:00
|
|
|
echo "You should replace it with /etc/rc.d/rc.i2p.new as soon as possible"
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -ne "\007" ; sleep 0.3
|
|
|
|
echo -e "\007" ; sleep 0.3
|
2009-02-01 07:51:38 +00:00
|
|
|
else
|
|
|
|
mv /etc/rc.d/rc.i2p.new /etc/rc.d/rc.i2p
|
|
|
|
echo
|
|
|
|
echo "Installation finished. The i2p start/stop script has been"
|
2009-11-04 10:27:02 +00:00
|
|
|
echo "installed in /etc/rc.d . You should chmod +x"
|
2009-02-01 07:51:38 +00:00
|
|
|
echo '/etc/rc.d/rc.i2p to start it on boot.'
|
|
|
|
echo
|
|
|
|
fi
|
|
|
|
|
|
|
|
exit
|