#!/bin/bash # We should only need to adjust the version in the future, hopefully. PANDA_VERSION=$1 PANDA_PATH=/Applications/Panda3D/\$PANDA_VERSION PROFILE=$HOME/.bash_profile PROFILE_BACKUP=$HOME/.bash_profile_backup # Build the block of stuff to put in the user's BASH profile BASH_BLOCK='if [ -d $PANDA_PATH ] then export PATH=$PANDA_PATH/bin:$PATH export PYTHONPATH=$PANDA_PATH/lib:$PYTHONPATH export DYLD_LIBRARY_PATH=$PANDA_PATH/lib:$DYLD_LIBRARY_PATH export MAYA_SCRIPT_PATH=$PANDA_PATH/plugins:$MAYA_SCRIPT_PATH export MAYA_PLUG_IN_PATH=$PANDA_PATH/plugins:$MAYA_PLUG_IN_PATH fi ' BASH_BLOCK=" PANDA_VERSION=$PANDA_VERSION PANDA_PATH=$PANDA_PATH $BASH_BLOCK" # Let's get started! clear if [ -f $PROFILE ] then # Back it up first cp $PROFILE $PROFILE_BACKUP # Check if it isn't already configured if [ "$(grep PANDA_VERSION=$PANDA_VERSION $PROFILE)" != "" ] then echo "It looks like your version of Panda3D is already configured!" echo "" echo "Exiting. You can close this window." echo "" exit elif [ "$(grep 'PANDA_VERSION=[0-9].[0-9].[0-9]' $PROFILE)" != "" ] then $(sed -e s@PANDA_VERSION=[0-9].[0-9].[0-9]@PANDA_VERSION=$PANDA_VERSION@ -e s@PANDA_PATH=/Applications/Panda3D/[0-9].[0-9].[0-9]@PANDA_PATH=$PANDA_PATH@ < $PROFILE_BACKUP > $PROFILE) echo "Success! Your version of Panda3D has been changed to $PANDA_VERSION." echo "" echo "All done! You can close this window." echo "" exit fi fi echo "This script will attempt to look at your BASH profile and add" echo "appropriate entries so that Panda3D will work for you. This means" echo "adding the following to $PROFILE :" echo "" echo "$BASH_BLOCK" echo "" echo "Continue? (Y/N)" read CONTINUE clear if [ $CONTINUE != 'Y' -a $CONTINUE != 'y' ] then echo "Please note that Panda3D will not function properly unless" echo "your environment is configured properly." echo "" echo "Exiting. You can close this window." echo "" exit fi if [ ! -f $PROFILE ] then echo "No $PROFILE file found. Creating one." echo "" $(touch $PROFILE) fi if [ "$(grep -i panda3d $PROFILE)" != "" ] then echo "Your profile already has some reference to 'panda3d'!" echo "It looks like you might already have the paths set up. If you're" echo "upgrading, might just need to change PANDA_VERSION to $PANDA_VERSION" echo "" echo "Open your profile in TextEdit so you can review it? (Y/N)" read OPEN_PROFILE if [ $OPEN_PROFILE == 'Y' -o $OPEN_PROFILE == 'y' ] then clear echo "Opening $PROFILE" echo "This is the sort of block you are looking for:" echo "" echo "$BASH_BLOCK" echo "" echo "Exiting. You can close this window." echo "" $(open /Applications/TextEdit.app $PROFILE) exit else clear echo "Cowardly refusing to touch your profile because you already" echo "have some reference to 'panda3d'. Here is what needs to be in" echo "$PROFILE :" echo "" echo "$BASH_BLOCK" echo "" echo "Exiting. You can close this window." echo "" exit fi else echo "Adding the following to $PROFILE :" echo "" echo "$BASH_BLOCK" echo "" echo "$BASH_BLOCK" >> $PROFILE echo "All done! You can close this window." echo "" fi