@@ -1,7 +1,8 @@ | |||||
debian_mirror: http://deb.debian.org/debian | debian_mirror: http://deb.debian.org/debian | ||||
debian_security_mirror: http://security.debian.org/debian-security | |||||
live_build_serial_console: false | live_build_serial_console: false | ||||
live_build_bootappend_live: boot=live components quiet {{ live_build_serial_console | ternary('console=ttyS0','') }} hostname={{ live_build_hostname }} | |||||
live_build_bootappend_live: boot=live components quiet {{ live_build_serial_console | ternary('console=ttyS0','') }} hostname={{ live_build_hostname }} locales=de_DE.UTF-8 timezone=Europe/Berlin keyboard-layouts=de | |||||
live_build_hostname: "{{ inventory_hostname }}" | live_build_hostname: "{{ inventory_hostname }}" | ||||
live_build_distribution: stretch | live_build_distribution: stretch |
@@ -36,35 +36,20 @@ | |||||
chdir: "{{ live_build_directory }}" | chdir: "{{ live_build_directory }}" | ||||
- name: root user | - name: root user | ||||
include_role: | |||||
import_role: | |||||
name: root_user | name: root_user | ||||
vars: | vars: | ||||
root_target_directory: "{{ live_build_directory }}/config/includes.chroot/" | root_target_directory: "{{ live_build_directory }}/config/includes.chroot/" | ||||
- name: keyboard configuration | |||||
include_role: | |||||
name: keyboard_configuration | |||||
vars: | |||||
root_target_directory: "{{ live_build_directory }}/config/includes.chroot/" | |||||
when: live_build_serial_console == false | |||||
- name: include common packages | - name: include common packages | ||||
template: | template: | ||||
src: common.list.chroot.j2 | src: common.list.chroot.j2 | ||||
dest: "{{ live_build_directory }}/config/package-lists/common.list.chroot" | dest: "{{ live_build_directory }}/config/package-lists/common.list.chroot" | ||||
- name: include console-setup package | |||||
copy: | |||||
content: console-setup | |||||
dest: "{{ live_build_directory }}/config/package-lists/console-setup.list.chroot" | |||||
when: live_build_serial_console == false | |||||
- name: resolvconf symlink | |||||
file: | |||||
src: /etc/resolvconf/run/resolv.conf | |||||
dest: "{{ live_build_directory }}/config/includes.chroot/etc/resolv.conf" | |||||
force: yes | |||||
state: link | |||||
- name: include desktop packages | |||||
template: | |||||
src: desktop.list.chroot.j2 | |||||
dest: "{{ live_build_directory }}/config/package-lists/desktop.list.chroot" | |||||
- name: include custom packages | - name: include custom packages | ||||
template: | template: | ||||
@@ -72,54 +57,48 @@ | |||||
dest: "{{ live_build_directory }}/config/package-lists/custom.list.chroot" | dest: "{{ live_build_directory }}/config/package-lists/custom.list.chroot" | ||||
when: live_build_custom_packages is defined | when: live_build_custom_packages is defined | ||||
- name: isolinx directory | |||||
- name: debian-installer installer includes directory | |||||
file: | file: | ||||
path: "{{ live_build_directory }}/config/includes.binary/isolinux" | |||||
path: "{{ live_build_directory }}/config/includes.installer" | |||||
state: directory | state: directory | ||||
- name: isolinux.cfg | |||||
- name: debian-installer preseed | |||||
template: | template: | ||||
src: isolinux.cfg.j2 | |||||
dest: "{{ live_build_directory }}/config/includes.binary/isolinux/isolinux.cfg" | |||||
src: preseed.cfg.j2 | |||||
dest: "{{ live_build_directory }}/config/includes.installer/preseed.cfg" | |||||
- name: lb bootstrap (first build stage) | - name: lb bootstrap (first build stage) | ||||
command: | |||||
lb bootstrap | |||||
command: lb bootstrap | |||||
args: | args: | ||||
chdir: "{{ live_build_directory }}" | chdir: "{{ live_build_directory }}" | ||||
register: _lb_bootstrap | register: _lb_bootstrap | ||||
- name: lb chroot (second build stage) | - name: lb chroot (second build stage) | ||||
command: | |||||
lb chroot | |||||
command: lb chroot | |||||
args: | args: | ||||
chdir: "{{ live_build_directory }}" | chdir: "{{ live_build_directory }}" | ||||
register: _lb_chroot | register: _lb_chroot | ||||
- name: lb installer (third build stage) | - name: lb installer (third build stage) | ||||
command: | |||||
lb installer | |||||
command: lb installer | |||||
args: | args: | ||||
chdir: "{{ live_build_directory }}" | chdir: "{{ live_build_directory }}" | ||||
register: _lb_installer | register: _lb_installer | ||||
- name: lb binary (fourth build stage) | - name: lb binary (fourth build stage) | ||||
command: | |||||
lb binary | |||||
command: lb binary | |||||
args: | args: | ||||
chdir: "{{ live_build_directory }}" | chdir: "{{ live_build_directory }}" | ||||
register: _lb_binary | register: _lb_binary | ||||
#- name: lb source (fifth build stage) | #- name: lb source (fifth build stage) | ||||
# command: | |||||
# lb source | |||||
# command: lb source | |||||
# args: | # args: | ||||
# chdir: "{{ live_source_directory }}" | # chdir: "{{ live_source_directory }}" | ||||
# register: _lb_source | # register: _lb_source | ||||
#- name: lb build | #- name: lb build | ||||
# command: | |||||
# lb build | |||||
# command: lb build | |||||
# args: | # args: | ||||
# chdir: "{{ live_build_directory }}" | # chdir: "{{ live_build_directory }}" | ||||
# register: _lb_build | # register: _lb_build | ||||
@@ -0,0 +1,3 @@ | |||||
{% for package in live_build_desktop_packages %} | |||||
{{ package }} | |||||
{% endfor %} |
@@ -1,5 +0,0 @@ | |||||
include live.cfg | |||||
default live-amd64 | |||||
{% if live_build_serial_console == true %} | |||||
serial 0 | |||||
{% endif %} |
@@ -1,17 +1,23 @@ | |||||
{% if live_build_distribution is defined %} | {% if live_build_distribution is defined %} | ||||
--distribution "{{ live_build_distribution }}" | --distribution "{{ live_build_distribution }}" | ||||
{% endif %} | {% endif %} | ||||
--mirror-bootstrap {{ debian_mirror }} | |||||
--mirror-binary {{ debian_mirror }} | |||||
--mirror-bootstrap "{{ debian_mirror }}" | |||||
--mirror-chroot-security "{{ debian_security_mirror }}" | |||||
--mirror-binary "{{ debian_mirror }}" | |||||
--mirror-binary-security "{{ debian_security_mirror }}" | |||||
{% if debian_nonfree_firmware %} | |||||
--firmware-chroot true | |||||
{% endif %} | |||||
{% if live_build_bootappend_live is defined %} | {% if live_build_bootappend_live is defined %} | ||||
--bootappend-live "{{ live_build_bootappend_live }}" | --bootappend-live "{{ live_build_bootappend_live }}" | ||||
{% endif %} | {% endif %} | ||||
{% if debian_security_mirror is defined %} | |||||
--mirror-binary-security "{{ debian_security_mirror }}" | |||||
{% if (debian_backports is defined) and (debian_backports == true) %} | |||||
--backports true | |||||
{% endif %} | {% endif %} | ||||
{% if debian_live_debian_installer is defined %} | {% if debian_live_debian_installer is defined %} | ||||
--debian-installer "{{ debian_live_debian_installer }}" | --debian-installer "{{ debian_live_debian_installer }}" | ||||
--debian-installer-gui false | |||||
{% if debian_nonfree_firmware %} | |||||
--firmware-binary true | |||||
{% endif %} | {% endif %} | ||||
{% if (debian_backports is defined) and (debian_backports == true) %} | |||||
--backports true | |||||
{% endif %} | {% endif %} |
@@ -0,0 +1,100 @@ | |||||
#### Contents of the preconfiguration file (for jessie) | |||||
### Localization | |||||
# Locale | |||||
d-i debian-installer/language string de | |||||
d-i debian-installer/country string DE | |||||
d-i debian-installer/locale string de_DE.UTF-8 | |||||
# Keyboard selection. | |||||
d-i keyboard-configuration/xkb-keymap select de | |||||
d-i keyboard-configuration/toggle select No toggling | |||||
### Network configuration | |||||
### Network console | |||||
### Hostname | |||||
{# | |||||
d-i netcfg/hostname string {{inventory_hostname}} | |||||
#} | |||||
### Mirror settings | |||||
d-i mirror/country string manual | |||||
d-i mirror/http/hostname string deb.debian.org | |||||
d-i mirror/http/directory string /debian | |||||
d-i mirror/http/proxy string | |||||
### Account setup | |||||
# Skip creation of a root account (normal user account will be able to | |||||
# use sudo). | |||||
d-i passwd/root-login boolean true | |||||
# Alternatively, to skip creation of a normal user account. | |||||
d-i passwd/make-user boolean false | |||||
# Root password | |||||
{% if root_password is defined %} | |||||
d-i passwd/root-password-crypted password {{ root_password }} | |||||
{% endif %} | |||||
### Clock and time zone setup | |||||
d-i clock-setup/utc boolean true | |||||
d-i time/zone string Europe/Berlin | |||||
d-i clock-setup/ntp boolean true | |||||
d-i clock-setup/ntp-server string 0.de.pool.ntp.org 1.de.pool.ntp.org 2.de.pool.ntp.org 3.de.pool.ntp.org | |||||
### Partitioning | |||||
## Controlling how partitions are mounted | |||||
# The default is to mount by UUID, but you can also choose "traditional" to | |||||
# use traditional device names, or "label" to try filesystem labels before | |||||
# falling back to UUIDs. | |||||
d-i partman/mount_style select uuid | |||||
d-i partman/default_filesystem string btrfs | |||||
### Apt setup | |||||
# You can choose to install non-free and contrib software. | |||||
d-i apt-setup/non-free boolean {{ debian_nonfree_firmware }} | |||||
d-i apt-setup/contrib boolean {{ debian_nonfree_firmware }} | |||||
d-i apt-setup/services-select multiselect security,updates | |||||
d-i apt-setup/security_host string security.debian.org | |||||
### Package selection | |||||
tasksel tasksel/first multiselect minimal | |||||
# Individual additional packages to install | |||||
d-i pkgsel/include string openssh-server python python-apt | |||||
# Whether to upgrade packages after debootstrap. | |||||
# Allowed values: none, safe-upgrade, full-upgrade | |||||
d-i pkgsel/upgrade select full-upgrade | |||||
# Some versions of the installer can report back on what software you have | |||||
# installed, and what software you use. The default is not to report back, | |||||
# but sending reports helps the project determine what software is most | |||||
# popular and include it on CDs. | |||||
popularity-contest popularity-contest/participate boolean false | |||||
### Boot loader installation | |||||
# This is fairly safe to set, it makes grub install automatically to the MBR | |||||
# if no other operating system is detected on the machine. | |||||
d-i grub-installer/only_debian boolean true | |||||
# This one makes grub-installer install to the MBR if it also finds some other | |||||
# OS, which is less safe as it might not be able to boot that other OS. | |||||
d-i grub-installer/with_other_os boolean true | |||||
### Finishing up the installation | |||||
# Avoid that last message about the install being complete. | |||||
d-i finish-install/reboot_in_progress note | |||||
### Running custom commands during the installation | |||||
d-i preseed/late_command string DIR=/target/root/.ssh; \ | |||||
mkdir -p $DIR; \ | |||||
chmod 700 $DIR; \ | |||||
{% if root_ssh_authorized_keys is defined %} | |||||
{% for key in root_ssh_authorized_keys %} | |||||
echo '{{key}}' >> $DIR/authorized_keys; \ | |||||
{% endfor %} | |||||
{% endif %} | |||||
echo ssh authorized keys configured |
@@ -55,3 +55,8 @@ live_build_common_packages: | |||||
- tcpdump | - tcpdump | ||||
- dnsutils | - dnsutils | ||||
- resolvconf | - resolvconf | ||||
live_build_desktop_packages: | |||||
- xfce4 | |||||
- i3 | |||||
- firefox-esr |