File: postinst

package info (click to toggle)
midiminder 1.0.1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 844 kB
  • sloc: cpp: 11,511; makefile: 86; sh: 45
file content (57 lines) | stat: -rwxr-xr-x 1,531 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/bin/sh
set -e


create_service_user() {
  adduser --system  --home /run/midiminder --gecos "midiminder daemon" \
          --no-create-home --disabled-password --ingroup audio \
          --quiet midiminder || true
}

suggest_package_removal() {
  if [ \
    "$(dpkg-query  --showformat='${db:Status-Status}' -W $1 2>/dev/null)" \
      = "installed" \
  ]; then
    echo "The older package $1 is installed. It provides a limited form"
    echo "of the functionality that midiminder provides. Consider removing it:"
    echo "    sudo apt uninstall $1"
  fi
}

stop_and_disable_service() {
  eval "was_${1}_active=0"
  if systemctl is-active --quiet $1.service 2>/dev/null; then
    eval "was_${1}_active=1"
    deb-systemd-invoke stop $1.service 2>/dev/null
    echo "$1.service was stopped"
  fi
  if deb-systemd-helper is-enabled --quiet $1.service 2>/dev/null; then
    deb-systemd-helper disable $1.service 2>/dev/null
    echo "$1.service was disabled"
  fi
}

advise_old_rules() {
  local oldrules
  oldrules=/etc/amidiminder.rules
  if [ $was_amidiminder_active -eq 1 ] && [ -f $oldrules ]; then
    echo "amidiminder's rules, $oldrules, can be loaded into midiminder."
    echo "If you wish to continue using those rules, run:"
    echo "    midiminder load $oldrules"
  fi
}

if [ "$1" = "configure" ]; then
  create_service_user

  suggest_package_removal amidiauto
  stop_and_disable_service amidiauto

  suggest_package_removal amidiminder
  stop_and_disable_service amidiminder

  advise_old_rules
fi

#DEBHELPER#