diff --git a/apps/firefox/default.nix b/apps/firefox/default.nix index 7af62c4..a97034b 100644 --- a/apps/firefox/default.nix +++ b/apps/firefox/default.nix @@ -6,7 +6,7 @@ }: { wayland.windowManager.hyprland.settings = { exec-once = [ - + "uwsm app -- pywalfox start" ]; }; imports = [ diff --git a/apps/hyprland/default.nix b/apps/hyprland/default.nix index 5fb4f45..140c182 100644 --- a/apps/hyprland/default.nix +++ b/apps/hyprland/default.nix @@ -14,6 +14,8 @@ ./hypr/layers.nix ./scripts/movement.nix + + # volume stuff ]; wayland.windowManager.hyprland.enable = true; wayland.windowManager.hyprland.systemd.enable = false; # for UWSM support... diff --git a/apps/hyprland/hypr/binds.nix b/apps/hyprland/hypr/binds.nix index 5578e79..7f404db 100644 --- a/apps/hyprland/hypr/binds.nix +++ b/apps/hyprland/hypr/binds.nix @@ -1,24 +1,9 @@ {pkgs, ...}: { - services.swayosd.enable = true; - home.packages = [ - pkgs.playerctl - ]; wayland.windowManager.hyprland.settings = { bindel = [ - ", XF86AudioRaiseVolume, exec, swayosd-client --output-volume raise" - ", XF86AudioLowerVolume, exec, swayosd-client --output-volume lower" ", XF86MonBrightnessUp, exec, ddcutil setvcp 10 + 10" ", XF86MonBrightnessDown, exec, ddcutil setvcp 10 - 10" ]; - - bindl = [ - ", XF86AudioMute, exec, swayosd-client --output-volume mute-toggle" - ", Caps_Lock, exec, swayosd-client --caps-lock" - ", XF86AudioPlay, exec, playerctl play-pause && notify-send -u low -t 1000 \"Media\" \"$(playerctl status)\"" - ", XF86AudioPrev, exec, playerctl previous && notify-send -u low -t 1000 \"Previous Track\" \"$(playerctl metadata title)\"" - ", XF86AudioNext, exec, playerctl next && notify-send -u low -t 1000 \"Next Track\" \"$(playerctl metadata title)\"" - ", XF86AudioMute, exec, swayosd-client --output-volume mute-toggle" - ]; # FIXME: not working bindm = [ "SUPER, mouse:272, movewindow" "SUPER, mouse:273, resizewindow" @@ -57,7 +42,7 @@ "SUPER, O, Toggle Split, layoutmsg, togglesplit" # apps - "SUPER, W, Open Browser, exec, uwsm app -- firefox" # FIXME: must be xdg-open + "SUPER, W, Open Browser, exec, uwsm app -- firefox" # TODO: must be modular # "SUPER, SPACE, Open App Launcher, exec, nc -U $XDG_RUNTIME_DIR/walker/walker.sock" "SUPER, T, Toggle Steam, togglespecialworkspace, steam" "SUPER, M, Toggle Music, togglespecialworkspace, music" diff --git a/apps/hyprland/hypr/exec.nix b/apps/hyprland/hypr/exec.nix index 4b3de5d..fc3b94d 100644 --- a/apps/hyprland/hypr/exec.nix +++ b/apps/hyprland/hypr/exec.nix @@ -9,7 +9,7 @@ wayland.windowManager.hyprland.settings = { exec = [ # "pkill -x hyprpaper; uwsm app -- hyprpaper" - "matugen image ${config.home.homeDirectory}/.cache/current_wallpaper" + # "matugen image ${config.home.homeDirectory}/.cache/current_wallpaper" ]; exec-once = [ # essentials @@ -20,14 +20,9 @@ # apps "fcitx5 -d --replace" - "[workspace special:preload silent] sleep 4; uwsm app -- firefox" + "[workspace special:preload silent] uwsm app -- firefox; hakase-workspace-switch-force 1" "[workspace special:preload silent] uwsm app -- xdg-terminal-exec" - "uwsm app -- swayosd-server" - "uwsm app -- pywalfox start" - - # "sh -c 'sleep 3; hakase-workspace-switch-force 1'" - "[workspace 1] uwsm app -- ghostty -e bash -c 'fastfetch; exec $SHELL'" "[workspace special:steam silent] uwsm app -- steam" ]; diff --git a/apps/hyprland/hypr/rules.nix b/apps/hyprland/hypr/rules.nix index 367ce1e..7925a36 100644 --- a/apps/hyprland/hypr/rules.nix +++ b/apps/hyprland/hypr/rules.nix @@ -23,6 +23,8 @@ # Prevent Firefox and Terminal from stealing focus on launch "suppressevent activate, workspace:special:preload" "noinitialfocus, workspace:special:preload" + "suppressevent activate, class:^(firefox)$, workspace:special:preload" + "noinitialfocus, class:^(firefox)$, workspace:special:preload" # --- STEAM RULES --- "workspace special:steam silent, class:^(steam)$" diff --git a/apps/playerctl/default.nix b/apps/playerctl/default.nix new file mode 100644 index 0000000..8063262 --- /dev/null +++ b/apps/playerctl/default.nix @@ -0,0 +1,13 @@ +{pkgs, ...}: { + home.packages = [ + pkgs.playerctl + ]; + + wayland.windowManager.hyprland.settings = { + bindl = [ + ", XF86AudioPlay, exec, playerctl play-pause && notify-send -u low -t 1000 \"Media\" \"$(playerctl status)\"" + ", XF86AudioPrev, exec, playerctl previous && notify-send -u low -t 1000 \"Previous Track\" \"$(playerctl metadata title)\"" + ", XF86AudioNext, exec, playerctl next && notify-send -u low -t 1000 \"Next Track\" \"$(playerctl metadata title)\"" + ]; # FIXME: not working + }; +} diff --git a/apps/swayosd/default.nix b/apps/swayosd/default.nix new file mode 100644 index 0000000..ee4ddee --- /dev/null +++ b/apps/swayosd/default.nix @@ -0,0 +1,18 @@ +{pkgs, ...}: { + services.swayosd.enable = true; + + wayland.windowManager.hyprland.settings = { + exec-once = [ + "uwsm app -- swayosd-server" + ]; + bindel = [ + ", XF86AudioRaiseVolume, exec, swayosd-client --output-volume raise" + ", XF86AudioLowerVolume, exec, swayosd-client --output-volume lower" + ]; + bindl = [ + ", XF86AudioMute, exec, swayosd-client --output-volume mute-toggle" + ", Caps_Lock, exec, swayosd-client --caps-lock" + ", XF86AudioMute, exec, swayosd-client --output-volume mute-toggle" + ]; + }; +} diff --git a/apps/waybar/default.nix b/apps/waybar/default.nix index bbd47be..b2d733c 100644 --- a/apps/waybar/default.nix +++ b/apps/waybar/default.nix @@ -231,7 +231,7 @@ in { "custom/omarchy" = { format = ""; - on-click = "nc -U $XDG_RUNTIME_DIR/walker/walker.sock"; + on-click = "vicinae toggle"; # TODO: add fallback on-click-right = "xdg-terminal-exec"; tooltip-format = "Omarchy Menu\n\nSuper + Alt + Space"; }; diff --git a/modules/home/apps.nix b/modules/home/apps.nix index 7d3ba36..04bb1fa 100644 --- a/modules/home/apps.nix +++ b/modules/home/apps.nix @@ -5,7 +5,6 @@ ../../apps/firefox ../../apps/loupe ../../apps/mako - ../../apps/screenshot # ../../apps/starship ]; } diff --git a/modules/home/hyprland.nix b/modules/home/hyprland.nix index 21ad45f..6a1831b 100644 --- a/modules/home/hyprland.nix +++ b/modules/home/hyprland.nix @@ -3,11 +3,12 @@ ../../apps/hyprland ../../apps/hypridle ../../apps/hyprlock - ../../apps/walker - ../../apps/vicinae - # ../../apps/fsel ../../apps/hyprpaper + ../../apps/screenshot + + ../../apps/vicinae ../../apps/tte + ../../apps/swayosd + ../../apps/playerctl ]; } -