--- /dev/null
+#_preseed_V1
+
+# "Choose language"
+# "Choose language"->"Select a language"->"Language:"
+d-i debian-installer/language string en
+# "Choose language"->"Select your location"->"Country, territory or area:"
+d-i debian-installer/country string US
+# "Choose language"->"Configure locales"->"Country to base default locale settings on:"
+d-i debian-installer/locale string en_US.UTF-8
+# "Choose language"->"Configure locales"->"Additional locales:"
+d-i localechooser/supported-locales multiselect
+
+# "Configure the keyboard"
+# "Configure the keyboard"->"Keymap to use:"
+d-i keyboard-configuration/xkb-keymap select us
+
+# "Detect and mount installation media"
+# "Load debconf preconfiguration file"
+# "Load installer components from installation media"
+# "Load installer components from installation media"->"Installer components to load:"
+d-i anna/choose_modules multiselect
+
+# "Detect network hardware"
+
+# "Configure the network"
+# "Configure the network"->"Waiting time (in seconds) for link detection:" (run once for each interface)
+d-i netcfg/link_wait_timeout string 3
+# # "Configure the network"->"Primary network interface:"
+d-i netcfg/choose_interface select auto
+# # "Configure the network"->"Wireless network:"
+d-i netcfg/wireless_show_essids select REPLACE_WITH_WIFI_ESSID
+### TODO: make expert installer skip the ESSID selection since we already know what we want, above attempt at least pre-selected the ESSID in the select list, following attempts helped nothing:
+###d-i netcfg/wireless_essid string REPLACE_WITH_WIFI_ESSID
+###d-i netcfg/wireless_essid seen true
+# "Configure the network"->"Wireless network type for wlp0s20f3:"
+d-i netcfg/wireless_security_type select wpa
+# "Configure the network"->"WPA/WPA2 passphrase for wireless device wlp0s20f3:"
+d-i netcfg/wireless_wpa string REPLACE_WITH_WIFI_PASSWORD
+# "Configure the network"->"Auto-configure networking?"
+d-i netcfg/use_autoconfig boolean true
+# "Configure the network"->"Waiting time (in seconds) for link detection:"
+# "Configure the network"->"Hostname:"
+d-i netcfg/get_hostname string unassigned-hostname
+# "Configure the network"->"Domain name:"
+d-i netcfg/get_domain string unassigned-domain
+
+# "Set up users and passwords"
+# "Set up users and passwords"->"Allow login as root?"
+d-i passwd/root-login boolean true
+# "Set up users and passwords"->"Root password:"
+d-i passwd/root-password password REPLACE_WITH_ROOT_PASSWORD
+# "Set up users and passwords"->"Re-enter password to verify:"
+d-i passwd/root-password-again password REPLACE_WITH_ROOT_PASSWORD
+# "Set up users and passwords"->"Create a normal user account now?"
+user-setup-udeb passwd/make-user boolean false
+
+# "Configure the clock"->"Set the clock using NTP?"
+d-i clock-setup/ntp boolean false
+# "Configure the clock"->"Select your time zone:"
+d-i time/zone select UTC
+
+# "Detect disks"
+
+# "Partition disks"
+# "Partition disks"->"Partitioning method:"
+d-i partman-auto/init_automatically_partition select 70some_device_crypto__________crypto
+# "Partition disks"->"Select disk to partition:"
+### TODO: find how to skip this screen, following attempts failed:
+###d-i partman-auto/disk string /dev/nvme0n1p3
+###d-i partman-auto/disk string /dev/nvme0n1
+###d-i partman-auto/select_disk select /var/lib/partman/devices/=dev=nvme0n1
+# "Partition disks"->"Partitioning scheme:"
+d-i partman-auto/choose_recipe select custom-crypto
+d-i partman-auto/expert_recipe string custom-crypto :: \
+538 538 1075 free \
+ $iflabel{ gpt } \
+ $reusemethod{ } \
+ method{ efi } \
+ format{ } . \
+512 512 768 ext2 \
+ $defaultignore{ } \
+ method{ format } \
+ format{ } \
+ use_filesystem{ } \
+ filesystem{ ext2 } \
+ mountpoint{ /boot } . \
+900 10000 -1 $default_filesystem \
+ $lvmok{ } \
+ $lv_name{ root } \
+ method{ format } \
+ format{ } \
+ use_filesystem{ } \
+ $default_filesystem{ } \
+ mountpoint{ / } . \
+48000 48000 48000 linux-swap \
+ $lvmok{ } \
+ $lv_name{ swap } \
+ $reusemethod{ } \
+ method{ swap } \
+ format{ } .
+# "Partition disks"->"Write the changes to disks and configure LVM?"
+d-i partman-lvm/confirm boolean true
+# "Partition disks"->"Erasing data on /dev/nvme0n1p3"
+d-i partman-auto-crypto/erase_disks boolean false
+# "Partition disks"->"Encryption passphrase:"
+# "Partition disks"->"Re-enter passphrase to verify:"
+# "Partition disks"->"Name of the volume group for the new system:"
+d-i partman-auto-lvm/new_vg_name string plomvg
+# "Partition disks"->"Amount of volume group to use for guided partitioning:"
+d-i partman-auto-lvm/guided_size string max
+# "Partition disks"/"This is an overview of your currently configured partitions and …"
+### TODO: find whatever auto-selects "Finish partitioning and write changes to disk"
+# "Partition disks"/"Write the changes to disks?"
+d-i partman/confirm boolean true
+
+# "Install the base system"
+# "Install the base system"->"Kernel to install:"
+d-i base-installer/kernel/image string linux-image-amd64
+# "Install the base system"->"Drivers to include in the initrd:"
+d-i base-installer/initramfs-tools/driver-policy most
+
+d-i base-installer/install-recommends boolean false
+
+# "Configure the package manager"
+# "Configure the package manager"->"Use a network mirror?"
+d-i apt-setup/use_mirror boolean true
+# "Configure the package manager"->"Protocol for file downloads:"
+d-i mirror/protocol string http
+# "Configure the package manager"->"Debian archive mirror country:"
+d-i mirror/http/countries select US
+# "Configure the package manager"->"Debian archive mirror:"
+d-i mirror/http/mirror select deb.debian.org
+# "Configure the package manager"->"HTTP proxy information (blank for none):"
+d-i mirror/http/proxy string
+# "Configure the package manager"->"Use non-free firmware?"
+d-i apt-setup/non-free-firmware boolean true
+# "Configure the package manager"->"Use non-free software?"
+d-i apt-setup/non-free boolean true
+# "Configure the package manager"->"Enable source repositories in APT?"
+d-i apt-setup/enable-source-repositories true
+# "Configure the package manager"->"Services to use:"
+d-i apt-setup/services-select multiselect security, updates
+#d-i mirror/http/countries seen true
+#d-i apt-setup/contrib boolean true
+
+# "Select and install software"
+# "Configuring discover"->"Updates management on this system:"
+d-i pkgsel/update-policy select No automatic updates
+# "Configuring popularity-contest"->"Participate in the package usage survey?"
+d-i popularity-contest/participate boolean false
+# "Software selection":"Choose software to install:"
+d-i pkgsel/run_tasksel boolean false
+d-i pkgsel/upgrade select none
+
+# "Install the GRUB boot loader"
+# "Install the GRUB boot loader"->"Force GRUB installation to the EFI removable media path?"
+d-i grub-installer/force-efi-extra-removable false
+# "Install the GRUB boot loader"->"Update NVRAM variables to automatically boot into Debian?"
+d-i grub-installer/update-nvram true
+# "Install the GRUB boot loader"->"Run os-prober automatically to detect and booth other OSes?"
+d-i grub-installer/enable_os_prober_otheros_no false
+
+# "Finish the installation"
+# "Finish the installation"->"Is the system clock set to UTC?"
+clock-setup clock-setup/utc boolean true
+# "Finish the installation"->"Please choose <Continue> to reboot."
+d-i finish-install/reboot_in_progress note
+
+# config script
+d-i pkgsel/include string git,ca-certificates
+d-i preseed/late_command string apt-install git vim ack && in-target git clone https://plomlompom.com/repos/clone/config /root/config && echo -e '#!/usr/bin/env dash\nset -e\nif [ -z "$1" ]; then\n echo "need user password as argument"\n exit 1\nfi\nconfig/trixie/scripts/setup_desktop.sh t490s "$1"\nconfig/trixie/scripts/setup_secrets.sh sda' > /target/root/run.sh && chmod a+x /target/root/run.sh