diff --git a/flake.lock b/flake.lock index 60af365..0a41721 100644 --- a/flake.lock +++ b/flake.lock @@ -554,6 +554,27 @@ "type": "github" } }, + "hyprgrass": { + "inputs": { + "hyprland": [ + "hyprland" + ] + }, + "locked": { + "lastModified": 1715969899, + "narHash": "sha256-NDURZAbLIihUHNt5a8PGrgmzFkcBsG5e4MgwJE/InbM=", + "owner": "horriblename", + "repo": "hyprgrass", + "rev": "6d8dbbcfb14ebdb2a2a2551b7d495d01d8ef6917", + "type": "github" + }, + "original": { + "owner": "horriblename", + "repo": "hyprgrass", + "rev": "6d8dbbcfb14ebdb2a2a2551b7d495d01d8ef6917", + "type": "github" + } + }, "hyprland": { "inputs": { "hyprcursor": "hyprcursor", @@ -1087,6 +1108,7 @@ "home-manager-stable": "home-manager-stable", "home-manager-unstable": "home-manager-unstable", "hycov": "hycov", + "hyprgrass": "hyprgrass", "hyprland": "hyprland", "hyprland-plugins": "hyprland-plugins", "kdenlive-pin-nixpkgs": "kdenlive-pin-nixpkgs", diff --git a/flake.nix b/flake.nix index ba41469..ee4e18e 100644 --- a/flake.nix +++ b/flake.nix @@ -188,6 +188,8 @@ hyprland-plugins.inputs.hyprland.follows = "hyprland"; hycov.url = "github:DreamMaoMao/hycov/115cba558d439cc25d62ce38b7c62cde83f50ef5"; hycov.inputs.hyprland.follows = "hyprland"; + hyprgrass.url = "github:horriblename/hyprgrass/6d8dbbcfb14ebdb2a2a2551b7d495d01d8ef6917"; + hyprgrass.inputs.hyprland.follows = "hyprland"; nix-doom-emacs.url = "github:nix-community/nix-doom-emacs"; nix-doom-emacs.inputs.nixpkgs.follows = "emacs-pin-nixpkgs"; diff --git a/sync-posthook.sh b/sync-posthook.sh index 1589450..383937b 100755 --- a/sync-posthook.sh +++ b/sync-posthook.sh @@ -15,7 +15,7 @@ pgrep xmonad &> /dev/null && echo "Reapplying background from stylix via feh" && pgrep Hyprland &> /dev/null && echo "Reloading hyprland" && hyprctl reload &> /dev/null; pgrep .waybar-wrapped &> /dev/null && echo "Restarting waybar" && killall .waybar-wrapped && echo "Running waybar" && waybar &> /dev/null & disown; pgrep fnott &> /dev/null && echo "Restarting fnott" && killall fnott && echo "Running fnott" && fnott &> /dev/null & disown; -pgrep Hyprland &> /dev/null && echo "Reapplying background from stylix via swaybg" && echo "Running ~/.swaybg-stylix" && ~/.swaybg-stylix &> /dev/null & disown; +pgrep hyprpaper &> /dev/null && echo "Reapplying background via hyprpaper" && killall hyprpaper && echo "Running hyprpaper" && hyprpaper &> /dev/null & disown; # emacs pgrep emacs &> /dev/null && echo "Reloading emacs stylix theme" && echo "Running emacsclient --no-wait --eval \"(load-theme 'doom-stylix t nil)\"" && emacsclient --no-wait --eval "(load-theme 'doom-stylix t nil)" &> /dev/null; diff --git a/user/style/stylix.nix b/user/style/stylix.nix index c7d65d0..d9ab7a3 100644 --- a/user/style/stylix.nix +++ b/user/style/stylix.nix @@ -84,20 +84,6 @@ in feh --no-fehbg --bg-fill ''+config.stylix.image+''; ''; home.file.".fehbg-stylix".executable = true; - home.file.".swaybg-stylix".text = '' - #!/bin/sh - swaybg -m fill -i ''+config.stylix.image+''; - ''; - home.file.".swaybg-stylix".executable = true; - home.file.".swayidle-stylix".text = '' - #!/bin/sh - swaylock_cmd='swaylock --indicator-radius 200 --screenshots --effect-blur 10x10' - swayidle -w timeout 300 "$swaylock_cmd --fade-in 0.5 --grace 5" \ - timeout 600 'hyprctl dispatch dpms off' \ - resume 'hyprctl dispatch dpms on' \ - before-sleep "$swaylock_cmd" - ''; - home.file.".swayidle-stylix".executable = true; home.file = { ".config/qt5ct/colors/oomox-current.conf".source = config.lib.stylix.colors { template = builtins.readFile ./oomox-current.conf.mustache; @@ -116,11 +102,8 @@ in home.file.".config/hypr/hyprpaper.conf".text = '' preload = ''+config.stylix.image+'' - wallpaper = eDP-1,''+config.stylix.image+'' + wallpaper = ,''+config.stylix.image+'' - wallpaper = HDMI-A-1,''+config.stylix.image+'' - - wallpaper = DP-1,''+config.stylix.image+'' ''; home.packages = with pkgs; [ libsForQt5.qt5ct pkgs.libsForQt5.breeze-qt5 libsForQt5.breeze-icons diff --git a/user/wm/hyprland/hyprland.nix b/user/wm/hyprland/hyprland.nix index dde9fe5..89335ea 100644 --- a/user/wm/hyprland/hyprland.nix +++ b/user/wm/hyprland/hyprland.nix @@ -29,6 +29,7 @@ in plugins = [ inputs.hyprland-plugins.packages.${pkgs.system}.hyprtrails inputs.hycov.packages.${pkgs.system}.hycov + inputs.hyprgrass.packages.${pkgs.system}.default ]; settings = { }; extraConfig = '' @@ -62,7 +63,7 @@ in exec-once = hypridle exec-once = obs-notification-mute-daemon - exec = ~/.swaybg-stylix + exec-once = hyprpaper general { layout = master @@ -105,6 +106,18 @@ in show_special = 0 # show windwos in special workspace in overview. } + touch_gestures { + sensitivity = 4.0 + long_press_delay = 260 + hyprgrass-bind = , edge:r:l, exec, hyprnome + hyprgrass-bind = , edge:l:r, exec, hyprnome --previous + hyprgrass-bind = , swipe:3:d, exec, nwg-drawer + hyprgrass-bind = , swipe:3:u, hycov:toggleoverview + hyprgrass-bind = , swipe:3:r, exec, hyprnome + hyprgrass-bind = , swipe:3:l, exec, hyprnome --previous + hyprgrass-bindm = , longpress:2, movewindow + hyprgrass-bindm = , longpress:3, resizewindow + } } bind=SUPER,SPACE,fullscreen,1 @@ -378,7 +391,7 @@ in hyprland-protocols hyprpicker hypridle - swaybg + hyprpaper fnott fuzzel keepmenu @@ -812,6 +825,20 @@ in transition-duration: .2s; } + tooltip { + color: #'' + config.lib.stylix.colors.base07 + ''; + background-color: rgba('' + config.lib.stylix.colors.base00-rgb-r + "," + config.lib.stylix.colors.base00-rgb-g + "," + config.lib.stylix.colors.base00-rgb-b + "," + ''0.9); + border-style: solid; + border-width: 3px; + border-radius: 8px; + border-color: #'' + config.lib.stylix.colors.base08 + ''; + } + + tooltip * { + color: #'' + config.lib.stylix.colors.base07 + ''; + background-color: rgba('' + config.lib.stylix.colors.base00-rgb-r + "," + config.lib.stylix.colors.base00-rgb-g + "," + config.lib.stylix.colors.base00-rgb-b + "," + ''0.0); + } + window > box { border-radius: 8px; opacity: 0.94;