forked from mirrors/nixpkgs
nixos/sway-beta: Improve the wrapper
According to the dbus-launch documentation [0] "--exit-with-session" shouldn't be used: "This option is not recommended, since it will consume input from the terminal where it was started; it is mainly provided for backwards compatibility." And it also states: "To start a D-Bus session within a text-mode session, do not use dbus-launch. Instead, see dbus-run-session(1)." The new wrapper also avoids starting an additional D-Bus session if DBUS_SESSION_BUS_ADDRESS is already set. Fix #51303. [0]: https://dbus.freedesktop.org/doc/dbus-launch.1.html [1]: https://dbus.freedesktop.org/doc/dbus-run-session.1.html
This commit is contained in:
parent
d9b650f4cc
commit
062602d81e
|
@ -7,8 +7,19 @@ let
|
|||
swayPackage = cfg.package;
|
||||
|
||||
swayWrapped = pkgs.writeShellScriptBin "sway" ''
|
||||
${cfg.extraSessionCommands}
|
||||
exec ${pkgs.dbus.dbus-launch} --exit-with-session ${swayPackage}/bin/sway "$@"
|
||||
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 ${swayPackage}/bin/sway "$@"
|
||||
else
|
||||
exec ${pkgs.dbus}/bin/dbus-run-session ${swayPackage}/bin/sway "$@"
|
||||
fi
|
||||
'';
|
||||
swayJoined = pkgs.symlinkJoin {
|
||||
name = "sway-joined";
|
||||
|
|
Loading…
Reference in a new issue