postinst is in nut-server 2.6.3-1ubuntu1.1.
This file is a maintainer script. It is executed when installing (*inst) or removing (*rm) the package.
The actual contents of the file can be viewed below.
| 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 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | #!/bin/sh -e
case "$1" in
  configure)
    # make sure the nut user exists and has correct memberships
    if ! getent group nut >/dev/null; then
      addgroup --quiet --system nut
    fi
    if ! getent passwd nut >/dev/null; then
      adduser --quiet --system --ingroup nut --home /var/lib/nut --no-create-home nut
    elif ! groups nut | grep -qw nut; then
      adduser nut nut
    fi
# for Ubuntu, while waiting for a proper debconf
    if ! groups nut | grep -qw dialout; then
      adduser nut dialout
    fi
    # make sure that conffiles are secured and have the correct ownerships
    if [ -d /etc/nut/ ] ; then
      chown root:nut /etc/nut/
    fi
    for file in nut.conf ups.conf upsd.conf upsmon.conf upsd.users upssched.conf ; do
        if [ -f /etc/nut/$file ] ; then
            chown root:nut /etc/nut/$file
            chmod 640 /etc/nut/$file
        fi
    done
    # make sure that /var/run/nut exists and has the correct ownerships
    if [ ! -d /var/run/nut ] ; then
        mkdir -p /var/run/nut
    fi
    if [ -d /var/run/nut ] ; then
        chown root:nut /var/run/nut
        chmod 770 /var/run/nut
    fi
    # make sure that /var/lib/nut has the correct permissions and ownerships
    if [ -d /var/lib/nut ] ; then
        chown root:nut /var/lib/nut
        chmod 770 /var/lib/nut
    fi
    # ask udev to check for new udev rules
    [ -x /etc/init.d/udev ] && pidof udevd > /dev/null \
      && udevadm trigger --subsystem-match=usb --action=change
    # 557178  udevadm trigger --subsystem-match=usb
    # migrate /etc/default/nut to /etc/nut/nut.conf (part #2)
    if dpkg --compare-versions "$2" lt-nl "2.4.1-2" ; then
      # source the temporary /etc/default/nut.bak file
      if [ -f /etc/default/nut.bak ] ; then
        . /etc/default/nut.bak
        # FIXME: use a template (and debconf to output?)
        echo "migrating /etc/default/nut to /etc/nut/nut.conf"
        # pre process the config
        case "$START_UPSD" in
          y|Y|yes|YES|Yes)
            START_UPSD=yes
            ;;
          *)
            START_UPSD=no
            ;;
        esac
        case "$START_UPSMON" in
          y|Y|yes|YES|Yes)
            START_UPSMON=yes
            ;;
          *)
            START_UPSMON=no
            ;;
        esac
        # now process the result
        if [ "x$START_UPSD" = "xyes" ] ; then
          if [ "x$START_UPSMON" = "xyes" ] ; then
            # can also be netserver
            NUT_MODE=standalone
          #else not processed since it should be an error!
          fi
        else
          if [ "x$START_UPSMON" = "xyes" ] ; then
            NUT_MODE=netclient
          else
            NUT_MODE=none
          fi
        fi
        # output back the MODE to nut.conf
        sed "s/^MODE\(.*\)/MODE=$NUT_MODE/" /etc/nut/nut.conf  > /etc/nut/nut.conf.new
        # append the content of default, removing START_* / start...
        grep -iv 'START' /etc/default/nut.bak >> /etc/nut/nut.conf.new
        # move back to nut.conf
        mv /etc/nut/nut.conf.new /etc/nut/nut.conf
        # and to init.d/nut
        #if [ -f /etc/init.d/nut ] ; then
        #  sed "s/^UPSD_OPTIONS\(.*\)/UPSD_OPTIONS=\"$UPSD_OPTIONS\"/" /etc/init.d/nut  > /etc/init.d/nut.new
        #  sed "s/^UPSMON_OPTIONS\(.*\)/UPSMON_OPTIONS=\"$UPSMON_OPTIONS\"/" /etc/init.d/nut.new  > /etc/init.d/nut
        #fi
        rm -f /etc/default/nut.bak /etc/default/nut
      fi
    else
      # re process nut.conf MODE so that it can be sourced
      NUT_MODE=`grep -e '^ *MODE' /etc/nut/nut.conf | tr -d " "`
      sed "s/^ *MODE.*/$NUT_MODE/" /etc/nut/nut.conf > /etc/nut/nut.conf.new
      mv /etc/nut/nut.conf.new /etc/nut/nut.conf
    fi
    ;;
  abort-upgrade)
    # do nothing
    ;;
  abort-remove)
    # do nothing
    ;;
  abort-deconfigure)
    # do nothing
    ;;
  *)
    echo "$0: incorrect arguments: $*" >&2
    exit 1
    ;;
esac
# Automatically added by dh_installinit
if [ -x "/etc/init.d/nut" ]; then
	if [ ! -e "/etc/init/nut.conf" ]; then
		update-rc.d nut start 50 2 3 4 5 . stop 50 0 1 6 . >/dev/null
	fi
	invoke-rc.d nut start || exit $?
fi
# End automatically added section
 |