aboutsummaryrefslogtreecommitdiffstats
path: root/config/hypr
diff options
context:
space:
mode:
Diffstat (limited to 'config/hypr')
-rw-r--r--config/hypr/UserConfigs/ENVariables.conf3
-rw-r--r--config/hypr/UserConfigs/Startup_Apps.conf7
-rw-r--r--config/hypr/UserConfigs/UserKeybinds.conf6
-rw-r--r--config/hypr/UserConfigs/UserSettings.conf36
-rw-r--r--config/hypr/UserConfigs/WindowRules.conf37
-rw-r--r--config/hypr/UserConfigs/WorkspaceRules.conf20
-rwxr-xr-xconfig/hypr/UserScripts/QuickEdit.sh10
-rwxr-xr-xconfig/hypr/UserScripts/RofiBeats.sh8
-rwxr-xr-xconfig/hypr/UserScripts/WallpaperSelect.sh2
-rwxr-xr-xconfig/hypr/UserScripts/Weather.py206
-rwxr-xr-xconfig/hypr/UserScripts/ZshChangeTheme.sh2
-rw-r--r--config/hypr/hyprland.conf3
-rw-r--r--config/hypr/hyprlock.conf21
-rwxr-xr-xconfig/hypr/initial-boot.sh2
-rw-r--r--config/hypr/pyprland.toml12
-rwxr-xr-xconfig/hypr/scripts/ClipManager.sh2
-rwxr-xr-xconfig/hypr/scripts/DarkLight.sh2
-rwxr-xr-xconfig/hypr/scripts/GameMode.sh2
-rwxr-xr-xconfig/hypr/scripts/KeyHints.sh4
-rwxr-xr-xconfig/hypr/scripts/PywalSwww.sh2
-rwxr-xr-xconfig/hypr/scripts/RofiEmoji.sh2
-rwxr-xr-xconfig/hypr/scripts/ScreenShot.sh2
-rwxr-xr-xconfig/hypr/scripts/Sounds.sh (renamed from config/hypr/UserScripts/Sounds.sh)1
-rwxr-xr-xconfig/hypr/scripts/Volume.sh2
-rwxr-xr-xconfig/hypr/scripts/WaybarLayout.sh2
-rwxr-xr-xconfig/hypr/scripts/WaybarStyles.sh2
-rwxr-xr-xconfig/hypr/scripts/Wlogout.sh4
-rw-r--r--config/hypr/v2.2.10 (renamed from config/hypr/v2.2.8)0
28 files changed, 239 insertions, 163 deletions
diff --git a/config/hypr/UserConfigs/ENVariables.conf b/config/hypr/UserConfigs/ENVariables.conf
index b9d20480..1d60c24b 100644
--- a/config/hypr/UserConfigs/ENVariables.conf
+++ b/config/hypr/UserConfigs/ENVariables.conf
@@ -5,7 +5,8 @@ env = CLUTTER_BACKEND,wayland
env = GDK_BACKEND,wayland,x11
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = QT_QPA_PLATFORM,wayland;xcb
-env = QT_QPA_PLATFORMTHEME,qt5ct
+env = QT_QPA_PLATFORMTHEME,qt5ct
+env = QT_QPA_PLATFORMTHEME,qt6ct
env = QT_SCALE_FACTOR,1
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = XDG_CURRENT_DESKTOP,Hyprland
diff --git a/config/hypr/UserConfigs/Startup_Apps.conf b/config/hypr/UserConfigs/Startup_Apps.conf
index c6b96ee5..666c159f 100644
--- a/config/hypr/UserConfigs/Startup_Apps.conf
+++ b/config/hypr/UserConfigs/Startup_Apps.conf
@@ -33,10 +33,13 @@ exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
# Rainbow borders
-exec-once = $UserScripts/RainbowBorders.sh
+exec-once = $UserScripts/RainbowBorders.sh &
# Starting hypridle to start hyprlock
-exec-once = hypridle -q
+exec-once = hypridle &
+
+# Start pyprland daemon
+exec-once = pypr &
# Here are list of features available but disabled by default
# exec-once = swww query || swww-daemon --format xrgb && swww img $HOME/Pictures/wallpapers/mecha-nostalgia.png # persistent wallpaper
diff --git a/config/hypr/UserConfigs/UserKeybinds.conf b/config/hypr/UserConfigs/UserKeybinds.conf
index 41b61456..7ffd702e 100644
--- a/config/hypr/UserConfigs/UserKeybinds.conf
+++ b/config/hypr/UserConfigs/UserKeybinds.conf
@@ -12,12 +12,16 @@ $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
+#bindr = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window # Super Key to Launch rofi menu
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
+# pyprland
+bind = $mainMod SHIFT, Return, exec, pypr toggle term # Dropdown terminal
+bind = $mainMod, Z, exec, pypr zoom # Toggle Zoom
+
# User Added Keybinds
bind = $mainMod SHIFT, O, exec, $UserScripts/ZshChangeTheme.sh # Change oh-my-zsh theme
diff --git a/config/hypr/UserConfigs/UserSettings.conf b/config/hypr/UserConfigs/UserSettings.conf
index 6c801f7f..da8ec4ed 100644
--- a/config/hypr/UserConfigs/UserSettings.conf
+++ b/config/hypr/UserConfigs/UserSettings.conf
@@ -52,6 +52,7 @@ decoration {
dim_inactive = true
dim_strength = 0.1
+ dim_special = 0.8
drop_shadow=true
shadow_range=6
@@ -65,6 +66,7 @@ decoration {
passes = 2
ignore_opacity = true
new_optimizations = true
+ special = true
}
}
@@ -100,30 +102,30 @@ input {
kb_rules=
repeat_rate=50
repeat_delay=300
- numlock_by_default=1
- left_handed=0
- follow_mouse=1
- float_switch_override_focus=0
+ numlock_by_default=true
+ left_handed=false
+ follow_mouse=true
+ float_switch_override_focus=false
touchpad {
- disable_while_typing=1
- natural_scroll=0
- clickfinger_behavior=0
- middle_button_emulation=1
- tap-to-click=1
- drag_lock=0
+ disable_while_typing=true
+ natural_scroll=false
+ clickfinger_behavior=false
+ middle_button_emulation=true
+ tap-to-click=true
+ drag_lock=false
}
}
gestures {
- workspace_swipe=1
+ workspace_swipe=true
workspace_swipe_fingers=3
workspace_swipe_distance=400
- workspace_swipe_invert=1
+ workspace_swipe_invert=true
workspace_swipe_min_speed_to_force=30
workspace_swipe_cancel_ratio=0.5
- workspace_swipe_create_new=1
- workspace_swipe_forever=1
+ workspace_swipe_create_new=true
+ workspace_swipe_forever=true
}
misc {
@@ -139,9 +141,9 @@ misc {
}
binds {
- workspace_back_and_forth=1
- allow_workspace_cycles=1
- pass_mouse_when_bound=0
+ workspace_back_and_forth=true
+ allow_workspace_cycles=true
+ pass_mouse_when_bound=false
}
#Could help when scaling and not pixelating
diff --git a/config/hypr/UserConfigs/WindowRules.conf b/config/hypr/UserConfigs/WindowRules.conf
index 6d13c8c2..38d41222 100644
--- a/config/hypr/UserConfigs/WindowRules.conf
+++ b/config/hypr/UserConfigs/WindowRules.conf
@@ -13,7 +13,7 @@ windowrule = float, gnome-system-monitor
windowrule = float, yad
windowrule = float, ^(wihotspot-gui)$ # wifi hotspot
windowrule = float, ^(evince)$ # document viewer
-
+windowrule = float, ^(file-roller)$ # archive manager
#windowrule = noblur,gamescope
#windowrule = fullscreen,gamescope
#windowrule = workspace 6 silent,^(gamescope)$
@@ -21,9 +21,10 @@ windowrule = float, ^(evince)$ # document viewer
windowrule = center,^(pavucontrol)
# windowrule v2
-windowrulev2 = workspace 1, class:^(thunderbird)$
-windowrulev2 = workspace 2, class:^(firefox)$
-windowrulev2 = workspace 2, class:^(Firefox-esr)$
+windowrulev2 = workspace 1, class:^([Tt]hunderbird)$
+windowrulev2 = workspace 2, class:^([Ff]irefox)$
+windowrulev2 = workspace 2, class:^(org.mozilla.firefox)$
+windowrulev2 = workspace 2, class:^([Ff]irefox-esr)$
windowrulev2 = workspace 2, class:^(Microsoft-edge-beta)$
windowrulev2 = workspace 3, class:^([Tt]hunar)$
windowrulev2 = workspace 4, class:^(com.obsproject.Studio)$
@@ -34,15 +35,32 @@ 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:([Tt]hunar), title:(File Operation Progress)
+windowrulev2 = float, class:([Tt]hunar), title:(Confirm to replace files)
+windowrulev2 = float, class:(xdg-desktop-portal-gtk)
+windowrulev2 = float, class:(org.gnome.Calculator), title:(Calculator)
+
#opacity (transparent) #enable as desired
windowrulev2 = opacity 0.9 0.6, class:^([Rr]ofi)$
windowrulev2 = opacity 0.9 0.7, class:^(Brave-browser)$
windowrulev2 = opacity 0.9 0.7, class:^(Brave-browser-dev)$
-windowrulev2 = opacity 0.9 0.7, class:^(firefox)$
-windowrulev2 = opacity 0.9 0.7, class:^(Firefox-esr)$
+windowrulev2 = opacity 0.9 0.7, class:^([Ff]irefox)$
+windowrulev2 = opacity 0.9 0.7, class:^(org.mozilla.firefox)$
+windowrulev2 = opacity 0.9 0.7, class:^([Ff]irefox-esr)$
+windowrulev2 = opacity 0.9 0.7, class:^([Mm]icrosoft-edge-stable)$
+windowrulev2 = opacity 0.9 0.7, class:^([Mm]icrosoft-edge-beta)$
+windowrulev2 = opacity 0.9 0.7, class:^([Mm]icrosoft-edge-dev)$
+windowrulev2 = opacity 0.9 0.8, class:^(google-chrome)$
+windowrulev2 = opacity 0.9 0.8, class:^(google-chrome-beta)$
+windowrulev2 = opacity 0.9 0.8, class:^(google-chrome-dev)$
+windowrulev2 = opacity 0.9 0.8, class:^(google-chrome-unstable)$
+windowrulev2 = opacity 0.94 0.86, class:^(chrome-.+-Default)$ # Chrome PWAs
windowrulev2 = opacity 0.9 0.8, class:^([Tt]hunar)$
windowrulev2 = opacity 0.8 0.6, class:^(pcmanfm-qt)$
windowrulev2 = opacity 0.9 0.7, class:^(gedit)$
+windowrulev2 = opacity 0.9 0.8, class:^(deluge)$
+windowrulev2 = opacity 0.9 0.8, class:^(Alacritty)$
windowrulev2 = opacity 0.9 0.8, class:^(kitty)$
windowrulev2 = opacity 0.9 0.7, class:^(mousepad)$
windowrulev2 = opacity 0.9 0.7, class:^(codium-url-handler)$
@@ -50,14 +68,15 @@ windowrulev2 = opacity 0.9 0.7, class:^(VSCodium)$
windowrulev2 = opacity 0.9 0.7, class:^(yad)$
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:^(google-chrome)$
-windowrulev2 = opacity 0.94 0.86, class:^(chrome-.+-Default)$ # Chrome PWAs
windowrulev2 = opacity 0.9 0.8, class:^(org.gnome.Nautilus)$
windowrulev2 = opacity 0.9 0.8, class:^(code-url-handler)$
windowrulev2 = opacity 0.9 0.8, class:^(VSCode)$
+windowrulev2 = opacity 0.9 0.8, class:^(jetbrains-studio)$ # Android Studio
windowrulev2 = opacity 0.94 0.86, class:^(discord)$
+windowrulev2 = opacity 0.9 0.8, class:^(org.telegram.desktop)$
windowrulev2 = opacity 0.94 0.86, class:^(gnome-disks)$
windowrulev2 = opacity 0.9 0.8, class:^(org.gnome.baobab)$
+windowrulev2 = opacity 0.9 0.8, class:^(seahorse)$ # gnome-keyring gui
#layerrule = unset,class:^([Rr]ofi)$
@@ -79,4 +98,4 @@ windowrulev2=float, title:^(Picture-in-Picture)$
windowrulev2=size 25% 25%,title:^(Picture-in-Picture)$
#windowrulev2=size 25% 25%,title:^(Firefox)$
windowrulev2=move 72% 7%,title:^(Picture-in-Picture)$
-#windowrulev2=move 72% 7%,title:^(Firefox)$ \ No newline at end of file
+#windowrulev2=move 72% 7%,title:^(Firefox)$
diff --git a/config/hypr/UserConfigs/WorkspaceRules.conf b/config/hypr/UserConfigs/WorkspaceRules.conf
new file mode 100644
index 00000000..8e98244a
--- /dev/null
+++ b/config/hypr/UserConfigs/WorkspaceRules.conf
@@ -0,0 +1,20 @@
+# /* ---- šŸ’« https://github.com/JaKooLit šŸ’« ---- */ #
+
+# You can set workspace rules to achieve workspace-specific behaviors.
+# For instance, you can define a workspace where all windows are drawn without borders or gaps.
+
+# https://wiki.hyprland.org/Configuring/Workspace-Rules/
+
+# Assigning workspace to a certain monitor
+# workspace = 1, monitor:eDP-1
+# workspace = 2, monitor:DP-2
+
+
+# example rules (from wiki)
+# workspace = 3, rounding:false, decorate:false
+# workspace = name:coding, rounding:false, decorate:false, gapsin:0, gapsout:0, border:false, decorate:false, monitor:DP-1
+# workspace = 8,bordersize:8
+# workspace = name:Hello, monitor:DP-1, default:true
+# workspace = name:gaming, monitor:desc:Chimei Innolux Corporation 0x150C, default:true
+# workspace = 5, on-created-empty:[float] firefox
+# workspace = special:scratchpad, on-created-empty:foot \ No newline at end of file
diff --git a/config/hypr/UserScripts/QuickEdit.sh b/config/hypr/UserScripts/QuickEdit.sh
index 658d7b03..af5c65d2 100755
--- a/config/hypr/UserScripts/QuickEdit.sh
+++ b/config/hypr/UserScripts/QuickEdit.sh
@@ -12,8 +12,9 @@ menu(){
printf "5. view Monitors\n"
printf "6. view Laptop-Keybinds\n"
printf "7. view User-Settings\n"
- printf "8. view Default-Settings\n"
- printf "9. view Default-Keybinds\n"
+ printf "8. view Workspace-Rules\n"
+ printf "9. view Default-Settings\n"
+ printf "10. view Default-Keybinds\n"
}
main() {
@@ -41,9 +42,12 @@ main() {
kitty -e nano "$UserConfigs/UserSettings.conf"
;;
8)
+ kitty -e nano "$UserConfigs/WorkspaceRules.conf"
+ ;;
+ 9)
kitty -e nano "$configs/Settings.conf"
;;
- 9)
+ 10)
kitty -e nano "$configs/Keybinds.conf"
;;
*)
diff --git a/config/hypr/UserScripts/RofiBeats.sh b/config/hypr/UserScripts/RofiBeats.sh
index 16777f55..e3c79587 100755
--- a/config/hypr/UserScripts/RofiBeats.sh
+++ b/config/hypr/UserScripts/RofiBeats.sh
@@ -9,9 +9,11 @@ iDIR="$HOME/.config/swaync/icons"
# Define menu options as an associative array
declare -A menu_options=(
["Lofi Girl ā˜•ļøšŸŽ¶"]="https://play.streamafrica.net/lofiradio"
- ["96.3 Easy Rock šŸ“»šŸŽ¶"]="https://radio-stations-philippines.com/easy-rock"
- ["Ghibli Music šŸŽ»šŸŽ¶"]="https://youtube.com/playlist?list=PLNi74S754EXbrzw-IzVhpeAaMISNrzfUy&si=rqnXCZU5xoFhxfOl"
+ ["Easy Rock 96.3 FM šŸ“»šŸŽ¶"]="https://radio-stations-philippines.com/easy-rock"
+ ["Wish 107.5 FM šŸ“»šŸŽ¶"]="https://radio-stations-philippines.com/dwnu-1075-wish"
+ ["Wish 107.5 YT Pinoy HipHop šŸŽ»šŸŽ¶"]="https://youtube.com/playlist?list=PLkrzfEDjeYJnmgMYwCKid4XIFqUKBVWEs&si=vahW_noh4UDJ5d37"
["Top Youtube Music 2023 ā˜•ļøšŸŽ¶"]="https://youtube.com/playlist?list=PLDIoUOhQQPlXr63I_vwF9GD8sAKh77dWU&si=y7qNeEVFNgA-XxKy"
+ ["Wish 107.5 YT Wishclusives ā˜•ļøšŸŽ¶"]="https://youtube.com/playlist?list=PLkrzfEDjeYJn5B22H9HOWP3Kxxs-DkPSM&si=d_Ld2OKhGvpH48WO"
["Chillhop ā˜•ļøšŸŽ¶"]="http://stream.zeno.fm/fyn8eh3h5f8uv"
["SmoothChill ā˜•ļøšŸŽ¶"]="https://media-ssl.musicradio.com/SmoothChill"
["Relaxing Music ā˜•ļøšŸŽ¶"]="https://youtube.com/playlist?list=PLMIbmfP_9vb8BCxRoraJpoo4q1yMFg4CE"
@@ -26,7 +28,7 @@ notification() {
# Main function
main() {
- choice=$(printf "%s\n" "${!menu_options[@]}" | rofi -dmenu -config ~/.config/rofi/config-rofi-Beats.rasi -i -p "")
+ choice=$(printf "%s\n" "${!menu_options[@]}" | rofi -i -dmenu -config ~/.config/rofi/config-rofi-Beats.rasi -p "")
if [ -z "$choice" ]; then
exit 1
diff --git a/config/hypr/UserScripts/WallpaperSelect.sh b/config/hypr/UserScripts/WallpaperSelect.sh
index 8aa9bdd8..de9c6546 100755
--- a/config/hypr/UserScripts/WallpaperSelect.sh
+++ b/config/hypr/UserScripts/WallpaperSelect.sh
@@ -25,7 +25,7 @@ RANDOM_PIC="${PICS[$((RANDOM % ${#PICS[@]}))]}"
RANDOM_PIC_NAME="${#PICS[@]}. random"
# Rofi command
-rofi_command="rofi -show -dmenu -config ~/.config/rofi/config-wallpaper.rasi"
+rofi_command="rofi -i -show -dmenu -config ~/.config/rofi/config-wallpaper.rasi"
menu() {
for i in "${!PICS[@]}"; do
diff --git a/config/hypr/UserScripts/Weather.py b/config/hypr/UserScripts/Weather.py
index 2b13a977..14c9cfe0 100755
--- a/config/hypr/UserScripts/Weather.py
+++ b/config/hypr/UserScripts/Weather.py
@@ -1,122 +1,124 @@
#!/usr/bin/env python3
-# From https://raw.githubusercontent.com/rxyhn/dotfiles/main/home/rxyhn/modules/desktop/waybar/scripts/waybar-wttr.py
-# ensure to insert city inside ""
-city = ""
+import subprocess
+from pyquery import PyQuery # install using `pip install pyquery`
import json
-import requests
-from datetime import datetime
-WEATHER_CODES = {
- '113': 'īŒ',
- '116': '󰖕',
- '119': 'īŒ’',
- '122': 'īŒ’',
- '143': 'īŒ’',
- '176': '',
- '179': '',
- '182': '',
- '185': '',
- '200': 'ā›ˆļø',
- '227': 'šŸŒØļø',
- '230': 'šŸŒØļø',
- '248': 'ā˜ļø ',
- '260': 'ā˜ļø',
- '263': 'šŸŒ§ļø',
- '266': 'šŸŒ§ļø',
- '281': 'šŸŒ§ļø',
- '284': 'šŸŒ§ļø',
- '293': 'šŸŒ§ļø',
- '296': 'šŸŒ§ļø',
- '299': 'šŸŒ§ļø',
- '302': 'šŸŒ§ļø',
- '305': 'šŸŒ§ļø',
- '308': 'šŸŒ§ļø',
- '311': 'šŸŒ§ļø',
- '314': 'šŸŒ§ļø',
- '317': 'šŸŒ§ļø',
- '320': 'šŸŒØļø',
- '323': 'šŸŒØļø',
- '326': 'šŸŒØļø',
- '329': 'ā„ļø',
- '332': 'ā„ļø',
- '335': 'ā„ļø',
- '338': 'ā„ļø',
- '350': 'šŸŒ§ļø',
- '353': 'šŸŒ§ļø',
- '356': 'šŸŒ§ļø',
- '359': 'šŸŒ§ļø',
- '362': 'šŸŒ§ļø',
- '365': 'šŸŒ§ļø',
- '368': 'šŸŒ§ļø',
- '371': 'ā„ļø',
- '374': 'šŸŒØļø',
- '377': 'šŸŒØļø',
- '386': 'šŸŒØļø',
- '389': 'šŸŒØļø',
- '392': 'šŸŒ§ļø',
- '395': 'ā„ļø'
-}
-data = {}
+# original code https://gist.github.com/Surendrajat/ff3876fd2166dd86fb71180f4e9342d7
+# weather icons
+weather_icons = {
+ "sunnyDay": "",
+ "clearNight": "ļ›ƒ",
+ "cloudyFoggyDay": "ļƒ",
+ "cloudyFoggyNight": "",
+ "rainyDay": "",
+ "rainyNight": "ļ€",
+ "snowyIcyDay": "",
+ "snowyIcyNight": "",
+ "severe": "ī®",
+ "default": "īŒ‚",
+}
+# get location_id
+# to get your own location_id, go to https://weather.com & search your location.
+# once you choose your location, you can see the location_id in the URL(64 chars long hex string)
+# like this: https://weather.com/en-PH/weather/today/l/bca47d1099e762a012b9a139c36f30a0b1e647f69c0c4ac28b537e7ae9c1c200
+location_id = "bca47d1099e762a012b9a139c36f30a0b1e647f69c0c4ac28b537e7ae9c1c200" # TODO
-weather = requests.get(f"https://wttr.in/{city}?format=j1").json()
+# NOTE to change to deg F, change the URL to your preffered location after weather.com
+# Default is English-Philippines with Busan, South Korea as location_id
+# get html page
+url = "https://weather.com/en-PH/weather/today/l/" + location_id
+html_data = PyQuery(url=url)
+# current temperature
+temp = html_data("span[data-testid='TemperatureValue']").eq(0).text()
+# print(temp)
-def format_time(time):
- return time.replace("00", "").zfill(2)
+# current status phrase
+status = html_data("div[data-testid='wxPhrase']").text()
+status = f"{status[:16]}.." if len(status) > 17 else status
+# print(status)
+# status code
+status_code = html_data("#regionHeader").attr("class").split(" ")[2].split("-")[2]
+# print(status_code)
-def format_temp(temp):
- return (hour['FeelsLikeC']+"°").ljust(3)
+# status icon
+icon = (
+ weather_icons[status_code]
+ if status_code in weather_icons
+ else weather_icons["default"]
+)
+# print(icon)
+# temperature feels like
+temp_feel = html_data(
+ "div[data-testid='FeelsLikeSection'] > span > span[data-testid='TemperatureValue']"
+).text()
+temp_feel_text = f"Feels like {temp_feel}c"
+# print(temp_feel_text)
-def format_chances(hour):
- chances = {
- "chanceoffog": "Fog",
- "chanceoffrost": "Frost",
- "chanceofovercast": "Overcast",
- "chanceofrain": "Rain",
- "chanceofsnow": "Snow",
- "chanceofsunshine": "Sunshine",
- "chanceofthunder": "Thunder",
- "chanceofwindy": "Wind"
- }
+# min-max temperature
+temp_min = (
+ html_data("div[data-testid='wxData'] > span[data-testid='TemperatureValue']")
+ .eq(0)
+ .text()
+)
+temp_max = (
+ html_data("div[data-testid='wxData'] > span[data-testid='TemperatureValue']")
+ .eq(1)
+ .text()
+)
+temp_min_max = f"ļ‹‹ {temp_min}\t\t {temp_max}"
+# print(temp_min_max)
- conditions = []
- for event in chances.keys():
- if int(hour[event]) > 0:
- conditions.append(chances[event]+" "+hour[event]+"%")
- return ", ".join(conditions)
+# wind speed
+wind_speed = html_data("span[data-testid='Wind']").text().split("\n")[1]
+wind_text = f"ē…® {wind_speed}"
+# print(wind_text)
-tempint = int(weather['current_condition'][0]['FeelsLikeC'])
-extrachar = ''
-if tempint > 0 and tempint < 10:
- extrachar = '+'
+# humidity
+humidity = html_data("span[data-testid='PercentageValue']").text()
+humidity_text = f"ī³ {humidity}"
+# print(humidity_text)
+# visibility
+visbility = html_data("span[data-testid='VisibilityValue']").text()
+visbility_text = f" {visbility}"
+# print(visbility_text)
-data['text'] = ' '+WEATHER_CODES[weather['current_condition'][0]['weatherCode']] + \
- " "+extrachar+weather['current_condition'][0]['FeelsLikeC']+"°"
+# air quality index
+air_quality_index = html_data("text[data-testid='DonutChartValue']").text()
+# print(air_quality_index)
-data['tooltip'] = f"<b>{weather['current_condition'][0]['weatherDesc'][0]['value']} {weather['current_condition'][0]['temp_C']}°</b>\n"
-data['tooltip'] += f"Feels like: {weather['current_condition'][0]['FeelsLikeC']}°\n"
-data['tooltip'] += f"Wind: {weather['current_condition'][0]['windspeedKmph']}Km/h\n"
-data['tooltip'] += f"Humidity: {weather['current_condition'][0]['humidity']}%\n"
-for i, day in enumerate(weather['weather']):
- data['tooltip'] += f"\n<b>"
- if i == 0:
- data['tooltip'] += "Today, "
- if i == 1:
- data['tooltip'] += "Tomorrow, "
- data['tooltip'] += f"{day['date']}</b>\n"
- data['tooltip'] += f"ā¬†ļø{day['maxtempC']}° ā¬‡ļø{day['mintempC']}° "
- data['tooltip'] += f"šŸŒ…{day['astronomy'][0]['sunrise']} šŸŒ‡{day['astronomy'][0]['sunset']}\n"
- for hour in day['hourly']:
- if i == 0:
- if int(format_time(hour['time'])) < datetime.now().hour-2:
- continue
- data['tooltip'] += f"{format_time(hour['time'])} {WEATHER_CODES[hour['weatherCode']]} {format_temp(hour['FeelsLikeC'])} {hour['weatherDesc'][0]['value']}, {format_chances(hour)}\n"
+# hourly rain prediction
+prediction = html_data("section[aria-label='Hourly Forecast']")(
+ "div[data-testid='SegmentPrecipPercentage'] > span"
+).text()
+prediction = prediction.replace("Chance of Rain", "")
+prediction = f"\n\n (hourly) {prediction}" if len(prediction) > 0 else prediction
+# print(prediction)
+# tooltip text
+tooltip_text = str.format(
+ "\t\t{}\t\t\n{}\n{}\n{}\n\n{}\n{}\n{}{}",
+ f'<span size="xx-large">{temp}</span>',
+ f"<big> {icon}</big>",
+ f"<b>{status}</b>",
+ f"<small>{temp_feel_text}</small>",
+ f"<b>{temp_min_max}</b>",
+ f"{wind_text}\t{humidity_text}",
+ f"{visbility_text}\tAQI {air_quality_index}",
+ f"<i> {prediction}</i>",
+)
-print(json.dumps(data))
+# print waybar module data
+out_data = {
+ "text": f"{icon} {temp}",
+ "alt": status,
+ "tooltip": tooltip_text,
+ "class": status_code,
+}
+print(json.dumps(out_data))
diff --git a/config/hypr/UserScripts/ZshChangeTheme.sh b/config/hypr/UserScripts/ZshChangeTheme.sh
index 7057ed2e..46d2249e 100755
--- a/config/hypr/UserScripts/ZshChangeTheme.sh
+++ b/config/hypr/UserScripts/ZshChangeTheme.sh
@@ -5,7 +5,7 @@ file_extension=".zsh-theme"
themes_array=($(find "$themes_dir" -type f -name "*$file_extension" -exec basename {} \; | sed -e "s/$file_extension//"))
-rofi_command="rofi -dmenu -config ~/.config/rofi/config-zsh-theme.rasi"
+rofi_command="rofi -i -dmenu -config ~/.config/rofi/config-zsh-theme.rasi"
menu() {
for theme in "${themes_array[@]}"; do
diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf
index 343b887b..a8ae26f4 100644
--- a/config/hypr/hyprland.conf
+++ b/config/hypr/hyprland.conf
@@ -16,4 +16,5 @@ source= $UserConfigs/Laptops.conf
source= $UserConfigs/LaptopDisplay.conf
source= $UserConfigs/WindowRules.conf
source= $UserConfigs/UserKeybinds.conf
-source= $UserConfigs/UserSettings.conf \ No newline at end of file
+source= $UserConfigs/UserSettings.conf
+source= $UserConfigs/WorkspaceRules.conf \ No newline at end of file
diff --git a/config/hypr/hyprlock.conf b/config/hypr/hyprlock.conf
index 1e50cbd6..3aa029d9 100644
--- a/config/hypr/hyprlock.conf
+++ b/config/hypr/hyprlock.conf
@@ -38,7 +38,7 @@ input-field {
placeholder_text = <i>Password...</i> # Text rendered in the input box when it's empty.
hide_input = false
- position = 0, 100
+ position = 0, 200
halign = center
valign = bottom
}
@@ -47,7 +47,7 @@ input-field {
label {
monitor =
text = cmd[update:18000000] echo "<b> "$(date +'%A, %-d %B %Y')" </b>"
- color = $color5
+ color = $color1
font_size = 34
font_family = JetBrains Mono Nerd Font 10
@@ -63,8 +63,7 @@ label {
color = $color7
font_size = 24
font_family = JetBrains Mono Nerd Font 10
-
- position = 0, -200
+ position = 0, -250
halign = center
valign = top
}
@@ -78,11 +77,12 @@ text = cmd[update:1000] echo "<b><big> $(date +"%H:%M:%S") </big></b>" # 24H
font_size = 94
font_family = JetBrains Mono Nerd Font 10
- position = 0, -150
+ position = 0, 0
halign = center
valign = center
}
+# User
label {
monitor =
text =  $USER
@@ -90,11 +90,12 @@ label {
font_size = 18
font_family = Inter Display Medium
- position = 0, 200
+ position = 0, 100
halign = center
valign = bottom
}
+# uptime
label {
monitor =
text = cmd[update:60000] echo "<b> "$(uptime -p)" </b>"
@@ -106,6 +107,7 @@ label {
valign = bottom
}
+# weather edit specific location. Note, this cause a 2-4 seconds delay in locking
label {
monitor =
text = cmd[update:3600000] ping -c 1 wttr.in > /dev/null && curl -s 'wttr.in?format=2' # For specific location : wttr.in/busan?format=2
@@ -117,16 +119,17 @@ label {
valign = bottom
}
+# Put a picture of choice here. Default is the current wallpaper
image {
monitor =
path = $HOME/.config/rofi/.current_wallpaper
size = 230
rounding = -1
border_size = 4
- border_color = $color12
+ border_color = $color2
rotate = 0
reload_time = -1
- position = 0, 200
+ position = 0, 300
halign = center
- valign = center
+ valign = bottom
} \ No newline at end of file
diff --git a/config/hypr/initial-boot.sh b/config/hypr/initial-boot.sh
index b6c57f3e..7810ad5f 100755
--- a/config/hypr/initial-boot.sh
+++ b/config/hypr/initial-boot.sh
@@ -7,7 +7,7 @@
# Variables
scriptsDir=$HOME/.config/hypr/scripts
-wallpaper=$HOME/Pictures/wallpapers/Dark_Nature.png
+wallpaper=$HOME/Pictures/wallpapers/Anime-Landscape2.png
waybar_style="$HOME/.config/waybar/style/[Pywal] Chroma Tally.css"
kvantum_theme="Catppuccin-Mocha"
diff --git a/config/hypr/pyprland.toml b/config/hypr/pyprland.toml
new file mode 100644
index 00000000..2ab74e86
--- /dev/null
+++ b/config/hypr/pyprland.toml
@@ -0,0 +1,12 @@
+[pyprland]
+
+plugins = [
+ "scratchpads",
+ "magnify",
+]
+
+[scratchpads.term]
+animation = "fromTop"
+command = "kitty --class kitty-dropterm"
+class = "kitty-dropterm"
+size = "75% 60%"
diff --git a/config/hypr/scripts/ClipManager.sh b/config/hypr/scripts/ClipManager.sh
index f93005bc..ddce2999 100755
--- a/config/hypr/scripts/ClipManager.sh
+++ b/config/hypr/scripts/ClipManager.sh
@@ -8,7 +8,7 @@
while true; do
result=$(
- rofi -dmenu \
+ rofi -i -dmenu \
-kb-custom-1 "Control-Delete" \
-kb-custom-2 "Alt-Delete" \
-config ~/.config/rofi/config-clipboard.rasi < <(cliphist list)
diff --git a/config/hypr/scripts/DarkLight.sh b/config/hypr/scripts/DarkLight.sh
index 50b01644..6c9f610f 100755
--- a/config/hypr/scripts/DarkLight.sh
+++ b/config/hypr/scripts/DarkLight.sh
@@ -17,7 +17,7 @@ light_rofi_pywal="$HOME/.cache/wal/colors-rofi-light.rasi"
pkill swaybg
# Initialize swww if needed
-swww query || swww init
+swww query || swww-daemon
# Set swww options
swww="swww img"
diff --git a/config/hypr/scripts/GameMode.sh b/config/hypr/scripts/GameMode.sh
index 74051403..37afe066 100755
--- a/config/hypr/scripts/GameMode.sh
+++ b/config/hypr/scripts/GameMode.sh
@@ -20,7 +20,7 @@ if [ "$HYPRGAMEMODE" = 1 ] ; then
notify-send -e -u low -i "$notif" "gamemode enabled. All animations off"
exit
else
- swww init && swww img "$HOME/.config/rofi/.current_wallpaper"
+ swww-daemon && swww img "$HOME/.config/rofi/.current_wallpaper" &
sleep 0.1
${SCRIPTSDIR}/PywalSwww.sh
sleep 0.5
diff --git a/config/hypr/scripts/KeyHints.sh b/config/hypr/scripts/KeyHints.sh
index 796084b8..d45f2e7e 100755
--- a/config/hypr/scripts/KeyHints.sh
+++ b/config/hypr/scripts/KeyHints.sh
@@ -39,11 +39,13 @@ yad --width=$dynamic_width --height=$dynamic_height \
--timeout-indicator=bottom \
"ESC" "close this app" "" "ļ…¼=ļ…ŗ" "SUPER KEY (Windows Key)" "(SUPER KEY)" \
"ļ…¼ enter" "Terminal" "(kitty)" \
-"ļ…¼ or ļ…¼ D" "App Launcher" "(rofi)" \
+"ļ…¼ SHIFT enter" "DropDown Terminal" "(kitty-pyprland)" \
+"ļ…¼ D" "App Launcher" "(rofi)" \
"ļ…¼ T" "Open File Manager" "(Thunar)" \
"ļ…¼ S" "Google Search" "(rofi)" \
"ļ…¼ Q" "close active window" "(not kill)" \
"ļ…¼ Shift Q " "closes a specified window" "(window)" \
+"ļ…¼ Z" "Desktop Zoom" "(pyprland)" \
"ļ…¼ Alt V" "Clipboard Manager" "(cliphist)" \
"ļ…¼ W" "Choose wallpaper" "(Wallpaper Menu)" \
"CTRL ALT W" "Random wallpaper" "(via swww)" \
diff --git a/config/hypr/scripts/PywalSwww.sh b/config/hypr/scripts/PywalSwww.sh
index fe067611..30a4d980 100755
--- a/config/hypr/scripts/PywalSwww.sh
+++ b/config/hypr/scripts/PywalSwww.sh
@@ -34,5 +34,5 @@ if [ "$ln_success" = true ]; then
# wal -i "$wallpaper_path"
echo 'about to execute wal'
# execute pywal skipping tty and terminal changes
- wal -i "$wallpaper_path" -s -t &
+ wal -i "$wallpaper_path" -s -t -n -e &
fi
diff --git a/config/hypr/scripts/RofiEmoji.sh b/config/hypr/scripts/RofiEmoji.sh
index 4c51ee8a..cf6bec55 100755
--- a/config/hypr/scripts/RofiEmoji.sh
+++ b/config/hypr/scripts/RofiEmoji.sh
@@ -3,7 +3,7 @@
# Rofi Emoticons. Not my own. Cant remember the source
sed '1,/^# # DATA # #$/d' $0 |
-rofi -dmenu -config ~/.config/rofi/config-long.rasi|
+rofi -i -dmenu -config ~/.config/rofi/config-long.rasi|
cut -d ' ' -f 1 | tr -d '\n' | wl-copy
exit
diff --git a/config/hypr/scripts/ScreenShot.sh b/config/hypr/scripts/ScreenShot.sh
index 309114dc..d2ee51a2 100755
--- a/config/hypr/scripts/ScreenShot.sh
+++ b/config/hypr/scripts/ScreenShot.sh
@@ -3,7 +3,7 @@
# Screenshots scripts
iDIR="$HOME/.config/swaync/icons"
-sDIR="$HOME/.config/hypr/UserScripts"
+sDIR="$HOME/.config/hypr/scripts"
notify_cmd_shot="notify-send -h string:x-canonical-private-synchronous:shot-notify -u low -i ${iDIR}/picture.png"
time=$(date "+%d-%b_%H-%M-%S")
diff --git a/config/hypr/UserScripts/Sounds.sh b/config/hypr/scripts/Sounds.sh
index fb8a1f57..a749114c 100755
--- a/config/hypr/UserScripts/Sounds.sh
+++ b/config/hypr/scripts/Sounds.sh
@@ -1,6 +1,7 @@
#!/bin/bash
# /* ---- šŸ’« https://github.com/JaKooLit šŸ’« ---- */ ##
# This script is used to play system sounds.
+# Script is used by Volume.Sh and ScreenShots.sh
theme="freedesktop" # Set the theme for the system sounds.
mute=false # Set to true to mute the system sounds.
diff --git a/config/hypr/scripts/Volume.sh b/config/hypr/scripts/Volume.sh
index d2fef87e..19868caf 100755
--- a/config/hypr/scripts/Volume.sh
+++ b/config/hypr/scripts/Volume.sh
@@ -3,7 +3,7 @@
# Scripts for volume controls for audio and mic
iDIR="$HOME/.config/swaync/icons"
-sDIR="$HOME/.config/hypr/UserScripts"
+sDIR="$HOME/.config/hypr/scripts"
# Get Volume
get_volume() {
diff --git a/config/hypr/scripts/WaybarLayout.sh b/config/hypr/scripts/WaybarLayout.sh
index a70953bb..03029889 100755
--- a/config/hypr/scripts/WaybarLayout.sh
+++ b/config/hypr/scripts/WaybarLayout.sh
@@ -38,7 +38,7 @@ restart_waybar_if_needed() {
# Main function
main() {
- choice=$(menu | rofi -dmenu -config "$rofi_config")
+ choice=$(menu | rofi -i -dmenu -config "$rofi_config")
if [[ -z "$choice" ]]; then
echo "No option selected. Exiting."
diff --git a/config/hypr/scripts/WaybarStyles.sh b/config/hypr/scripts/WaybarStyles.sh
index 4cd484b0..2e994780 100755
--- a/config/hypr/scripts/WaybarStyles.sh
+++ b/config/hypr/scripts/WaybarStyles.sh
@@ -40,7 +40,7 @@ restart_waybar_if_needed() {
# Main function
main() {
- choice=$(menu | rofi -dmenu -config "$rofi_config")
+ choice=$(menu | rofi -i -dmenu -config "$rofi_config")
if [[ -z "$choice" ]]; then
echo "No option selected. Exiting."
diff --git a/config/hypr/scripts/Wlogout.sh b/config/hypr/scripts/Wlogout.sh
index 1987e285..58e1fd68 100755
--- a/config/hypr/scripts/Wlogout.sh
+++ b/config/hypr/scripts/Wlogout.sh
@@ -8,8 +8,8 @@ A_2160=680
B_2160=750
A_1440=500
B_1440=550
-A_1080=300
-B_1080=380
+A_1080=400
+B_1080=400
A_720=50
B_720=50
diff --git a/config/hypr/v2.2.8 b/config/hypr/v2.2.10
index 31b3414d..31b3414d 100644
--- a/config/hypr/v2.2.8
+++ b/config/hypr/v2.2.10
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage