ifdef imagesize
-ROOT_MB := $(shell printf '%i\n' "$$(( ${imagesize} - ${BOOT_MB} - 3 ))")
+ 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
+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 += $(subst ${comma_},${space_},${packages})
endif
export DEBCONF
.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
+ export timezone
+ 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
+ PACKAGES += locales
+ _config: _locales
endif
_timezone: ${CFGROOT}
- rm "$${CFGROOT}/etc/timezone"
- chroot "$${CFGROOT}" dpkg-reconfigure --default-priority -u tzdata
+ printf '%s\n' "$${timezone}" >"$${CFGROOT}/etc/timezone"
+ ln -sf /usr/share/zoneinfo/"$${timezone}" "$${CFGROOT}/etc/localtime"
_locales: ${CFGROOT}
- rm "$${CFGROOT}/etc/default/locale" "$${CFGROOT}/etc/locale.gen"
- chroot "$${CFGROOT}" dpkg-reconfigure --default-priority -u locales
+ for l in $(subst ${comma_},${space_},${locales}); do \
+ printf '%s %s\n' "$${l}" "$${l#*.}"; \
+ done >"$${CFGROOT}/etc/locale.gen"
+ printf 'LANG=%s\n' "$(firstword $(subst ${comma_},${space_},${locales}))" >"$${CFGROOT}/etc/default/locale"
+ chroot "$${CFGROOT}" locale-gen
-.PHONY: _rootpass _users
+.PHONY: _rootpass _users _hostname
ifdef rootpass
-export rootpass
-_config: _rootpass
+ export rootpass
+ _config: _rootpass
endif
ifdef users
-_config: _users
+ _config: _users
+endif
+
+ifdef hostname
+ export hostname
+ _config: _hostname
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
+_hostname: ${CFGROOT}
+ printf '%s\n' "$${hostname}" "$${CFGROOT}/etc/hostname"
+
ifdef wifi
-ifdef wifipass
-export wifi wifipass
-${CFGROOT}/etc/network/interfaces.d/wifi: ${CFGROOT}
+ _config: ${CFGROOT}/etc/network/interfaces.d/wifi
+ ifdef 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}
+ 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
endif