mirror of https://github.com/ashikslab/smartsh.git
commit
39a49e224b
|
@ -0,0 +1,60 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Display a warning to the user
|
||||
echo "WARNING: This script will change .bashrc "
|
||||
echo "You need to have openai api key ready "
|
||||
echo "Do you wish to proceed? (y/n)"
|
||||
read confirm
|
||||
|
||||
if grep -q "# smartsh configuration" ~/.bashrc; then
|
||||
echo "ERROR: the script was previosly run"
|
||||
echo "Aborting script."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# If the user confirms by entering "y", proceed with asking for their details and appending them to the file
|
||||
if [[ "$confirm" == "y" ]]; then
|
||||
|
||||
# Ask the user for the folder in which the input.txt file is located
|
||||
echo "Please enter to continue with home folder"
|
||||
echo "or type in full path to download location"
|
||||
read folder_path
|
||||
|
||||
# If the user did not provide a folder path, set the folder path to the home folder
|
||||
if [[ -z "$folder_path" ]]; then
|
||||
folder_path="$HOME"
|
||||
fi
|
||||
|
||||
#go to specified path or home folder and clone git
|
||||
cd $folder_path
|
||||
git clone https://git.ashik.se/ashikk/smartsh.git
|
||||
|
||||
|
||||
# Ask the user for their api key and store it in a variable
|
||||
echo "What is your openid apikey?"
|
||||
read apikey
|
||||
|
||||
#if they didnt enter api key then exit script
|
||||
if [[ -z "$apikey" ]]; then
|
||||
echo "api key not entered : exiting"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# start editing .bashrc enter apikey and folder path
|
||||
echo "# smartsh configuration" >> ~/.bashrc
|
||||
echo "export OPENAI_API_KEY=\"$apikey\"" >> ~/.bashrc
|
||||
echo "export SMARTSH_PATH=\"$folder_path/smartsh\"" >> ~/.bashrc
|
||||
|
||||
# use smartsh.py to handle command not found
|
||||
echo "command_not_found_handle () { " >> ~/.bashrc
|
||||
echo " echo \"Let's get help from OpenAI API!\" " >> ~/.bashrc
|
||||
echo " python3 \$SMARTSH_PATH/smartsh.py \"\$@\" " >> ~/.bashrc
|
||||
echo "} " >> ~/.bashrc
|
||||
echo "# end of smartsh configuration" >> ~/.bashrc
|
||||
echo "Installation completed"
|
||||
|
||||
|
||||
else
|
||||
# If the user does not confirm by entering "y", display a message indicating that the script has been cancelled
|
||||
echo "Script cancelled. No changes have been made "
|
||||
fi
|
Loading…
Reference in New Issue