aboutsummaryrefslogtreecommitdiffstats
path: root/config/hypr
diff options
context:
space:
mode:
Diffstat (limited to 'config/hypr')
-rw-r--r--config/hypr/UserConfigs/00-Readme9
-rw-r--r--config/hypr/UserConfigs/ENVariables.conf (renamed from config/hypr/configs/ENVariables.conf)6
-rw-r--r--config/hypr/UserConfigs/LaptopDisplay.conf (renamed from config/hypr/configs/LaptopDisplay.conf)0
-rw-r--r--config/hypr/UserConfigs/Laptops.conf (renamed from config/hypr/configs/Laptops.conf)9
-rw-r--r--config/hypr/UserConfigs/Monitors.conf (renamed from config/hypr/configs/Monitors.conf)4
-rw-r--r--config/hypr/UserConfigs/Startup_Apps.conf (renamed from config/hypr/configs/Execs.conf)12
-rw-r--r--config/hypr/UserConfigs/UserKeybinds.conf29
-rw-r--r--config/hypr/UserConfigs/UserSettings.conf150
-rw-r--r--config/hypr/UserConfigs/WindowRules.conf (renamed from config/hypr/configs/WindowRules.conf)0
-rw-r--r--config/hypr/UserScripts/00-Readme1
-rwxr-xr-xconfig/hypr/UserScripts/RainbowBorders.sh (renamed from config/hypr/scripts/RainbowBorders.sh)0
-rwxr-xr-xconfig/hypr/UserScripts/Sunset.sh (renamed from config/hypr/scripts/Sunset.sh)0
-rwxr-xr-xconfig/hypr/UserScripts/Weather.py (renamed from config/hypr/scripts/Weather.py)0
-rwxr-xr-xconfig/hypr/UserScripts/Weather.sh (renamed from config/hypr/scripts/Weather.sh)0
-rwxr-xr-xconfig/hypr/UserScripts/ZshChangeTheme.sh (renamed from config/hypr/scripts/ZshChangeTheme.sh)0
-rw-r--r--config/hypr/configs/Keybinds.conf59
-rw-r--r--config/hypr/configs/Settings.conf143
-rw-r--r--config/hypr/hyprland.conf21
-rwxr-xr-xconfig/hypr/initial-boot.sh31
-rwxr-xr-xconfig/hypr/scripts/AirplaneMode.sh16
-rwxr-xr-xconfig/hypr/scripts/Brightness.sh4
-rwxr-xr-xconfig/hypr/scripts/BrightnessKbd.sh4
-rwxr-xr-xconfig/hypr/scripts/ChangeBlur.sh6
-rwxr-xr-xconfig/hypr/scripts/ChangeLayout.sh6
-rwxr-xr-xconfig/hypr/scripts/DarkLight.sh22
-rwxr-xr-xconfig/hypr/scripts/GameMode.sh6
-rwxr-xr-xconfig/hypr/scripts/KeyHints.sh12
-rwxr-xr-xconfig/hypr/scripts/MediaCtrl.sh10
-rwxr-xr-xconfig/hypr/scripts/PywalDunst.sh24
-rwxr-xr-xconfig/hypr/scripts/QuickEdit.sh33
-rwxr-xr-xconfig/hypr/scripts/Refresh.sh30
-rwxr-xr-xconfig/hypr/scripts/RefreshNoWaybar.sh24
-rwxr-xr-xconfig/hypr/scripts/RofiBeats.sh6
-rwxr-xr-xconfig/hypr/scripts/ScreenShot.sh50
-rwxr-xr-xconfig/hypr/scripts/SwitchKeyboardLayout.sh6
-rwxr-xr-xconfig/hypr/scripts/TouchPad.sh46
-rwxr-xr-xconfig/hypr/scripts/Volume.sh16
-rw-r--r--config/hypr/v2.2.2 (renamed from config/hypr/v2.2.1)0
38 files changed, 423 insertions, 372 deletions
diff --git a/config/hypr/UserConfigs/00-Readme b/config/hypr/UserConfigs/00-Readme
new file mode 100644
index 00000000..315e3376
--- /dev/null
+++ b/config/hypr/UserConfigs/00-Readme
@@ -0,0 +1,9 @@
+Hyprland-Dots v2.2.2
+
+1.) Suggest not to rename files in this folder. As this is connected and being sourced from hyprland.conf in ~/.config/hypr
+
+2.) This folder, along with UserScripts folder will NOT be touch during update.
+
+3.) However, if hyprland has a big change in settings, i.e., blur section is moved into another group, you should managed the change.
+
+I will update the Hyprland-Dots wiki for guidance. Make sure to check out changelogs as well
diff --git a/config/hypr/configs/ENVariables.conf b/config/hypr/UserConfigs/ENVariables.conf
index 4437c641..031acae3 100644
--- a/config/hypr/configs/ENVariables.conf
+++ b/config/hypr/UserConfigs/ENVariables.conf
@@ -20,9 +20,9 @@ env = MOZ_ENABLE_WAYLAND,1
# NVIDIA
# This is from Hyprland Wiki. As a start, WLR_NO_HARDWARE_CURSORS 1 will be activated if nvidia gpu detected
-#env = WLR_NO_HARDWARE_CURSORS,1
-#env = LIBVA_DRIVER_NAME,nvidia
-#env = __GLX_VENDOR_LIBRARY_NAME,nvidia
+env = WLR_NO_HARDWARE_CURSORS,1
+env = LIBVA_DRIVER_NAME,nvidia
+env = __GLX_VENDOR_LIBRARY_NAME,nvidia
#env = GBM_BACKEND,nvidia-drm
#env = __NV_PRIME_RENDER_OFFLOAD,1
diff --git a/config/hypr/configs/LaptopDisplay.conf b/config/hypr/UserConfigs/LaptopDisplay.conf
index d50c9119..d50c9119 100644
--- a/config/hypr/configs/LaptopDisplay.conf
+++ b/config/hypr/UserConfigs/LaptopDisplay.conf
diff --git a/config/hypr/configs/Laptops.conf b/config/hypr/UserConfigs/Laptops.conf
index 17047320..14413ce0 100644
--- a/config/hypr/configs/Laptops.conf
+++ b/config/hypr/UserConfigs/Laptops.conf
@@ -2,7 +2,9 @@
# See https://wiki.hyprland.org/Configuring/Keywords/ for more variable settings
# These configs are mostly for laptops. This is addemdum to Keybinds.conf
+
$configs = $HOME/.config/hypr/configs
+$UserConfigs = $HOME/.config/hypr/UserConfigs
$mainMod = SUPER
$scriptsDir = $HOME/.config/hypr/scripts
@@ -20,6 +22,7 @@ bind = $mainMod, F6, exec, $scriptsDir/ScreenShot.sh --now # Fullscreen
bind = $mainMod SHIFT, F6, exec, $scriptsDir/ScreenShot.sh --area
bind = $mainMod CTRL, F6, exec, $scriptsDir/ScreenShot.sh --in5 # Screenshot in 5 secs
bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # Screenshot in 10 secs
+bind = ALT, F6, exec, $scriptsDir/ScreenShot.sh --active # Screenshot active window
# Below are useful when you are connecting your laptop in external display
# Suggest you edit below for your laptop display
@@ -37,9 +40,9 @@ bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # Screenshot in
# NOTE: Display for laptop are being generated into LaptopDisplay.conf
# This part is to be use if you do not want your main laptop monitor to wake up during say wallpaper change etc
-#bindl = , switch:off:Lid Switch,exec,echo "monitor = eDP-1, preferred, auto, 1" > $configs/LaptopDisplay.conf
-#bindl = , switch:on:Lid Switch,exec,echo "monitor = eDP-1, disable" > $configs/LaptopDisplay.conf
+#bindl = , switch:off:Lid Switch,exec,echo "monitor = eDP-1, preferred, auto, 1" > $UserConfigs/LaptopDisplay.conf
+#bindl = , switch:on:Lid Switch,exec,echo "monitor = eDP-1, disable" > $UserConfigs/LaptopDisplay.conf
# for laptop-lid action (to erase the last entry)
-#exec-once = echo "eDP-1, preferred, auto, 1" > $HOME/.config/hypr/configs/LaptopDisplay.conf
+#exec-once = echo "eDP-1, preferred, auto, 1" > $HOME/.config/hypr/UserConfigs/LaptopDisplay.conf
##############################################################################
diff --git a/config/hypr/configs/Monitors.conf b/config/hypr/UserConfigs/Monitors.conf
index ac87862a..ca2ef0e6 100644
--- a/config/hypr/configs/Monitors.conf
+++ b/config/hypr/UserConfigs/Monitors.conf
@@ -5,10 +5,6 @@
# https://wiki.hyprland.org/Configuring/Monitors/
# Configure your Display resolution, offset, scale and Monitors here, use `hyprctl monitors` to get the info.
-#Could help when scaling and not pixelating
-xwayland {
- force_zero_scaling = true
-}
# Monitors
monitor=,preferred,auto,1
diff --git a/config/hypr/configs/Execs.conf b/config/hypr/UserConfigs/Startup_Apps.conf
index 76ec382b..2aacba44 100644
--- a/config/hypr/configs/Execs.conf
+++ b/config/hypr/UserConfigs/Startup_Apps.conf
@@ -2,12 +2,11 @@
#Commands & Apps to be executed at launch
$scriptsDir = $HOME/.config/hypr/scripts
+$UserscriptsDir = $HOME/.config/hypr/UserScripts
$lock = $scriptsDir/LockScreen.sh
$SwwwRandom = $scriptsDir/WallpaperRandom.sh
$WallpaperPath = $HOME/Pictures/wallpapers
-# Initial boot script to start Pywal and Set wallpaper. This line and corresponding script can be safely deleted once logged in
-exec-once = $HOME/.config/hypr/initial-boot.sh
# wallpaper stuff / More wallpaper options below
exec-once = swww query || swww init
@@ -22,17 +21,18 @@ exec-once = $scriptsDir/Polkit.sh
# starup apps
exec-once = waybar &
-exec-once = dunst &
-#exec-once = blueman-applet &
exec-once = nm-applet --indicator &
+exec-once = swaync &
+#exec-once = blueman-applet &
#exec-once = rog-control-center &
+
#clipboard manager
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
# Rainbow borders
-exec-once = $scriptsDir/RainbowBorders.sh
+exec-once = $UserscriptsDir/RainbowBorders.sh
# sway-idle with lock only
exec-once = swayidle -w timeout 900 '$lock'
@@ -51,4 +51,4 @@ exec-once = swayidle -w timeout 900 '$lock'
#exec-once = $scriptsDir/PortalHyprland.sh
# wlsunset - for automatic gamma adjustment. Default is 1900 to 0700 (7pm to 7am). Edit Sunset.sh accordingly
-# exec-once = $scriptsDir/Sunset.sh \ No newline at end of file
+# exec-once = $UserScriptsDir/Sunset.sh \ No newline at end of file
diff --git a/config/hypr/UserConfigs/UserKeybinds.conf b/config/hypr/UserConfigs/UserKeybinds.conf
new file mode 100644
index 00000000..f55f0d5e
--- /dev/null
+++ b/config/hypr/UserConfigs/UserKeybinds.conf
@@ -0,0 +1,29 @@
+## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# This is where you put your own keybinds. Be Mindful to check as well ~/.config/hypr/configs/Keybinds.conf to avoid conflict
+# if you think I should replace the Pre-defined Keybinds in ~/.config/hypr/configs/Keybinds.conf , submit an issue or let me know in DC and present me a valid reason as to why, such as conflicting with global shortcuts, etc etc
+
+# See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables
+# See also Laptops.conf for laptops keybinds
+
+$mainMod = SUPER
+$files = thunar
+$term = kitty
+$scriptsDir = $HOME/.config/hypr/scripts
+$UserScripts = $HOME/.config/hypr/UserScripts
+
+# rofi App launcher
+bindr = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window
+bind = $mainMod, D, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window
+
+bind = $mainMod, Return, exec, $term # Launch terminal
+bind = $mainMod, T, exec, $files
+
+# User Added Keybinds
+bind = $mainMod SHIFT, O, exec, $UserScripts/ZshChangeTheme.sh # Change oh-my-zsh theme
+
+# For passthrough keyboard into a VM
+# bind = $mainMod ALT, P, submap, passthru
+#submap = passthru
+# to unbind
+#bind = $mainMod ALT, P, submap, reset
+#submap = reset
diff --git a/config/hypr/UserConfigs/UserSettings.conf b/config/hypr/UserConfigs/UserSettings.conf
new file mode 100644
index 00000000..fa2e55a9
--- /dev/null
+++ b/config/hypr/UserConfigs/UserSettings.conf
@@ -0,0 +1,150 @@
+## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# User Settings
+# This is where you put your own settings as this will not be touched during update
+
+## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables
+
+# Sourcing colors generated by pywal
+source = $HOME/.cache/wal/colors-hyprland
+# blurls = waybar
+# blurls = rofi
+
+dwindle {
+ pseudotile = yes
+ preserve_split = yes
+ special_scale_factor = 0.8
+}
+
+master {
+ new_is_master=1
+ new_on_top=1
+ mfact = 0.5
+}
+
+general {
+ sensitivity=1.00
+ apply_sens_to_raw=1
+ gaps_in = 4
+ gaps_out = 8
+ border_size = 2
+ resize_on_border = true
+
+ col.active_border = $color0 $color2 $color4 $color6 $color8 90deg
+ col.inactive_border = $backgroundCol
+
+ layout = master
+}
+
+group {
+ col.border_active = $color15
+
+ groupbar {
+ col.active = $color0
+ }
+}
+
+decoration {
+ rounding = 8
+
+ active_opacity = 1.0
+ inactive_opacity = 0.9
+ fullscreen_opacity = 1.0
+
+ dim_inactive = true
+ dim_strength = 0.1
+
+ drop_shadow=true
+ shadow_range=6
+ shadow_render_power = 1
+ col.shadow = $color2
+ col.shadow_inactive = 0x50000000
+
+ blur {
+ enabled = true
+ size = 5
+ passes = 2
+ ignore_opacity = true
+ new_optimizations = true
+ }
+}
+
+animations {
+ enabled = yes
+
+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
+ bezier = linear, 0.0, 0.0, 1.0, 1.0
+ bezier = wind, 0.05, 0.9, 0.1, 1.05
+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
+ bezier = winOut, 0.3, -0.3, 0, 1
+ bezier = slow, 0, 0.85, 0.3, 1
+ bezier = overshot, 0.7, 0.6, 0.1, 1.1
+ bezier = bounce, 1.1, 1.6, 0.1, 0.85
+ bezier = sligshot, 1, -1, 0.15, 1.25
+ bezier = nice, 0, 6.9, 0.5, -4.20
+
+ animation = windowsIn, 1, 5, slow, popin
+ animation = windowsOut, 1, 5, winOut, popin
+ animation = windowsMove, 1, 5, wind, slide
+ animation = border, 1, 10, linear
+ animation = borderangle, 1, 180, linear, loop #used by rainbow borders and rotating colors
+ animation = fade, 1, 5, overshot
+ animation = workspaces, 1, 5, wind
+ animation = windows, 1, 5, bounce, popin
+}
+
+input {
+ kb_layout=us
+ kb_variant=
+ kb_model=
+ kb_options=grp:alt_shift_toggle
+ kb_rules=
+ repeat_rate=50
+ repeat_delay=300
+ numlock_by_default=1
+ left_handed=0
+ follow_mouse=1
+ float_switch_override_focus=0
+
+ touchpad {
+ disable_while_typing=1
+ natural_scroll=0
+ clickfinger_behavior=0
+ middle_button_emulation=1
+ tap-to-click=1
+ drag_lock=0
+ }
+}
+
+gestures {
+ workspace_swipe=1
+ workspace_swipe_fingers=3
+ workspace_swipe_distance=400
+ workspace_swipe_invert=1
+ workspace_swipe_min_speed_to_force=30
+ workspace_swipe_cancel_ratio=0.5
+ workspace_swipe_create_new=1
+ workspace_swipe_forever=1
+}
+
+misc {
+ disable_hyprland_logo = true
+ disable_splash_rendering = true
+ mouse_move_enables_dpms = true
+ #vrr = 0
+ enable_swallow = true
+ no_direct_scanout = true #for fullscreen games
+ focus_on_activate = false
+ swallow_regex = ^(kitty)$
+ #disable_autoreload = true
+}
+
+binds {
+ workspace_back_and_forth=1
+ allow_workspace_cycles=1
+ pass_mouse_when_bound=0
+}
+
+#Could help when scaling and not pixelating
+xwayland {
+ force_zero_scaling = true
+}
diff --git a/config/hypr/configs/WindowRules.conf b/config/hypr/UserConfigs/WindowRules.conf
index a3a77cfb..a3a77cfb 100644
--- a/config/hypr/configs/WindowRules.conf
+++ b/config/hypr/UserConfigs/WindowRules.conf
diff --git a/config/hypr/UserScripts/00-Readme b/config/hypr/UserScripts/00-Readme
new file mode 100644
index 00000000..de251df0
--- /dev/null
+++ b/config/hypr/UserScripts/00-Readme
@@ -0,0 +1 @@
+a) Place your new scripts here. If you need to edit a script from main script (~/.config/hypr/scripts), copy it on this folder, and edit. Make sure to update as well the keybinds in ~/.config/hypr/UserConfigs folder if any script is attached to it \ No newline at end of file
diff --git a/config/hypr/scripts/RainbowBorders.sh b/config/hypr/UserScripts/RainbowBorders.sh
index 1f5e6cdb..1f5e6cdb 100755
--- a/config/hypr/scripts/RainbowBorders.sh
+++ b/config/hypr/UserScripts/RainbowBorders.sh
diff --git a/config/hypr/scripts/Sunset.sh b/config/hypr/UserScripts/Sunset.sh
index 96c27c5b..96c27c5b 100755
--- a/config/hypr/scripts/Sunset.sh
+++ b/config/hypr/UserScripts/Sunset.sh
diff --git a/config/hypr/scripts/Weather.py b/config/hypr/UserScripts/Weather.py
index 154c1589..154c1589 100755
--- a/config/hypr/scripts/Weather.py
+++ b/config/hypr/UserScripts/Weather.py
diff --git a/config/hypr/scripts/Weather.sh b/config/hypr/UserScripts/Weather.sh
index 40048710..40048710 100755
--- a/config/hypr/scripts/Weather.sh
+++ b/config/hypr/UserScripts/Weather.sh
diff --git a/config/hypr/scripts/ZshChangeTheme.sh b/config/hypr/UserScripts/ZshChangeTheme.sh
index 7057ed2e..7057ed2e 100755
--- a/config/hypr/scripts/ZshChangeTheme.sh
+++ b/config/hypr/UserScripts/ZshChangeTheme.sh
diff --git a/config/hypr/configs/Keybinds.conf b/config/hypr/configs/Keybinds.conf
index da27c538..84b78cff 100644
--- a/config/hypr/configs/Keybinds.conf
+++ b/config/hypr/configs/Keybinds.conf
@@ -1,30 +1,20 @@
## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# Default Keybinds
-# See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables
-# See also Laptops.conf for laptops keybinds
$mainMod = SUPER
-$files = thunar
-$browser = firefox
-$term = kitty
$scriptsDir = $HOME/.config/hypr/scripts
-# rofi App launcher
-bindr = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run
-bind = $mainMod, D, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run
-
-bind = $mainMod, Return, exec, $term # Launch terminal
bind = CTRL ALT, Delete, exec, hyprctl dispatch exit 0
bind = $mainMod SHIFT, Q, closewindow,
bind = $mainMod SHIFT, F, togglefloating,
bind = $mainMod ALT, F, exec, hyprctl dispatch workspaceopt allfloat
bind = $mainMod, F, fullscreen
bind = $mainMod, Q, killactive,
-bind = $mainMod, T, exec, $files
bind = CTRL ALT, L, exec, $scriptsDir/LockScreen.sh
bind = CTRL ALT, P, exec, $scriptsDir/Wlogout.sh
# FEATURES / EXTRAS
-bind = $mainMod ALT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, dunst, rofi
+bind = $mainMod ALT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, swaync, rofi
bind = $mainMod CTRL, S, exec, $scriptsDir/RofiBeats.sh # online music
bind = $mainMod ALT, E, exec, $scriptsDir/RofiEmoji.sh # emoji
bind = $mainMod, H, exec, $scriptsDir/KeyHints.sh # Small help file
@@ -34,9 +24,7 @@ bind = $mainMod SHIFT, G, exec, $scriptsDir/GameMode.sh # animations ON/OFF
bind = $mainMod ALT, K, exec, $scriptsDir/SwitchKeyboardLayout.sh # Switch Keyboard Layout
bind = $mainMod, Space, exec, $scriptsDir/ChangeLayout.sh # Toggle Master or Dwindle Layout
bind = $mainMod ALT, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager
-
-# MISC (Miscellaneous Keybinds)
-bind = $mainMod SHIFT, O, exec, $scriptsDir/ZshChangeTheme.sh # Change oh-my-zsh theme
+bind = $mainMod SHIFT, N, exec, swaync-client -t -sw # swayNC panel
# Wallpaper related keybinds
bind = $mainMod, W, exec, $scriptsDir/WallpaperSelect.sh # Select wallpaper to apply
@@ -59,7 +47,7 @@ bind = $mainMod SHIFT, M, exec, hyprctl dispatch splitratio -0.3
# group
bind = $mainMod, G, togglegroup
-bind = ALT, tab, changegroupactive # change focus to another window
+bind = ALT, tab, changegroupactive #change focus to another window
# Special Keys / Hot Keys
bind = , xf86audioraisevolume, exec, $scriptsDir/Volume.sh --inc #volume up
@@ -77,23 +65,23 @@ bind = , xf86AudioNext, exec, $scriptsDir/MediaCtrl.sh --nxt
bind = , xf86AudioPrev, exec, $scriptsDir/MediaCtrl.sh --prv
bind = , xf86audiostop, exec, $scriptsDir/MediaCtrl.sh --stop
-# Resize (vim style)
-binde = $mainMod SHIFT, H, resizeactive,-50 0
-binde = $mainMod SHIFT, L, resizeactive,50 0
-binde = $mainMod SHIFT, K, resizeactive,0 -50
-binde = $mainMod SHIFT, J, resizeactive,0 50
+# Screenshot keybindings NOTE: You may need to press Fn key as well
+bind = $mainMod, Print, exec, $scriptsDir/ScreenShot.sh --now
+bind = $mainMod SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --area
+bind = $mainMod CTRL, Print, exec, $scriptsDir/ScreenShot.sh --in5 #screenshot in 5 secs
+bind = $mainMod ALT, Print, exec, $scriptsDir/ScreenShot.sh --in10 #screenshot in 10 secs
+bind = ALT, Print, exec, $scriptsDir/ScreenShot.sh --active #screenshot in 10 secs
+# screenshot with swappy (another screenshot tool)
+bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | swappy -f -
+
+# Resize windows
binde = $mainMod SHIFT, left, resizeactive,-50 0
binde = $mainMod SHIFT, right, resizeactive,50 0
binde = $mainMod SHIFT, up, resizeactive,0 -50
binde = $mainMod SHIFT, down, resizeactive,0 50
-# Move (vim style)
-bind = $mainMod CTRL, H, movewindow, l
-bind = $mainMod CTRL, L, movewindow, r
-bind = $mainMod CTRL, K, movewindow, u
-bind = $mainMod CTRL, J, movewindow, d
-
+# Move windows
bind = $mainMod CTRL, left, movewindow, l
bind = $mainMod CTRL, right, movewindow, r
bind = $mainMod CTRL, up, movewindow, u
@@ -162,20 +150,3 @@ bind = $mainMod, comma, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
-
-# Screenshot keybindings NOTE: You may need to press Fn key as well
-bind = $mainMod, Print, exec, $scriptsDir/ScreenShot.sh --now
-bind = $mainMod SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --area
-bind = $mainMod CTRL, Print, exec, $scriptsDir/ScreenShot.sh --in5 #screenshot in 5 secs
-bind = $mainMod ALT, Print, exec, $scriptsDir/ScreenShot.sh --in10 #screenshot in 10 secs
-
-
-# screenshot with swappy (another screenshot tool)
-bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | swappy -f -
-
-# If you are using Ja's Hyprland dots as Host and wants to passthrough keyboard into a VM
-#bind = $mainMod ALT, P, submap, passthru
-#submap = passthru
-# to unbind
-#bind = $mainMod ALT, P, submap, reset
-#submap = reset
diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf
index 7b0c0606..96f6f1e9 100644
--- a/config/hypr/configs/Settings.conf
+++ b/config/hypr/configs/Settings.conf
@@ -1,143 +1,8 @@
## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
-## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables
-
-# Sourcing colors generated by pywal
-source = $HOME/.cache/wal/colors-hyprland
-# blurls = waybar
-# blurls = rofi
-
-dwindle {
- pseudotile = yes
- preserve_split = yes
- special_scale_factor = 0.8
-}
-
-master {
- new_is_master=1
- new_on_top=1
- mfact = 0.5
-}
-
-general {
- sensitivity=1.00
- apply_sens_to_raw=1
- gaps_in = 4
- gaps_out = 8
- border_size = 2
- resize_on_border = true
-
- col.active_border = $color0 $color2 $color4 $color6 $color8 45deg
- col.inactive_border = $backgroundCol
-
- layout = master
-}
-
-group {
- col.border_active = $color15
-
- groupbar {
- col.active = $color0
- }
-}
-
-decoration {
- rounding = 8
-
- active_opacity = 1.0
- inactive_opacity = 0.9
- fullscreen_opacity = 1.0
+# Default Settings. avoid changing this file as during update, this will be replaced
- dim_inactive = true
- dim_strength = 0.1
-
- drop_shadow=true
- shadow_range=6
- shadow_render_power = 1
- col.shadow = $color2
- col.shadow_inactive = 0x50000000
-
- blur {
- enabled = true
- size = 5
- passes = 2
- ignore_opacity = true
- new_optimizations = true
- }
-}
-
-animations {
- enabled = yes
-
- bezier = myBezier, 0.05, 0.9, 0.1, 1.05
- bezier = linear, 0.0, 0.0, 1.0, 1.0
- bezier = wind, 0.05, 0.9, 0.1, 1.05
- bezier = winIn, 0.1, 1.1, 0.1, 1.1
- bezier = winOut, 0.3, -0.3, 0, 1
- bezier = slow, 0, 0.85, 0.3, 1
- bezier = overshot, 0.7, 0.6, 0.1, 1.1
- bezier = bounce, 1.1, 1.6, 0.1, 0.85
- bezier = sligshot, 1, -1, 0.15, 1.25
- bezier = nice, 0, 6.9, 0.5, -4.20
-
- animation = windowsIn, 1, 5, slow, popin
- animation = windowsOut, 1, 5, winOut, popin
- animation = windowsMove, 1, 5, wind, slide
- animation = border, 1, 10, linear
- animation = borderangle, 1, 100, linear, loop
- animation = fade, 1, 5, overshot
- animation = workspaces, 1, 5, wind
- animation = windows, 1, 5, bounce, popin
-}
-
-input {
- kb_layout=us
- kb_variant=
- kb_model=
- kb_options=grp:alt_shift_toggle
- kb_rules=
- repeat_rate=50
- repeat_delay=300
- numlock_by_default=1
- left_handed=0
- follow_mouse=1
- float_switch_override_focus=0
-
- touchpad {
- disable_while_typing=1
- natural_scroll=0
- clickfinger_behavior=0
- middle_button_emulation=1
- tap-to-click=1
- drag_lock=0
- }
-}
-
-gestures {
- workspace_swipe=1
- workspace_swipe_fingers=3
- workspace_swipe_distance=400
- workspace_swipe_invert=1
- workspace_swipe_min_speed_to_force=30
- workspace_swipe_cancel_ratio=0.5
- workspace_swipe_create_new=1
- workspace_swipe_forever=1
-}
-
-misc {
- disable_hyprland_logo = true
- disable_splash_rendering = true
- mouse_move_enables_dpms = true
- #vrr = 0
- enable_swallow = true
- no_direct_scanout = true #for fullscreen games
- focus_on_activate = false
- swallow_regex = ^(kitty)$
- #disable_autoreload = true
-}
+## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables
-binds {
- workspace_back_and_forth=1
- allow_workspace_cycles=1
- pass_mouse_when_bound=0
-}
+# Initial boot script enable to apply initial wallpapers, theming, new settings etc.
+exec-once = $HOME/.config/hypr/initial-boot.sh \ No newline at end of file
diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf
index c09e6f75..24c0be6f 100644
--- a/config/hypr/hyprland.conf
+++ b/config/hypr/hyprland.conf
@@ -1,17 +1,22 @@
# Sourcing external config files
+
+###### Default Configs
$configs = $HOME/.config/hypr/configs
-source=$configs/ENVariables.conf
-source=$configs/Execs.conf
-source=$configs/Keybinds.conf
-source=$configs/Laptops.conf
-source=$configs/LaptopDisplay.conf
-source=$configs/Monitors.conf
-source=$configs/WindowRules.conf
source=$configs/Settings.conf
+source=$configs/Keybinds.conf
+#### User Configs
+$UserConfigs = $HOME/.config/hypr/UserConfigs
-
+source= $UserConfigs/Startup_Apps.conf
+source= $UserConfigs/ENVariables.conf
+source= $UserConfigs/UserKeybinds.conf
+source= $UserConfigs/UserSettings.conf
+source= $UserConfigs/Monitors.conf
+source= $UserConfigs/Laptops.conf
+source= $UserConfigs/LaptopDisplay.conf
+source= $UserConfigs/WindowRules.conf
diff --git a/config/hypr/initial-boot.sh b/config/hypr/initial-boot.sh
index cbf13b40..3d9faf54 100755
--- a/config/hypr/initial-boot.sh
+++ b/config/hypr/initial-boot.sh
@@ -1,9 +1,9 @@
#!/bin/bash
-
# A bash script designed to run only once dotfiles installed
-# THIS SCRIPT CAN BE DELETED ONCE SUCCESSFULLY BOOTED!! And also, edit ~/.config/hypr/configs/Execs.conf
+# THIS SCRIPT CAN BE DELETED ONCE SUCCESSFULLY BOOTED!! And also, edit ~/.config/hypr/configs/Settings.conf
# not necessary to do since this script is only designed to run only once as long as the marker exists
+# However, I do highly suggest not to touch it since again, as long as the marker exist, script wont run
# Variables
scriptsDir=$HOME/.config/hypr/scripts
@@ -17,16 +17,16 @@ effect="--transition-bezier .43,1.19,1,.4 --transition-fps 30 --transition-type
# Check if a marker file exists.
if [ ! -f ~/.config/hypr/.initial_startup_done ]; then
- # Initialize pywal
- #printf " Initializing pywal........\n\n"
- wal -i $wallpaper -s -t
-
+ # Initialize pywal and wallpaper
+ if [ -f "$wallpaper" ]; then
+ wal -i $wallpaper -s -t > /dev/null
+ swww init && $swww $wallpaper $effect
+ "$scriptsDir/PywalSwww.sh" > /dev/null 2>&1 &
+ fi
+
# Initial symlink for Pywal Dark and Light for Rofi Themes
- ln -sf "$HOME/.cache/wal/colors-rofi-dark.rasi" "$HOME/.config/rofi/pywal-color/pywal-theme.rasi"
+ ln -sf "$HOME/.cache/wal/colors-rofi-dark.rasi" "$HOME/.config/rofi/pywal-color/pywal-theme.rasi" > /dev/null 2>&1 &
- # Initial scripts to load in order to have a proper wallpaper waybar and pywal themes
- swww init && $swww "$wallpaper" $effect
-
# initiate GTK dark mode and apply icon and cursor theme
gsettings set org.gnome.desktop.interface color-scheme prefer-dark > /dev/null 2>&1 &
gsettings set org.gnome.desktop.interface gtk-theme Tokyonight-Dark-BL-LB > /dev/null 2>&1 &
@@ -41,11 +41,12 @@ if [ ! -f ~/.config/hypr/.initial_startup_done ]; then
"$scriptsDir/SwitchKeyboardLayout.sh" > /dev/null 2>&1 &
# Initial waybar style
- ln -sf "$waybar_style" "$HOME/.config/waybar/style.css"
-
- # Refreshing waybar, dunst, rofi etc.
- "$scriptsDir/PywalSwww.sh" > /dev/null 2>&1 &
- "$scriptsDir/Refresh.sh" > /dev/null 2>&1 &
+ if [ -f "$waybar_style" ]; then
+ ln -sf "$waybar_style" "$HOME/.config/waybar/style.css"
+
+ # Refreshing waybar, swaync, rofi etc.
+ "$scriptsDir/Refresh.sh" > /dev/null 2>&1 &
+ fi
# Create a marker file to indicate that the script has been executed.
touch ~/.config/hypr/.initial_startup_done
diff --git a/config/hypr/scripts/AirplaneMode.sh b/config/hypr/scripts/AirplaneMode.sh
index 428a09bd..f3a50629 100755
--- a/config/hypr/scripts/AirplaneMode.sh
+++ b/config/hypr/scripts/AirplaneMode.sh
@@ -1,12 +1,14 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
-wifi="$(nmcli r wifi | awk 'FNR = 2 {print $1}')"
-if [ "$wifi" == "enabled" ]; then
- rfkill block all &
- dunstify -u normal -i "$dunst_notif" -t 1000 'airplane mode: active'
+# Check if any wireless device is blocked
+wifi_blocked=$(rfkill list wifi | grep -o "Soft blocked: yes")
+
+if [ -n "$wifi_blocked" ]; then
+ rfkill unblock wifi
+ notify-send -u low -i "$notif" 'Airplane mode: OFF'
else
- rfkill unblock all &
- dunstify -u normal -i "$dunst_notif" -t 1000 'airplane mode: inactive'
+ rfkill block wifi
+ notify-send -u low -i "$notif" 'Airplane mode: ON'
fi
diff --git a/config/hypr/scripts/Brightness.sh b/config/hypr/scripts/Brightness.sh
index c5c0b80f..14c03da5 100755
--- a/config/hypr/scripts/Brightness.sh
+++ b/config/hypr/scripts/Brightness.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
notification_timeout=1000
# Get brightness
@@ -26,7 +26,7 @@ get_icon() {
# Notify
notify_user() {
- dunstify -h string:x-dunst-stack-tag:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness : $current%"
+ notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness : $current%"
}
# Change brightness
diff --git a/config/hypr/scripts/BrightnessKbd.sh b/config/hypr/scripts/BrightnessKbd.sh
index c6d6afd3..3bdcebcb 100755
--- a/config/hypr/scripts/BrightnessKbd.sh
+++ b/config/hypr/scripts/BrightnessKbd.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
# Get keyboard brightness
get_kbd_backlight() {
@@ -24,7 +24,7 @@ get_icon() {
}
# Notify
notify_user() {
- dunstify -h string:x-dunst-stack-tag:brightness_notif -h int:value:$current -u low -i "$icon" "Keyboard Brightness : $current%"
+ notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Keyboard Brightness : $current%"
}
# Change brightness
diff --git a/config/hypr/scripts/ChangeBlur.sh b/config/hypr/scripts/ChangeBlur.sh
index 891e22eb..95789f5c 100755
--- a/config/hypr/scripts/ChangeBlur.sh
+++ b/config/hypr/scripts/ChangeBlur.sh
@@ -1,15 +1,15 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
STATE=$(hyprctl -j getoption decoration:blur:passes | jq ".int")
if [ "${STATE}" == "2" ]; then
hyprctl keyword decoration:blur:size 2
hyprctl keyword decoration:blur:passes 1
- dunstify -u low -i "$dunst_notif" "Less blur"
+ notify-send -e -u low -i "$notif" "Less blur"
else
hyprctl keyword decoration:blur:size 5
hyprctl keyword decoration:blur:passes 2
- dunstify -u low -i "$dunst_notif" "Normal blur"
+ notify-send -e -u low -i "$notif" "Normal blur"
fi
diff --git a/config/hypr/scripts/ChangeLayout.sh b/config/hypr/scripts/ChangeLayout.sh
index 28b72035..93bc2fe9 100755
--- a/config/hypr/scripts/ChangeLayout.sh
+++ b/config/hypr/scripts/ChangeLayout.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
LAYOUT=$(hyprctl -j getoption general:layout | jq '.str' | sed 's/"//g')
@@ -12,7 +12,7 @@ case $LAYOUT in
hyprctl keyword bind SUPER,J,cyclenext
hyprctl keyword bind SUPER,K,cyclenext,prev
hyprctl keyword bind SUPER,O,togglesplit
- dunstify -u low -i "$dunst_notif" "Dwindle Layout"
+ notify-send -e -u low -i "$notif" "Dwindle Layout"
;;
"dwindle")
hyprctl keyword general:layout master
@@ -21,7 +21,7 @@ case $LAYOUT in
hyprctl keyword unbind SUPER,O
hyprctl keyword bind SUPER,J,layoutmsg,cyclenext
hyprctl keyword bind SUPER,K,layoutmsg,cycleprev
- dunstify -u low -i "$dunst_notif" "Master Layout"
+ notify-send -e -u low -i "$notif" "Master Layout"
;;
*) ;;
diff --git a/config/hypr/scripts/DarkLight.sh b/config/hypr/scripts/DarkLight.sh
index 612540b8..ec8c4473 100755
--- a/config/hypr/scripts/DarkLight.sh
+++ b/config/hypr/scripts/DarkLight.sh
@@ -1,13 +1,13 @@
#!/bin/bash
-#set -x
+set -x
# Paths
wallpaper_base_path="$HOME/Pictures/wallpapers/Dynamic-Wallpapers"
dark_wallpapers="$wallpaper_base_path/Dark"
light_wallpapers="$wallpaper_base_path/Light"
hypr_config_path="$HOME/.config/hypr"
-dunst_config="$HOME/.config/dunst"
+swaync_style="$HOME/.config/swaync/style.css"
SCRIPTSDIR="$HOME/.config/hypr/scripts"
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
dark_rofi_pywal="$HOME/.cache/wal/colors-rofi-dark.rasi"
light_rofi_pywal="$HOME/.cache/wal/colors-rofi-light.rasi"
@@ -38,7 +38,7 @@ update_theme_mode() {
# Function to notify user
notify_user() {
- dunstify -u low -i "$dunst_notif" "Switching to $1 mode"
+ notify-send -u low -i "$notif" "Switching to $1 mode"
}
# Function to set Waybar style
@@ -61,13 +61,14 @@ set_waybar_style() {
set_waybar_style "$next_mode"
notify_user "$next_mode"
-# Change background for dunst
+
+# swaync color change
if [ "$next_mode" = "Dark" ]; then
- sed -i '/background = /s/.*/ background = "#00000095"/' "${dunst_config}/dunstrc"
- sed -i '/foreground = /s/.*/ foreground = "#fafafa"/' "${dunst_config}/dunstrc"
+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.8);/' "${swaync_style}"
+ sed -i '/@define-color noti-bg-alt/s/#.*;/#111111;/' "${swaync_style}"
else
- sed -i '/background = /s/.*/ background = "#ffffff99"/' "${dunst_config}/dunstrc"
- sed -i '/foreground = /s/.*/ foreground = "#00000095"/' "${dunst_config}/dunstrc"
+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.9);/' "${swaync_style}"
+ sed -i '/@define-color noti-bg-alt/s/#.*;/#F0F0F0;/' "${swaync_style}"
fi
# Set Dynamic Wallpaper for Dark or Light Mode
@@ -186,8 +187,7 @@ sleep 1
${SCRIPTSDIR}/Refresh.sh
# Display notifications for theme and icon changes
-dunstify -u normal -i "$dunst_notif" "Themes are set to $selected_theme"
-dunstify -u normal -i "$dunst_notif" "Icon themes set to $selected_icon"
+notify-send -u normal -i "$notif" "Themes in $next_mode Mode"
exit 0
diff --git a/config/hypr/scripts/GameMode.sh b/config/hypr/scripts/GameMode.sh
index 0e6f83af..d53ec7d3 100755
--- a/config/hypr/scripts/GameMode.sh
+++ b/config/hypr/scripts/GameMode.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+notif="$HOME/.config/swaync/images/bell.png"
SCRIPTSDIR="$HOME/.config/hypr/scripts"
@@ -15,7 +15,7 @@ if [ "$HYPRGAMEMODE" = 1 ] ; then
keyword general:border_size 1;\
keyword decoration:rounding 0"
swww kill
- dunstify -u low -i "$dunst_notif" "gamemode enabled. All animations off"
+ notify-send -e -u low -i "$notif" "gamemode enabled. All animations off"
exit
else
swww init && swww img "$HOME/.config/rofi/.current_wallpaper"
@@ -23,7 +23,7 @@ else
${SCRIPTSDIR}/PywalSwww.sh
sleep 0.5
${SCRIPTSDIR}/Refresh.sh
- dunstify -u normal -i "$dunst_notif" "gamemode disabled. All animations normal"
+ notify-send -e -u normal -i "$notif" "gamemode disabled. All animations normal"
exit
fi
hyprctl reload
diff --git a/config/hypr/scripts/KeyHints.sh b/config/hypr/scripts/KeyHints.sh
index 7bb80e18..180befa1 100755
--- a/config/hypr/scripts/KeyHints.sh
+++ b/config/hypr/scripts/KeyHints.sh
@@ -34,7 +34,6 @@ yad --width=$dynamic_width --height=$dynamic_height \
--column=Key: \
--column=Description: \
--column=Command: \
- --timeout=60 \
--timeout-indicator=bottom \
"ESC" "close this app" "" "=" "SUPER KEY (Windows Key)" "(SUPER KEY)" \
" enter" "Terminal" "(kitty)" \
@@ -45,13 +44,15 @@ yad --width=$dynamic_width --height=$dynamic_height \
" Alt V" "Clipboard Manager" "(cliphist)" \
" W" "Choose wallpaper" "(swww)" \
"CTRL ALT W" "Random wallpaper" "(swww)" \
-" CTRL B" "Choose waybar styles" "(waybar styles)" \
" B" "Hide/UnHide Waybar" "waybar" \
+" CTRL B" "Choose waybar styles" "(waybar styles)" \
" ALT B" "Choose waybar layout" "(waybar layout)" \
-" ALT R" "Reload Waybar Dunst Rofi" "" \
+" ALT R" "Reload Waybar swaync Rofi" "CHECK NOTIFICATION FIRST!!!" \
+" SHIFT N" "Launch Notification Panel" "swaync Notification Center" \
" Print" "screenshot" "(grim)" \
" Shift Print" "screenshot region" "(grim + slurp)" \
" Shift S" "screenshot region" "(swappy)" \
+"ALT Print" "Screenshot active window" "active window only" \
"CTRL ALT P" "power-menu" "(wlogout)" \
"CTRL ALT L" "screen lock" "(swaylock)" \
"CTRL ALT Del" "Hyprland Exit" "(SAVE YOUR WORK!!!)" \
@@ -64,8 +65,7 @@ yad --width=$dynamic_width --height=$dynamic_height \
" H" "Launch this app" "" \
" E" "View or EDIT Keybinds, Settings, Monitor" "" \
"" "" "" \
-"" "More tips on Hyprland-Dots github wiki page" ""\
-"" "" "" \
-"" "" "This window will auto-close in 60 secs" ""\
+"More tips:" "https://github.com/JaKooLit/Hyprland-Dots/wiki" ""\
+
diff --git a/config/hypr/scripts/MediaCtrl.sh b/config/hypr/scripts/MediaCtrl.sh
index f9611523..9d970443 100755
--- a/config/hypr/scripts/MediaCtrl.sh
+++ b/config/hypr/scripts/MediaCtrl.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-music_icon="$HOME/.config/dunst/icons/music.png"
+music_icon="$HOME/.config/swaync/icons/music.png"
# Play the next track
play_next() {
@@ -23,18 +23,18 @@ toggle_play_pause() {
# Stop playback
stop_playback() {
playerctl stop
- dunstify -r 123 -i "$music_icon" "Playback Stopped"
+ notify-send -e -u low -i "$music_icon" "Playback Stopped"
}
-# Display Dunst notification with song information
+# Display notification with song information
show_music_notification() {
status=$(playerctl status)
if [[ "$status" == "Playing" ]]; then
song_title=$(playerctl metadata title)
song_artist=$(playerctl metadata artist)
- dunstify -r 123 -i "$music_icon" "Now Playing:" "$song_title\nby $song_artist"
+ notify-send -e -u low -i "$music_icon" "Now Playing:" "$song_title\nby $song_artist"
elif [[ "$status" == "Paused" ]]; then
- dunstify -r 123 -i "$music_icon" "Playback Paused"
+ notify-send -e -u low -i "$music_icon" "Playback Paused"
fi
}
diff --git a/config/hypr/scripts/PywalDunst.sh b/config/hypr/scripts/PywalDunst.sh
deleted file mode 100755
index 1c9398f2..00000000
--- a/config/hypr/scripts/PywalDunst.sh
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-
-# -lf/nf/cf color
-# Defines the foreground color for low, normal and critical notifications respectively.
-#
-# -lb/nb/cb color
-# Defines the background color for low, normal and critical notifications respectively.
-#
-# -lfr/nfr/cfr color
-# Defines the frame color for low, normal and critical notifications respectively.
-
-[ -f "$HOME/.cache/wal/colors.sh" ] && . "$HOME/.cache/wal/colors.sh"
-
-pkill dunst
-
-DUNST_FILE=~/.config/dunst/dunstrc
-
-# update dunst based on pywal colors.
-#sed -i '/background = /s/.*/ background = "$color0"/' $DUNST_FILE
-#sed -i '/foreground = /s/.*/ foreground = "'$color7'"/' $DUNST_FILE
-sed -i '/frame_color = /s/.*/ frame_color = "'$color2'"/' $DUNST_FILE
-
-sleep 0.3
-dunst -config ~/.config/dunst/dunstrc > /dev/null 2>&1 & \ No newline at end of file
diff --git a/config/hypr/scripts/QuickEdit.sh b/config/hypr/scripts/QuickEdit.sh
index 7e9d67fc..9c7cdffc 100755
--- a/config/hypr/scripts/QuickEdit.sh
+++ b/config/hypr/scripts/QuickEdit.sh
@@ -1,40 +1,49 @@
#!/bin/bash
-hyprDir="$HOME/.config/hypr/configs"
+defaultDir="$HOME/.config/hypr/configs"
+userDir="$HOME/.config/hypr/UserConfigs"
menu(){
printf "1. view Env-variables\n"
- printf "2. view Rules\n"
- printf "3. view Execs (startup)\n"
- printf "4. view KeyBinds\n"
+ printf "2. view Window-Rules\n"
+ printf "3. view Startup_Apps\n"
+ printf "4. view User-Keybinds\n"
printf "5. view Monitors\n"
printf "6. view Laptop-Keybinds\n"
- printf "7. view Hyprland-Settings\n"
+ printf "7. view User-Settings\n"
+ printf "8. view Default-Settings\n"
+ printf "9. view Default-Keybinds\n"
}
main() {
choice=$(menu | rofi -dmenu -config ~/.config/rofi/config-compact.rasi | cut -d. -f1)
case $choice in
1)
- kitty -e nano "$hyprDir/ENVariables.conf"
+ kitty -e nano "$userDir/ENVariables.conf"
;;
2)
- kitty -e nano "$hyprDir/WindowRules.conf"
+ kitty -e nano "$userDir/WindowRules.conf"
;;
3)
- kitty -e nano "$hyprDir/Execs.conf"
+ kitty -e nano "$userDir/Startup_Apps.conf"
;;
4)
- kitty -e nano "$hyprDir/Keybinds.conf"
+ kitty -e nano "$userDir/UserKeybinds.conf"
;;
5)
- kitty -e nano "$hyprDir/Monitors.conf"
+ kitty -e nano "$userDir/Monitors.conf"
;;
6)
- kitty -e nano "$hyprDir/Laptops.conf"
+ kitty -e nano "$userDir/Laptops.conf"
;;
7)
- kitty -e nano "$hyprDir/Settings.conf"
+ kitty -e nano "$userDir/UserSettings.conf"
+ ;;
+ 8)
+ kitty -e nano "$defaultDir/Settings.conf"
+ ;;
+ 9)
+ kitty -e nano "$defaultDir/Keybinds.conf"
;;
*)
;;
diff --git a/config/hypr/scripts/Refresh.sh b/config/hypr/scripts/Refresh.sh
index 0d91de8d..b5e0f556 100755
--- a/config/hypr/scripts/Refresh.sh
+++ b/config/hypr/scripts/Refresh.sh
@@ -1,26 +1,40 @@
#!/usr/bin/env bash
SCRIPTSDIR=$HOME/.config/hypr/scripts
+UserSCRIPTSDIR=$HOME/.config/hypr/UserScripts
+
+# Define file_exists function
+file_exists() {
+ if [ -e "$1" ]; then
+ return 0 # File exists
+ else
+ return 1 # File does not exist
+ fi
+}
# Kill already running processes
-_ps=(waybar rofi)
+_ps=(waybar rofi swaync)
for _prs in "${_ps[@]}"; do
if pidof "${_prs}" >/dev/null; then
pkill "${_prs}"
fi
done
-sleep 0.1
+sleep 0.3
# Relaunch waybar
waybar &
-sleep 0.1
-# Relaunch dunst with pywal-borders
-${SCRIPTSDIR}/PywalDunst.sh &
+# relaunch swaync
+sleep 0.5
+swaync > /dev/null 2>&1 &
-# Relaunching rainbow borders
+# Relaunching rainbow borders if the script exists
sleep 1
-${SCRIPTSDIR}/RainbowBorders.sh &
+if file_exists "${UserSCRIPTSDIR}/RainbowBorders.sh"; then
+ ${UserSCRIPTSDIR}/RainbowBorders.sh &
+fi
# for cava-pywal (note, need to manually restart cava once wallpaper changes)
-ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true \ No newline at end of file
+ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true
+
+exit 0 \ No newline at end of file
diff --git a/config/hypr/scripts/RefreshNoWaybar.sh b/config/hypr/scripts/RefreshNoWaybar.sh
index c834a531..be06167c 100755
--- a/config/hypr/scripts/RefreshNoWaybar.sh
+++ b/config/hypr/scripts/RefreshNoWaybar.sh
@@ -5,6 +5,16 @@
# Modified inorder to refresh rofi background, Pywal
SCRIPTSDIR=$HOME/.config/hypr/scripts
+UserSCRIPTSDIR=$HOME/.config/hypr/UserScripts
+
+# Define file_exists function
+file_exists() {
+ if [ -e "$1" ]; then
+ return 0 # File exists
+ else
+ return 1 # File does not exist
+ fi
+}
# Kill already running processes
_ps=(rofi)
@@ -17,13 +27,13 @@ done
# Pywal refresh
${SCRIPTSDIR}/PywalSwww.sh &
-sleep 0.5
-# Relaunch dunst with pywal-borders
-${SCRIPTSDIR}/PywalDunst.sh &
-
-# Relaunching rainbow borders
+# Relaunching rainbow borders if the script exists
sleep 1
-${SCRIPTSDIR}/RainbowBorders.sh &
+if file_exists "${UserSCRIPTSDIR}/RainbowBorders.sh"; then
+ ${UserSCRIPTSDIR}/RainbowBorders.sh &
+fi
# for cava-pywal (note, need to manually restart cava once wallpaper changes)
-ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true \ No newline at end of file
+ln -sf "$HOME/.cache/wal/cava-colors" "$HOME/.config/cava/config" || true
+
+exit 0 \ No newline at end of file
diff --git a/config/hypr/scripts/RofiBeats.sh b/config/hypr/scripts/RofiBeats.sh
index e0cc6f74..405451f5 100755
--- a/config/hypr/scripts/RofiBeats.sh
+++ b/config/hypr/scripts/RofiBeats.sh
@@ -1,7 +1,7 @@
#!/bin/bash
# Directory for icons
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
# Note: You can add more options below with the following format:
# ["TITLE"]="link"
@@ -21,7 +21,7 @@ declare -A menu_options=(
# Function for displaying notifications
notification() {
- dunstify -u normal -i "$iDIR/music.png" "Playing now: $@"
+ notify-send -u normal -i "$iDIR/music.png" "Playing now: $@"
}
# Main function
@@ -45,4 +45,4 @@ main() {
}
# Check if an online music process is running and send a notification, otherwise run the main function
-pkill -f http && dunstify -u low -i "$iDIR/music.png" "Online Music stopped" || main
+pkill -f http && notify-send -u low -i "$iDIR/music.png" "Online Music stopped" || main
diff --git a/config/hypr/scripts/ScreenShot.sh b/config/hypr/scripts/ScreenShot.sh
index 29fe776a..1d5eeacf 100755
--- a/config/hypr/scripts/ScreenShot.sh
+++ b/config/hypr/scripts/ScreenShot.sh
@@ -1,27 +1,40 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
+notify_cmd_shot="notify-send -h string:x-canonical-private-synchronous:shot-notify -u low -i ${iDIR}/picture.png"
-time=$(date +%Y-%m-%d-%H-%M-%S)
+time=$(date "+%d-%b_%H-%M-%S")
dir="$(xdg-user-dir)/Pictures/Screenshots"
file="Screenshot_${time}_${RANDOM}.png"
+active_window_class=$(hyprctl -j activewindow | jq -r '(.class)')
+active_window_file="Screenshot_${time}_${active_window_class}.png"
+active_window_path="${dir}/${active_window_file}"
+
# notify and view screenshot
-notify_cmd_shot="dunstify -h string:x-canonical-private-synchronous:shot-notify -u low -i ${iDIR}/picture.png"
notify_view() {
- ${notify_cmd_shot} "Copied to clipboard."
-## viewnior ${dir}/"$file"
- if [[ -e "$dir/$file" ]]; then
- ${notify_cmd_shot} "Screenshot Saved."
- else
- ${notify_cmd_shot} "Screenshot Deleted."
- fi
+ if [[ "$1" == "active" ]]; then
+ if [[ -e "${active_window_path}" ]]; then
+ ${notify_cmd_shot} "Screenshot of '${active_window_class}' Saved."
+ else
+ ${notify_cmd_shot} "Screenshot of '${active_window_class}' not Saved"
+ fi
+ else
+ local check_file="$dir/$file"
+ if [[ -e "$check_file" ]]; then
+ ${notify_cmd_shot} "Screenshot Saved."
+ else
+ ${notify_cmd_shot} "Screenshot NOT Saved."
+ fi
+ fi
}
+
+
# countdown
countdown() {
for sec in $(seq $1 -1 1); do
- dunstify -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec"
+ notify-send -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec"
sleep 1
done
}
@@ -59,6 +72,17 @@ shotarea() {
notify_view
}
+shotactive() {
+ active_window_class=$(hyprctl -j activewindow | jq -r '(.class)')
+ active_window_file="Screenshot_${time}_${active_window_class}.png"
+ active_window_path="${dir}/${active_window_file}"
+
+ hyprctl -j activewindow | jq -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"' | grim -g - "${active_window_path}"
+ sleep 1
+ notify_view "active"
+}
+
+
if [[ ! -d "$dir" ]]; then
mkdir -p "$dir"
fi
@@ -73,8 +97,10 @@ elif [[ "$1" == "--win" ]]; then
shotwin
elif [[ "$1" == "--area" ]]; then
shotarea
+elif [[ "$1" == "--active" ]]; then
+ shotactive
else
- echo -e "Available Options : --now --in5 --in10 --win --area"
+ echo -e "Available Options : --now --in5 --in10 --win --area --active"
fi
exit 0
diff --git a/config/hypr/scripts/SwitchKeyboardLayout.sh b/config/hypr/scripts/SwitchKeyboardLayout.sh
index 9d1ee844..a53a567d 100755
--- a/config/hypr/scripts/SwitchKeyboardLayout.sh
+++ b/config/hypr/scripts/SwitchKeyboardLayout.sh
@@ -1,8 +1,8 @@
#!/usr/bin/env bash
layout_f="$HOME/.cache/kb_layout"
-settings_file="$HOME/.config/hypr/configs/Settings.conf"
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+settings_file="$HOME/.config/hypr/UserConfigs/UserSettings.conf"
+notif="$HOME/.config/swaync/images/bell.png"
# Check if ~/.cache/kb_layout exists and create it with a default layout from Settings.conf if not found
if [ ! -f "$layout_f" ]; then
@@ -40,4 +40,4 @@ hyprctl keyword input:kb_layout "$new_layout"
echo "$new_layout" > "$layout_f"
# Notification for the new keyboard layout
-dunstify -u low -i "$dunst_notif" "Keyboard layout set to $new_layout" \ No newline at end of file
+notify-send -u low -i "$notif" "new KB_Layout: $new_layout" \ No newline at end of file
diff --git a/config/hypr/scripts/TouchPad.sh b/config/hypr/scripts/TouchPad.sh
index 8f633ee0..1fcb3249 100755
--- a/config/hypr/scripts/TouchPad.sh
+++ b/config/hypr/scripts/TouchPad.sh
@@ -1,38 +1,22 @@
#!/bin/bash
-dunst_notif="$HOME/.config/dunst/images/bell.png"
+HYPRLAND_DEVICE="asue1209:00-04f3:319f-touchpad"
+notif="$HOME/.config/swaync/images/bell.png"
-# NOTE: find the right device using hyprctl devices
- HYPRLAND_DEVICE="asue1209:00-04f3:319f-touchpad"
+XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR:-/run/user/$(id -u)}
+STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status"
-if [ -z "$XDG_RUNTIME_DIR" ]; then
- export XDG_RUNTIME_DIR=/run/user/$(id -u)
-fi
-
-export STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status"
-
-enable_touchpad() {
- printf "true" > "$STATUS_FILE"
-
- dunstify -u low -i "$dunst_notif" "Enabling Touchpad"
-
- hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" true
-}
-
-disable_touchpad() {
- printf "false" > "$STATUS_FILE"
-
- dunstify -u low -i "$dunst_notif" "Disabling Touchpad"
+toggle_touchpad() {
+ if [ ! -f "$STATUS_FILE" ] || [ "$(cat "$STATUS_FILE")" = "false" ]; then
+ echo "true" > "$STATUS_FILE"
+ action="enabled"
+ else
+ echo "false" > "$STATUS_FILE"
+ action="disabled"
+ fi
- hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" false
+ notify-send -u low -i "$notif" "Touchpad $action"
+ hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" "$(cat "$STATUS_FILE")"
}
-if ! [ -f "$STATUS_FILE" ]; then
- enable_touchpad
-else
- if [ $(cat "$STATUS_FILE") = "true" ]; then
- disable_touchpad
- elif [ $(cat "$STATUS_FILE") = "false" ]; then
- enable_touchpad
- fi
-fi
+toggle_touchpad
diff --git a/config/hypr/scripts/Volume.sh b/config/hypr/scripts/Volume.sh
index d0eb0b68..f68491cf 100755
--- a/config/hypr/scripts/Volume.sh
+++ b/config/hypr/scripts/Volume.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-iDIR="$HOME/.config/dunst/icons"
+iDIR="$HOME/.config/swaync/icons"
# Get Volume
get_volume() {
@@ -29,9 +29,9 @@ get_icon() {
# Notify
notify_user() {
if [[ "$(get_volume)" == "Muted" ]]; then
- dunstify -h string:x-dunst-stack-tag:volume_notif -u low -i "$(get_icon)" "Volume: Muted"
+ notify-send -e -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: Muted"
else
- dunstify -h int:value:"$(get_volume | sed 's/%//')" -h string:x-dunst-stack-tag:volume_notif -u low -i "$(get_icon)" "Volume: $(get_volume)"
+ notify-send -e -h int:value:"$(get_volume | sed 's/%//')" -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: $(get_volume)"
fi
}
@@ -54,18 +54,18 @@ dec_volume() {
# Toggle Mute
toggle_mute() {
if [ "$(pamixer --get-mute)" == "false" ]; then
- pamixer -m && dunstify -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF"
+ pamixer -m && notify-send -e -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF"
elif [ "$(pamixer --get-mute)" == "true" ]; then
- pamixer -u && dunstify -u low -i "$(get_icon)" "Volume Switched ON"
+ pamixer -u && notify-send -e -u low -i "$(get_icon)" "Volume Switched ON"
fi
}
# Toggle Mic
toggle_mic() {
if [ "$(pamixer --default-source --get-mute)" == "false" ]; then
- pamixer --default-source -m && dunstify -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF"
+ pamixer --default-source -m && notify-send -e -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF"
elif [ "$(pamixer --default-source --get-mute)" == "true" ]; then
- pamixer -u --default-source u && dunstify -u low -i "$iDIR/microphone.png" "Microphone Switched ON"
+ pamixer -u --default-source u && notify-send -e -u low -i "$iDIR/microphone.png" "Microphone Switched ON"
fi
}
# Get Mic Icon
@@ -92,7 +92,7 @@ get_mic_volume() {
notify_mic_user() {
volume=$(get_mic_volume)
icon=$(get_mic_icon)
- dunstify -h int:value:"$volume" -h "string:x-dunst-stack-tag:volume_notif" -u low -i "$icon" "Mic-Level: $volume"
+ notify-send -e -h int:value:"$volume" -h "string:x-canonical-private-synchronous:volume_notif" -u low -i "$icon" "Mic-Level: $volume"
}
# Increase MIC Volume
diff --git a/config/hypr/v2.2.1 b/config/hypr/v2.2.2
index 31b3414d..31b3414d 100644
--- a/config/hypr/v2.2.1
+++ b/config/hypr/v2.2.2
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage