Rename grml-debootstrap.clp to cmdlineopts.clp
[grml-debootstrap.git] / cmdlineopts.clp
1 # -*- shell-script -*-
2 # Filename:      grml-debootstrap.clp
3 # Purpose:       shell script command line parameter-processing for grml-debootstrap
4 # Authors:       grml-team (grml.org), Tong Sun <suntong@cpan.org>
5 # Bug-Reports:   see http://grml.org/bugs/
6 # License:       This file is licensed under the GPL v2 or any later version.
7 ################################################################################
8 # @WARNING: Do NOT modify this file without prior contacting the author.
9 # This script is use for the command line *logic* processing. It should be
10 # as dumb as possible. I.e., it should NOT be more complicated than
11 # copy-paste-and-rename from existing code. All *business-logic* processing
12 # should be handled in the main script, where it belongs.
13 ################################################################################
14
15 _opt_temp=`getopt --name grml-debootstrap -o +m:i:r:t:p:c:d:vhV --long \
16     mirror:,iso:,release:,target:,mntpoint:,debopt:,interactive,nodebootstrap,config:,confdir:,packages::,debconf::,keep_src_list,hostname:,password:,bootappend:,groot:,grub:,verbose,help,version \
17   -- "$@"`
18 if [ $? != 0 ]; then
19   eerror "Try 'grml-debootstrap --help' for more information."; eend 1; exit 1
20 fi
21 eval set -- "$_opt_temp"
22
23 while :; do
24   case "$1" in
25
26   # == Bootstrap options
27   --mirror|-m)         # Mirror which should be used for apt-get/aptitude.
28     shift; _opt_mirror="$1"
29     ;;
30   --iso|-i)            # Mountpoint where a Debian ISO is mounted to, for use instead
31     shift; _opt_iso="$1"
32     ;;
33   --release|-r)        # Release of new Debian system (default: stable).
34     shift; _opt_release="$1"
35     ;;
36   --target|-t)         # Target partition (/dev/...) or directory.
37     shift; _opt_target="$1"
38     ;;
39   --mntpoint|-p)       # Mountpoint used for mounting the target system.
40     shift; _opt_mntpoint="$1"
41     ;;
42   --debopt)            # Extra parameters passed to the debootstrap.
43     shift; _opt_debopt="$1"
44     ;;
45   --interactive)       # Use interactive mode (frontend).
46     _opt_interactive=T
47     ;;
48   --nodebootstrap)     # Skip debootstrap, only do configuration to the target.
49     _opt_nodebootstrap=T
50     ;;
51   #
52
53   # == Configuration options
54   --config|-c)         # Use specified configuration file, defaults to /etc/debootstr
55     shift; _opt_config="$1"
56     ;;
57   --confdir|-d)        # Place of config files for debootstrap, defaults to /etc/debo
58     shift; _opt_confdir="$1"
59     ;;
60   --packages)          # Install packages defined in <confdir>/packages. Option arg:
61     shift; _opt_packages="$1"
62     _opt_packages_set=T
63     ;;
64   --debconf)           # Pre-seed packages using <confdir>/debconf-selections. Option
65     shift; _opt_debconf="$1"
66     _opt_debconf_set=T
67     ;;
68   --keep_src_list)     # Do not overwrite user provided apt sources.list.
69     _opt_keep_src_list=T
70     ;;
71   --hostname)          # Hostname of Debian system.
72     shift; _opt_hostname="$1"
73     ;;
74   --password)          # Use specified password as password for user root.
75     shift; _opt_password="$1"
76     ;;
77   #
78   --bootappend)        # Add specified appendline to kernel whilst booting.
79     shift; _opt_bootappend="$1"
80     ;;
81   --groot)             # Root device for usage in grub, corresponds with $TARGET in g
82     shift; _opt_groot="$1"
83     ;;
84   --grub)              # Target for grub installation. Use grub syntax for specifying
85     shift; _opt_grub="$1"
86     ;;
87
88   # == Other options
89   --verbose|-v)        # Increase verbosity.
90     if [ "$_opt_verbose" ]; then _opt_verbose=`expr $_opt_verbose + 1`
91     else _opt_verbose=1; fi
92     ;;
93   --help|-h)           # Print this usage information and exit.
94     _opt_help=T
95     ;;
96   --version|-V)        # Show summary of options and exit.
97     _opt_version=T
98     ;;
99   --)
100     shift; break
101     ;;
102   *)
103     eerror "Internal getopt error!"; eend 1 ; exit 1
104     ;;
105   esac
106   shift
107 done
108
109 ## END OF FILE #################################################################