80 lines
2.4 KiB
Bash
80 lines
2.4 KiB
Bash
#!/bin/bash
|
|
|
|
# Script d'installation et de vérification pour le système timelapse en mode headless
|
|
# Ce script vérifie et installe toutes les dépendances nécessaires
|
|
|
|
echo "======== Configuration du système timelapse en mode headless ========"
|
|
echo "Vérification et installation des dépendances..."
|
|
|
|
# Fonction pour installer une dépendance si elle n'est pas déjà présente
|
|
install_if_missing() {
|
|
if ! dpkg -l | grep -q $1; then
|
|
echo "Installation de $1..."
|
|
sudo apt install -y $1
|
|
else
|
|
echo "$1 est déjà installé."
|
|
fi
|
|
}
|
|
|
|
# Mise à jour des dépôts
|
|
sudo apt update
|
|
|
|
# Installation des dépendances système
|
|
install_if_missing python3-pip
|
|
install_if_missing python3-dev
|
|
install_if_missing i2c-tools
|
|
install_if_missing libcamera-dev
|
|
install_if_missing python3-picamera2
|
|
install_if_missing python3-libcamera
|
|
install_if_missing libopenjp2-7
|
|
install_if_missing libtiff5
|
|
|
|
# Installation des dépendances Python
|
|
echo "Installation des dépendances Python..."
|
|
pip3 install --upgrade pip
|
|
pip3 install smbus2
|
|
pip3 install requests
|
|
pip3 install picamera2
|
|
pip3 install pathlib
|
|
|
|
# Activation des interfaces requises
|
|
echo "Activation de l'interface I2C..."
|
|
if ! grep -q "dtparam=i2c_arm=on" /boot/config.txt; then
|
|
echo "dtparam=i2c_arm=on" | sudo tee -a /boot/config.txt
|
|
echo "I2C activé dans /boot/config.txt"
|
|
else
|
|
echo "I2C déjà activé."
|
|
fi
|
|
|
|
echo "Activation de la caméra..."
|
|
if ! grep -q "start_x=1" /boot/config.txt; then
|
|
echo "start_x=1" | sudo tee -a /boot/config.txt
|
|
echo "gpu_mem=128" | sudo tee -a /boot/config.txt
|
|
echo "Caméra activée dans /boot/config.txt"
|
|
else
|
|
echo "Caméra déjà activée."
|
|
fi
|
|
|
|
# Ajout de l'utilisateur aux groupes nécessaires
|
|
echo "Ajout de l'utilisateur aux groupes requis..."
|
|
sudo usermod -a -G i2c,video,gpio $USER
|
|
|
|
# Installation du service systemd
|
|
echo "Installation du service timelapse..."
|
|
sudo cp timelapse.service /etc/systemd/system/
|
|
sudo systemctl daemon-reload
|
|
sudo systemctl enable timelapse.service
|
|
|
|
# Création des répertoires nécessaires
|
|
echo "Création des répertoires de travail..."
|
|
mkdir -p CONFIG
|
|
mkdir -p PROJECT
|
|
|
|
# Test des périphériques I2C
|
|
echo "Test des périphériques I2C (si vous voyez des erreurs, vérifiez les connexions)..."
|
|
sudo i2cdetect -y 1
|
|
|
|
echo "======== Configuration terminée ========"
|
|
echo "Le système timelapse est prêt à fonctionner en mode headless."
|
|
echo "Un redémarrage est recommandé pour appliquer tous les changements:"
|
|
echo "sudo reboot" |