Guest User

DBus solution for Raspberry Pi (and other console distros)

a guest
Dec 12th, 2012
1,349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.93 KB | None | 0 0
  1. DBUS_VARS_FILE="$HOME/.dbus_vars" # Where file with variables is stored
  2. # This function launches dbus and saves environment variables
  3. launch_dbus() {
  4.         OLDUMASK=$(umask) # Save umask
  5.         umask 0077 # Set secure umask
  6.         if dbus-launch --auto-syntax > "$DBUS_VARS_FILE"; # Launch DBus and save its environment variables
  7.         then
  8.                 . "$DBUS_VARS_FILE" # Load environment variables
  9.         else
  10.                 # Error
  11.                 echo Failed to launch DBus
  12.         fi
  13.         umask $OLDUMASK # Restore umask
  14. }
  15.  
  16. if [ -f "$DBUS_VARS_FILE" ];
  17. then
  18.         . "$DBUS_VARS_FILE" # Load environment variables
  19.         if ps ax | grep -q '^ '"$DBUS_SESSION_BUS_PID"; # Check whether DBus is running
  20.         then
  21.                 echo -n # DBus is running, so do nothing
  22.         else
  23.                 launch_dbus # DBus is not running (old file was loaded)
  24.         fi
  25.  
  26. else
  27.         launch_dbus
  28. fi
Advertisement
Add Comment
Please, Sign In to add comment