The same thing we do every night, Pinky - try to take over the world!

This commit is contained in:
coolnsx
2022-11-25 13:29:54 +05:30
parent 72e959ddbe
commit 251f5340dd
16 changed files with 94 additions and 124 deletions

View File

@@ -1,23 +1,7 @@
# This is an example Hyprland config file.
#
# Refer to the wiki for more information.
#
# Please note not all available settings / options are set here.
# For a full list, see the wiki
#
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=,preferred,auto,1,mirror,eDP-1
monitor=,preferred,auto,1
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Execute your favorite apps at launch
# exec-once = waybar & hyprpaper & firefox
# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
kb_layout = us
@@ -95,13 +79,6 @@ device:epic mouse V1 {
sensitivity = -0.5
}
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER
@@ -117,8 +94,8 @@ bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
bind = SUPER,Tab,cyclenext,
bind = SUPER,Tab,bringactivetotop,
bind = $mainMod,Tab,cyclenext,
bind = $mainMod,Tab,bringactivetotop,
bind = ALT,Tab,cyclenext,
bind = ALT,Tab,bringactivetotop,
@@ -133,6 +110,10 @@ bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, down, movewindow, d
bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, right, movewindow, r
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
@@ -143,6 +124,8 @@ bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
#applications shortcuts
bind = $mainMod, F4, exec, $HOME/repos_scripts/ani-new
bind = $mainMod, F5, exec, $HOME/.config/hypr/wifi
bind = $mainMod, return, exec, foot
#bind = $mainMod, Q, exec, wofi --show drun
bind = $mainMod, Q, exec, dmenu_run_history
@@ -151,14 +134,18 @@ bind = $mainMod, C, exec, code
bind = $mainMod, E, exec, pcmanfm
bind = $mainMod, B, exec, $HOME/repos_scripts/bkmark "add"
bind = $mainMod, I, exec, $HOME/repos_scripts/bkmark
bind = SUPERSHIFT, B, exec, $HOME/repos_scripts/bkmark "rm"
bind = $mainMod SHIFT, B, exec, $HOME/repos_scripts/bkmark "rm"
#bind = $mainMod, S, exec, skypeforlinux
#bind = SUPER_L, P, exec, $HOME/.config/hypr/workspace
bind = $mainMod, F11, exec, $HOME/.config/hypr/info
bind = $mainMod, F6, exec, $HOME/.config/hypr/bluetooth
bind = $mainMod, F10, exec, $HOME/.config/hypr/bluetooth
bind = $mainMod, F6, exec, $HOME/.config/hypr/workspace
bind = $mainMod SHIFT, F6, exec, $HOME/.config/hypr/workspace "toggle"
bind = $mainMod, F1, exec, $HOME/.config/hypr/screenshot 'selclip'
bind = $mainMod, Print, exec, $HOME/.config/hypr/screenshot 'fullclip'
bind = $mainMod SHIFT, F1, exec, $HOME/.config/hypr/screenshot 'fullclip'
bind = ,Print, exec, $HOME/.config/hypr/screenshot 'fullsave'
bind = $mainMod, F12, exec, $HOME/.config/hypr/date
bind = $mainMod, Delete, exec, $HOME/.config/hypr/workspace
bind = $mainMod, Delete, exec, $HOME/.config/hypr/workspace 'list'
#media keys
binde=, XF86AudioRaiseVolume, exec, pamixer -i 2 && $HOME/.config/hypr/volume
@@ -169,8 +156,9 @@ binde=, XF86MonBrightnessUp, exec, light -A 5 && notify-send -h int:value:$(ligh
#windows rules
windowrulev2=workspace 1,class:^(google-chrome)$
windowrulev2=workspace 4,class:^(Google-chrome)$
windowrulev2=workspace 2,class:^(foot)$
windowrulev2=workspace 3,class:^(Pcmanfm)$
windowrulev2=workspace 3,class:^(pcmanfm)$
windowrulev2=workspace 3,class:^(mpv)$
windowrulev2=workspace 3,class:^([c|C]ode)
windowrulev2=workspace 4,class:^(Skype)$
@@ -178,8 +166,9 @@ windowrulev2=workspace 4,class:^(pavucontrol)$
#startup applications
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once=dunst
exec-once=ssh-agent
exec-once=swaybg -i ~/wall/2.jpg
exec-once=swaybg -i ~/wall/8.png
exec-once=$HOME/.config/hypr/workspace 'focus'
exec-once=sleep 5 && $HOME/.config/hypr/workspace
#exec-once=skypeforlinux
exec-once=google-chrome-stable 'https://web.skype.com/?openPstnPage=true'

View File

@@ -1,10 +0,0 @@
#!/bin/sh
$HOME/.config/hypr/workspace &
case "$(printf "lock\\nsuspend\\nlogout\\nreboot\\npoweroff" | bemenu --fn 'Roboto 15' -i -c -W 0.6 -B 3 -l 5 -p "⏻ " -H 40)" in
#lock) $HOME/.config/bspwm/screenlock.sh ;;
suspend) systemctl suspend ;;
logout) systemctl logout ;;
reboot) systemctl reboot ;;
poweroff) systemctl poweroff ;;
esac

View File

@@ -1,8 +1,8 @@
#!/bin/sh
x="Screenshot copied to clipboard"
[ "$*" = "fullclip" ] && grim - | xclip -selection clipboard -t image/png
[ "$*" = "fullclip" ] && grim - | wl-copy -t image/png
[ "$*" = "fullsave" ] && grim && x="Screenshot saved"
[ "$*" = "selclip" ] && grim -g "$(slurp)" - | xclip -selection clipboard -t image/png
[ "$*" = "selclip" ] && grim -g "$(slurp)" - | wl-copy -t image/png
notify-send "$x"

View File

@@ -1,9 +1,7 @@
#!/bin/bash
if rfkill list wifi | grep -q 'yes$' ; then
doas rfkill unblock wifi
notify-send "wifi on" -r 1
if nmcli radio wifi | grep -q 'enabled' ; then
nmcli radio wifi off
else
doas rfkill block wifi
notify-send "wifi off" -r 1
nmcli radio wifi on
fi
notify-send "wifi $(nmcli radio wifi)" -r 1

View File

@@ -1,10 +1,48 @@
#!/bin/sh
if [ -z "$*" ];then
for i in $(seq 4);do
notify-send "$(hyprctl clients | sed -nE 's_.*class: ([^ ]*).*_\1_p;s_.*workspace: ([^ ]*).*_workspace \1 : _p' | sed 'N;s/\n/ /')" -r 3 -t 1200
sleep 1
done
else
socat - UNIX-CONNECT:/tmp/hypr/$(echo $HYPRLAND_INSTANCE_SIGNATURE)/.socket2.sock | while read line; do notify-send "$(printf "$line" | sed -nE 's_^(.*workspace)>>([^ ]*)_\1 \2_p')" -r 1 -t 700 2>/dev/null ;notify-send "$(printf "$line" | sed -nE 's_activewindow>>([^,]*).*_\1_p')" -r 2 -t 700 2>/dev/null; done
fi
setup_dual_monitor(){
sed -i "s/monitor=,preferred,0x0,1,mirror,eDP-1/monitor=,preferred,auto,1/g" $HOME/.config/hypr/hyprland.conf
sleep 2
if hyprctl monitors | grep -q "HDMI-A-1";then
notify-send "Setting up dual monitor workflow"
wlr-randr --output 'HDMI-A-1' --custom-mode '1920x1080'
for i in $(seq 3);do
hyprctl dispatch moveworkspacetomonitor "$i 0"
done
hyprctl dispatch moveworkspacetomonitor "4 1"
fi
notify-send "done"
}
handle_it(){
[ -z "$1" ] || notify-send "$1"
choice=$(printf "Mirror\nExtend" | bemenu --fn 'Roboto 15' -i -c -W 0.2 -B 3 -l 20 -p "what to do??: " -m 1)
[ -z "$choice" ] && exit 0 || notify-send "${choice}ing screen"
if [ "$choice" = "Extend" ];then
setup_dual_monitor
else
sed -i "s/monitor=,preferred,auto,1/monitor=,preferred,0x0,1,mirror,eDP-1/g" $HOME/.config/hypr/hyprland.conf
fi
}
case $1 in
list)
#only lists the open applications with their workspace number so u can safely close them
for i in $(seq 4);do
notify-send "$(hyprctl clients | sed -nE 's_.*class: ([^ ]*).*_\1_p;s_.*workspace: ([^ ]*).*_workspace \1 : _p' | sed 'N;s/\n/ /')" -r 3 -t 1500
sleep 1
done ;;
focus)
#shows the workspace number as notification whenever u switch workspaces and also handles the dual monitor setup on the fly(perfect for laptop users)
socat - UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock | while read line;do
printf "%s" "$line" | grep -q "monitoradded" && handle_it "$line"
printf "%s" "$line" | grep -q "monitorremoved" && sed -i "s/monitor=,preferred,0x0,1,mirror,eDP-1/monitor=,preferred,auto,1/g" $HOME/.config/hypr/hyprland.conf
notify-send "$(printf "$line" | sed -nE 's_^(workspace)>>([^ ]*)_\1 \2_p')" -r 1 -t 700 2>/dev/null
done ;;
toggle)
#toggle between mirror and extend setup. this function should be keybinded
handle_it ;;
*)
#to be executed once after booting to setup dual montiors by default if the monitor is connected
setup_dual_monitor ;;
esac