post_install() { local pkgver=${1%-*} getent group brscan-skey &> /dev/null || groupadd -g 289 brscan-skey getent passwd brscan-skey &> /dev/null || useradd -c "Brother scan-key-tool user" -u 289 -g brscan-skey -d /srv/brscan-skey -s /bin/false brscan-skey echo "Start automatically by running one of the following:" echo " # systemctl enable brscan-skey.service # System-wide" echo " $ systemctl --user enable brscan-skey.service # Per-user" } pre_upgrade() { local oldpkgverrel=$2 local oldpkgver=${2%-*} if (( $(vercmp $oldpkgver 0.2.3) < 0 )); then # Pre 0.2.3 /usr/local/Brother/sane/brscan-skey-${oldpkgver//_/-}.sh R elif (( $(vercmp $oldpkgverrel 0.2.4_1-7) <= 0 )); then # 0.2.4_1-7 and earlier pre_remove $oldpkgverrel # Deletes brscan-skey user and group which had wrong UID and GID fi if (( $(vercmp $oldpkgverrel 0.3.0) < 0 )); then # before 0.3.0 there were version specific install/uninstall scripts /opt/brother/scanner/brscan-skey/brscan-skey-${oldpkgver//_/-}.sh R fi } post_upgrade() { local newpkgverrel=$1 post_install $newpkgverrel } pre_remove() { local pkgver=${1%-*} systemctl daemon-reload systemctl --quiet is-active brscan-skey.service && systemctl stop brscan-skey.service getent passwd brscan-skey &> /dev/null && userdel brscan-skey getent group brscan-skey &> /dev/null && groupdel brscan-skey || true }