ROOT_MB := $(shell printf '%i\n' "$$(( ${imagesize} - ${BOOT_MB} - 3 ))")
endif
-PACKAGES += btrfs-tools bzip2 ca-certificates cron deborphan firmware-linux-free gzip htop ifupdown iputils-ping irqbalance isc-dhcp-client less make net-tools nmap ntpdate openssh-client psmisc rsync sshfs sudo traceroute unzip vim wget wireless-tools wpasupplicant xz-utils zip
+PACKAGES += btrfs-progs bzip2 ca-certificates cron deborphan firmware-linux-free gzip htop ifupdown iputils-ping irqbalance isc-dhcp-client less make net-tools nmap ntpdate openssh-client psmisc rsync sshfs sudo traceroute unzip vim wget wireless-tools wpasupplicant xz-utils zip
ifdef packages
PACKAGES += $(subst ${comma_},${space_},${packages})
keyboard-configuration keyboard-configuration/variant select English (US) - English (Macintosh)
endef
+ifndef rpivmem
+ rpivmem := 128
+endif
+
define RPICONFIG :=
${RPICONFIG}
-dtoverlay=vc4-fkms-v3d,cma-128
+dtoverlay=vc4-fkms-v3d,cma-${rpivmem}
endef
-.PHONY: _debconf_selections _raspberry_config
+.PHONY: _debconf_selections _raspberry_config _keyboard
_install: _debconf_selections
_debconf_selections: ${SYSROOT}
printf '%s\n' "$${DEBCONF}" |chroot "$${SYSROOT}" debconf-set-selections
+ifdef keyboard
+ _config: _keyboard
+endif
+_keyboard: ${CFGROOT}
+ -sed -Ei 's;^XKBLAYOUT=.*$$;XKBLAYOUT="${keyboard}";;' "$${CFGROOT}/etc/default/keyboard"
+
ifdef raspi
- _config: _raspberry_config
+ _config: _raspberry_config _raspberry_initrd
endif
+
_raspberry_config: ${CFGROOT}
printf '%s\n' "$${RPICONFIG}" >>"$${CFGROOT}/boot/config.txt"
+_raspberry_initrd: ${CFGROOT}
+ printf '${fstype}\n' >>"$${CFGROOT}/etc/initramfs-tools/modules"
+ k="$$(printf '%s\n' "$${CFGROOT}"/lib/modules/* |sed 's;^.*/;;; /-/d')"; \
+ [ "${kernel}" ] && k="${kernel}"; \
+ chroot $${CFGROOT} update-initramfs -c -k "$${k##*/}"; \
+ printf 'initramfs initrd.img-%s\n' "$${k##*/}" >>"$${CFGROOT}/boot/config.txt"
+
.PHONY: _timezone _locales
ifdef timezone
chroot "$${CFGROOT}" usermod -p "$$(openssl passwd "$${rootpass}")" root
${rootkey}.pub:
- ssh-keygen -N '' -f "$${rootkey}"
+ [ -f "$@" ] || ssh-keygen -N '' -f "$${rootkey}"
_rootkey: ${CFGROOT} ${rootkey}.pub
mkdir -m 700 "$${CFGROOT}/root/.ssh/"
_hostname: ${CFGROOT}
printf '%s\n' "$${hostname}" >"$${CFGROOT}/etc/hostname"
+ sed -Ei "s;^127\.0\.0\.1.*$$;& $${hostname};" "$${CFGROOT}/etc/hosts"
+
+.PHONY: _systemd_timeout
+_config: _systemd_timeout
+_systemd_timeout: ${CFGROOT}
+ mkdir -p "$${CFGROOT}/etc/systemd"
+ printf 'DefaultTimeout%sSec=%s\n' Start 10s Stop 10s >>"$${CFGROOT}/etc/systemd/system.conf"
ifdef wifi
_config: ${CFGROOT}/etc/network/interfaces.d/wifi
export wifi
${CFGROOT}/etc/network/interfaces.d/wifi: ${CFGROOT}
printf 'auto wlan0\nallow-hotplug wlan0\n\niface wlan0 inet dhcp\n' >$@
- printf ' wireless-ssid "%s"\n' "$$wifi" >>$@
+ printf ' wireless-essid "%s"\n' "$$wifi" >>$@
endif
endif