aboutsummaryrefslogtreecommitdiff
path: root/home-manager/wm/hyprland/scripts
diff options
context:
space:
mode:
authorspl3g <spleefer6@yandex.ru>2023-10-26 14:44:22 +0300
committerspl3g <spleefer6@yandex.ru>2023-10-26 14:44:22 +0300
commitddd3490dfb592417163e801994a60854dac135fe (patch)
treeff25c2df4bd89fc837ed585dfac38594b5f23b72 /home-manager/wm/hyprland/scripts
parent429bf12cd70405d6ea18d14fe9d384a6458ae99d (diff)
configs for my laptop
Diffstat (limited to 'home-manager/wm/hyprland/scripts')
-rwxr-xr-xhome-manager/wm/hyprland/scripts/battery-level.sh22
-rwxr-xr-xhome-manager/wm/hyprland/scripts/hshot45
-rwxr-xr-xhome-manager/wm/hyprland/scripts/kill7
-rwxr-xr-xhome-manager/wm/hyprland/scripts/rnew.fish8
-rwxr-xr-xhome-manager/wm/hyprland/scripts/rofi-modes20
5 files changed, 102 insertions, 0 deletions
diff --git a/home-manager/wm/hyprland/scripts/battery-level.sh b/home-manager/wm/hyprland/scripts/battery-level.sh
new file mode 100755
index 0000000..cc2d5cd
--- /dev/null
+++ b/home-manager/wm/hyprland/scripts/battery-level.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+while true; do
+ # Check the battery level and charging status
+ battery_info=$(acpi -b)
+
+ # Extract the battery level from the output of `acpi`
+ battery_level=$(echo $battery_info | grep -o "[0-9]*%" | sed "s/%//")
+
+ # Check if the laptop is charging
+ if [[ $battery_info == *"Charging"* ]]; then
+ # If the laptop is charging, do nothing
+ :
+ else
+ # If the battery level is less than 15%, send a notification
+ if [ "$battery_level" -lt 15 ]; then
+ notify-send "Battery Low" "Battery level is at $battery_level%. Charge your laptop."
+ fi
+ fi
+
+ # Sleep for 5 minutes before checking the battery level again
+ sleep 300
+done
diff --git a/home-manager/wm/hyprland/scripts/hshot b/home-manager/wm/hyprland/scripts/hshot
new file mode 100755
index 0000000..0d02b9c
--- /dev/null
+++ b/home-manager/wm/hyprland/scripts/hshot
@@ -0,0 +1,45 @@
+#!/bin/sh
+
+declare -a cmd
+
+usage() {
+ echo -e "-m | monitor\n-s | slurp\n-w | active window\n-c | add copy"
+}
+
+monitor() {
+ cmd=("grim -o \"\$(hyprctl -j monitors | jq -r '.[] | select(.focused) | .name')\"")
+}
+
+slurp() {
+ cmd=("grim -g \"\$(slurp)\"")
+}
+
+window() {
+ cmd=("grim -g \"\$(hyprctl activewindow -j | jq -j '\"\(.at | .[0]),\(.at | .[1]) \(.size | .[0])x\(.size | .[1])\"')\"")
+}
+
+copy() {
+ if [[ -n ${cmd[0]} ]]; then
+ cmd+=("- | wl-copy")
+ else
+ usage
+ fi
+}
+
+while getopts ":mswc" opt; do
+ case ${opt} in
+ m) monitor;;
+ s) slurp;;
+ w) window;;
+ c) copy;;
+ *) usage
+ exit 1;;
+ esac
+done
+
+if [[ -z $1 ]]; then
+ usage
+ exit 1
+fi
+
+bash -c "${cmd[*]}"
diff --git a/home-manager/wm/hyprland/scripts/kill b/home-manager/wm/hyprland/scripts/kill
new file mode 100755
index 0000000..40ab4a9
--- /dev/null
+++ b/home-manager/wm/hyprland/scripts/kill
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+if [[ $(hyprctl activewindow -j | jq -r '.class') =~ (kitty) ]]; then
+ kill $(hyprctl activewindow -j | jq '.pid') -s 9
+else
+ hyprctl dispatch killactive
+fi
diff --git a/home-manager/wm/hyprland/scripts/rnew.fish b/home-manager/wm/hyprland/scripts/rnew.fish
new file mode 100755
index 0000000..743d7fd
--- /dev/null
+++ b/home-manager/wm/hyprland/scripts/rnew.fish
@@ -0,0 +1,8 @@
+#!/usr/bin/env fish
+
+ranger $argv
+set quit_cd_wd_file "$HOME/.ranger_quit_cd_wd"
+if test -s "$quit_cd_wd_file"
+ kitty -d "$(cat $quit_cd_wd_file)" --detach
+ true >"$quit_cd_wd_file"
+end
diff --git a/home-manager/wm/hyprland/scripts/rofi-modes b/home-manager/wm/hyprland/scripts/rofi-modes
new file mode 100755
index 0000000..1a5bd2e
--- /dev/null
+++ b/home-manager/wm/hyprland/scripts/rofi-modes
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+case $(echo -e "bitwarden\nclipboard\nemoji\ncalc" | rofi -dmenu) in
+ emoji) arg=emoji;;
+ calc) arg=calc;;
+ clipboard) cliphist list | rofi -dmenu -display-columns 2 | cliphist decode | wl-copy
+ exit;;
+ bitwarden) if [[ $XDG_BACKEND == "wayland" ]]; then
+ typer=wtype
+ clip=wl-copy
+ else
+ typer=xdotool
+ clip=xclip
+ fi
+ rofi-rbw --typer $typer --clip $clip
+ exit;;
+ *)exit;;
+esac
+
+rofi -modi $arg -show $arg