simplification de TestBorgRepo

contrôle lors de l'ajout d'un dépôt existant
simplification du formulaire ajout dépôt existant
supression chemin icônes
This commit is contained in:
Djan GICQUEL 2022-07-12 21:36:11 +02:00
parent 43798a051e
commit 298fd090ac

View File

@ -11,39 +11,31 @@ zenity $W --window-icon=borg --progress --pulsate --auto-close
TestBorgRepo () { TestBorgRepo () {
if [ ! -f "config" ]; then if [ ! -f "config" ]; then
TestBorgErr=1 zenity $W --error --text="Impossible de trouver le fichier de configuration du dépôt."
infoerr=$(echo "Impossible de trouver le fichier de configuration du dépôt.") TestBorgErr="true"
zenity $W --error --text="$infoerr" else
exit TestBorgErr="false"
fi fi
if [ ! -d "data" ]; then if [ ! -d "data" ]; then
TestBorgErr=1 zenity $W --error --text="Impossible de trouver le dossier des données du dépôt."
infoerr=$(echo "Impossible de trouver le dossier des données du dépôt.") TestBorgErr="true"
zenity $W --error --text="$infoerr" else
exit TestBorgErr="false"
fi
if [ -d "lock.exclusive" ]; then
TestBorgErr=1
infoerr=$(echo "Le dépôt est bloqué, une opération est peut-être en cours")
zenity $W --error --text="$infoerr"
exit
fi fi
} }
dossierprofil="$HOME/.config/borg/profils-borg-zenity/" dossierprofil="$HOME/.config/borg/profils-borg-zenity/"
mkdir -p "$dossierprofil" && cd "$dossierprofil" mkdir -p "$dossierprofil" && cd "$dossierprofil" || exit
# Affichage du menu # Affichage du menu
########################################################### ###########################################################
choixmenu=$(echo -e "\ choixmenu=$(echo -e "\
cp\nCréer un nouveau profil/dépôt\n\ cp\nCréer un nouveau profil/dépôt\n\
ajd\nAjouter un dépôt existant\n\ ajd\nCréer un nouveau profil et le lier à un dépôt existant\n\
ap\nAfficher les profils\ ap\nAfficher les profils\
" | zenity $H $W --window-icon=$HOME/.icons/borg.svg --list \ " | zenity $H $W --window-icon=borg --list --column "id" --column "choix" --hide-column=1 --hide-header)
--column "id" --column "choix")
# Gestion des choix du menu # Gestion des choix du menu
########################################################### ###########################################################
@ -93,21 +85,32 @@ borg_compress=""
dryrun="" dryrun=""
EOF EOF
zenity $W --info --text "Le profil «$profilename» a été créé avec ces paramètres\n\nNom de profil : $profilename\nChemin à sauvegarder : $borg_dir\nChemin du dépôt : $borg_repo\nStatut du dépôt : $repo_status" zenity $W --info --text "\
Le profil «$profilename» a été créé avec ces paramètres\n\n\
Nom de profil : $profilename\n\
Chemin à sauvegarder : $borg_dir\n\
Chemin du dépôt : $borg_repo\n\
Statut du dépôt : $repo_status"
### Ajouter un dépôt existant ### ### Ajouter un dépôt existant ###
elif [ "$choixmenu" = "ajd" ];then elif [ "$choixmenu" = "ajd" ];then
borg_repo=$(zenity --title "Dossier du dépôt" --file-selection --directory) TestBorgErr="true"
borg_dir=$(zenity --title "Dossier à sauvegarder" --file-selection --directory) while [ "$TestBorgErr" = "true" ];do
echo "-> while"
borg_repo_test=$(zenity --title "Dossier du dépôt" --file-selection --directory)
if [ $? = "1" ];then exit;fi
cd "$borg_repo_test" && TestBorgRepo
echo "TestBorgErr : $TestBorgErr"
if [ "$TestBorgErr" = "false" ];then borg_repo=$borg_repo_test;fi
echo "borg_repo = $borg_repo"
echo "borg_repo_test = $borg_repo_test"
done
vars=$(zenity --forms \ borg_dir=$(zenity --title "Dossier à sauvegarder" --file-selection --directory)
--text "Laisser les champs vides pour les options par défaut" \ profilename=$(zenity --entry --title "Nom de profil" --text "Nom de profil (pas d'espace ni caractères spéciaux)")
--add-entry "Nom de sauvegarde" \ nomsauvegarde=$(echo "$profilename")
--add-entry "Nom de profil (pas d'espace ni caractères spéciaux)")
nomsauvegarde=$(echo $vars | cut -d\| -f1)
profilename=$(echo $vars | cut -d\| -f2)
cat << EOF >> "$dossierprofil""$profilename".conf cat << EOF >> "$dossierprofil""$profilename".conf
nomsauvegarde="$nomsauvegarde" nomsauvegarde="$nomsauvegarde"
@ -124,7 +127,7 @@ zenity $W --info --text "Le dépôt à bien été ajouté.\nLancez «Borg Zenity
### Afficher les profils ### ### Afficher les profils ###
elif [ "$choixmenu" = "ap" ];then elif [ "$choixmenu" = "ap" ];then
fichierprofil=$(ls -1 *.conf | zenity $H $W --window-icon=$HOME/.icons/borg.svg --list --title "Liste des profils" --text "Choisir un profil dans la liste" --hide-header --column "profil") fichierprofil=$(ls -1 *.conf | zenity $H $W --window-icon=borg --list --title "Liste des profils" --text "Choisir un profil dans la liste" --hide-header --column "profil")
zenity $W $H --info --text="<tt>$(cd "$dossierprofil" && cat "$fichierprofil")</tt>" zenity $W $H --info --text="<tt>$(cd "$dossierprofil" && cat "$fichierprofil")</tt>"
elif [ "$choixmenu" = "" ];then elif [ "$choixmenu" = "" ];then