Make PTT in Mumble work with wayland

This still has some issues (notably the release not triggering when
switching workspaces while the PTT key is hold).
This commit is contained in:
Simon Bruder 2020-12-10 20:23:53 +01:00
parent c0c36b53d0
commit 539befeba2
No known key found for this signature in database
GPG key ID: 6F03E0000CC5B62F
2 changed files with 15 additions and 1 deletions

View file

@ -131,7 +131,15 @@
# communication # communication
claws-mail # email client that looks ugly but just works claws-mail # email client that looks ugly but just works
firefox-wayland # the least bad browser firefox-wayland # the least bad browser
(mumble.override { pulseSupport = true; }) # VoIP group chat ((mumble.override { pulseSupport = true; }).overrideAttrs (o: o // {
patches = o.patches ++ [
# TODO: remove patch once stable release supports this
(pkgs.fetchurl {
url = "https://github.com/mumble-voip/mumble/commit/03dbea56f650bba4f1aa0c54d02b6e8c3639d04f.patch";
sha256 = "1l7q2lxdkmykmqrvl5ga81vahs666yxiqsavx682kj1mh95pk3s4";
})
];
})) # VoIP group chat
ungoogled-chromium # useful for exporting pages as pdf ungoogled-chromium # useful for exporting pages as pdf
# creative/design # creative/design

View file

@ -162,6 +162,12 @@ lib.mkIf config.sbruder.gui.enable {
"XF86AudioNext" = "exec ${pkgs.mpc_cli}/bin/mpc prev"; "XF86AudioNext" = "exec ${pkgs.mpc_cli}/bin/mpc prev";
"XF86AudioPlay" = "exec ${pkgs.mpc_cli}/bin/mpc toggle"; "XF86AudioPlay" = "exec ${pkgs.mpc_cli}/bin/mpc toggle";
# Mumble PTT
"--no-repeat Shift_R" = "exec ${pkgs.dbus}/bin/dbus-send --session --type=method_call --dest=net.sourceforge.mumble.mumble / net.sourceforge.mumble.Mumble.startTalking";
"--no-repeat --release Shift_R" = "exec ${pkgs.dbus}/bin/dbus-send --session --type=method_call --dest=net.sourceforge.mumble.mumble / net.sourceforge.mumble.Mumble.stopTalking";
# reset
"Shift_R+Shift" = "exec ${pkgs.dbus}/bin/dbus-send --session --type=method_call --dest=net.sourceforge.mumble.mumble / net.sourceforge.mumble.Mumble.stopTalking";
# Locking and DPMS # Locking and DPMS
"${cfg.modifier}+y" = "exec ${pkgs.swaylock}/bin/swaylock -f -i ${wallpaper}"; "${cfg.modifier}+y" = "exec ${pkgs.swaylock}/bin/swaylock -f -i ${wallpaper}";
"--locked ${cfg.modifier}+q" = ''exec 'test $(swaymsg -t get_outputs | ${pkgs.jq}/bin/jq "[.[].dpms] | any") = "true" && swaymsg "output * dpms off" || swaymsg "output * dpms on"''; "--locked ${cfg.modifier}+q" = ''exec 'test $(swaymsg -t get_outputs | ${pkgs.jq}/bin/jq "[.[].dpms] | any") = "true" && swaymsg "output * dpms off" || swaymsg "output * dpms on"'';