Files
Vision-par-ordinateur/autoinstall.sh
AliceT 18e8d6eef1 Premier commit du programme sur la nouvelle instance Gitea
Import des fichiers :

Modifications qui seront validées :
	nouveau fichier : MOT20-02.mp4
	nouveau fichier : README.md
	nouveau fichier : autoinstall.sh
	nouveau fichier : autostart.sh
	nouveau fichier : checking-camera.py
	nouveau fichier : main.py
	nouveau fichier : models/yolo11n.pt
	nouveau fichier : models/yolo12n.pt
	nouveau fichier : requirements.txt
	nouveau fichier : track/botsort.yaml
	nouveau fichier : track/bytetrack.yaml
2025-10-19 11:53:24 +02:00

70 lines
2.3 KiB
Bash
Executable File

#!/bin/bash
# Initialize variables
START_FILE="$HOME/.config/autostart/vision-par-ordinateur-python.desktop"
PROJECT_DIR="$HOME/vision-par-ordinateur-python"
INPUT=""
VERBOSE=""
FORCE=""
API_URL=""
# Load PyEnv for user
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init - bash)"
eval "$(pyenv virtualenv-init -)"
# Prompt for INPUT
read -p "Voulez-vous indiquer un flux d'entrée ? (oui/non): " input_choice
if [[ "$input_choice" == "oui" || "$input_choice" == "o" ]]; then
read -p "Entrez la valeur d'entrée : " INPUT
INPUT="-i $INPUT"
fi
# Prompt for VERBOSE
read -p "Voulez-vous une verbosité accrue ? (oui/non): " verbose_choice
if [[ "$verbose_choice" == "oui" || "$verbose_choice" == "o" ]]; then
VERBOSE="-v"
fi
# Prompt for FORCE
read -p "Voulez-vous forcer le redimenssionnement de l'image ? (oui/non): " force_choice
if [[ "$force_choice" == "oui" || "$force_choice" == "o" ]]; then
FORCE="-f"
fi
# Prompt for API_URL
read -p "Voulez-vous renseigner l'URL de l'API ? (oui/non): " api_choice
if [[ "$api_choice" == "oui" || "$api_choice" == "o" ]]; then
read -p "Entrez l'URL de l'API : " API_URL
API_URL="--api-url $API_URL"
fi
# Construct the final command
COMMAND="python main.py $INPUT $VERBOSE $FORCE $API_URL >> $HOME/vision-par-ordinateur-python/main.log 2>&1"
# Output the command to the autostart.sh file
echo -e "$COMMAND" >> autostart.sh
# Make the script executable
chmod +x autostart.sh
# Make the project directory and copy content
mkdir "${PROJECT_DIR}"
cp -r main.py autostart.sh requirements.txt models track "${PROJECT_DIR}"
# Install venv and requirements
cd "${PROJECT_DIR}"
pyenv local 3.13.2
python -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
# Auto start program settings
mkdir -p ~/.config/autostart
touch "${START_FILE}"
echo -e "[Desktop Entry]\nType=Application\nExec=${HOME}/vision-par-ordinateur-python/autostart.sh\nHidden=false\nNoDisplay=false\nX-GNOME-Autostart-enabled=true\nName=Vision par ordinateur\nComment=Lance le script Python pour la vision par ordinateur" >> "${START_FILE}"
echo -e "L'installation du programme et du démarrage automatique est terminé.\nVeuillez redémarrer l'ordinateur pour démarrer la vision par ordinateur automatiquement."