hyprland-smart-borders icon indicating copy to clipboard operation
hyprland-smart-borders copied to clipboard

A pure bash script using hyprland-ipc to enable smart borders (dynamic borders) in hyprland

Hyprland smart borders (aka dynamic borders)

A bash script to enable dynamic borders (aka smart borders) in hyprland using hyprland-ipc.

Handles almost all the cases which I could think of.

[!NOTE] This does what could be done via scripting mentioned here.

[!IMPORTANT] The socket directory has been changed in Hyprland v0.40.0. Hence for old users, please update the script for everything to work properly.

See the demo to see how it works.

https://github.com/devadathanmb/hyprland-dynamic-borders/assets/84301852/c32d2c2d-5d94-4063-b053-5dcdab05c296

Dependencies

  1. socat : For communicating with hyprland ipc instance
  2. jq : For parsing hyprctl response

Example usage

  1. Download the script using
wget https://raw.githubusercontent.com/devadathanmb/hyprland-dynamic-borders/main/dynamic-borders.sh
  1. Make sure the script is executable and move it to the preferred location
chmod a+x ./dynamic-borders.sh
mkdir -p ~/.local/bin
mv ./dynamic-borders.sh ~/.local/bin
  1. Put the script to your auto start section in ~/.config/hyprland.conf
exec-once = ~/.local/bin/dynamic-borders.sh
  1. Enjoy smart borders!