aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHORS13
-rw-r--r--ChangeLog2
-rw-r--r--handlers/makecd.helper101
3 files changed, 109 insertions, 7 deletions
diff --git a/AUTHORS b/AUTHORS
index 5805e90..8b83569 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,16 +1,15 @@
BACKUPNINJA was written by the Riseup Collective: intellectual property is theft.
-Contributors:
+Ninjas:
-elijah@riseup.net -- original code
-micah@riseup.net -- debian package, vserver support
-stefani@riseup.net -- makecd handler
- -- pgsql handler
-intrigeri -- dup handler
+elijah@riseup.net -- original code, bug fixes, man pages
+micah@riseup.net -- debian package, vserver support, bug fixes
+stefani@riseup.net -- makecd handler, pgsql handler, man pages
+intrigeri -- dup handler, vserver support, bug fixes
Charles Lepple -- trac handler
+Petr Klíma -- autotools support
Patches:
-petr.klima@madeta-group.cz
cmccallum@thecsl.org
Daniel.Bonniot@inria.fr
diff --git a/ChangeLog b/ChangeLog
index afab88e..78c2a1c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,8 @@ version 0.9.1 -- unreleased
(thanks to Petr Klíma petr.klima@madeta-group.cz)
fixed many bugs in rdiff helper
rdiff handler does not require 'label' (for real this time?)
+ added makecd ninjahelper
+ (thanks to Stefani stefani@riseup.net)
version 0.9 -- October 19 2005
*** IMPORTANT CHANGE, UPGRADE AT ONCE ***
diff --git a/handlers/makecd.helper b/handlers/makecd.helper
new file mode 100644
index 0000000..822ffd1
--- /dev/null
+++ b/handlers/makecd.helper
@@ -0,0 +1,101 @@
+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"
+
+ #checkBox "makecd action wizard" "check options" \
+ # "isoonly" "only create iso image do not burn" yes
+ #status=$?
+ #[ $status = 1 ] && return;
+ #isoonly="isoonly = $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
+}
+