Add a vim modeline with indentation settings.
[matthijs/upstream/backupninja.git] / handlers / makecd.helper.in
1 # -*- mode: sh; sh-basic-offset: 3; indent-tabs-mode: nil; -*-
2 # vim: set filetype=sh sw=3 sts=3 expandtab autoindent:
3
4 HELPERS="$HELPERS makecd:makecd_backup"
5 wizardname="makecd action wizard"
6
7 declare -a makecd_excludes
8
9 makecd_wizard() {
10
11    inputBox "$wizardname" "specify a burner type cd or dvd:"
12    [ $? = 1 ] && return
13    burnertype="burnertype = $REPLY"
14
15    booleanBox "$wizardname" "Make iso image only? or burn"
16    if [ $? = 0 ]; then
17       isoonly="isoonly = yes"
18    else
19       isoonly="isoonly = no"
20    fi
21
22    # backupdir
23    inputBox "$wizardname" "Directory where to store the backups:"
24    [ $? = 1 ] && return
25    backupdir="backupdir = $REPLY"
26
27    inputBox "$wizardname" "what name to give to the image file?"
28    [ $? = 1 ] && return
29    imagefile="imagefile = $REPLY"
30
31    inputBox "$wizardname" "specify a burner device:"
32    [ $? = 1 ] && return
33    device="device = $REPLY"
34
35    # target - root of system to be included
36    inputBox "$wizardname" "root of filesystem for burn:"
37    [ $? = 1 ] && return
38    target="target = $REPLY"
39
40
41     # excludes
42
43    formBegin "$wizardname: excludes"
44       for ((i=0; i < ${#makecd_excludes[@]} ; i++)); do
45          formItem exclude ${makecd_excludes[$i]}
46       done
47       formItem exclude
48       formItem exclude
49       formItem exclude
50       formItem exclude
51       formItem exclude
52       formItem exclude
53       formItem exclude
54       formItem exclude
55       formItem exclude
56    formDisplay
57    [ $? = 1 ] && return;
58
59    unset makecd_excludes
60    makecd_excludes=($REPLY)
61
62    get_next_filename $configdirectory/20.makecd
63    cat >> $next_filename <<EOF
64
65 # TYP is cd or dvd AS WELL AS the disk inside!!
66 $burnertype
67
68 # not yet supported
69 system = no
70
71 # iso or burn to cd/dvd?
72 $isoonly
73
74 # location for image file
75 $backupdir
76
77 # image filename
78 $imagefile
79
80 # cd/dvd burner device
81 $device
82
83 # dirs/files to include in the backup
84 $target
85
86 # directories/files to be excluded
87 # exclude = /proc
88 # exclude = /sys
89 # exclude = /dev
90 EOF
91
92    for ((j=0; j < ${#makecd_excludes[@]} ; j++)); do
93       echo "exclude = ${makecd_excludes[$j]}" >> $next_filename
94    done
95
96    chmod 600 $next_filename
97 }
98