mirror of
https://0xacab.org/liberate/backupninja.git
synced 2024-11-13 22:32:29 +01:00
78884142e7
The modelines added match the emacs lines already present and also set the filetype to sh (just like the emacs lines).
99 lines
2.1 KiB
Bash
99 lines
2.1 KiB
Bash
# -*- mode: sh; sh-basic-offset: 3; indent-tabs-mode: nil; -*-
|
|
# vim: set filetype=sh sw=3 sts=3 expandtab autoindent:
|
|
|
|
HELPERS="$HELPERS makecd:makecd_backup"
|
|
wizardname="makecd action wizard"
|
|
|
|
declare -a makecd_excludes
|
|
|
|
makecd_wizard() {
|
|
|
|
inputBox "$wizardname" "specify a burner type cd or dvd:"
|
|
[ $? = 1 ] && return
|
|
burnertype="burnertype = $REPLY"
|
|
|
|
booleanBox "$wizardname" "Make iso image only? or burn"
|
|
if [ $? = 0 ]; then
|
|
isoonly="isoonly = yes"
|
|
else
|
|
isoonly="isoonly = no"
|
|
fi
|
|
|
|
# backupdir
|
|
inputBox "$wizardname" "Directory where to store the backups:"
|
|
[ $? = 1 ] && return
|
|
backupdir="backupdir = $REPLY"
|
|
|
|
inputBox "$wizardname" "what name to give to the image file?"
|
|
[ $? = 1 ] && return
|
|
imagefile="imagefile = $REPLY"
|
|
|
|
inputBox "$wizardname" "specify a burner device:"
|
|
[ $? = 1 ] && return
|
|
device="device = $REPLY"
|
|
|
|
# target - root of system to be included
|
|
inputBox "$wizardname" "root of filesystem for burn:"
|
|
[ $? = 1 ] && return
|
|
target="target = $REPLY"
|
|
|
|
|
|
# excludes
|
|
|
|
formBegin "$wizardname: excludes"
|
|
for ((i=0; i < ${#makecd_excludes[@]} ; i++)); do
|
|
formItem exclude ${makecd_excludes[$i]}
|
|
done
|
|
formItem exclude
|
|
formItem exclude
|
|
formItem exclude
|
|
formItem exclude
|
|
formItem exclude
|
|
formItem exclude
|
|
formItem exclude
|
|
formItem exclude
|
|
formItem exclude
|
|
formDisplay
|
|
[ $? = 1 ] && return;
|
|
|
|
unset makecd_excludes
|
|
makecd_excludes=($REPLY)
|
|
|
|
get_next_filename $configdirectory/20.makecd
|
|
cat >> $next_filename <<EOF
|
|
|
|
# TYP is cd or dvd AS WELL AS the disk inside!!
|
|
$burnertype
|
|
|
|
# not yet supported
|
|
system = no
|
|
|
|
# iso or burn to cd/dvd?
|
|
$isoonly
|
|
|
|
# location for image file
|
|
$backupdir
|
|
|
|
# image filename
|
|
$imagefile
|
|
|
|
# cd/dvd burner device
|
|
$device
|
|
|
|
# dirs/files to include in the backup
|
|
$target
|
|
|
|
# directories/files to be excluded
|
|
# exclude = /proc
|
|
# exclude = /sys
|
|
# exclude = /dev
|
|
EOF
|
|
|
|
for ((j=0; j < ${#makecd_excludes[@]} ; j++)); do
|
|
echo "exclude = ${makecd_excludes[$j]}" >> $next_filename
|
|
done
|
|
|
|
chmod 600 $next_filename
|
|
}
|
|
|