pwdl / setup.sh
AkshitShubham's picture
Upload folder using huggingface_hub
41ca5f7 verified
raw
history blame
No virus
1.97 kB
#!/bin/bash
# Function to download and install pip
install_pip() {
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
if [[ $os != "Android" ]]; then
python get-pip.py
fi
rm get-pip.py
}
# Function to install requirements
install_requirements() {
if command -v python &> /dev/null; then
echo "Python is installed"
install_pip
python -m pip install -r requirements.txt
elif command -v python3 &> /dev/null; then
echo "Python3 is installed"
install_pip
python3 -m pip install -r requirements.txt
else
echo "Python is not installed"
exit 1
fi
}
# Function to download and install tools
install_tools() {
local tool=$1
local url="https://raw.githubusercontent.com/shubhamakshit/pwdlv3_assets/main/$os/$arch/$tool"
curl -o $SCRIPT_DIR/bin/$tool $url
chmod +x $SCRIPT_DIR/bin/$tool
}
# Main script execution
arch=$(uname -m)
os=$(uname -o)
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
mkdir -p $SCRIPT_DIR/bin
# Download defaults.json
curl -o defaults.json https://raw.githubusercontent.com/shubhamakshit/pwdlv3/main/defaults.linux.json
# Install Python requirements
install_requirements
# Install mp4decrypt and vsd
install_tools "mp4decrypt"
install_tools "vsd"
# Check if -f flag is passed to install ffmpeg
if [[ $1 == "-f" ]]; then
install_tools "ffmpeg"
# Add bin to PATH in .bashrc if not already added
if ! grep -q "export PATH=\$PATH:$SCRIPT_DIR/bin" ~/.bashrc; then
echo "export PATH=\$PATH:$SCRIPT_DIR/bin" >> ~/.bashrc
fi
fi
# Check if 'alias pwdl' is already present in ~/.bashrc
if ! grep -q "alias pwdl" ~/.bashrc; then
echo "alias pwdl='python3 $SCRIPT_DIR/pwdl.py'" >> ~/.bashrc
fi
# Source ~/.bashrc to make changes available in the current session
source ~/.bashrc
# Notify the user
echo "Please restart your terminal or run 'source ~/.bashrc' to apply the alias and path changes."