aboutsummaryrefslogtreecommitdiffstats
path: root/preseed-cfg
blob: b469682e70ca659471ad792aa9a25760ce900bbb (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
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-auto/method                          string  regular
	d-i partman-partitioning/default_label           string  gpt
	d-i partman-partitioning/confirm_write_new_label boolean true
	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/choose_partition    select  finish
	d-i partman/confirm             boolean true
	d-i partman/confirm_nooverwrite boolean true

	# 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 :