ajout fonction TestBorgRepo, du choix «ajouter un dépôt existant»
modification de la variable borg_archive : supression des secondes
This commit is contained in:
parent
5487c516e7
commit
89b4445b2c
@ -1,27 +1,57 @@
|
|||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
|
|
||||||
|
# Fonctions et variables
|
||||||
|
###########################################################
|
||||||
|
|
||||||
ZenityPulsate () {
|
ZenityPulsate () {
|
||||||
zenity $W --window-icon=$HOME/.icons/borg.svg --progress --pulsate --auto-close
|
zenity $W --window-icon=$HOME/.icons/borg.svg --progress --pulsate --auto-close
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TestBorgRepo () {
|
||||||
|
if [ ! -f "config" ]; then
|
||||||
|
TestBorgErr=1
|
||||||
|
infoerr=$(echo "Impossible de trouver le fichier de configuration du dépôt.")
|
||||||
|
zenity $W --error --text="$infoerr"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d "data" ]; then
|
||||||
|
TestBorgErr=1
|
||||||
|
infoerr=$(echo "Impossible de trouver le dossier des données du dépôt.")
|
||||||
|
zenity $W --error --text="$infoerr"
|
||||||
|
exit
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
||||||
W="--width=600"
|
W="--width=600"
|
||||||
H="--height=500"
|
H="--height=500"
|
||||||
|
|
||||||
dossierprofil="$HOME/.config/borg/profils-borg-zenity/"
|
dossierprofil="$HOME/.config/borg/profils-borg-zenity/"
|
||||||
cd $dossierprofil
|
cd $dossierprofil
|
||||||
|
|
||||||
# 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\n\
|
||||||
ap\nAfficher les profils\
|
ap\nAfficher les profils\
|
||||||
" | zenity $H $W --window-icon=$HOME/.icons/borg.svg --list \
|
" | zenity $H $W --window-icon=$HOME/.icons/borg.svg --list \
|
||||||
--column "id" --column "choix")
|
--column "id" --column "choix")
|
||||||
|
|
||||||
# gestion des choix du menu
|
# Gestion des choix du menu
|
||||||
|
###########################################################
|
||||||
|
|
||||||
|
### Créer un nouveau profil/dépôt ###
|
||||||
|
|
||||||
if [ "$choixmenu" = "cp" ];then
|
if [ "$choixmenu" = "cp" ];then
|
||||||
# Créer un nouveau profil/dépôt
|
|
||||||
borg_repo=$(zenity --file-selection --directory)
|
borg_repo=$(zenity --file-selection --directory)
|
||||||
if [ ! -z "$(ls -A $borg_repo)" ]; then
|
if [ ! -z "$(ls -A $borg_repo)" ]; then
|
||||||
zenity $W --error --text="Erreur, le dossier n'est pas vide."
|
zenity $W --error --text="Erreur, le dossier n'est pas vide."
|
||||||
@ -57,15 +87,42 @@ profilename=$(echo $vars | cut -d\| -f2)
|
|||||||
cat << EOF >> "$dossierprofil""$profilename".conf
|
cat << EOF >> "$dossierprofil""$profilename".conf
|
||||||
nomsauvegarde="$nomsauvegarde"
|
nomsauvegarde="$nomsauvegarde"
|
||||||
borg_repo="$borg_repo"
|
borg_repo="$borg_repo"
|
||||||
borg_archive="\$(date +%d_%B_%Y_%H-%M-%S)"
|
borg_archive="\$(date +%d_%B_%Y_%H-%M)"
|
||||||
borg_dir="$borg_dir"
|
borg_dir="$borg_dir"
|
||||||
borg_excludes=""
|
borg_excludes=""
|
||||||
borg_compress=""
|
borg_compress=""
|
||||||
dryrun=""
|
dryrun=""
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
### Ajouter un dépôt existant ###
|
||||||
|
|
||||||
|
elif [ "$choixmenu" = "ajd" ];then
|
||||||
|
|
||||||
|
borg_repo=$(zenity --title "Dossier du dépôt" --file-selection --directory)
|
||||||
|
borg_dir=$(zenity --title "Dossier à sauvegarder" --file-selection --directory)
|
||||||
|
|
||||||
|
vars=$(zenity --forms \
|
||||||
|
--text "Laisser les champs vides pour les options par défaut" \
|
||||||
|
--add-entry "Nom de sauvegarde" \
|
||||||
|
--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
|
||||||
|
nomsauvegarde="$nomsauvegarde"
|
||||||
|
borg_repo="$borg_repo"
|
||||||
|
borg_archive="\$(date +%d_%B_%Y_%H-%M)"
|
||||||
|
borg_dir="$borg_dir"
|
||||||
|
borg_excludes=""
|
||||||
|
borg_compress=""
|
||||||
|
dryrun=""
|
||||||
|
EOF
|
||||||
|
|
||||||
|
zenity $W --info --text "Le dépôt à bien été ajouté.\nLancez «Borg Zenity Sauvegarde» pour faire une sauvegarde."
|
||||||
|
|
||||||
|
### Afficher les profils ###
|
||||||
|
|
||||||
elif [ "$choixmenu" = "ap" ];then
|
elif [ "$choixmenu" = "ap" ];then
|
||||||
# Afficher les profils
|
|
||||||
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=$HOME/.icons/borg.svg --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>"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user