diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh')
-rw-r--r-- | nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh b/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh index 806dd0806ad5..9ab3a907a985 100644 --- a/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh +++ b/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh @@ -2,7 +2,7 @@ export JAVA_HOME="${JAVA_HOME:-@jdk@}" #export SAL_USE_VCLPLUGIN="${SAL_USE_VCLPLUGIN:-gen}" -if uname | grep Linux > /dev/null && +if uname | grep Linux > /dev/null && ! ( test -n "$DBUS_SESSION_BUS_ADDRESS" ); then dbus_tmp_dir="/run/user/$(id -u)/libreoffice-dbus" if ! test -d "$dbus_tmp_dir" && test -d "/run"; then @@ -14,6 +14,7 @@ if uname | grep Linux > /dev/null && fi dbus_socket_dir="$(mktemp -d -p "$dbus_tmp_dir")" "@dbus@"/bin/dbus-daemon --nopidfile --nofork --config-file "@dbus@"/share/dbus-1/session.conf --address "unix:path=$dbus_socket_dir/session" &> /dev/null & + dbus_pid=$! export DBUS_SESSION_BUS_ADDRESS="unix:path=$dbus_socket_dir/session" fi @@ -27,5 +28,5 @@ done "@libreoffice@/bin/$(basename "$0")" "$@" code="$?" -test -n "$dbus_socket_dir" && rm -rf "$dbus_socket_dir" +test -n "$dbus_socket_dir" && { rm -rf "$dbus_socket_dir"; kill $dbus_pid; } exit "$code" |