diff --git a/modules/workspace/i3blocks/default.nix b/modules/workspace/i3blocks/default.nix index 77260fa..a8f10fd 100644 --- a/modules/workspace/i3blocks/default.nix +++ b/modules/workspace/i3blocks/default.nix @@ -3,41 +3,42 @@ with import ../../../support.nix { inherit pkgs config lib; }; with lib; let scripts = import ./scripts pkgs config; in { - home-manager.users.balsoft.wayland.windowManager.sway.config.bars = [{ - id = "top"; - colors = let - thm = config.themes.colors; - default = { + home-manager.users.balsoft = { + wayland.windowManager.sway.config.bars = [{ + id = "default"; + command = "true"; + colors = let + thm = config.themes.colors; + default = { + background = thm.bg; + border = thm.bg; + }; + in { background = thm.bg; - border = thm.bg; + statusline = thm.fg; + separator = thm.alt; + focusedWorkspace = default // { text = thm.red; }; + activeWorkspace = default // { text = thm.green; }; + inactiveWorkspace = default // { text = thm.fg; }; + urgentWorkspace = default // { text = thm.orange; }; + bindingMode = default // { text = thm.yellow; }; }; - in { - background = thm.bg; - statusline = thm.fg; - separator = thm.alt; - focusedWorkspace = default // { text = thm.red; }; - activeWorkspace = default // { text = thm.green; }; - inactiveWorkspace = default // { text = thm.fg; }; - urgentWorkspace = default // { text = thm.orange; }; - bindingMode = default // { text = thm.yellow; }; - }; - statusCommand = "${pkgs.i3blocks}/bin/i3blocks"; - fonts = [ "IBM Plex Mono 11" "Material Icons 11" "Roboto Mono 11" ]; - mode = "hide"; - position = "bottom"; + statusCommand = "${pkgs.i3blocks}/bin/i3blocks"; + fonts = [ "IBM Plex Mono 11" "Material Icons 11" "Roboto Mono 11" ]; + mode = "hide"; + position = "bottom"; workspaceNumbers = false; - }]; - - home-manager.users.balsoft.xdg.configFile."i3blocks/config".text = let - scr = x: { - name = x; - command = scripts.${x}; - }; - scrint = x: interval: (scr x) // { inherit interval; }; - in '' - interval=60 - markup=pango - '' + genIniOrdered (optional (!isNull config.secrets.mail) (scr "email") + }]; + xdg.configFile."i3blocks/config".text = let + scr = x: { + name = x; + command = scripts.${x}; + }; + scrint = x: interval: (scr x) // { inherit interval; }; + in '' + interval=60 + markup=pango + '' + genIniOrdered (optional (!isNull config.secrets.mail) (scr "email") ++ [ (scrint "weather" 600) (scr "calendar") (scr "emacs") (scr "nixos") ] ++ optional (!isNull config.secrets.wage) (scrint "youtrack-wage" 3600) ++ [ (scrint "music" 3) (scrint "sound" 1) ] ++ [ @@ -51,4 +52,16 @@ in { ] ++ optional (config.deviceSpecific.devInfo ? bigScreen) (scrint "network" 1) ++ [ (scrint "bluetooth" 3) (scrint "connections" 3) (scr "df") (scr "date") (scrint "time" 1) ]); + systemd.user.services.swaybar = { + Unit = { + Description = "Start default bar"; + }; + + Install.WantedBy = [ "sway-session.target" ]; + + Service = { + ExecStart = "${pkgs.sway}/bin/swaybar -b default"; + }; + }; + }; } diff --git a/modules/workspace/sway/default.nix b/modules/workspace/sway/default.nix index 3301b3d..03fcc8d 100755 --- a/modules/workspace/sway/default.nix +++ b/modules/workspace/sway/default.nix @@ -186,6 +186,11 @@ in { "XF86AudioPlay" = "exec ${pkgs.playerctl}/bin/playerctl play-pause"; "XF86AudioNext" = "exec ${pkgs.playerctl}/bin/playerctl next"; "XF86AudioPrev" = "exec ${pkgs.playerctl}/bin/playerctl previous"; + "XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 2"; + "XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 2"; + "XF86AudioMute" = "exec ${pkgs.pamixer}/bin/pamixer -t"; + "${modifier}+XF86AudioLowerVolume" = "exec ${pkgs.pamixer}/bin/pamixer -d 1"; + "${modifier}+XF86AudioRaiseVolume" = "exec ${pkgs.pamixer}/bin/pamixer -i 1"; "button2" = "kill"; "--whole-window ${modifier}+button2" = "kill"; } // builtins.listToAttrs (builtins.map (x: { @@ -196,9 +201,6 @@ in { value = "move container to workspace ${builtins.elemAt x 1}"; }) workspaces)); keycodebindings = { - "122" = "exec ${pkgs.pamixer}/bin/pamixer -d 2"; - "123" = "exec ${pkgs.pamixer}/bin/pamixer -i 2"; - "121" = "exec ${pkgs.pamixer}/bin/pamixer -t"; }; workspaceLayout = "tabbed"; workspaceAutoBackAndForth = true;