aboutsummaryrefslogtreecommitdiffstats
path: root/config/hypr
diff options
context:
space:
mode:
authorJa.KooLit <85185940+JaKooLit@users.noreply.github.com>2024-05-24 13:52:30 +0900
committerGitHub <noreply@github.com>2024-05-24 13:52:30 +0900
commit5acf937b57fd0c25baf26cae45e0f15862ab7d52 (patch)
treedbcae5ec4d6c9199dcb482f313bef2bf461edb4f /config/hypr
parent912f18dd534ea7244b7e453e65a84344b34b15b0 (diff)
parent06d66be192eeb6f844d7069d05ffc34653352791 (diff)
Merge pull request #300 from JaKooLit/development
Pre-release stage: Development to Main
Diffstat (limited to 'config/hypr')
-rw-r--r--config/hypr/UserConfigs/ENVariables.conf1
-rw-r--r--config/hypr/UserConfigs/UserKeybinds.conf5
-rw-r--r--config/hypr/UserConfigs/UserSettings.conf33
-rw-r--r--config/hypr/UserConfigs/WindowRules.conf27
-rwxr-xr-xconfig/hypr/UserScripts/RofiBeats.sh41
-rwxr-xr-xconfig/hypr/UserScripts/RofiCalc.sh31
-rwxr-xr-xconfig/hypr/UserScripts/WallpaperSelect.sh46
-rwxr-xr-xconfig/hypr/UserScripts/Weather.py16
-rw-r--r--config/hypr/configs/Keybinds.conf3
-rwxr-xr-xconfig/hypr/initial-boot.sh13
-rwxr-xr-xconfig/hypr/scripts/KeyHints.sh2
-rwxr-xr-xconfig/hypr/scripts/SwitchKeyboardLayout.sh37
-rw-r--r--config/hypr/v2.2.12 (renamed from config/hypr/v2.2.11)0
13 files changed, 179 insertions, 76 deletions
diff --git a/config/hypr/UserConfigs/ENVariables.conf b/config/hypr/UserConfigs/ENVariables.conf
index 1d60c24b..8681eb30 100644
--- a/config/hypr/UserConfigs/ENVariables.conf
+++ b/config/hypr/UserConfigs/ENVariables.conf
@@ -1,4 +1,5 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
+# Environment variables. See https://wiki.hyprland.org/Configuring/Environment-variables/
#environment-variables
env = CLUTTER_BACKEND,wayland
diff --git a/config/hypr/UserConfigs/UserKeybinds.conf b/config/hypr/UserConfigs/UserKeybinds.conf
index eede1669..85f3c1c3 100644
--- a/config/hypr/UserConfigs/UserKeybinds.conf
+++ b/config/hypr/UserConfigs/UserKeybinds.conf
@@ -19,7 +19,9 @@ bind = $mainMod, D, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,r
bind = $mainMod, A, exec, pkill rofi || true && ags -t 'overview'
bind = $mainMod, Return, exec, $term # Launch terminal
-bind = $mainMod, T, exec, $files
+bind = $mainMod, T, exec, $files # Launch file manager
+
+bind = $mainMod ALT, C, exec, $UserScripts/RofiCalc.sh # calculator (qalculate)
# pyprland
bind = $mainMod SHIFT, Return, exec, pypr toggle term # Dropdown terminal
@@ -27,6 +29,7 @@ bind = $mainMod, Z, exec, pypr zoom # Toggle Zoom
# User Added Keybinds
bind = $mainMod SHIFT, O, exec, $UserScripts/ZshChangeTheme.sh # Change oh-my-zsh theme
+bindn = ALT_L, SHIFT_L, exec, $scriptsDir/SwitchKeyboardLayout.sh # Changing the keyboard layout
# For passthrough keyboard into a VM
# bind = $mainMod ALT, P, submap, passthru
diff --git a/config/hypr/UserConfigs/UserSettings.conf b/config/hypr/UserConfigs/UserSettings.conf
index b3193e49..1ca9b5d8 100644
--- a/config/hypr/UserConfigs/UserSettings.conf
+++ b/config/hypr/UserConfigs/UserSettings.conf
@@ -1,6 +1,7 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# User Settings
-# This is where you put your own settings as this will not be touched during update
+# This is where you put your own settings as this will not be touched during update
+# if the upgrade.sh is used.
# refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables
@@ -25,7 +26,7 @@ master {
general {
sensitivity=1.00
apply_sens_to_raw=1
- gaps_in = 4
+ gaps_in = 6
gaps_out = 8
border_size = 2
resize_on_border = true
@@ -33,7 +34,7 @@ general {
col.active_border = $color0 $color2 $color9 $color12 $color15 90deg
col.inactive_border = $backgroundCol
- layout = master
+ layout = dwindle
}
group {
@@ -45,7 +46,7 @@ group {
}
decoration {
- rounding = 8
+ rounding = 10
active_opacity = 1.0
inactive_opacity = 0.9
@@ -63,7 +64,7 @@ decoration {
blur {
enabled = true
- size = 5
+ size = 6
passes = 2
ignore_opacity = true
new_optimizations = true
@@ -74,32 +75,26 @@ decoration {
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
+ bezier = liner, 1, 1, 1, 1
- animation = windowsIn, 1, 5, slow, popin
- animation = windowsOut, 1, 5, winOut, popin
+ animation = windows, 1, 6, wind, slide
+ animation = windowsIn, 1, 6, winIn, slide
+ animation = windowsOut, 1, 5, winOut, slide
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 = border, 1, 1, liner
+ animation = borderangle, 1, 180, liner, loop #used by rainbow borders and rotating colors
+ animation = fade, 1, 10, default
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_options=
kb_rules=
repeat_rate=50
repeat_delay=300
diff --git a/config/hypr/UserConfigs/WindowRules.conf b/config/hypr/UserConfigs/WindowRules.conf
index 09cc8ec2..3193d26c 100644
--- a/config/hypr/UserConfigs/WindowRules.conf
+++ b/config/hypr/UserConfigs/WindowRules.conf
@@ -13,16 +13,19 @@ windowrulev2 = workspace 2, class:^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-es
windowrulev2 = workspace 2, class:^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable)?)$
#windowrulev2 = workspace 3, class:^([Tt]hunar)$
windowrulev2 = workspace 4, class:^(com.obsproject.Studio)$
-windowrulev2 = workspace 5 silent, class:^([Ss]team)$,title:^([Ss]team)$
-windowrulev2 = workspace 5 silent, class:^(lutris)$
+windowrulev2 = workspace 5, class:^([Ss]team)$
+windowrulev2 = workspace 5, class:^([Ll]utris)$
+windowrulev2 = workspace 7, class:^([Dd]iscord)$
+windowrulev2 = workspace 7, class:^([Ww]ebCord)$
+windowrulev2 = workspace 7, class:^([Vv]esktop)$
+
+# windowrule v2 move to workspace (silent)
windowrulev2 = workspace 6 silent, class:^(virt-manager)$
-windowrulev2 = workspace 7 silent, class:^(discord)$
-windowrulev2 = workspace 7 silent, class:^(WebCord)$
windowrulev2 = workspace 9 silent, class:^([Aa]udacious)$
# windowrule v2 - float
windowrulev2 = float, class:^(org.kde.polkit-kde-authentication-agent-1)$
-windowrulev2 = float, class:([Zz)oom|onedriver|onedriver-launcher)$
+windowrulev2 = float, class:([Zz]oom|onedriver|onedriver-launcher)$
windowrulev2 = float, class:([Tt]hunar), title:(File Operation Progress)
windowrulev2 = float, class:([Tt]hunar), title:(Confirm to replace files)
windowrulev2 = float, class:(xdg-desktop-portal-gtk)
@@ -40,6 +43,12 @@ windowrulev2 = float, class:^(evince)$ # document viewer
windowrulev2 = float, class:^(file-roller|org.gnome.FileRoller)$ # archive manager
windowrulev2 = float, class:^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer
windowrulev2 = float, title:(Kvantum Manager)
+windowrulev2 = float, class:^([Ss]team)$,title:^((?![Ss]team).*|[Ss]team [Ss]ettings)$
+windowrulev2 = float, class:^([Qq]alculate-gtk)$
+
+# windowrule v2 - position
+windowrulev2 = center, class:([Tt]hunar), title:(File Operation Progress)
+windowrulev2 = center, class:([Tt]hunar), title:(Confirm to replace files)
# windowrule v2 - opacity #enable as desired
windowrulev2 = opacity 0.9 0.6, class:^([Rr]ofi)$
@@ -62,12 +71,12 @@ windowrulev2 = opacity 0.9 0.7, class:^(com.obsproject.Studio)$
windowrulev2 = opacity 0.9 0.7, class:^([Aa]udacious)$
windowrulev2 = opacity 0.9 0.8, class:^(org.gnome.Nautilus)$
windowrulev2 = opacity 0.9 0.8, class:^(VSCode|code-url-handler)$
-windowrulev2 = opacity 0.9 0.8, class:^(jetbrains-studio)$ # Android Studio
-windowrulev2 = opacity 0.9 0.8, class:^(jetbrains-phpstorm)$ # PHPStorm
-windowrulev2 = opacity 0.94 0.86, class:^(discord)$
-windowrulev2 = opacity 0.9 0.8, class:^(org.telegram.desktop)$
+windowrulev2 = opacity 0.9 0.8, class:^(jetbrains-.+)$ # JetBrains IDEs
+windowrulev2 = opacity 0.94 0.86, class:^([Dd]iscord|[Vv]esktop)$
+windowrulev2 = opacity 0.9 0.8, class:^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$
windowrulev2 = opacity 0.94 0.86, class:^(gnome-disks|evince|wihotspot-gui|org.gnome.baobab)$
windowrulev2 = opacity 0.9 0.8, class:^(file-roller|org.gnome.FileRoller)$ # archive manager
+windowrulev2 = opacity 0.8 0.7, class:^(app.drey.Warp)$ # Warp file transfer
windowrulev2 = opacity 0.9 0.8, class:^(seahorse)$ # gnome-keyring gui
windowrulev2 = opacity 0.82 0.75, class:^(gnome-system-monitor|org.gnome.SystemMonitor)$
windowrulev2 = opacity 0.9 0.8, class:^(xdg-desktop-portal-gtk)$ # gnome-keyring gui
diff --git a/config/hypr/UserScripts/RofiBeats.sh b/config/hypr/UserScripts/RofiBeats.sh
index 1cf2a445..7fed687f 100755
--- a/config/hypr/UserScripts/RofiBeats.sh
+++ b/config/hypr/UserScripts/RofiBeats.sh
@@ -1,12 +1,14 @@
#!/bin/bash
+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# For Rofi Beats to play online Music or Locally save media files
-# Directory music folder
+# Directory local music folder
mDIR="$HOME/Music/"
# Directory for icons
iDIR="$HOME/.config/swaync/icons"
-# Online Stations
+# Online Stations. Edit as required
declare -A online_music=(
["AfroBeatz 2024 🎧"]="https://www.youtube.com/watch?v=7uB-Eh9XVZQ"
["Lofi Girl ☕️🎶"]="https://play.streamafrica.net/lofiradio"
@@ -22,7 +24,6 @@ declare -A online_music=(
["Korean Drama OST 📻🎶"]="https://youtube.com/playlist?list=PLUge_o9AIFp4HuA-A3e3ZqENh63LuRRlQ"
)
-# Local Music
# Populate local_music array with files from music directory and subdirectories
populate_local_music() {
local_music=()
@@ -49,18 +50,33 @@ play_local_music() {
exit 1
fi
- # Find the corresponding file path based on user's choice
- for (( i=0; i<"${#filenames[@]}"; i++ )); do
+ # Find the corresponding file path based on user's choice and set that to play the song then continue on the list
+ for (( i=0; i<"${#filenames[@]}"; ++i )); do
if [ "${filenames[$i]}" = "$choice" ]; then
- file="${local_music[$i]}"
+
+ notification "$choice"
+
+ # For some reason wont start playlist at 0
+ if [[ $i -eq 0 ]]; then
+ # Play the selected local music file using mpv
+ mpv --loop-playlist --vid=no "$mDIR"
+
+ else
+ file=$i
+ # Play the selected local music file using mpv
+ mpv --playlist-start="$file" --loop-playlist --vid=no "$mDIR"
+ fi
break
fi
done
+}
- notification "$choice"
+# Main function for shuffling local music
+shuffle_local_music() {
+ notification "Shuffle local music"
- # Play the selected local music file using mpv
- mpv --shuffle --vid=no "$file"
+ # Play music in $mDIR on shuffle
+ mpv --shuffle --loop-playlist --vid=no "$mDIR"
}
# Main function for playing online music
@@ -80,10 +96,10 @@ play_online_music() {
}
# Check if an online music process is running and send a notification, otherwise run the main function
-pkill mpv && notify-send -u low -i "$iDIR/music.png" "Online Music stopped" || {
+pkill mpv && notify-send -u low -i "$iDIR/music.png" "Music stopped" || {
# Prompt the user to choose between local and online music
-user_choice=$(printf "Play from Online Stations\nPlay from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source")
+user_choice=$(printf "Play from Online Stations\nPlay from Music Folder\nShuffle Play from Music Folder" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats-menu.rasi -p "Select music source")
case "$user_choice" in
"Play from Music Folder")
@@ -92,6 +108,9 @@ user_choice=$(printf "Play from Online Stations\nPlay from Music Folder" | rofi
"Play from Online Stations")
play_online_music
;;
+ "Shuffle Play from Music Folder")
+ shuffle_local_music
+ ;;
*)
echo "Invalid choice"
;;
diff --git a/config/hypr/UserScripts/RofiCalc.sh b/config/hypr/UserScripts/RofiCalc.sh
new file mode 100755
index 00000000..355130de
--- /dev/null
+++ b/config/hypr/UserScripts/RofiCalc.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */
+# /* Calculator (using qalculate) and rofi */
+# /* Submitted by: https://github.com/JosephArmas */
+
+rofi_config="$HOME/.config/rofi/config-calc.rasi"
+
+# Kill Rofi if already running before execution
+if pgrep -x "rofi" >/dev/null; then
+ pkill rofi
+ exit 0
+fi
+
+# main function
+
+while true; do
+ result=$(
+ rofi -i -dmenu \
+ -config "$rofi_config" \
+ -mesg "$result = $calc_result"
+ )
+
+ if [ $? -ne 0 ]; then
+ exit
+ fi
+
+ if [ -n "$result" ]; then
+ calc_result=$(qalc -t "$result")
+ echo "$calc_result" | wl-copy
+ fi
+done
diff --git a/config/hypr/UserScripts/WallpaperSelect.sh b/config/hypr/UserScripts/WallpaperSelect.sh
index 9a087c7d..06859112 100755
--- a/config/hypr/UserScripts/WallpaperSelect.sh
+++ b/config/hypr/UserScripts/WallpaperSelect.sh
@@ -1,18 +1,18 @@
#!/bin/bash
-# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */
# This script for selecting wallpapers (SUPER W)
-SCRIPTSDIR="$HOME/.config/hypr/scripts"
-
-focused_monitor=$(hyprctl monitors | awk '/^Monitor/{name=$2} /focused: yes/{print name}')
-
# WALLPAPERS PATH
wallDIR="$HOME/Pictures/wallpapers"
-# Transition config
-FPS=30
-TYPE="wipe"
-DURATION=1
+# variables
+SCRIPTSDIR="$HOME/.config/hypr/scripts"
+focused_monitor=$(hyprctl monitors | awk '/^Monitor/{name=$2} /focused: yes/{print name}')
+
+# swww transition config
+FPS=60
+TYPE="any"
+DURATION=2
BEZIER=".43,1.19,1,.4"
SWWW_PARAMS="--transition-fps $FPS --transition-type $TYPE --transition-duration $DURATION"
@@ -22,31 +22,36 @@ if pidof swaybg > /dev/null; then
fi
# Retrieve image files
-PICS=($(ls "${wallDIR}" | grep -E ".jpg$|.jpeg$|.png$|.gif$"))
+PICS=($(find "${wallDIR}" -type f \( -iname \*.jpg -o -iname \*.jpeg -o -iname \*.png -o -iname \*.gif \)))
RANDOM_PIC="${PICS[$((RANDOM % ${#PICS[@]}))]}"
-RANDOM_PIC_NAME="${#PICS[@]}. random"
+RANDOM_PIC_NAME=". random"
# Rofi command
rofi_command="rofi -i -show -dmenu -config ~/.config/rofi/config-wallpaper.rasi"
+
+# Sorting Wallpapers
menu() {
- for i in "${!PICS[@]}"; do
+ sorted_options=($(printf '%s\n' "${PICS[@]}" | sort))
+ # Place ". random" at the beginning
+ printf "%s\n" "$RANDOM_PIC_NAME"
+ for pic_path in "${sorted_options[@]}"; do
+ pic_name=$(basename "$pic_path")
# Displaying .gif to indicate animated images
- if [[ -z $(echo "${PICS[$i]}" | grep .gif$) ]]; then
- printf "$(echo "${PICS[$i]}" | cut -d. -f1)\x00icon\x1f${wallDIR}/${PICS[$i]}\n"
+ if [[ -z $(echo "$pic_name" | grep -i "\.gif$") ]]; then
+ printf "%s\x00icon\x1f%s\n" "$(echo "$pic_name" | cut -d. -f1)" "$pic_path"
else
- printf "${PICS[$i]}\n"
+ printf "%s\n" "$pic_name"
fi
done
-
- printf "$RANDOM_PIC_NAME\n"
}
+# initiate swww if not running
swww query || swww-daemon --format xrgb
+# Choice of wallpapers
main() {
choice=$(menu | ${rofi_command})
-
# No choice case
if [[ -z $choice ]]; then
exit 0
@@ -54,7 +59,8 @@ main() {
# Random choice case
if [ "$choice" = "$RANDOM_PIC_NAME" ]; then
- swww img "${wallDIR}/${RANDOM_PIC}" $SWWW_PARAMS
+ RANDOM_PIC="${PICS[$((RANDOM % ${#PICS[@]}))]}"
+ swww img -o $focused_monitor "${RANDOM_PIC}" $SWWW_PARAMS
exit 0
fi
@@ -69,7 +75,7 @@ main() {
done
if [[ $pic_index -ne -1 ]]; then
- swww img -o $focused_monitor "${wallDIR}/${PICS[$pic_index]}" $SWWW_PARAMS
+ swww img -o $focused_monitor "${PICS[$pic_index]}" $SWWW_PARAMS
else
echo "Image not found."
exit 1
diff --git a/config/hypr/UserScripts/Weather.py b/config/hypr/UserScripts/Weather.py
index 5cd11a66..1d2ea30b 100755
--- a/config/hypr/UserScripts/Weather.py
+++ b/config/hypr/UserScripts/Weather.py
@@ -8,12 +8,12 @@ import os
# original code https://gist.github.com/Surendrajat/ff3876fd2166dd86fb71180f4e9342d7
# weather icons
weather_icons = {
- "sunnyDay": "",
- "clearNight": "",
- "cloudyFoggyDay": "",
- "cloudyFoggyNight": "",
- "rainyDay": "",
- "rainyNight": "",
+ "sunnyDay": "󰖙",
+ "clearNight": "󰖔",
+ "cloudyFoggyDay": "",
+ "cloudyFoggyNight": "",
+ "rainyDay": "",
+ "rainyNight": "",
"snowyIcyDay": "",
"snowyIcyNight": "",
"severe": "",
@@ -116,14 +116,14 @@ tooltip_text = str.format(
# print waybar module data
out_data = {
- "text": f"{icon} {temp}",
+ "text": f"{icon} {temp}",
"alt": status,
"tooltip": tooltip_text,
"class": status_code,
}
print(json.dumps(out_data))
-simple_weather =f"{icon} {status}\n" + \
+simple_weather =f"{icon} {status}\n" + \
f" {temp} ({temp_feel_text})\n" + \
f"{wind_text} \n" + \
f"{humidity_text} \n" + \
diff --git a/config/hypr/configs/Keybinds.conf b/config/hypr/configs/Keybinds.conf
index 2cdd9cde..142de86a 100644
--- a/config/hypr/configs/Keybinds.conf
+++ b/config/hypr/configs/Keybinds.conf
@@ -29,7 +29,6 @@ bind = $mainMod SHIFT, G, exec, $scriptsDir/GameMode.sh # animations ON/OFF
bind = $mainMod ALT, L, exec, $scriptsDir/ChangeLayout.sh # Toggle Master or Dwindle Layout
bind = $mainMod ALT, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager
bind = $mainMod SHIFT, N, exec, swaync-client -t -sw # swayNC panel
-bind = SHIFT, ALT_L, exec, $scriptsDir/SwitchKeyboardLayout.sh # Switch Keyboard Layout
# FEATURES / EXTRAS (UserScripts)
bind = $mainMod, E, exec, $UserScripts/QuickEdit.sh # Quick Edit Hyprland Settings
@@ -75,7 +74,7 @@ bind = , xf86audiostop, exec, $scriptsDir/MediaCtrl.sh --stop
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 = $mainMod CTRL SHIFT, Print, exec, $scriptsDir/ScreenShot.sh --in10 #screenshot in 10 secs
bind = ALT, Print, exec, $scriptsDir/ScreenShot.sh --active #take screenshot of active window
# screenshot with swappy (another screenshot tool)
diff --git a/config/hypr/initial-boot.sh b/config/hypr/initial-boot.sh
index 162ad65f..b05d6865 100755
--- a/config/hypr/initial-boot.sh
+++ b/config/hypr/initial-boot.sh
@@ -10,6 +10,11 @@ scriptsDir=$HOME/.config/hypr/scripts
wallpaper=$HOME/Pictures/wallpapers/Fantasy-Waterfall.png
waybar_style="$HOME/.config/waybar/style/[Dark] Latte-Wallust combined.css"
kvantum_theme="Catppuccin-Mocha"
+color_scheme="prefer-dark"
+gtk_theme="Andromeda-dark"
+icon_theme="Flat-Remix-Blue-Dark"
+cursor_theme="Bibata-Modern-Ice"
+
swww="swww img"
effect="--transition-bezier .43,1.19,1,.4 --transition-fps 30 --transition-type grow --transition-pos 0.925,0.977 --transition-duration 2"
@@ -25,10 +30,10 @@ if [ ! -f ~/.config/hypr/.initial_startup_done ]; then
fi
# 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-Moon-BL-LB > /dev/null 2>&1 &
- gsettings set org.gnome.desktop.interface icon-theme Flat-Remix-Blue-Dark > /dev/null 2>&1 &
- gsettings set org.gnome.desktop.interface cursor-theme Bibata-Modern-Ice > /dev/null 2>&1 &
+ gsettings set org.gnome.desktop.interface color-scheme $color_scheme > /dev/null 2>&1 &
+ gsettings set org.gnome.desktop.interface gtk-theme $gtk_theme > /dev/null 2>&1 &
+ gsettings set org.gnome.desktop.interface icon-theme $icon_theme > /dev/null 2>&1 &
+ gsettings set org.gnome.desktop.interface cursor-theme $cursor_theme > /dev/null 2>&1 &
gsettings set org.gnome.desktop.interface cursor-size 24 > /dev/null 2>&1 &
# initiate kvantum theme
diff --git a/config/hypr/scripts/KeyHints.sh b/config/hypr/scripts/KeyHints.sh
index 9d29dda4..55ed6903 100755
--- a/config/hypr/scripts/KeyHints.sh
+++ b/config/hypr/scripts/KeyHints.sh
@@ -58,6 +58,8 @@ yad --width=$dynamic_width --height=$dynamic_height \
" Print" "screenshot" "(grim)" \
" Shift Print" "screenshot region" "(grim + slurp)" \
" Shift S" "screenshot region" "(swappy)" \
+" CTRL Print" "screenshot timer 5 secs " "(grim)" \
+" CTRL SHIFT Print" "screenshot timer 10 secs " "(grim)" \
"ALT Print" "Screenshot active window" "active window only" \
"CTRL ALT P" "power-menu" "(wlogout)" \
"CTRL ALT L" "screen lock" "(hyprlock)" \
diff --git a/config/hypr/scripts/SwitchKeyboardLayout.sh b/config/hypr/scripts/SwitchKeyboardLayout.sh
index 0145e262..cbacd74f 100755
--- a/config/hypr/scripts/SwitchKeyboardLayout.sh
+++ b/config/hypr/scripts/SwitchKeyboardLayout.sh
@@ -41,5 +41,38 @@ new_layout="${layout_mapping[next_index]}"
hyprctl switchxkblayout "at-translated-set-2-keyboard" "$new_layout"
echo "$new_layout" > "$layout_f"
-# Notification for the new keyboard layout
-notify-send -u low -i "$notif" "new KB_Layout: $new_layout"
+# Created by T-Crypt
+
+get_keyboard_names() {
+ hyprctl devices -j | jq -r '.keyboards[].name'
+}
+
+change_layout() {
+ local got_error=false
+
+ while read -r name; do
+ hyprctl switchxkblayout "$name" next
+ if [[ $? -eq 0 ]]; then
+ echo "Switched the layout for $name."
+ else
+ >&2 echo "Error while switching the layout for $name."
+ got_error=true
+ fi
+ done <<< "$(get_keyboard_names)"
+
+ if [ "$got_error" = true ]; then
+ >&2 echo "Some errors were found during the process..."
+ return 1
+ fi
+
+ return 0 # All layouts had been cycled successfully
+}
+
+if ! change_layout; then
+ notify-send -u low -t 2000 'Keyboard layout' 'Error: Layout change failed'
+ >&2 echo "Layout change failed."
+ exit 1
+else
+ # Notification for the new keyboard layout
+ notify-send -u low -i "$notif" "new KB_Layout: $new_layout"
+fi
diff --git a/config/hypr/v2.2.11 b/config/hypr/v2.2.12
index 31b3414d..31b3414d 100644
--- a/config/hypr/v2.2.11
+++ b/config/hypr/v2.2.12
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage