X-Git-Url: http://git.plutz.net/?a=blobdiff_plain;f=modules%2Fdefault.mk;h=ec3f2f43caabb1f4ba97585d42fd1452bf845ee8;hb=HEAD;hp=7719ce4d484bc33423df543240e745650491a820;hpb=9b41121078e861ebef38cd8d3659b88d73cb206a;p=blast diff --git a/modules/default.mk b/modules/default.mk index 7719ce4..0957d2b 100644 --- a/modules/default.mk +++ b/modules/default.mk @@ -2,7 +2,7 @@ ifdef imagesize ROOT_MB := $(shell printf '%i\n' "$$(( ${imagesize} - ${BOOT_MB} - 3 ))") endif -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 +PACKAGES += btrfs-progs bzip2 ca-certificates cron dnsutils file firmware-linux-free gzip htop ifupdown iputils-ping irqbalance isc-dhcp-client less make net-tools nmap ntpdate openssh-client pciutils psmisc rsync sshfs sudo traceroute unzip vim wget wireless-tools wpasupplicant xz-utils zip ifdef packages PACKAGES += $(subst ${comma_},${space_},${packages}) @@ -15,12 +15,19 @@ ${DEBCONF} keyboard-configuration keyboard-configuration/model select Generic 105-key (Intl) PC keyboard-configuration keyboard-configuration/variant select English (US) - English (Macintosh) + +console-setup console-setup/charmap47 select UTF-8 +console-setup console-setup/codeset47 select # Latin1 and Latin5 - western Europe and Turkic languages endef +ifndef rpivmem + rpivmem := 128 +endif + define RPICONFIG := ${RPICONFIG} -dtoverlay=vc4-fkms-v3d,cma-256 +dtoverlay=vc4-fkms-v3d,cma-${rpivmem} endef .PHONY: _debconf_selections _raspberry_config _keyboard @@ -35,11 +42,19 @@ _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 @@ -92,7 +107,7 @@ ${rootkey}.pub: [ -f "$@" ] || ssh-keygen -N '' -f "$${rootkey}" _rootkey: ${CFGROOT} ${rootkey}.pub - mkdir -m 700 "$${CFGROOT}/root/.ssh/" + mkdir -pm 700 "$${CFGROOT}/root/.ssh/" cp "$${rootkey}.pub" "$${CFGROOT}/root/.ssh/authorized_keys" _users: ${CFGROOT} @@ -102,7 +117,17 @@ _users: ${CFGROOT} _hostname: ${CFGROOT} printf '%s\n' "$${hostname}" >"$${CFGROOT}/etc/hostname" - sed -Ei "s;^127\.0\.0\.1.*$$;\1 $${hostname};" "$${CFGROOT}/etc/hosts" + sed -Ei "s;^127\.0\.0\.1.*$$;& $${hostname};" "$${CFGROOT}/etc/hosts" + +_timeouts: ${CFGROOT} + printf '%s\n' DefaultTimeoutStartSec=10s DefaultTimeoutStopSec=10s >>"${CFGROOT}/etc/systemd/system.conf" + + +.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 @@ -115,6 +140,36 @@ ifdef 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 + +.PHONY: _fstab + +ifdef _fstab + _config: ${CFGROOT}/etc/fstab + export _fstab + +else + ifdef fsuuid + define _fstab := +UUID=${fsuuid} / btrfs auto,rw,subvol=${release} 0 0 +UUID=${fsuuid} /home btrfs auto,nofail,rw,subvol=home 0 0 +UUID=${fsuuid} /mnt/fsroot btrfs auto,nofail,rw 0 0 +LABEL=SWAP swap swap auto,nofail,sw 0 0 +LABEL=EFIBOOT /boot/efi vfat auto,nofail,ro 0 0 +endef + _config: ${CFGROOT}/etc/fstab + export _fstab + + endif +endif + +${CFGROOT}/etc/fstab: ${CFGROOT} + printf '%s' "$${_fstab}" >"$@" + + +_config: ${CFGROOT}/etc/sysctl.d/quiet_console + +${CFGROOT}/etc/sysctl.d/quiet_console: ${CFGROOT} + printf '%s\n' "kernel.printk=3 4 1 7" >"$@"