From a64f3857855fc52953f9f98cb263edbe2c3f9f32 Mon Sep 17 00:00:00 2001
From: Jens Nolte <git@queezle.net>
Date: Tue, 10 May 2022 00:04:12 +0200
Subject: [PATCH] Update sway configuration

---
 layers/desktop.nix      |  5 +----
 modules/sway/config.nix | 17 +++++++++++++++--
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/layers/desktop.nix b/layers/desktop.nix
index 37a8d0c..cb0330f 100644
--- a/layers/desktop.nix
+++ b/layers/desktop.nix
@@ -35,11 +35,9 @@ in
     foot
     glxinfo
     gnome3.gnome-disk-utility
-    networkmanagerapplet
     wayvnc
     tigervnc
     dfeet
-    #vimiv
     mpv-queezle
     wdisplays
     squeekboard
@@ -80,7 +78,6 @@ in
     sysstat
     zsh
     bash
-    wirelesstools
     lm_sensors
     jq
   ];
@@ -110,7 +107,7 @@ in
 
 
   programs.sway.enable = true;
-  programs.sway.extraPackages = with pkgs; [ swaylock swayidle xwayland kitty cool-retro-term xorg.xrdb ];
+  programs.sway.extraPackages = with pkgs; [ swaylock swayidle xwayland kitty cool-retro-term xorg.xrdb slurp ];
   # QT_QPA_PLATFORM=wayland requires qt5.qtwayland in systemPackages
   programs.sway.extraSessionCommands = ''
     export XDG_SESSION_TYPE=wayland
diff --git a/modules/sway/config.nix b/modules/sway/config.nix
index bb982ee..8532003 100644
--- a/modules/sway/config.nix
+++ b/modules/sway/config.nix
@@ -3,7 +3,7 @@ with lib;
 let
   cfg = config.queezle.sway;
   temperature-bin = pkgs.writeScript "temperature.zsh" ''
-    #!/usr/bin/env zsh
+    #!${pkgs.zsh}/bin/zsh
 
     echo -n $'🔥\uFE0E '
 
@@ -16,6 +16,12 @@ let
 
     exit 42
   '';
+  toggle-microphone-mute = pkgs.writeScript "toggle-microphone-mute.zsh" ''
+    #!${pkgs.zsh}/bin/zsh
+    pamixer --default-source --toggle-mute
+    readonly ismuted=$(pamixer --default-source --get-mute || true)
+    busctl --user set-property net.sourceforge.mumble.mumble / net.sourceforge.mumble.Mumble mute b $ismuted
+  '';
 in
 pkgs.writeText "sway-config" ''
 # sway config file
@@ -199,7 +205,8 @@ bindsym --locked $mod+Ctrl+F12 exec $brightnessFull
 
 # Toggle mumble mute
 # TODO: merge with mumble config (requires sway config merging)
-bindsym --locked Pause exec ~/.local/bin/mumble-toggle-mute
+bindsym --locked Pause exec ${toggle-microphone-mute}
+bindsym --locked XF86AudioMicMute exec ${toggle-microphone-mute}
 
 # The middle button over a titlebar kills the window
 bindsym button2 kill
@@ -380,6 +387,12 @@ bindsym $mod+Shift+r restart
 bindsym $mod+Shift+e exec "swaymsg exit"
 
 # resize window (you can also use the mouse for that)
+
+bindsym $mod+Alt+ resize shrink width 10 px or 10 ppt
+bindsym $mod+Alt+j resize shrink height 10 px or 10 ppt
+bindsym $mod+Alt+k resize grow height 10 px or 10 ppt
+bindsym $mod+Alt+l resize grow width 10 px or 10 ppt
+
 mode "resize" {
         # These bindings trigger as soon as you enter the resize mode
 
-- 
GitLab