aboutsummaryrefslogtreecommitdiffstats
path: root/preseed-cfg
blob: fe75e4cc5d90bb6e001d075f41ab69f4fb123a20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
cat <<- EOF
	# Network
	ethdetect ethdetect/module_select select virtio_net
	d-i netcfg/choose_interface select auto
	d-i netcfg/get_hostname    string ${VM_NAME-debian}
	d-i netcfg/get_domain      string documentfoundation.org

	# Localization
	d-i debian-installer/locale           string en_US.UTF-8
	d-i keyboard-configuration/xkb-keymap string

	# Clock and time zone setup
	d-i clock-setup/utc boolean true
	d-i clock-setup/ntp boolean true
	d-i clock-setup/ntp-server string 0.de.pool.ntp.org
	d-i time/zone string Europe/Berlin

	# Partitioning, see
	# https://anonscm.debian.org/cgit/d-i/debian-installer.git/tree/doc/devel/partman-auto-recipe.txt
	d-i partman-partitioning/default_label           string  gpt
	d-i partman-partitioning/confirm_write_new_label boolean true
	d-i partman/choose_partition    select  finish
	d-i partman/confirm             boolean true
	d-i partman/confirm_nooverwrite boolean true

	d-i partman-auto/method string regular
	d-i partman-auto/expert_recipe string root ::       \\
	        500 10000 -1 ext4                           \\
	            \$primary{ }                            \\
	            method{ format } format{ }              \\
	            use_filesystem{ } filesystem{ ext4 }    \\
	            mountpoint{ / }                         \\
	        .                                           \\
	        4096 1 4096 linux-swap                      \\
	            \$primary{ }                            \\
	            method{ swap } format{ }                \\
	        .

	#d-i partman-auto/method             string lvm
	#d-i partman-lvm/device_remove_lvm   boolean true
	#d-i partman-lvm/confirm             boolean true
	#d-i partman-lvm/confirm_nooverwrite boolean true
	#d-i partman-auto/expert_recipe string root ::       \\
	#        128 1 256 ext2                              \\
	#            \$primary{ }                            \\
	#            method{ format } format{ }              \\
	#            use_filesystem{ } filesystem{ ext2 }    \\
	#            mountpoint{ /boot }                     \\
	#        .                                           \\
	#        500 10000 -1 pv                             \\
	#            \$primary{ }                            \\
	#            method{ lvm } \$defaultignore{ }        \\
	#        .                                           \\
	#        500 10000 -1 ext4                           \\
	#            \$lvmok{ }                              \\
	#            method{ format } format{ }              \\
	#            use_filesystem{ } filesystem{ ext4 }    \\
	#            mountpoint{ / }                         \\
	#        .                                           \\
	#        4096 1 4096 linux-swap                      \\
	#            \$lvmok{ }                              \\
	#            method{ swap } format{ }                \\
	#        .

	# Debian archive mirror
	d-i mirror/country        string manual
	d-i mirror/http/hostname  string ftp.de.debian.org
	d-i mirror/http/directory string /debian
	d-i mirror/http/proxy     string
	popularity-contest popularity-contest/participate boolean false

	# Use the latest kernel
	bootstrap-base base-installer/kernel/image select

	# The subset of 'standard' tasksel that's interesting, see output of
	# 'tasksel --task-packages standard'
	tasksel tasksel/first string
	d-i pkgsel/include string dbus git etckeeper \\
	                          qemu-guest-agent \\
	                          salt-minion openssh-server \\
	                          bash bash-completion \\
	                          bind9-host curl \\
	                          screen tmux \\
	                          emacs-nox vim-nox
	d-i pkgsel/upgrade select safe-upgrade

	d-i preseed/early_command string anna-install tdf-postinst-udeb
	d-i preseed/late_command  string in-target \\
	    update-alternatives --set editor /usr/bin/vim.nox

	# Install GRUB to the master boot record
	grub-installer grub-installer/bootdev     string  default
	grub-installer grub-installer/only_debian boolean true
	d-i debian-installer/add-kernel-opts      string  console=ttyS0

	# Avoid that last message about the install being complete
	finish-install finish-install/reboot_in_progress note

	# Poweroff the machine when finished (dont' reboot into the
	# installed system)
	d-i debian-installer/exit/poweroff boolean true

	# Hostname or ipv4 of the Salt master
	d-i tdf-postinst/salt_master string floyd.documentfoundation.org

	# Fingerprint of the master public key to validate the identity of
	# the Salt master before the initial key exchange
	d-i tdf-postinst/salt_master_fingerprint string 33:49:0d:84:98:5a:9d:93:89:a9:d1:c8:47:36:e8:83
EOF

if [ ${VM_NAME+x} ] && [ "${VM_NAME#vm}" != "$VM_NAME" ] &&
    [ "${VM_NAME#vm}" -gt 129 -a "${VM_NAME#vm}" -lt 256 ]; then
    cat <<- EOF
		d-i netcfg/disable_autoconfig boolean true
		d-i netcfg/get_ipaddress      string 89.238.68.${VM_NAME#vm}
		d-i netcfg/get_netmask        string 255.255.255.128
		d-i netcfg/get_gateway        string 89.238.68.129
		d-i netcfg/get_nameservers    string 217.11.48.200 217.11.49.200
		d-i netcfg/confirm_static     boolean true
	EOF
fi

# Account setup
echo 'user-setup-udeb passwd/shadow boolean true'
if [ "$USER_NAME" = root ]; then
    cat <<-EOF
		user-setup-udeb passwd/root-login            boolean  true
		user-setup-udeb passwd/root-password-crypted password $PASSWORD_CRYPTED
		user-setup-udeb passwd/make-user             boolean  false
	EOF
else
    cat <<-EOF
		user-setup-udeb passwd/root-login            boolean  false
		user-setup-udeb passwd/make-user             boolean  true
		user-setup-udeb passwd/user-fullname         string
		user-setup-udeb passwd/username              string   $USER_NAME
		user-setup-udeb passwd/user-password-crypted password $PASSWORD_CRYPTED
	EOF
fi

# vim: set filetype=sh :