summarylogtreecommitdiffstats
path: root/asd.install
diff options
context:
space:
mode:
Diffstat (limited to 'asd.install')
-rw-r--r--asd.install65
1 files changed, 19 insertions, 46 deletions
diff --git a/asd.install b/asd.install
index 71cb86943d7a..ade2c84eb7f0 100644
--- a/asd.install
+++ b/asd.install
@@ -1,23 +1,21 @@
-DAEMON_FILE="/run/asd"
+## arg 1: the new package version
+## arg 2: the old package version
-pre_upgrade() {
- ## arg 1: the new package version
- ## arg 2: the old package version
- oldpkgver=${2%-*}
+_stopit() {
+ systemctl is-active asd.service &>/dev/null
+ if [ $? -eq 0 ]; then
+ echo '--> Pacman must stop asd before it can upgrade.'
+ echo '--> Please start it manually once the upgrade is complete.'
+ systemctl stop asd.service &>/dev/null
+ fi
+}
- if [[ $oldpkgver < 5.69 ]]; then
- if [ -e $DAEMON_FILE ]; then
- if ! systemd-notify --booted; then # not using systemd
- echo '--> Pacman must stop asd before it can upgrade.'
- echo '--> Please start it manually once the upgrade is complete.'
- /etc/rc.d/asd stop
- else
- echo '--> Pacman must stop asd before it can upgrade.'
- echo '--> Please start it manually once the upgrade is complete.'
- /usr/bin/systemctl stop asd
- fi
+pre_upgrade() {
+ for version in 5.69 5.76; do
+ if [ $(vercmp $2 $version) -lt 0 ]; then
+ _stopit
fi
- fi
+ done
}
post_install() {
@@ -30,35 +28,10 @@ post_install() {
echo '--------------------------------------------------------------------------'
}
-post_upgrade() {
- ## arg 1: the new package version
- ## arg 2: the old package version
- oldpkgver=${2%-*}
- #newpkgver=${1%-*}
-
- if [[ $oldpkgver < 3.13 ]]; then
- echo '-------------------------------------------------------------------'
- echo ' Support for cron has been deprecated in favor of a systemd timer.'
- echo ' This package now provides both asd.service and asd-resync.service'
- echo
- echo ' systemctl enable asd asd-resync'
- echo ' systemctl start asd asd-resync'
- echo
- echo ' See the wiki or man page for more info.'
- echo '-------------------------------------------------------------------'
- else
- /bin/true
- fi
-}
-
pre_remove() {
- if [ -e $DAEMON_FILE ]; then
- if ! systemd-notify --booted; then # not using systemd
- echo '--> Automatically stopping asd to rotate data back out of tmpfs.'
- /etc/rc.d/asd stop
- else
- echo '--> Automatically stopping asd to rotate data back out of tmpfs.'
- /usr/bin/systemctl stop asd
- fi
+ systemctl is-active asd.service &>/dev/null
+ if [ $? -eq 0 ]; then
+ echo '--> In order to preserve your data, pacman will now stop asd.'
+ systemctl stop asd.service &>/dev/null
fi
}