
So I was wrong.. /etc/issue needs to contain the escape sequence output by setterm, not the actual call to setterm itself. My previous testing of this was faulty, which led me to believe the previous implementation of this would work.
71 lines
2.2 KiB
Bash
71 lines
2.2 KiB
Bash
#!/bin/sh
|
|
|
|
. /etc/deviceinfo
|
|
|
|
# Enable udev OpenRC services and runlevels
|
|
# https://github.com/alpinelinux/aports/blob/master/main/eudev/setup-udev
|
|
setup-udev -n
|
|
|
|
# Enable other OpenRC services
|
|
for service in devfs dmesg; do
|
|
rc-update -q add $service sysinit
|
|
done
|
|
for service in hwclock modules sysctl hostname bootmisc swclock syslog; do
|
|
rc-update -q add $service boot
|
|
done
|
|
for service in dbus haveged sshd swapfile wpa_supplicant; do
|
|
rc-update -q add $service default
|
|
done
|
|
for service in mount-ro killprocs savecache; do
|
|
rc-update -q add $service shutdown
|
|
done
|
|
if [ "${deviceinfo_msm_refresher}" = "true" ]; then
|
|
rc-update -q add msm-fb-refresher boot
|
|
fi
|
|
|
|
# Add user account
|
|
adduser -u 1000 -D -h /home/user -G users user 2>/dev/null
|
|
|
|
write_unless_modified() {
|
|
# Redirect the stdin to the file unless it has been modified
|
|
# $1: file path
|
|
if ! apk audit "$(dirname "$1")" | grep -q "${1:1}"; then
|
|
cat > "$1"
|
|
fi
|
|
}
|
|
|
|
# Install /etc/fstab
|
|
{
|
|
echo '# <file system> <mount point> <type> <options> <dump> <pass>'
|
|
echo 'LABEL="pmOS_root" / ext4 relatime,data=ordered 0 1'
|
|
echo 'LABEL="pmOS_boot" /boot auto defaults 0 2'
|
|
} | write_unless_modified /etc/fstab
|
|
# Set /etc/issue
|
|
{
|
|
echo 'Welcome to postmarketOS'
|
|
echo 'Kernel \r on an \m (\l)'
|
|
# setterm -powersave on -blank 5
|
|
echo -ne "\033[9;5]"
|
|
} | write_unless_modified /etc/issue
|
|
# Set /etc/motd
|
|
{
|
|
echo 'Welcome to postmarketOS!'
|
|
echo ''
|
|
echo 'This distribution is based on Alpine Linux.'
|
|
echo 'Read both our wikis to find a large amount of how-to guides and'
|
|
echo 'general information about administrating and development.'
|
|
echo 'See <https://wiki.postmarketos.org> and <https://wiki.alpinelinux.org>.'
|
|
echo ''
|
|
echo 'You may change this message by editing /etc/motd.'
|
|
echo ''
|
|
} | write_unless_modified /etc/motd
|
|
|
|
# Enable syslog to SHM. Note: size is 4048KiB, which *should* be More Than Enough(TM) for all but the most chattiest of devices.
|
|
sed s/=\"/=\""-C4048 "/ -i /etc/conf.d/syslog
|
|
|
|
# Enable wext, nl80211 & dbus control for wpa_supplicant
|
|
if ! grep -q Dwext /etc/conf.d/wpa_supplicant; then
|
|
sed -i 's/wpa_supplicant_args=\"/wpa_supplicant_args=\" -u -Dwext,nl80211/' /etc/conf.d/wpa_supplicant
|
|
fi
|
|
touch /etc/wpa_supplicant/wpa_supplicant.conf
|
|
|