diff options
Diffstat (limited to 'build/mac/uninstall-pcp')
-rw-r--r-- | build/mac/uninstall-pcp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/build/mac/uninstall-pcp b/build/mac/uninstall-pcp new file mode 100644 index 0000000..d58f7ed --- /dev/null +++ b/build/mac/uninstall-pcp @@ -0,0 +1,70 @@ +#!/bin/sh +# +# Copyright (c) 2003-2004 Silicon Graphics, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# + +if [ $USER != "root" ] +then + echo "Only the root user can uninstall PCP, try the following command instead:" + echo " sudo $0" + exit 1 +fi + +/bin/echo -n "Are you sure you want to uninstall PCP? [y/n] " +read answer + +if [ "X$answer" != "Xy" -a "X$answer" != "XY" ] +then + echo "Uninstall cancelled." + exit 1 +fi + +here=`pwd` +BINADM_DIR="/usr/libexec/pcp/bin" + +if [ "$here" = "$BINADM_DIR" -o "$here" = `dirname $BINADM_DIR` ] +then + echo "Do not run $0 from $BINADM_DIR, uninstall cancelled." + exit 1 +fi + +echo "Stopping PCP..." +/Library/StartupItems/pcp/pmcd stop +sleep 5 + +if [ -x $BINADM_DIR/install-pcp -a -r $BINADM_DIR/idb ] +then + echo "Removing Receipts" + if [ -d /Library/Receipts/pcp-*.pkg ]; then + rm -rf /Library/Receipts/pcp-*.pkg + fi + echo "Uninstall in background to remove all running scripts" + # Copy to /tmp since inst will remove itself and this script + cp $BINADMR_DIR/install-pcp $BINDAMD_DIR/idb /tmp + # create tidy up script + echo '#!/bin/sh' > /tmp/_pcp_tidy.sh + echo '/tmp/install-pcp -v -r -l /var/log/pcp_inst.log /tmp/idb && /bin/rm -rf /Library/Receipts/pcp-*' >> /tmp/_pcp_tidy.sh + echo '/bin/rm -f /tmp/install-pcp /tmp/idb /tmp/_pcp_tidy.sh' >> /tmp/_pcp_tidy.sh + echo 'echo Done' >> /tmp/_pcp_tidy.sh + chmod u+x /tmp/_pcp_tidy.sh + # Run remove, overriding this shell + exec /tmp/_pcp_tidy.sh +else + echo "Unable to find $BINADM_DIR/install-pcp. Remove failed" + exit 1 +fi + |