3909b1dbf6
See pmbootstrap!2304
60 lines
2.7 KiB
Bash
60 lines
2.7 KiB
Bash
#!/bin/sh
|
|
# WARNING: do not symlink this file to postmarketos-base.post-install!
|
|
# Otherwise it will enable services, as listed in that file. And we don't want
|
|
# this to happen during upgrade, especially not automatically enabling the sshd
|
|
# service! (build.postmarketos.org#85)
|
|
|
|
# The old version of the package is passed in as the second argument
|
|
OLD_VER="$2"
|
|
NEW_VER="$1"
|
|
old_ver_less() {
|
|
[ "$OLD_VER" != "$1" -a "$(echo -e "$1\n$OLD_VER" | sort -V | head -n1)" = "$OLD_VER" ]
|
|
}
|
|
|
|
# postmarketos-base version 30 moved us to logbookd but we forgot to disable
|
|
# syslog... The easiest way to solve this is to just do the upgrade again, sorry
|
|
# to anyone who manually disabled logbookd again...
|
|
if old_ver_less "31-r1"; then
|
|
echo "## postmarketos-base migrating to logbookd ##"
|
|
echo "## The initial upgrade didn't disable syslog, we're doing that now ##"
|
|
echo "## If you want to keep using syslog, undo the following changes ##"
|
|
set -x
|
|
rc-update add logbookd boot
|
|
rc-update del syslog boot
|
|
set +x
|
|
fi
|
|
|
|
# Fixup old pmOS installations that run setup-timezone without "-i" option
|
|
# and those later installations that run with it, but have missing
|
|
# https://gitlab.alpinelinux.org/alpine/alpine-conf/-/merge_requests/157
|
|
# See https://gitlab.com/postmarketOS/pmaports/-/issues/2168 for context
|
|
# This is probably safe to remove after a couple of releases of the alpine-conf
|
|
# fix having been merged
|
|
[ -L /etc/localtime ] || exit 0
|
|
localtime="$(readlink /etc/localtime)"
|
|
restart="yes"
|
|
case "$localtime" in
|
|
//usr/share/zoneinfo/*) localtime=${localtime#/*} ;;
|
|
//etc/zoneinfo*) localtime="/usr/share/zoneinfo/${localtime#//etc/zoneinfo/*}" ;;
|
|
/etc/zoneinfo/*) localtime="/usr/share/zoneinfo/${localtime#/etc/zoneinfo/*}" ;;
|
|
*) restart="no" ;;
|
|
esac
|
|
ln -sf "$localtime" /etc/localtime
|
|
rm -rf /etc/zoneinfo
|
|
[ "$restart" = "yes" ] && service -qq openrc-settingsd restart
|
|
|
|
# Fixup old pmOS /etc/fstab installations that had too little options,
|
|
# had a wrong type for fat32 and fat16, and missed some options for vfat when
|
|
# kernels did not use default configs. See pmb!2304
|
|
# This should be safe to remove after some releases, probably v25.06
|
|
sed -i -e "s% /boot \(fat32\|fat16\) defaults 0 0$% /boot vfat umask=0077,nodev,nosuid,noexec,nosymfollow,codepage=437,iocharset=ascii 0 0%g" /etc/fstab
|
|
sed -i -e "s% /boot ext2 defaults 0 0$% /boot ext2 nodev,nosuid,noexec 0 0%g" /etc/fstab
|
|
|
|
# To turn zram-init into a no-op, set: deviceinfo_zram_swap_pct="0"
|
|
rc-update -q add zram-init default
|
|
# We once enabled tmpfs in default, when it needs bootmisc: pma#2473
|
|
rc-update -qq del tmpfs default || true
|
|
# To disable mounting /tmp as tmpfs deviceinfo_tmp_as_tmpfs_size="0"
|
|
rc-update -q add tmpfs boot
|
|
|
|
exit 0
|