about summary refs log tree commit diff
path: root/nixos/modules/programs
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2019-01-04 21:13:19 +0100
committerFrederik Rietdijk <fridh@fridh.nl>2019-01-04 21:13:19 +0100
commit9618abe87c966250ecd7e0156a298cc07b35ba51 (patch)
treef5734612a231bab92e74364d914e52bef3676826 /nixos/modules/programs
parent030f66400db0ce32f988045e5b35b27d75f2fe33 (diff)
parent1a7d28e31f3f66f5806b9b150b978aef9b5fbe7e (diff)
downloadnixlib-9618abe87c966250ecd7e0156a298cc07b35ba51.tar
nixlib-9618abe87c966250ecd7e0156a298cc07b35ba51.tar.gz
nixlib-9618abe87c966250ecd7e0156a298cc07b35ba51.tar.bz2
nixlib-9618abe87c966250ecd7e0156a298cc07b35ba51.tar.lz
nixlib-9618abe87c966250ecd7e0156a298cc07b35ba51.tar.xz
nixlib-9618abe87c966250ecd7e0156a298cc07b35ba51.tar.zst
nixlib-9618abe87c966250ecd7e0156a298cc07b35ba51.zip
Merge master into staging-next
Diffstat (limited to 'nixos/modules/programs')
-rw-r--r--nixos/modules/programs/sway.nix13
1 files changed, 10 insertions, 3 deletions
diff --git a/nixos/modules/programs/sway.nix b/nixos/modules/programs/sway.nix
index 0eaaf6b85b99..b3847db8cd9c 100644
--- a/nixos/modules/programs/sway.nix
+++ b/nixos/modules/programs/sway.nix
@@ -7,11 +7,18 @@ let
   swayPackage = pkgs.sway;
 
   swayWrapped = pkgs.writeShellScriptBin "sway" ''
-    if [[ "$#" -ge 1 ]]; then
+    set -o errexit
+
+    if [ ! "$_SWAY_WRAPPER_ALREADY_EXECUTED" ]; then
+      export _SWAY_WRAPPER_ALREADY_EXECUTED=1
+      ${cfg.extraSessionCommands}
+    fi
+
+    if [ "$DBUS_SESSION_BUS_ADDRESS" ]; then
+      export DBUS_SESSION_BUS_ADDRESS
       exec sway-setcap "$@"
     else
-      ${cfg.extraSessionCommands}
-      exec ${pkgs.dbus.dbus-launch} --exit-with-session sway-setcap
+      exec ${pkgs.dbus}/bin/dbus-run-session sway-setcap "$@"
     fi
   '';
   swayJoined = pkgs.symlinkJoin {