X-Git-Url: https://git.grml.org/?p=grml-debootstrap.git;a=blobdiff_plain;f=cmdlineopts.clp;h=1696d9c55f3d336374fa5038d6299bb34f7ba3fc;hp=9ab44dceed5ab3cabff25c733f8d7ffdc303cc84;hb=02a476bff510c88e30d7e8a6ae5e3fbcde31599d;hpb=4a23a7e330057cfe52f01b12b31cb775c5d23d9c diff --git a/cmdlineopts.clp b/cmdlineopts.clp index 9ab44dc..1696d9c 100644 --- a/cmdlineopts.clp +++ b/cmdlineopts.clp @@ -1,5 +1,5 @@ # -*- shell-script -*- -# Filename: grml-debootstrap.clp +# Filename: cmdlineopts.clp # Purpose: shell script command line parameter-processing for grml-debootstrap # Authors: grml-team (grml.org), Tong Sun # Bug-Reports: see http://grml.org/bugs/ @@ -12,9 +12,11 @@ # should be handled in the main script, where it belongs. ################################################################################ +CMDLINE_OPTS=mirror:,iso:,release:,target:,mntpoint:,debopt:,defaultinterfaces,interactive,nodebootstrap,nointerfaces,nokernel,nopackages,filesystem:,config:,confdir:,packages:,chroot-scripts:,scripts:,pre-scripts:,debconf:,vm,vmfile,vmsize:,keep_src_list,hostname:,password:,nopassword,grmlrepos,backportrepos,bootappend:,grub:,arch:,insecure,verbose,help,version,force,debug,contrib,non-free + _opt_temp=`getopt --name grml-debootstrap -o +m:i:r:t:p:c:d:vhV --long \ - mirror:,iso:,release:,target:,mntpoint:,debopt:,interactive,nodebootstrap,config:,confdir:,packages::,chroot-scripts::,scripts::,debconf::,keep_src_list,hostname:,password:,bootappend:,groot:,grub:,verbose,help,version \ - -- "$@"` + $CMDLINE_OPTS -- "$@"` + if [ $? != 0 ]; then eerror "Try 'grml-debootstrap --help' for more information."; eend 1; exit 1 fi @@ -24,85 +26,138 @@ while :; do case "$1" in # == Bootstrap options - --mirror|-m) # Mirror which should be used for apt-get/aptitude. + --mirror|-m) # Mirror which should be used for apt-get/aptitude shift; _opt_mirror="$1" ;; - --iso|-i) # Mountpoint where a Debian ISO is mounted to, for use instead + --iso|-i) # Mountpoint where a Debian ISO is mounted to shift; _opt_iso="$1" ;; - --release|-r) # Release of new Debian system (default: stable). + --release|-r) # Release of new Debian system shift; _opt_release="$1" ;; - --target|-t) # Target partition (/dev/...) or directory. + --target|-t) # Target partition (/dev/...) or directory shift; _opt_target="$1" ;; - --mntpoint|-p) # Mountpoint used for mounting the target system. + --vm) # Virtual machine image (no file) + _opt_vm="T" + ;; + --vmfile) # Virtual machine file + _opt_vmfile="T" + ;; + --vmsize) # size of Virtual machine file + shift; _opt_vmsize="$1" + ;; + --mntpoint|-p) # Mountpoint used for mounting the target system shift; _opt_mntpoint="$1" ;; - --debopt) # Extra parameters passed to the debootstrap. + --debopt) # Extra parameters passed to the debootstrap command shift; _opt_debopt="$1" ;; - --interactive) # Use interactive mode (frontend). + --filesystem) # Filesystem that should be used + shift; _opt_filesystem="$1" + ;; + --interactive) # Use interactive mode (frontend) _opt_interactive=T ;; - --nodebootstrap) # Skip debootstrap, only do configuration to the target. + --nodebootstrap) # Skip debootstrap, only do configuration to the target _opt_nodebootstrap=T ;; + --nopackages) # Skip installation of packages defined in /etc/debootstrap/packages + _opt_nopackages=T + ;; + --arch) # Target architecutre + shift; _opt_arch="$1" + ;; + # just for backwards compatibility + --insecure) + _opt_insecure=T + ;; # # == Configuration options - --config|-c) # Use specified configuration file, defaults to /etc/debootstr + --config|-c) # Use specified configuration file, defaults to /etc/debootstrap shift; _opt_config="$1" ;; - --confdir|-d) # Place of config files for debootstrap, defaults to /etc/debo + --confdir|-d) # Place of config files for debootstrap, defaults to /etc/debootstrap shift; _opt_confdir="$1" ;; - --packages) # Install packages defined in /packages. Option arg: + --packages) # Install packages defined in specified file shift; _opt_packages="$1" _opt_packages_set=T ;; - --debconf) # Pre-seed packages using /debconf-selections. Option + --debconf) # Pre-seed packages using specified file shift; _opt_debconf="$1" _opt_debconf_set=T ;; - --scripts) # Execute scripts from /scripts/. Option + --pre-scripts) # Execute scripts from specified directory (before chroot-scripts). + shift; _opt_pre_scripts="$1" + _opt_pre_scripts_set=T + ;; + --scripts) # Execute scripts from specified directory shift; _opt_scripts="$1" _opt_scripts_set=T ;; - --chroot-scripts) # Execute scripts from /chroot-scripts/. Option - shift; _opt_chroot_scripts_set="$1" + --chroot-scripts) # Execute chroot scripts from specified directory + shift; _opt_chroot_scripts="$1" _opt_chroot_scripts_set=T ;; - --keep_src_list) # Do not overwrite user provided apt sources.list. + --keep_src_list) # Do not overwrite user provided apt sources.list _opt_keep_src_list=T ;; - --hostname) # Hostname of Debian system. + --hostname) # Hostname of Debian system shift; _opt_hostname="$1" ;; - --password) # Use specified password as password for user root. + --password) # Use specified password as password for user root shift; _opt_password="$1" ;; - --bootappend) # Add specified appendline to kernel whilst booting. - shift; _opt_bootappend="$1" + --defaultinterfaces) # Install default /etc/network/interfaces + _opt_defaultinterfaces=T ;; - --groot) # Root device for usage in grub, corresponds with $TARGET in g - shift; _opt_groot="$1" + --nointerfaces) # Skip installation of /etc/network/interfaces + _opt_nointerfaces=T + ;; + --nokernel) # Skip installation of default kernel images + _opt_nokernel=T + ;; + --nopassword) # Skip password dialog + _opt_nopassword=T + ;; + --grmlrepos) # Enable Grml repository + _opt_grmlrepos=T + ;; + --backportrepos) # Enable Debian backports repository + _opt_backportrepos=T + ;; + --bootappend) # Add specified appendline to kernel whilst booting + shift; _opt_bootappend="$1" ;; --grub) # Target for grub installation. Use grub syntax for specifying shift; _opt_grub="$1" ;; + --contrib) # Add 'contrib' to list of components + _opt_contrib=T + ;; + --non-free) # Add 'non-free' to list of components + _opt_non_free=T + ;; # == Other options - --verbose|-v) # Increase verbosity. + --verbose|-v) # Increase verbosity if [ "$_opt_verbose" ]; then _opt_verbose=`expr $_opt_verbose + 1` else _opt_verbose=1; fi ;; - --help|-h) # Print this usage information and exit. + --debug) # Execute in debug mode + _opt_debug=T + ;; + --help|-h) # Print usage information and exit _opt_help=T ;; - --version|-V) # Show summary of options and exit. + --version|-V) # Show version information and exit _opt_version=T ;; + --force) # Do not prompt for user input + _opt_force=T + ;; --) shift; break ;;