syncthing-install/syncthing-install-auto.sh

164 lines
4.4 KiB
Bash
Raw Normal View History

#! /bin/bash
#########################################################
# Inclusions
#########################################################
# Variables partagées
# releases url : https://github.com/syncthing/syncthing/releases/
2023-02-18 20:33:48 +01:00
archive_url="https://github.com/syncthing/syncthing/releases/download/v1.23.1/syncthing-linux-amd64-v1.23.1.tar.gz"
archivename=$(echo $archive_url | grep -oE 'syncthing-(.*)\.tar\.gz')
iconurl="https://raw.githubusercontent.com/syncthing/syncthing/main/assets/logo-128.png"
# Fonctions partagées
fonct_VerifConnexionInternet () {
ping -c 1 github.com > /dev/null
if [ "$?" != "0" ]; then
echo "Erreur la connexion internet semble défaillante"
echo "Fin du script."
exit
fi
}
fonct_PaquetInstalle () {
which $1
if [ "$?" != "0" ]; then
echo "$1 ne semble pas installé."
echo "Fin du script."
exit
else
echo "Le paquet $1 est bien installé."
fi
}
fonct_TouchePourContinuer (){
read -p "Presser une touche pour continuer ou Ctrl-C pour annuler" CONT
}
fonct_ArretSurErreur(){
if [ "$?" != "0" ]; then
echo "Le script a rencontré une erreur."
exit
fi
}
#########################################################
# Début du script
#########################################################
# Vérifications
fonct_VerifConnexionInternet
fonct_PaquetInstalle firefox
# Introduction
clear
cat << "EOF"
..~~+~~~..
.++++~~.~~~++++.
.++~. .~++..
~o+ ~ooo+.
~o~ +oooo
+o .+++.~o+
.o+. ..~+ooo~. +o
+ooo+++++++++oooo~ .++
+ooo~.. ~~oo. ~o~
~o+ +o+~+o~
.++~. .oooo~
.~+++~~~~~~++o+o+.
..~~~~~~..
2022-05-27 17:25:37 +02:00
Syncthing remplace les logiciels de synchronisation
privateurs et les services de cloud par un
logiciel ouvert, de confiance et décentralisé.
https://syncthing.net
EOF
fonct_TouchePourContinuer
clear
2022-05-27 17:25:37 +02:00
cat << "EOF"
Ce que fait ce script :
-Télécharger et installer Syncthing de façon automatique
-Créer un dossier bin dans votre home
-Ajouter une entrée de démmarrage automatique pour Syncthing
-Ajouter l'icone de Syncthing dans votre dossier icons
-Ajouter une entrée Interface Syncthing dans votre menu principal
Notes : Après l'installation l'interface web de Syncthing
démmarra automatiquement à chaque session. Vous pouvez
empecher cela en décochant la case «Lancer le navigateur web»
dans la configuration de Syncthing.
EOF
fonct_TouchePourContinuer
clear
2022-05-19 17:05:20 +02:00
mkdir -p $HOME/bin/
fonct_ArretSurErreur
mkdir -p $HOME/.icons/
fonct_ArretSurErreur
mkdir -p $HOME/.config/autostart/
fonct_ArretSurErreur
# Téléchargement syncthing
2022-05-19 17:05:20 +02:00
wget --quiet $archive_url
2022-05-27 17:25:37 +02:00
fonct_ArretSurErreur
2022-05-19 17:05:20 +02:00
tar -xzf $archivename -C $HOME/bin/
mv $HOME/bin/syncthing* $HOME/bin/syncthing
rm $archivename
echo ""
echo "Syncthing a bien été installé."
2022-05-27 17:25:37 +02:00
sleep 2
# Ajout alias au .bashrc
#echo export PATH='$PATH':~/bin/syncthing >> $HOME/.bashrc
sed -i '1iexport PATH='$PATH':~/bin/syncthing' $HOME/.bashrc
fonct_ArretSurErreur
echo "Ajout des alias au bashrc réussi."
2022-05-27 17:25:37 +02:00
sleep 2
# Installation des fichiers desktop
cat << "EOF" > $HOME/.config/autostart/syncthing-autostart.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Syncthing
Icon=syncthing
Comment="Outil de synchronisation sécurisé sans serveur central"
Exec=bin/syncthing/syncthing
Terminal=false
Type=Application
EOF
fonct_ArretSurErreur
echo "Ajout du lien de démmarrage automatique réussi."
2022-05-27 17:25:37 +02:00
sleep 2
cat << "EOF" > $HOME/.local/share/applications/syncthing-wui.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Syncthing (Interface Web)
Icon=syncthing
Comment="Ouvrir l'interface web de Syncthing"
Exec=firefox --new-tab 127.0.0.1:8384
Terminal=false
Type=Application
Categories=Network;
EOF
fonct_ArretSurErreur
echo "Ajout du raccourcis vers l'interface web réussi."
echo "Vous le trouverez dans le menu principal"
echo "de votre distribution Rubrique Internet/Syncthing (Interface web)"
2022-05-27 17:25:37 +02:00
sleep 2
# Installation de l'icone
wget --quiet -O $HOME/.icons/syncthing.png $iconurl
fonct_ArretSurErreur
echo "Ajout de l'icone réussi."
2022-05-27 17:25:37 +02:00
sleep 2
echo ""
echo "Installation terminée."
echo "Merci de relancer votre session pour terminer l'installation"
2022-05-27 17:25:37 +02:00
echo ""
echo "Vous pouvez également installer Syncthing-GTK pour avoir les notifications de bureau et d'autres options"
echo "https://github.com/syncthing/syncthing-gtk"