X-Git-Url: http://git.plutz.net/?p=blast;a=blobdiff_plain;f=modules%2Fdefault.mk;h=4cbc7eaa1d0a8f36bf6f14d28694089452e6f5c6;hp=71ec8640e5374537fe331a3e18dc762a4aa28b35;hb=4a83f36e36d09bfca93a9f3b2cb55e08d5d13169;hpb=03eac1ec61deb1546f93cfd8ba48635f83a61a94 diff --git a/modules/default.mk b/modules/default.mk index 71ec864..4cbc7ea 100644 --- a/modules/default.mk +++ b/modules/default.mk @@ -1,27 +1,87 @@ +ifdef imagesize +ROOT_MB := $(shell printf '%i\n' "$$(( ${imagesize} - ${BOOT_MB} - 3 ))") +endif + +PACKAGES := ${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 + ifdef packages -PACKAGES := ${PACKAGES} $(subst ${comma_},${space},${packages}) +PACKAGES := ${PACKAGES} $(subst ${comma_},${space_},${packages}) endif +export DEBCONF + +define DEBCONF := +keyboard-configuration keyboard-configuration/model select Generic 105-key (Intl) PC +keyboard-configuration keyboard-configuration/variant select English (US) - English (Macintosh) +endef + +.PHONY: _debconf_selections +_install: _debconf_selections +_debconf_selections: ${SYSROOT} + printf '%s\n' "$${DEBCONF}" |chroot "$${SYSROOT}" debconf-set-selections + +.PHONY: _timezone _locales + +ifdef timezone +define DEBCONF := +${DEBCONF} +tzdata tzdata/Areas select $(firstword $(subst /,${space_},${timezone})) +tzdata tzdata/Zones/Europe select $(lastword $(subst /,${space_},${timezone})) +endef +PACKAGES := ${PACKAGES} tzdata +_config: _timezone +endif + +ifdef locales +define DEBCONF := +${DEBCONF} +locales locales/locales_to_be_generated multiselect ${locales} +locales locales/default_environment_locale select $(firstword $(subst ${comma_},${space_},${locales})) +endef +#$(addsuffix ${space_}UTF-8,$(subst ${comma_},${space_}${comma},${locales})) +PACKAGES := ${PACKAGES} locales +_config: _locales +endif + +_timezone: ${CFGROOT} + rm "$${CFGROOT}/etc/timezone" + chroot "$${CFGROOT}" dpkg-reconfigure --default-priority -u tzdata + +_locales: ${CFGROOT} + rm "$${CFGROOT}/etc/default/locale" "$${CFGROOT}/etc/locale.gen" + chroot "$${CFGROOT}" dpkg-reconfigure --default-priority -u locales + +.PHONY: _rootpass _users + ifdef rootpass export rootpass -.PHONY: _rootpass _config: _rootpass -_rootpass: ${CFGROOT} - chroot "$${CFGROOT}" usermod -p "$$(openssl passwd -salt "$$(($${RANDOM-0} + 10))" "$${rootpass}")" root endif -ifdef wifi -export wifi -_config: ${CFGROOT}/etc/network/interfaces.d/wifi +ifdef users +_config: _users +endif +_rootpass: ${CFGROOT} + chroot "$${CFGROOT}" usermod -p "$$(openssl passwd "$${rootpass}")" root + +_users: ${CFGROOT} + #sed -Ei 's;^SHELL=/bin/sh$$;SHELL=/bin/bash;;' "${CFGROOT}/etc/default/useradd" + for u in $(subst ${comma_},${space_},${users}); do \ + chroot "$${CFGROOT}" useradd -m -s /bin/bash -p "$$(openssl passwd "")" "$$u"; \ + done + +ifdef wifi ifdef wifipass -export wifipass +export wifi wifipass ${CFGROOT}/etc/network/interfaces.d/wifi: ${CFGROOT} printf 'auto wlan0\nallow-hotplug wlan0\n\niface wlan0 inet dhcp\n' >$@ printf ' wpa-ssid "%s"\n wpa-psk "%s"\n' "$$wifi" "$$wifipass" >>$@ else +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" >>$@ endif +_config: ${CFGROOT}/etc/network/interfaces.d/wifi endif