summaryrefslogtreecommitdiff
path: root/debian/postinst
diff options
context:
space:
mode:
Diffstat (limited to 'debian/postinst')
-rw-r--r--debian/postinst30
1 files changed, 17 insertions, 13 deletions
diff --git a/debian/postinst b/debian/postinst
index 55a36b0..80d208c 100644
--- a/debian/postinst
+++ b/debian/postinst
@@ -5,19 +5,23 @@ set -e
case "$1" in
configure)
- # Restart IBus if it is running
- ! ibuspid=`ps -C ibus-daemon -o pid=|head -n 1`
-
- if [ "x$ibuspid" != "x" ]; then
- # check for gnome-shell as it works differently
- ! gspid=`ps -C gnome-shell -o pid=|head -n 1`
- if [ "x$gspid" != "x" ]; then
- # gnome-shell has multiple ibus-daemon processes and needs exit instead of restart
- ibususer=`ps -C ibus-daemon -o user=|grep -v gdm|uniq`
- sudo -H -u "$ibususer" ibus exit
- else
- ibususer=`ps -C ibus-daemon -o user=`
- sudo -H -u "$ibususer" ibus restart
+ # if don't have sudo and ps then don't attempt to restart ibus
+ if [ -x /usr/bin/sudo ] && [ -x /bin/ps ]; then
+
+ # Restart IBus if it is running
+ ! ibuspid=`ps -C ibus-daemon -o pid=|head -n 1`
+
+ if [ "x$ibuspid" != "x" ]; then
+ # check for gnome-shell as it works differently
+ ! gspid=`ps -C gnome-shell -o pid=|head -n 1`
+ if [ "x$gspid" != "x" ]; then
+ # gnome-shell has multiple ibus-daemon processes and needs exit instead of restart
+ ibususer=`ps -C ibus-daemon -o user=|grep -v gdm|uniq`
+ sudo -H -u "$ibususer" ibus exit
+ else
+ ibususer=`ps -C ibus-daemon -o user=`
+ sudo -H -u "$ibususer" ibus restart
+ fi
fi
fi
;;