debian/postinst: add checks, be verbose

Do not attempt to change permissions/ownership if the package gets
upgraded from a version higher than the next release.

Do not fail if the user deleted the config file.

Be verbose when changing permissions.

Related: OS#4107
Change-Id: I8994759df644d6edd8f937051b95690537b749be
diff --git a/debian/postinst b/debian/postinst
index faecd26..6c99b1f 100755
--- a/debian/postinst
+++ b/debian/postinst
@@ -16,12 +16,20 @@
 		fi
 
 		# Fix permissions of previous (root-owned) install (OS#4107)
-		chown osmocom:osmocom /etc/osmocom/osmo-smlc.cfg
-		chmod 0660 /etc/osmocom/osmo-smlc.cfg
-		chown root:osmocom /etc/osmocom
-		chmod 2775 /etc/osmocom
-		mkdir -p /var/lib/osmocom
-		chown -R osmocom:osmocom /var/lib/osmocom
+		if dpkg --compare-versions "$2" le "0.3.0"; then
+			if [ -e /etc/osmocom/osmo-smlc.cfg ]; then
+				chown -v osmocom:osmocom /etc/osmocom/osmo-smlc.cfg
+				chmod -v 0660 /etc/osmocom/osmo-smlc.cfg
+			fi
+
+			if [ -d /etc/osmocom ]; then
+				chown -v root:osmocom /etc/osmocom
+				chmod -v 2775 /etc/osmocom
+			fi
+
+			mkdir -p /var/lib/osmocom
+			chown -R -v osmocom:osmocom /var/lib/osmocom
+		fi
 		;;
 esac