Skip to content

Instantly share code, notes, and snippets.

@lae
Created October 11, 2017 00:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lae/1da54fd1abd2a56fa51f57fdd27de370 to your computer and use it in GitHub Desktop.
Save lae/1da54fd1abd2a56fa51f57fdd27de370 to your computer and use it in GitHub Desktop.
debian/ubuntu drp preseed changes
{{if .ParamExists "operating-system-disk" -}}
d-i partman-auto/disk string {{.Param "operating-system-disk"}}
d-i grub-installer/choose_bootdev select {{.Param "operating-system-disk"}}
d-i grub-installer/bootdev string {{.Param "operating-system-disk"}}
{{else -}}
d-i partman-auto/disk string /dev/sda
d-i grub-installer/choose_bootdev select /dev/sda
d-i grub-installer/bootdev string /dev/sda
{{end -}}
d-i partman-auto/method string regular
d-i partman-auto/choose_recipe select boot-root
d-i partman-auto/expert_recipe string \
boot-root :: \
1 1 1 free \
$gptonly{ } \
$primary{ } \
$bios_boot{ } \
method{ biosgrub } . \
135 1000 135 ext2 \
$gptonly{ } \
$primary{ } \
method{ format } format{ } \
use_filesystem{ } \
filesystem{ ext2 } \
mountpoint{ /boot } . \
500 1000 -1 ext4 \
$gptonly{ } \
$primary{ } \
method{ format } format{ } \
use_filesystem{ } \
filesystem{ ext4 } \
mountpoint{ / } .
d-i grub-installer/only_debian boolean true
d-i partman-auto/disk string /dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf
d-i partman-auto/method string raid
d-i partman-auto/choose_recipe select multiraid
d-i partman-auto/expert_recipe string \
multiraid :: \
1 1 1 free \
$gptonly{ } \
$primary{ } \
$bios_boot{ } \
method{ biosgrub } . \
135 1000 135 raid \
$gptonly{ } \
$primary{ } \
method{ raid } . \
500 1000 -1 raid \
$gptonly{ } \
$primary{ } \
method{ raid } .
d-i partman-auto-raid/recipe string \
1 6 0 ext2 /boot /dev/sda2#/dev/sdb2#/dev/sdc2#/dev/sdd2#/dev/sde2#/dev/sdf2 . \
0 6 0 ext4 / /dev/sda3#/dev/sdb3#/dev/sdc3#/dev/sdd3#/dev/sde3#/dev/sdf3 .
d-i grub-installer/only_debian boolean true
d-i grub-installer/choose_bootdev select /dev/sda
d-i grub-installer/bootdev string /dev/sda
--- /tmp/ce-net-seed.tmpl 2017-10-10 17:03:19.016274407 -0700
+++ templates/labs-seed.tmpl 2017-10-10 17:03:22.632966150 -0700
@@ -1,4 +1,4 @@
-# Rebar seed file for Debian installs
+# Locale and Language Settings
d-i debian-installer/locale string en_US.UTF-8
d-i console-setup/ask_detect boolean false
d-i console-setup/layoutcode string us
@@ -8,74 +8,92 @@
d-i console-keymaps-at/keymap select American English
d-i debian-installer/keymap string us
d-i keyboard-configuration/toggle select No toggling
+
+# Serial Console
+d-i debian-installer/serial-console boolean true
+d-i finish-install/keep-consoles boolean true
+
+# Network Configuration
d-i netcfg/choose_interface select auto
d-i netcfg/dhcp_timeout string 120
d-i netcfg/get_hostname string {{.Machine.ShortName}}
+
+# Mirror Configuration
d-i mirror/country string manual
-{{if (eq "debian" .Env.OS.Family)}}
+{{if (eq "debian" .Env.OS.Family) -}}
d-i mirror/protocol string http
-d-i mirror/http/hostname string http.us.debian.org
+d-i mirror/http/hostname string <removed>
d-i mirror/http/directory string /debian
-{{else}}
-d-i mirror/http/hostname string archive.ubuntu.com
+d-i apt-setup/security_host string <removed>/debian-security
+{{else -}}
+d-i mirror/http/hostname string <removed>
d-i mirror/http/directory string /ubuntu
-{{end}}
+d-i apt-setup/security_host string <removed>/ubuntu
+{{end -}}
d-i mirror/http/proxy string
-d-i apt-setup/security_host string
-d-i apt-setup/security_path string
+
+# Clock
d-i clock-setup/utc boolean true
d-i time/zone string UTC
d-i clock-setup/ntp boolean false
-{{if .ParamExists "operating-system-disk"}}
-d-i partman-auto/disk string /dev/{{.Param "operating-system-disk"}}
-{{else}}
-d-i partman-auto/disk string /dev/sda
-{{end}}
-d-i partman-auto/method string lvm
-d-i partman-lvm/device_remove_lvm boolean true
-d-i partman-lvm/device_remove_lvm_span boolean true
+
+# Partitioner Label Default (GPT)
+d-i partman/choose_label string gpt
+d-i partman-basicfilesystems/choose_label string gpt
+d-i partman-partitioning/choose_label string gpt
+d-i partman/default_label string gpt
+d-i partman-basicfilesystems/default_label string gpt
+d-i partman-partitioning/default_label string gpt
+# Partitioner Prompt Confirmations
d-i partman-auto/purge_lvm_from_device boolean true
+d-i partman-md/confirm boolean true
d-i partman-md/device_remove_md boolean true
+d-i partman-md/confirm_nochanges boolean true
+d-i partman-md/confirm_nooverwrite boolean true
d-i partman-lvm/confirm boolean true
+d-i partman-lvm/device_remove_lvm boolean true
+d-i partman-lvm/device_remove_lvm_span boolean true
d-i partman-lvm/confirm_nochanges boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
-d-i partman-auto-lvm/guided_size string max
-d-i partman-auto-lvm/new_vg_name string {{.Machine.ShortName}}
-d-i partman-auto/choose_recipe select custom_lvm
d-i partman/confirm_write_new_label boolean true
+d-i partman-basicfilesystems/no_swap boolean false
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
-d-i partman/auto expert_recipe string \
- custom_lvm:: \
- 500 50 1024 free $iflabel{ gpt } $reusemethod{ } method{ efi } format{ } . \
- 128 50 256 ext2 $defaultignore{ } method{ format } format{ } use_filesystem{ } filesystem{ ext2 } mountpoint{ /boot } . \
- 10240 20 10240 ext4 $lvmok{ } mountpoint{ / } lv_name{ root } in_vg{ {{.Machine.ShortName}} } method{ format } format{ } use_filesystem{ } filesystem{ ext4 } . \
- 50% 20 100% linux-swap $lvmok{ } lv_name{ swap } in_vg{ {{.Machine.ShortName}} } method{ swap } format{ } .
-{{if (and (eq "ubuntu" .Env.OS.Family) (lt "12.10" .Env.OS.Version))}}
+
+{{if .ParamExists "part-scheme" -}}
+{{$templateName := (printf "part-seed-%s.tmpl" (.Param "part-scheme")) -}}
+{{.CallTemplate $templateName .}}
+{{else -}}
+{{template "part-seed-default.tmpl" .}}
+{{end -}}
+
+{{if (and (eq "ubuntu" .Env.OS.Family) (lt "12.10" .Env.OS.Version)) -}}
d-i live-installer/net-image string {{.Env.InstallUrl}}/install/filesystem.squashfs
-{{end}}
-d-i passwd/user-fullname string {{if .ParamExists "provisioner-default-user"}}{{.Param "provisioner-default-user"}}{{else}}rocketskates{{end}}
-d-i passwd/username string {{if .ParamExists "provisioner-default-user"}}{{.Param "provisioner-default-user"}}{{else}}rocketskates{{end}}
-d-i passwd/user-password-crypted password {{if .ParamExists "provisioner-default-password-hash"}}{{.Param "provisioner-default-password-hash"}}{{else}}$6$drprocksdrprocks$upAIK9ynEEdFmaxJ5j0QRvwmIu2ruJa1A1XB7GZjrnYYXXyNr4qF9FttxMda2j.cmh.TSiLgn4B/7z0iSHkDC1{{end}}
+{{end -}}
+
+# Default User Setup
+d-i passwd/make-user boolean true
+d-i passwd/user-uid string {{if .ParamExists "default-user-uid"}}{{.Param "default-user-uid"}}{{else}}<removed>{{end}}
+d-i passwd/user-fullname string {{if .ParamExists "default-user-fullname"}}{{.Param "default-user-fullname"}}{{else if .ParamExists "default-user"}}{{.Param "default-user"}}{{else}}FireEye Labs Operations{{end}}
+d-i passwd/username string {{if .ParamExists "default-user"}}{{.Param "default-user"}}{{else}}<removed>{{end}}
+d-i passwd/user-password-crypted password {{if .ParamExists "default-user-password-hash"}}{{.Param "default-user-password-hash"}}{{else}}<removed>{end}}
d-i user-setup/allow-password-weak boolean true
d-i user-setup/encrypt-home boolean false
+
d-i debian-installer/allow_unauthenticated string true
-tasksel tasksel/first multiselect ubuntu-standard, openssh-server
-d-i pkgsel/include string openssh-server curl efibootmgr
+popularity-contest popularity-contest/participate boolean false
+tasksel tasksel/first multiselect standard, server
+d-i pkgsel/include string openssh-server efibootmgr lsb-release ntp curl wget python
d-i pkgsel/update-policy select none
-d-i grub-installer/only_debian boolean true
-{{if (not (and (eq "debian" .Env.OS.Family) (gt "7" .Env.OS.Version)))}}
-{{if .ParamExists "operating-system-disk"}}
-d-i grub-installer/choose_bootdev select /dev/{{.Param "operating-system-disk"}}
-d-i grub-installer/bootdev string /dev/{{.Param "operating-system-disk"}}
-{{else}}
-d-i grub-installer/choose_bootdev select /dev/sda
-d-i grub-installer/bootdev string /dev/sda
-{{end}}
-{{end}}
+
+{{if .ParamExists "kernel-console"}}d-i debian-installer/add-kernel-opts string {{.Param "kernel-console"}}{{end}}
+# Completion questions
+d-i cdrom-detect/eject boolean false
d-i finish-install/reboot_in_progress note
+
xserver-xorg xserver-xorg/autodetect_monitor boolean true
xserver-xorg xserver-xorg/config/monitor/selection-method select medium
xserver-xorg xserver-xorg/config/monitor/mode-list select 1024x768 @ 60 Hz
-d-i preseed/late_command string wget {{.Machine.Url}}/post-install.sh -O /target/net-post-install.sh ; chmod +x /target/net-post-install.sh ; /target/net-post-install.sh
+
+d-i preseed/late_command string wget {{.Machine.Url}}/post-install.sh -O /target/labs-post-install.sh; chmod +x /target/labs-post-install.sh; /target/labs-post-install.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment