diff options
Diffstat (limited to 'abs/core/openssh/install')
-rw-r--r-- | abs/core/openssh/install | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/abs/core/openssh/install b/abs/core/openssh/install new file mode 100644 index 0000000..47c1e77 --- /dev/null +++ b/abs/core/openssh/install @@ -0,0 +1,32 @@ +pre_upgrade() { + # Remove socket activation. See: https://bugs.archlinux.org/task/62248 + if (( $(vercmp $2 8.0p1-3) < 0 )); then + if systemctl is-enabled -q sshd.socket; then + cat <<EOF +==> This package no longer provides sshd.socket and sshd@.service; +==> copies of those files will be placed under /etc/systemd/system +==> but please migrate to sshd.service whenever possible. +EOF + src=/usr/lib/systemd/system + dst=/etc/systemd/system + for i in sshd.socket sshd\@.service; do + if [[ ! -e "$dst/$i" ]]; then + cp -v "$src/$i" "$dst/$i" + fi + done + systemctl reenable sshd.socket + fi + fi +} + +post_upgrade() { + if (( $(vercmp $2 8.2p1-3) < 0 )); then + if systemctl is-active sshd.service >/dev/null; then + cat <<EOF +==> After this upgrade, your existing SSH daemon may be unable to accept +==> new connections. To fix this, your SSH daemon will now be restarted. +EOF + systemctl restart sshd.service + fi + fi +} |