From 3678f78162e273580e40416c2ad984c66ceb1d72 Mon Sep 17 00:00:00 2001 From: SherLock707 Date: Tue, 26 Dec 2023 14:59:52 +0530 Subject: Replaced dunst with swaync --- config/hypr/scripts/Refresh.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'config/hypr/scripts/Refresh.sh') diff --git a/config/hypr/scripts/Refresh.sh b/config/hypr/scripts/Refresh.sh index 0d91de8d..dd773ef2 100755 --- a/config/hypr/scripts/Refresh.sh +++ b/config/hypr/scripts/Refresh.sh @@ -16,7 +16,10 @@ waybar & sleep 0.1 # Relaunch dunst with pywal-borders -${SCRIPTSDIR}/PywalDunst.sh & +# ${SCRIPTSDIR}/PywalDunst.sh & + +# Relaunch swaync with pywal-borders +${SCRIPTSDIR}/PywalSwaync.sh # Relaunching rainbow borders sleep 1 -- cgit v1.2.3 From 0bdc93e101308e6aa43438dcb0de67182a865622 Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Wed, 27 Dec 2023 00:37:26 +0900 Subject: updated swaync --- config/hypr/configs/Execs.conf | 4 +- config/hypr/configs/Keybinds.conf | 5 +- config/hypr/scripts/KeyHints.sh | 6 +- config/hypr/scripts/PywalSwaync.sh | 6 - config/hypr/scripts/Refresh.sh | 11 +- config/hypr/scripts/RefreshNoWaybar.sh | 2 +- config/hypr/scripts/ScreenShot.sh | 48 ++- config/swaync/config.json | 167 ++++---- config/swaync/style.css | 422 +++++++++++---------- config/waybar/configs/[TOP] Default Laptop | 1 + config/waybar/modules | 43 ++- config/waybar/style/Catppuccin-Latte.css | 5 + config/waybar/style/Catppuccin-Mocha.css | 3 +- config/waybar/style/Crimson.css | 2 +- config/waybar/style/Rose Pine.css | 2 +- config/waybar/style/Simple Pink.css | 2 +- config/waybar/style/[Black & White] Monochrome.css | 2 +- .../style/[Bordered Pywal] Chroma Fusion Edge.css | 2 + config/waybar/style/[Colored] Chroma Glow.css | 3 +- config/waybar/style/[Colored] Translucent.css | 2 +- config/waybar/style/[Colorful] Aurora Blossom.css | 2 +- config/waybar/style/[Colorful] Aurora.css | 2 +- .../waybar/style/[Colorful] Rainbow Spectrum.css | 3 +- config/waybar/style/[Dark] Golden Noir.css | 2 +- config/waybar/style/[Dark] Obsidian Edge.css | 2 +- config/waybar/style/[Dark] Purpl.css | 2 +- .../waybar/style/[Light] Monochrome Contrast.css | 2 +- config/waybar/style/[Light] Obsidian Glow.css | 2 +- config/waybar/style/[Pywal] Chroma Edge.css | 5 +- config/waybar/style/[Pywal] Chroma Fusion.css | 2 + config/waybar/style/[Pywal] Chroma Tally.css | 3 +- config/waybar/style/[Pywal] Colored.css | 2 +- config/waybar/style/[Pywal] Simple.css | 2 +- config/waybar/style/[Retro] Simple Style.css | 4 +- .../waybar/style/[Transparent] Crystal Clear.css | 1 + 35 files changed, 430 insertions(+), 344 deletions(-) delete mode 100755 config/hypr/scripts/PywalSwaync.sh (limited to 'config/hypr/scripts/Refresh.sh') diff --git a/config/hypr/configs/Execs.conf b/config/hypr/configs/Execs.conf index 098db4b2..19da05bc 100644 --- a/config/hypr/configs/Execs.conf +++ b/config/hypr/configs/Execs.conf @@ -22,10 +22,10 @@ exec-once = $scriptsDir/Polkit.sh # starup apps exec-once = waybar & -# exec-once = dunst & exec-once swaync & -#exec-once = blueman-applet & exec-once = nm-applet --indicator & +# exec-once = dunst & +#exec-once = blueman-applet & #exec-once = rog-control-center & #clipboard manager diff --git a/config/hypr/configs/Keybinds.conf b/config/hypr/configs/Keybinds.conf index 4e6a753b..901cbd27 100644 --- a/config/hypr/configs/Keybinds.conf +++ b/config/hypr/configs/Keybinds.conf @@ -34,6 +34,8 @@ 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 +bind = $mainMod SHIFT, N, exec, swaync-client -t -sw # swayNC panel + # MISC (Miscellaneous Keybinds) bind = $mainMod SHIFT, O, exec, $scriptsDir/ZshChangeTheme.sh # Change oh-my-zsh theme @@ -179,6 +181,3 @@ bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | swappy -f - # to unbind #bind = $mainMod ALT, P, submap, reset #submap = reset - -#Swaync notification panel -bind = $mainMod, N, exec, swaync-client -t -sw \ No newline at end of file diff --git a/config/hypr/scripts/KeyHints.sh b/config/hypr/scripts/KeyHints.sh index 7bb80e18..a9d93d00 100755 --- a/config/hypr/scripts/KeyHints.sh +++ b/config/hypr/scripts/KeyHints.sh @@ -45,13 +45,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 Pannel" "SwayNC Control 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!!!)" \ diff --git a/config/hypr/scripts/PywalSwaync.sh b/config/hypr/scripts/PywalSwaync.sh deleted file mode 100755 index aad1acb8..00000000 --- a/config/hypr/scripts/PywalSwaync.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -pkill swaync - -sleep 0.3 -swaync > /dev/null 2>&1 & \ No newline at end of file diff --git a/config/hypr/scripts/Refresh.sh b/config/hypr/scripts/Refresh.sh index dd773ef2..3838b5e3 100755 --- a/config/hypr/scripts/Refresh.sh +++ b/config/hypr/scripts/Refresh.sh @@ -3,7 +3,7 @@ SCRIPTSDIR=$HOME/.config/hypr/scripts # Kill already running processes -_ps=(waybar rofi) +_ps=(waybar rofi swaync) for _prs in "${_ps[@]}"; do if pidof "${_prs}" >/dev/null; then pkill "${_prs}" @@ -14,12 +14,9 @@ sleep 0.1 # Relaunch waybar waybar & -sleep 0.1 -# Relaunch dunst with pywal-borders -# ${SCRIPTSDIR}/PywalDunst.sh & - -# Relaunch swaync with pywal-borders -${SCRIPTSDIR}/PywalSwaync.sh +# relaunch swaync +sleep 0.3 +swaync > /dev/null 2>&1 & # Relaunching rainbow borders sleep 1 diff --git a/config/hypr/scripts/RefreshNoWaybar.sh b/config/hypr/scripts/RefreshNoWaybar.sh index c834a531..0b74f011 100755 --- a/config/hypr/scripts/RefreshNoWaybar.sh +++ b/config/hypr/scripts/RefreshNoWaybar.sh @@ -19,7 +19,7 @@ ${SCRIPTSDIR}/PywalSwww.sh & sleep 0.5 # Relaunch dunst with pywal-borders -${SCRIPTSDIR}/PywalDunst.sh & +#${SCRIPTSDIR}/PywalDunst.sh & # Relaunching rainbow borders sleep 1 diff --git a/config/hypr/scripts/ScreenShot.sh b/config/hypr/scripts/ScreenShot.sh index 06826275..44ba2bd6 100755 --- a/config/hypr/scripts/ScreenShot.sh +++ b/config/hypr/scripts/ScreenShot.sh @@ -1,27 +1,40 @@ #!/bin/bash iDIR="$HOME/.config/dunst/icons" +notify_cmd_shot="dunstify -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="notify-send -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}' is saved." + else + ${notify_cmd_shot} "Screenshot of '${active_window_class}' is deleted or not available." + fi + else + local check_file="$dir/$file" + if [[ -e "$check_file" ]]; then + ${notify_cmd_shot} "Screenshot Saved." + else + ${notify_cmd_shot} "Screenshot Deleted." + fi + fi } + + # countdown countdown() { for sec in $(seq $1 -1 1); do - notify-send -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png "Taking shot in : $sec" + dunstify -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/swaync/config.json b/config/swaync/config.json index 1f9de0e4..591757b7 100644 --- a/config/swaync/config.json +++ b/config/swaync/config.json @@ -1,78 +1,93 @@ { - "$schema": "/etc/xdg/swaync/configSchema.json", - "positionX": "right", - "positionY": "top", - "layer": "overlay", - "control-center-layer": "top", - "layer-shell": true, - "cssPriority": "application", - "control-center-margin-top": 0, - "control-center-margin-bottom": 0, - "control-center-margin-right": 0, - "control-center-margin-left": 0, - "notification-2fa-action": true, - "notification-inline-replies": false, - "notification-icon-size": 64, - "notification-body-image-height": 100, - "notification-body-image-width": 200, - "timeout": 10, - "timeout-low": 5, - "timeout-critical": 0, - "fit-to-screen": true, - "control-center-width": 500, - "control-center-height": 600, - "notification-window-width": 500, - "keyboard-shortcuts": true, - "image-visibility": "when-available", - "transition-time": 200, - "hide-on-clear": false, - "hide-on-action": true, - "script-fail-notify": true, - // "scripts": { - // "example-script": { - // "exec": "echo 'Do something...'", - // "urgency": "Normal" - // }, - // "example-action-script": { - // "exec": "echo 'Do something actionable!'", - // "urgency": "Normal", - // "run-on": "action" - // } - // }, - "notification-visibility": { - "example-name": { - "state": "muted", - "urgency": "Low", - "app-name": "mpv" + "$schema": "/etc/xdg/swaync/configSchema.json", + "positionX": "right", + "positionY": "top", + "control-center-margin-top": 10, + "control-center-margin-bottom": 10, + "control-center-margin-right": 10, + "control-center-margin-left": 10, + "notification-icon-size": 24, + "notification-body-image-height": 60, + "notification-body-image-width": 300, + "timeout": 6, + "timeout-low": 3, + "timeout-critical": 0, + "fit-to-screen": false, + "control-center-width": 400, + "control-center-height": 800, + "notification-window-width": 300, + "keyboard-shortcuts": true, + "image-visibility": "when-available", + "transition-time": 200, + "hide-on-clear": false, + "hide-on-action": true, + "script-fail-notify": true, + "widgets": [ + "title", + "buttons-grid", + "dnd", + "volume", + "backlight", + "notifications" + ], + "widget-config": { + "title": { + "text": "Control Center", + "clear-all-button": true, + "button-text": "Clear" + }, + "dnd": { + "text": "Do Not Disturb" + }, + "label": { + "max-lines": 1, + "text": "Control Center" + }, + "mpris": { + "image-size": 60, + "image-radius": 7 + }, + "volume": { + "label": "󰕾" + }, + "backlight": { + "label": "󰃟" + }, + "buttons-grid": { + "actions": [ + { + "label": "󰐥", + "command": "systemctl poweroff" + }, + { + "label": "󰜉", + "command": "systemctl reboot" + }, + { + "label": "󰌾", + "command": "~/.config/hypr/scripts/LockScreen.sh" + }, + { + "label": "󰍃", + "command": "hyprctl dispatch exit" + }, + { + "label": "󰀝", + "command": "~/.config/hypr/scripts/AirplaneMode.sh" + }, + { + "label": "󰕾", + "command": "pactl set-sink-mute @DEFAULT_SINK@ toggle" + }, + { + "label": "󰍬", + "command": "pactl set-source-mute @DEFAULT_SOURCE@ toggle" + }, + { + "label": "󰂯", + "command": "blueman-manager" + } + ] + } } - }, - "widgets": [ - "inhibitors", - "title", - "dnd", - "notifications" - ], - "widget-config": { - "inhibitors": { - "text": "Inhibitors", - "button-text": "Clear All", - "clear-all-button": true - }, - "title": { - "text": "Notifications", - "clear-all-button": true, - "button-text": "Clear All" - }, - "dnd": { - "text": "Do Not Disturb" - }, - "label": { - "max-lines": 5, - "text": "Label Text" - }, - "mpris": { - "image-size": 96, - "image-radius": 12 - } - } -} +} \ No newline at end of file diff --git a/config/swaync/style.css b/config/swaync/style.css index 13d8c0b8..e65c2dbe 100644 --- a/config/swaync/style.css +++ b/config/swaync/style.css @@ -1,296 +1,332 @@ @import '../../.cache/wal/colors-waybar.css'; -@define-color foreground rgb(248, 248, 242); -@define-color background @color1; -/* @define-color background rgb(40, 42, 54); */ -@define-color background-alpha rgba(40, 42, 54, 0.8); -@define-color accent @color2; -/* @define-color accent rgba(189, 147, 249, 0.8); */ -@define-color current-line rgb(68, 71, 90); -@define-color comment rgb(98, 114, 164); +@define-color cc-bg rgba(26, 27, 38, 1); +@define-color noti-border-color @color2; +@define-color noti-bg @background; +@define-color noti-bg-darker rgb(43, 43, 57); +@define-color noti-bg-hover @color2; +@define-color noti-bg-focus rgba(27, 27, 27, 0.6); +@define-color noti-close-bg rgba(255, 255, 255, 0.1); +@define-color noti-close-bg-hover rgba(255, 255, 255, 0.15); +@define-color text-color @foreground; +@define-color text-color-disabled rgb(150, 150, 150); +@define-color bg-selected rgb(0, 128, 255); * { - all: unset; - font-size: 18px; - /* font-family: "JetBrainsMono Nerd Font"; */ - transition: 200ms; + font-family: JetBrainsMono NFP; + font-weight: bold; } -.floating-notifications.background .notification-row .notification-background { - box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #313244; - border-radius: 12.6px; - margin: 18px; - /* background-color: #1e1e2e; */ - background-color: rgba(30, 30, 46, 0.9); - color: #cdd6f4; - padding: 3; - border: 1px solid @accent; +.control-center .notification-row:focus, +.control-center .notification-row:hover { + opacity: 1; + background: @noti-bg } -.floating-notifications.background .notification-row .notification-background .notification { - padding: 7px; - border-radius: 12.6px; +.notification-row { + outline: none; + margin: 10px; + padding: 0; } -.floating-notifications.background .notification-row .notification-background .notification.critical { - box-shadow: inset 0 0 7px 0 #f38ba8; +.notification { + background: transparent; + padding: 0px; + margin: 0px; } -.floating-notifications.background .notification-row .notification-background .notification .notification-content { - margin: 7px; +.notification-content { + background: @cc-bg; + padding: 2px; + border-radius: 5px; + border: 2px solid @noti-border-color; + margin: 0; } -.floating-notifications.background .notification-row .notification-background .notification .notification-content .summary { - color: #cdd6f4; +.notification-default-action { + margin: 0; + padding: 0; + border-radius: 5px; } -.floating-notifications.background .notification-row .notification-background .notification .notification-content .time { - color: #a6adc8; +.close-button { + background: #f7768e; + color: @cc-bg; + text-shadow: none; + padding: 0; + border-radius: 5px; + margin-top: 5px; + margin-right: 5px; } -.floating-notifications.background .notification-row .notification-background .notification .notification-content .body { - color: #cdd6f4; +.close-button:hover { + box-shadow: none; + background: #f7768e; + transition: all .15s ease-in-out; + border: none } -.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * { - min-height: 3.4em; + +.notification-action { + border: 2px solid @noti-border-color; + border-top: none; + border-radius: 8px; } -.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action { - border-radius: 7px; - color: #cdd6f4; - background-color: #313244; - box-shadow: inset 0 0 0 1px #45475a; - margin: 7px; + +.notification-default-action:hover, +.notification-action:hover { + color: @foreground; + background: #7aa2f7 } -.notification-action { - border-radius: 5px; - background: linear-gradient( - 45deg, - rgba(164, 89, 235, 0.8), - @accent - ); - border: 1px; - margin: 5px; +.notification-default-action { + border-radius: 5px; + margin: 0px; } -.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:hover { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #313244; - color: #cdd6f4; +.notification-default-action:not(:only-child) { + border-bottom-left-radius: 7px; + border-bottom-right-radius: 7px } -.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:active { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #74c7ec; - color: #cdd6f4; +.notification-action:first-child { + border-bottom-left-radius: 10px; + background: #1b1b2b } -.floating-notifications.background .notification-row .notification-background .close-button { - margin: 7px; - padding: 2px; - border-radius: 6.3px; - color: #1e1e2e; - background-color: #f38ba8; +.notification-action:last-child { + border-bottom-right-radius: 10px; + background: #1b1b2b } -.floating-notifications.background .notification-row .notification-background .close-button:hover { - background-color: #eba0ac; - color: #1e1e2e; +.inline-reply { + margin-top: 8px } -.floating-notifications.background .notification-row .notification-background .close-button:active { - background-color: #f38ba8; - color: #1e1e2e; +.inline-reply-entry { + background: @noti-bg; + color: @text-color; + caret-color: @text-color; + border: 1px solid @noti-border-color; + border-radius: 8px } -.control-center { - box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #313244; - border-radius: 12.6px; - margin: 18px; - /* background-color: #1e1e2e; */ - background-color: rgba(49, 50, 68, 0.9); - color: #cdd6f4; - padding: 14px; - border: 1px solid @accent; +.inline-reply-button { + font-size: 0.5rem; + margin-left: 4px; + background: @noti-bg; + border: 1px solid @noti-border-color; + border-radius: 5px; + color: @text-color +} + +.inline-reply-button:disabled { + background: initial; + color: @text-color-disabled; + border: 1px solid transparent +} + +.inline-reply-button:hover { + background: @noti-bg-hover } -.control-center .widget-title { - color: #cdd6f4; - font-size: 1.3em; +.body-image { + margin-top: 6px; + background-color: #fff; + border-radius: 5px } -.control-center .widget-title button { - border-radius: 7px; - color: #cdd6f4; - background-color: #313244; - box-shadow: inset 0 0 0 1px #45475a; - padding: 8px; +.summary { + font-size: 1rem; + font-weight: 700; + background: transparent; + color: rgba(158, 206, 106, 1); + text-shadow: none } -.control-center .widget-title button:hover { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #585b70; - color: #cdd6f4; +.time { + font-size: 1rem; + font-weight: 700; + background: transparent; + color: @text-color; + text-shadow: none; + margin-right: 18px } -.control-center .widget-title button:active { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #74c7ec; - color: #1e1e2e; +.body { + font-size: 1rem; + font-weight: 400; + background: transparent; + color: @text-color; + text-shadow: none } -.control-center .notification-row .notification-background { - border-radius: 7px; - color: #cdd6f4; - background-color: #313244; - box-shadow: inset 0 0 0 1px #45475a; - margin-top: 14px; +.control-center { + background: @cc-bg; + border: 2px solid @noti-border-color; + border-radius: 10px; } -.control-center .notification-row .notification-background .notification { - padding: 7px; - border-radius: 7px; +.control-center-list { + background: transparent } -.control-center .notification-row .notification-background .notification.critical { - box-shadow: inset 0 0 7px 0 #f38ba8; +.control-center-list-placeholder { + opacity: .5 } -.control-center .notification-row .notification-background .notification .notification-content { - margin: 7px; +.floating-notifications { + background: transparent; } -.control-center .notification-row .notification-background .notification .notification-content .summary { - color: #cdd6f4; +.blank-window { + background: alpha(black, 0.1) } -.control-center .notification-row .notification-background .notification .notification-content .time { - color: #a6adc8; +.widget-title { + color: #7aa2f7; + background: @noti-bg-darker; + padding: 0px 5px 0px 10px; + margin: 10px 10px 5px 10px; + font-size: 1rem; + border-radius: 5px; } -.control-center .notification-row .notification-background .notification .notification-content .body { - color: #cdd6f4; +.widget-title>button { + font-size: 0.75rem; + color: @text-color; + border-radius: 10px; + background: transparent; + border: 0.5px solid @noti-border-color; } -.control-center .notification-row .notification-background .notification > *:last-child > * { - min-height: 3.4em; +.widget-title>button:hover { + background: #f7768e; + color: @noti-border-color; } -.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action { - border-radius: 7px; - color: #cdd6f4; - background-color: #11111b; - box-shadow: inset 0 0 0 1px #45475a; - margin: 7px; +.widget-dnd { + background: @noti-bg-darker; + padding: 3px 6px; + margin: 5px 10px 10px 10px; + border-radius: 5px; + font-size: 1rem; + color: #7aa2f7; } -.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:hover { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #313244; - color: #cdd6f4; +.widget-dnd>switch { + border-radius: 5px; + /* border: 1px solid #7aa2f7; */ + background: #7aa2f7; } -.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:active { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #74c7ec; - color: #cdd6f4; +.widget-dnd>switch:checked { + background: #f7768e; + border: 1px solid #f7768e; } -.control-center .notification-row .notification-background .close-button { - margin: 7px; - padding: 2px; - border-radius: 6.3px; - color: #1e1e2e; - background-color: #eba0ac; +.widget-dnd>switch slider { + background: @cc-bg; + border-radius: 5px } -.control-center .notification-row .notification-background .close-button:hover { - background-color: #f38ba8; - color: #1e1e2e; +.widget-dnd>switch:checked slider { + background: @cc-bg; + border-radius: 5px } -.control-center .notification-row .notification-background .close-button:active { - background-color: #f38ba8; - color: #1e1e2e; +.widget-label { + margin: 10px 10px 5px 10px; } -.control-center .notification-row .notification-background:hover { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #7f849c; - color: #cdd6f4; +.widget-label>label { + font-size: 1rem; + color: @text-color; } -.control-center .notification-row .notification-background:active { - box-shadow: inset 0 0 0 1px #45475a; - background-color: #74c7ec; - color: #cdd6f4; +.widget-mpris { + color: @text-color; + background: @noti-bg-darker; + padding: 5px 10px; + margin: 5px 10px 5px 10px; + border-radius: 5px; } -progressbar, -progress, -trough { - border-radius: 12.6px; +.widget-mpris > box > button { + border-radius: 5px; } -progressbar { - box-shadow: inset 0 0 0 1px #45475a; +.widget-mpris-player { + padding: 5px 10px; + margin: 10px } -.notification.critical progress { - background-color: #f38ba8; +.widget-mpris-title { + font-weight: 700; + font-size: 1.25rem } -.notification.low progress, -.notification.normal progress { - background-color: #89b4fa; +.widget-mpris-subtitle { + font-size: 1.1rem } -trough { - background-color: #313244; +.widget-buttons-grid { + font-size: x-large; + padding: 4px; + margin: 5px 10px 10px 10px; + border-radius: 5px; + background: @noti-bg-darker; } -.control-center trough { - background-color: #45475a; +.widget-buttons-grid>flowbox>flowboxchild>button { + margin: 3px; + background: @cc-bg; + border-radius: 5px; + color: @text-color } -.control-center-dnd { - margin-top: 5px; - border-radius: 8px; - background: #313244; - border: 1px solid #45475a; - box-shadow: none; +.widget-buttons-grid>flowbox>flowboxchild>button:hover { + background: rgba(122, 162, 247, 0.1); + color: @noti-border-color; } -.control-center-dnd:checked { - background: #313244; +.widget-menubar>box>.menu-button-bar>button { + border: none; + background: transparent } -.control-center-dnd slider { - background: #45475a; - border-radius: 8px; +.topbar-buttons>button { + border: none; + background: transparent } -.widget-dnd { - margin: 0px; - font-size: 1.1rem; +.widget-volume { + background: @noti-bg-darker; + padding: 5px; + margin: 10px 10px 5px 10px; + border-radius: 5px; + font-size: x-large; + color: @text-color; } -.widget-dnd > switch { - font-size: initial; - border-radius: 8px; - background: #313244; - border: 1px solid #45475a; - box-shadow: none; +.widget-volume>box>button { + background: #7aa2f7; + border: none } -.widget-dnd > switch:checked { - background: #313244; +.per-app-volume { + background-color: @noti-bg; + padding: 4px 8px 8px; + margin: 0 8px 8px; + border-radius: 5px; } -.widget-dnd > switch slider { - background: #45475a; - border-radius: 8px; - border: 1px solid #6c7086; +.widget-backlight { + background: @noti-bg-darker; + padding: 5px; + margin: 10px 10px 5px 10px; + border-radius: 5px; + font-size: x-large; + color: @text-color } diff --git a/config/waybar/configs/[TOP] Default Laptop b/config/waybar/configs/[TOP] Default Laptop index 24f27552..89f6bbbd 100644 --- a/config/waybar/configs/[TOP] Default Laptop +++ b/config/waybar/configs/[TOP] Default Laptop @@ -45,6 +45,7 @@ "modules-right": [ "network#speed", "custom/separator#dot-line", + "custom/swaync", "tray", "mpris", "custom/separator#dot-line", diff --git a/config/waybar/modules b/config/waybar/modules index 992eeb1c..6dac507a 100644 --- a/config/waybar/modules +++ b/config/waybar/modules @@ -1,4 +1,4 @@ -git@github.com:SherLock707/Hyprland-Dots.git//* ---- 💫 https://github.com/JaKooLit 💫 ---- *// +//* ---- 💫 https://github.com/JaKooLit 💫 ---- *// { // HYPRLAND WORKSPACES. CHOOSE as desired and place on waybar configs @@ -544,6 +544,27 @@ git@github.com:SherLock707/Hyprland-Dots.git//* ---- 💫 https://github.com/JaK "on-scroll-down": "~/.config/hypr/scripts/Volume.sh --dec", "smooth-scrolling-threshold": 1, }, + +"custom/swaync": { + "tooltip": false, + "format": "{icon} {}", + "format-icons": { + "notification": "", + "none": "", + "dnd-notification": "", + "dnd-none": "", + "inhibited-notification": "", + "inhibited-none": "", + "dnd-inhibited-notification": "", + "dnd-inhibited-none": "" + }, + "return-type": "json", + "exec-if": "which swaync-client", + "exec": "swaync-client -swb", + "on-click": "sleep 0.1 && swaync-client -t -sw", + "on-click-right": "swaync-client -d -sw", + "escape": true, +}, "custom/power": { "format": "⏻ ", @@ -714,26 +735,6 @@ git@github.com:SherLock707/Hyprland-Dots.git//* ---- 💫 https://github.com/JaK "interval" : 86400, // once every day "tooltip": true, }, -"custom/swaync": { - "tooltip": false, - "format": "{icon} {}", - "format-icons": { - "notification": "", - "none": "", - "dnd-notification": "", - "dnd-none": "", - "inhibited-notification": "", - "inhibited-none": "", - "dnd-inhibited-notification": "", - "dnd-inhibited-none": "" - }, - "return-type": "json", - "exec-if": "which swaync-client", - "exec": "swaync-client -swb", - "on-click": "sleep 0.1 && swaync-client -t -sw", - "on-click-right": "swaync-client -d -sw", - "escape": true, - }, } diff --git a/config/waybar/style/Catppuccin-Latte.css b/config/waybar/style/Catppuccin-Latte.css index eff29a7c..18b16633 100644 --- a/config/waybar/style/Catppuccin-Latte.css +++ b/config/waybar/style/Catppuccin-Latte.css @@ -75,6 +75,7 @@ window#waybar.hidden { #custom-lock, #custom-menu, #custom-power, +#custom-speaker, #custom-power_vertical, #custom-updater, #custom-weather, @@ -123,6 +124,10 @@ window#waybar.hidden { box-shadow: inset 0 -3px transparent; } +#bluetooth { + color: @blue; +} + #clock { color: @yellow; } diff --git a/config/waybar/style/Catppuccin-Mocha.css b/config/waybar/style/Catppuccin-Mocha.css index 63075eff..061106c5 100644 --- a/config/waybar/style/Catppuccin-Mocha.css +++ b/config/waybar/style/Catppuccin-Mocha.css @@ -82,7 +82,7 @@ window#waybar.hidden { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -105,6 +105,7 @@ window#waybar.hidden { color: @blue; } +#bluetooth, #backlight { color: @blue; } diff --git a/config/waybar/style/Crimson.css b/config/waybar/style/Crimson.css index acf8048d..fcac5dc1 100644 --- a/config/waybar/style/Crimson.css +++ b/config/waybar/style/Crimson.css @@ -137,7 +137,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/Rose Pine.css b/config/waybar/style/Rose Pine.css index a585a20d..4a15422b 100644 --- a/config/waybar/style/Rose Pine.css +++ b/config/waybar/style/Rose Pine.css @@ -126,7 +126,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-swaync, #custom-weather, diff --git a/config/waybar/style/Simple Pink.css b/config/waybar/style/Simple Pink.css index f449e7ad..d306dd84 100644 --- a/config/waybar/style/Simple Pink.css +++ b/config/waybar/style/Simple Pink.css @@ -152,7 +152,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Black & White] Monochrome.css b/config/waybar/style/[Black & White] Monochrome.css index 6574848f..143e887b 100644 --- a/config/waybar/style/[Black & White] Monochrome.css +++ b/config/waybar/style/[Black & White] Monochrome.css @@ -136,7 +136,7 @@ tooltip label{ #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css b/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css index ad1981ec..1a29c409 100644 --- a/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css +++ b/config/waybar/style/[Bordered Pywal] Chroma Fusion Edge.css @@ -76,6 +76,7 @@ window#waybar.empty #window { #custom-menu, #custom-power_vertical, #custom-power, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -125,6 +126,7 @@ window#waybar.empty #window { color: @rosewater; } +#custom-swaync, #custom-keybinds, #tray { color: aliceblue; diff --git a/config/waybar/style/[Colored] Chroma Glow.css b/config/waybar/style/[Colored] Chroma Glow.css index e28973a3..f324bf3a 100644 --- a/config/waybar/style/[Colored] Chroma Glow.css +++ b/config/waybar/style/[Colored] Chroma Glow.css @@ -124,7 +124,7 @@ tooltip label{ #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -223,6 +223,7 @@ label:focus { color: #df3320; } +#custom-swaync, #custom-keybinds { color: #1e66f5; } diff --git a/config/waybar/style/[Colored] Translucent.css b/config/waybar/style/[Colored] Translucent.css index 9a096c35..0e3cbaf5 100644 --- a/config/waybar/style/[Colored] Translucent.css +++ b/config/waybar/style/[Colored] Translucent.css @@ -138,7 +138,7 @@ tooltip label{ #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Colorful] Aurora Blossom.css b/config/waybar/style/[Colorful] Aurora Blossom.css index 369300a7..8a0f8522 100644 --- a/config/waybar/style/[Colorful] Aurora Blossom.css +++ b/config/waybar/style/[Colorful] Aurora Blossom.css @@ -125,7 +125,7 @@ tooltip label{ #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Colorful] Aurora.css b/config/waybar/style/[Colorful] Aurora.css index 297be9d0..a5e57cbd 100644 --- a/config/waybar/style/[Colorful] Aurora.css +++ b/config/waybar/style/[Colorful] Aurora.css @@ -115,7 +115,7 @@ tooltip label{ #custom-menu, #custom-power, #custom-power_vertical, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Colorful] Rainbow Spectrum.css b/config/waybar/style/[Colorful] Rainbow Spectrum.css index 6515e149..333f798a 100644 --- a/config/waybar/style/[Colorful] Rainbow Spectrum.css +++ b/config/waybar/style/[Colorful] Rainbow Spectrum.css @@ -80,7 +80,7 @@ tooltip label{ #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -239,6 +239,7 @@ tooltip label{ background-color: #94e2d5; } +#custom-swaync, #custom-weather { background-color: #cba6f7; } diff --git a/config/waybar/style/[Dark] Golden Noir.css b/config/waybar/style/[Dark] Golden Noir.css index 25be8e80..667b06e7 100644 --- a/config/waybar/style/[Dark] Golden Noir.css +++ b/config/waybar/style/[Dark] Golden Noir.css @@ -150,7 +150,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Dark] Obsidian Edge.css b/config/waybar/style/[Dark] Obsidian Edge.css index 587c3f0d..8d21d72d 100644 --- a/config/waybar/style/[Dark] Obsidian Edge.css +++ b/config/waybar/style/[Dark] Obsidian Edge.css @@ -143,7 +143,7 @@ tooltip label { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Dark] Purpl.css b/config/waybar/style/[Dark] Purpl.css index e3a35731..0f97470f 100644 --- a/config/waybar/style/[Dark] Purpl.css +++ b/config/waybar/style/[Dark] Purpl.css @@ -147,7 +147,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Light] Monochrome Contrast.css b/config/waybar/style/[Light] Monochrome Contrast.css index d70ce5eb..34b579f9 100644 --- a/config/waybar/style/[Light] Monochrome Contrast.css +++ b/config/waybar/style/[Light] Monochrome Contrast.css @@ -137,7 +137,7 @@ tooltip label{ #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Light] Obsidian Glow.css b/config/waybar/style/[Light] Obsidian Glow.css index 9b4b07a8..cd939b5d 100644 --- a/config/waybar/style/[Light] Obsidian Glow.css +++ b/config/waybar/style/[Light] Obsidian Glow.css @@ -112,7 +112,7 @@ tooltip label { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Pywal] Chroma Edge.css b/config/waybar/style/[Pywal] Chroma Edge.css index 0bc333a7..282057c8 100644 --- a/config/waybar/style/[Pywal] Chroma Edge.css +++ b/config/waybar/style/[Pywal] Chroma Edge.css @@ -117,7 +117,7 @@ tooltip label{ #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -207,7 +207,8 @@ tooltip label{ color: #d6e7e5; } -#custom-weather.default { +#custom-swaync, +#custom-weather { color: #ebecf0; } diff --git a/config/waybar/style/[Pywal] Chroma Fusion.css b/config/waybar/style/[Pywal] Chroma Fusion.css index 05d881f9..3f15037f 100644 --- a/config/waybar/style/[Pywal] Chroma Fusion.css +++ b/config/waybar/style/[Pywal] Chroma Fusion.css @@ -76,6 +76,7 @@ window#waybar.empty #window { #custom-menu, #custom-power_vertical, #custom-power, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -109,6 +110,7 @@ window#waybar.empty #window { opacity:1.0; } +#custom-swaync, #custom-weather, #custom-updater { color: @yellow; diff --git a/config/waybar/style/[Pywal] Chroma Tally.css b/config/waybar/style/[Pywal] Chroma Tally.css index 5ea40d86..c3a38fb6 100644 --- a/config/waybar/style/[Pywal] Chroma Tally.css +++ b/config/waybar/style/[Pywal] Chroma Tally.css @@ -82,7 +82,7 @@ window#waybar { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -189,6 +189,7 @@ window#waybar { #tray { } +#custom-swaync, #custom-menu { color: yellow; } diff --git a/config/waybar/style/[Pywal] Colored.css b/config/waybar/style/[Pywal] Colored.css index b1e2b007..afb01280 100644 --- a/config/waybar/style/[Pywal] Colored.css +++ b/config/waybar/style/[Pywal] Colored.css @@ -144,7 +144,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Pywal] Simple.css b/config/waybar/style/[Pywal] Simple.css index 9d8c1c8c..6acef45e 100644 --- a/config/waybar/style/[Pywal] Simple.css +++ b/config/waybar/style/[Pywal] Simple.css @@ -132,7 +132,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, diff --git a/config/waybar/style/[Retro] Simple Style.css b/config/waybar/style/[Retro] Simple Style.css index da5c5a22..aaf14d62 100644 --- a/config/waybar/style/[Retro] Simple Style.css +++ b/config/waybar/style/[Retro] Simple Style.css @@ -75,7 +75,7 @@ window#waybar { #custom-menu, #custom-power_vertical, #custom-power, -#custom-speaker, +#custom-swaync, #custom-updater, #custom-weather, #custom-weather.clearNight, @@ -89,7 +89,7 @@ window#waybar { #custom-weather.snowyIcyNight, #custom-weather.sunnyDay { color: @foreground; - padding: 5px 8px 5px 8px; + padding: 3px 6px 3px 6px; } #battery.warning, diff --git a/config/waybar/style/[Transparent] Crystal Clear.css b/config/waybar/style/[Transparent] Crystal Clear.css index 27cd99a4..3f64235d 100644 --- a/config/waybar/style/[Transparent] Crystal Clear.css +++ b/config/waybar/style/[Transparent] Crystal Clear.css @@ -122,6 +122,7 @@ tooltip { #custom-menu, #custom-power_vertical, #custom-power, +#custom-swaync, #custom-spotify, #custom-updater, #custom-weather, -- cgit v1.2.3 From 9fce61cf79d8cfe930c39b08885a225c359b0929 Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Thu, 28 Dec 2023 00:15:03 +0900 Subject: updated some things --- config/hypr/configs/Settings.conf | 2 +- config/hypr/scripts/Refresh.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'config/hypr/scripts/Refresh.sh') diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf index 859df94d..7db59116 100644 --- a/config/hypr/configs/Settings.conf +++ b/config/hypr/configs/Settings.conf @@ -84,7 +84,7 @@ animations { animation = windowsOut, 1, 5, winOut, popin animation = windowsMove, 1, 5, wind, slide animation = border, 1, 10, linear - animation = borderangle, 1, 100, linear, loop + animation = borderangle, 1, 180, linear, loop animation = fade, 1, 5, overshot animation = workspaces, 1, 5, wind animation = windows, 1, 5, bounce, popin diff --git a/config/hypr/scripts/Refresh.sh b/config/hypr/scripts/Refresh.sh index 3838b5e3..52f7e642 100755 --- a/config/hypr/scripts/Refresh.sh +++ b/config/hypr/scripts/Refresh.sh @@ -10,12 +10,12 @@ for _prs in "${_ps[@]}"; do fi done -sleep 0.1 +sleep 0.3 # Relaunch waybar waybar & # relaunch swaync -sleep 0.3 +sleep 0.5 swaync > /dev/null 2>&1 & # Relaunching rainbow borders -- cgit v1.2.3 From f0771edf369d3ea51e3322acb9a5baa456f732b1 Mon Sep 17 00:00:00 2001 From: "Ja.KooLit" Date: Fri, 29 Dec 2023 00:41:08 +0900 Subject: Re-Structured Hypr Folder in preparation for Updates Scripts --- config/hypr/UserConfigs/ENVariables.conf | 40 +++++++ config/hypr/UserConfigs/LaptopDisplay.conf | 4 + config/hypr/UserConfigs/Laptops.conf | 47 ++++++++ config/hypr/UserConfigs/Monitors.conf | 52 ++++++++ config/hypr/UserConfigs/Startup_Apps.conf | 56 +++++++++ config/hypr/UserConfigs/UserKeybinds.conf | 29 +++++ config/hypr/UserConfigs/UserSettings.conf | 145 +++++++++++++++++++++++ config/hypr/UserConfigs/WindowRules.conf | 72 +++++++++++ config/hypr/UserScripts/RainbowBorders.sh | 10 ++ config/hypr/UserScripts/Weather.py | 122 +++++++++++++++++++ config/hypr/UserScripts/Weather.sh | 80 +++++++++++++ config/hypr/UserScripts/ZshChangeTheme.sh | 38 ++++++ config/hypr/configs/ENVariables.conf | 40 ------- config/hypr/configs/Execs.conf | 55 --------- config/hypr/configs/Keybinds.conf | 26 +--- config/hypr/configs/LaptopDisplay.conf | 4 - config/hypr/configs/Laptops.conf | 45 ------- config/hypr/configs/Monitors.conf | 52 -------- config/hypr/configs/Settings.conf | 138 +-------------------- config/hypr/configs/WindowRules.conf | 72 ----------- config/hypr/hyprland.conf | 18 ++- config/hypr/scripts/QuickEdit.sh | 33 ++++-- config/hypr/scripts/RainbowBorders.sh | 10 -- config/hypr/scripts/Refresh.sh | 20 +++- config/hypr/scripts/RefreshNoWaybar.sh | 21 +++- config/hypr/scripts/Weather.py | 122 ------------------- config/hypr/scripts/Weather.sh | 80 ------------- config/hypr/scripts/ZshChangeTheme.sh | 38 ------ config/rofi/config-compact.rasi | 2 +- config/rofi/resolution/1080p/config-compact.rasi | 2 +- config/rofi/resolution/1440p/config-compact.rasi | 2 +- copy.sh | 27 +++-- 32 files changed, 782 insertions(+), 720 deletions(-) create mode 100644 config/hypr/UserConfigs/ENVariables.conf create mode 100644 config/hypr/UserConfigs/LaptopDisplay.conf create mode 100644 config/hypr/UserConfigs/Laptops.conf create mode 100644 config/hypr/UserConfigs/Monitors.conf create mode 100644 config/hypr/UserConfigs/Startup_Apps.conf create mode 100644 config/hypr/UserConfigs/UserKeybinds.conf create mode 100644 config/hypr/UserConfigs/UserSettings.conf create mode 100644 config/hypr/UserConfigs/WindowRules.conf create mode 100755 config/hypr/UserScripts/RainbowBorders.sh create mode 100755 config/hypr/UserScripts/Weather.py create mode 100755 config/hypr/UserScripts/Weather.sh create mode 100755 config/hypr/UserScripts/ZshChangeTheme.sh delete mode 100644 config/hypr/configs/ENVariables.conf delete mode 100644 config/hypr/configs/Execs.conf delete mode 100644 config/hypr/configs/LaptopDisplay.conf delete mode 100644 config/hypr/configs/Laptops.conf delete mode 100644 config/hypr/configs/Monitors.conf delete mode 100644 config/hypr/configs/WindowRules.conf delete mode 100755 config/hypr/scripts/RainbowBorders.sh delete mode 100755 config/hypr/scripts/Weather.py delete mode 100755 config/hypr/scripts/Weather.sh delete mode 100755 config/hypr/scripts/ZshChangeTheme.sh (limited to 'config/hypr/scripts/Refresh.sh') diff --git a/config/hypr/UserConfigs/ENVariables.conf b/config/hypr/UserConfigs/ENVariables.conf new file mode 100644 index 00000000..031acae3 --- /dev/null +++ b/config/hypr/UserConfigs/ENVariables.conf @@ -0,0 +1,40 @@ +## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## + +#environment-variables +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_SCALE_FACTOR,1 +env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 +env = XDG_CURRENT_DESKTOP,Hyprland +env = XDG_SESSION_DESKTOP,Hyprland +env = XDG_SESSION_TYPE,wayland + +# vulkan +#env = WLR_RENDERER,vulkan + +# firefox +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 = GBM_BACKEND,nvidia-drm + +#env = __NV_PRIME_RENDER_OFFLOAD,1 +#env = __VK_LAYER_NV_optimus,NVIDIA_only +#env = WLR_DRM_NO_ATOMIC,1 +#env = NVD_BACKEND,direct + +# FOR VM and POSSIBLY NVIDIA +#env = WLR_RENDERER_ALLOW_SOFTWARE,1 + +# nvidia firefox (for hardware acceleration on FF)? +# check this post https://github.com/elFarto/nvidia-vaapi-driver#configuration +#env = MOZ_DISABLE_RDD_SANDBOX,1 +#env = NVD_BACKEND,direct +#env = EGL_PLATFORM,wayland \ No newline at end of file diff --git a/config/hypr/UserConfigs/LaptopDisplay.conf b/config/hypr/UserConfigs/LaptopDisplay.conf new file mode 100644 index 00000000..d50c9119 --- /dev/null +++ b/config/hypr/UserConfigs/LaptopDisplay.conf @@ -0,0 +1,4 @@ +## NOTE, THIS FILE IS BEING USED by disabling Laptop display monitor behaviour when closing lid. +## See notes on Laptops.conf + +#monitor = eDP-1, preferred, auto, 1 diff --git a/config/hypr/UserConfigs/Laptops.conf b/config/hypr/UserConfigs/Laptops.conf new file mode 100644 index 00000000..0a12d7fa --- /dev/null +++ b/config/hypr/UserConfigs/Laptops.conf @@ -0,0 +1,47 @@ +## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## + +# 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 + +bind = , xf86KbdBrightnessDown, exec, $scriptsDir/BrightnessKbd.sh --dec #Keyboard brightness Down +bind = , xf86KbdBrightnessUp, exec, $scriptsDir/BrightnessKbd.sh --inc #Keyboard brightness up +bind = , xf86Launch1, exec, rog-control-center # ASUS Armory crate button +bind = , xf86Launch3, exec, asusctl led-mode -n #FN+F4 Switch keyboard RGB profile +bind = , xf86Launch4, exec, asusctl profile -n #FN+F5 change of fan profiles (Quite, Balance, Performance) +bind = , xf86MonBrightnessDown, exec, $scriptsDir/Brightness.sh --dec +bind = , xf86MonBrightnessUp, exec, $scriptsDir/Brightness.sh --inc +bind = , xf86TouchpadToggle, exec, $scriptsDir/TouchPad.sh #disable touchpad + +# Screenshot keybindings for Asus G15 (no PrinSrc button) +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 + +# Below are useful when you are connecting your laptop in external display +# Suggest you edit below for your laptop display +# From WIKI This is to disable laptop monitor when lid is closed. +# consult https://wiki.hyprland.org/hyprland-wiki/pages/Configuring/Binds/#switches +#bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, preferred, auto, 1" +#bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable" + +############################################################################# +### WARNING! Using this method has some caveats!! USE THIS PART WITH SOME CAUTION! +# CONS of doing this, is that you need to set up your wallpaper (SUPER W) and choose wallpaper. +# CAVEATS! Sometimes the Main Laptop Monitor DOES NOT have display that it needs to re-connect your external monitor +# One work around is to ensure that before shutting down laptop, MAKE SURE your laptop lid is OPEN!! +# Make sure to comment (put # on the both the bindl = , switch ......) above +# 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" > $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/UserConfigs/LaptopDisplay.conf +############################################################################## diff --git a/config/hypr/UserConfigs/Monitors.conf b/config/hypr/UserConfigs/Monitors.conf new file mode 100644 index 00000000..ac87862a --- /dev/null +++ b/config/hypr/UserConfigs/Monitors.conf @@ -0,0 +1,52 @@ +## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## + +# Monitor Configuration +# See Hyprland wiki for more details +# 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 + +# NOTE: for laptop, kindly check notes in Laptops.conf regarding display +# Created this inorder for the monitor display to not wake up if not intended. +# See here: https://github.com/hyprwm/Hyprland/issues/4090 + +#monitor = eDP-1, preferred, auto, 1 +#monitor = eDP-1, 2560x1440@165, 0x0, 1 #own screen +#monitor = DP-2, preferred, auto, 1 +#monitor = DP-1, preferred, auto, 1 +#monitor = HDMI-A-1, preferred,auto,1 + +# QEMU-KVM or any virtual box +#monitor = Virtual-1, 1920x1080@60,auto,1 + +# Hi Refresh Rate +#monitor=,highrr,auto,1 + +# High Resolution +#monitor=,highres,auto,1 + +# to disable a monitor +#monitor=name,disable + +# Mirror +#monitor=DP-3,1920x1080@60,0x0,1,mirror,DP-2 +#monitor=,preferred,auto,1,mirror,eDP-1 + + +# Example : +#monitor=eDP-1,2560x1440@165,0x0,1 +#workspace=HDMI-A-1,1 +#monitor=HDMI-A-1,2560x1440@144,0x0,1,mirror,eDP-1 +#workspace=HDMI-A-2,2 + +#monitor=eDP-1,transform,0 +#monitor=eDP-1,addreserved,10,10,10,49 +#workspace=eDP-1,1 + diff --git a/config/hypr/UserConfigs/Startup_Apps.conf b/config/hypr/UserConfigs/Startup_Apps.conf new file mode 100644 index 00000000..6593268f --- /dev/null +++ b/config/hypr/UserConfigs/Startup_Apps.conf @@ -0,0 +1,56 @@ +## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## +#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 +exec-once = $SwwwRandom $WallpaperPath # random wallpaper switcher every 30 minutes + +# Startup +exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP + +# Polkit (Polkit Gnome / KDE) +exec-once = $scriptsDir/Polkit.sh + +# starup apps +exec-once = waybar & +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 = $UserscriptsDir/RainbowBorders.sh + +# sway-idle with lock only +exec-once = swayidle -w timeout 900 '$lock' +# sway-idle with lock and sleep +#exec-once = swayidle -w timeout 900 '$lock' timeout 1200 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' before-sleep '$lock' +# sway idle without lock +#exec-once = swayidle -w timeout 900 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' + +## Here are list of features available but disabled by default +#exec-once = swww query || swww init && swww img $HOME/Pictures/wallpapers/mecha-nostalgia.png # persistent wallpaper + +#gnome polkit for nixos +#exec-once = $scriptsDir/Polkit-NixOS.sh + +# xdg-desktop-portal-hyprland (should be auto starting. However, you can force to start) +#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 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..338658a4 --- /dev/null +++ b/config/hypr/UserConfigs/UserSettings.conf @@ -0,0 +1,145 @@ +## /* ---- 💫 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 + 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 +} diff --git a/config/hypr/UserConfigs/WindowRules.conf b/config/hypr/UserConfigs/WindowRules.conf new file mode 100644 index 00000000..a3a77cfb --- /dev/null +++ b/config/hypr/UserConfigs/WindowRules.conf @@ -0,0 +1,72 @@ +## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more + +windowrule = float, org.kde.polkit-kde-authentication-agent-1 +windowrule = float, nm-connection-editor|blueman-manager +windowrule = float, pavucontrol +windowrule = float, nwg-look|qt5ct|mpv +windowrule = float, onedriver|onedriver-launcher +windowrule = float, eog +windowrule = float, zoom +windowrule = float, rofi +windowrule = float, gnome-system-monitor +windowrule = float, yad + +#windowrule = noblur,gamescope +#windowrule = fullscreen,gamescope +#windowrule = workspace 6 silent,^(gamescope)$ + +windowrule = center,^(pavucontrol) + +# windowrule v2 +windowrulev2 = workspace 1, class:^(thunderbird)$ +windowrulev2 = workspace 2, class:^(firefox)$ +windowrulev2 = workspace 2, class:^(Firefox-esr)$ +windowrulev2 = workspace 2, class:^(Microsoft-edge-beta)$ +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 6, class:^(virt-manager)$ +windowrulev2 = workspace 7 silent, class:^(discord)$ +windowrulev2 = workspace 7 silent, class:^(WebCord)$ +windowrulev2 = workspace 9 silent, class:^([Aa]udacious)$ + +#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.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:^(kitty)$ +windowrulev2 = opacity 0.9 0.7, class:^(mousepad)$ +windowrulev2 = opacity 0.9 0.7, class:^(codium-url-handler)$ +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)$ + + +#layerrule = unset,class:^([Rr]ofi)$ +#layerrule = blur,class:^([Rr]ofi)$ +#layerrule = ignorezero, + +#windowrulev2 = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1 +#windowrulev2 = bordercolor rgb(282737) rgb(1E1D2D), floating:1 +#windowrulev2 = opacity 0.8 0.8, pinned:1 + +# Picture-in-a-Picture (PIP) rules: Oddly, some need re-duplication. This is because the window for +# PIP changes after on first launch, and will not inherant the rules... +windowrulev2=opacity 0.95 0.75,title:^(Picture-in-Picture)$ # for opacity: [focus num] [bg num] +# Interestingly, the opacity rule above doesn't need the reduplication? +windowrulev2=pin,title:^(Picture-in-Picture)$ +#windowrulev2=pin,title:^(Firefox)$ +windowrulev2=float, title:^(Picture-in-Picture)$ +#windowrulev2=float, title:^(Firefox)$ +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 diff --git a/config/hypr/UserScripts/RainbowBorders.sh b/config/hypr/UserScripts/RainbowBorders.sh new file mode 100755 index 00000000..1f5e6cdb --- /dev/null +++ b/config/hypr/UserScripts/RainbowBorders.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +function random_hex() { + random_hex=("0xff$(openssl rand -hex 3)") + echo $random_hex +} + +hyprctl keyword general:col.active_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg + +hyprctl keyword general:col.inactive_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg \ No newline at end of file diff --git a/config/hypr/UserScripts/Weather.py b/config/hypr/UserScripts/Weather.py new file mode 100755 index 00000000..154c1589 --- /dev/null +++ b/config/hypr/UserScripts/Weather.py @@ -0,0 +1,122 @@ +#!/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 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 = {} + + +weather = requests.get(f"https://wttr.in/{city}?format=j1").json() + + +def format_time(time): + return time.replace("00", "").zfill(2) + + +def format_temp(temp): + return (hour['FeelsLikeC']+"°").ljust(3) + + +def format_chances(hour): + chances = { + "chanceoffog": "Fog", + "chanceoffrost": "Frost", + "chanceofovercast": "Overcast", + "chanceofrain": "Rain", + "chanceofsnow": "Snow", + "chanceofsunshine": "Sunshine", + "chanceofthunder": "Thunder", + "chanceofwindy": "Wind" + } + + conditions = [] + for event in chances.keys(): + if int(hour[event]) > 0: + conditions.append(chances[event]+" "+hour[event]+"%") + return ", ".join(conditions) + +tempint = int(weather['current_condition'][0]['FeelsLikeC']) +extrachar = '' +if tempint > 0 and tempint < 10: + extrachar = '+' + + +data['text'] = ' '+WEATHER_CODES[weather['current_condition'][0]['weatherCode']] + \ + " "+extrachar+weather['current_condition'][0]['FeelsLikeC']+"°" + +data['tooltip'] = f"{weather['current_condition'][0]['weatherDesc'][0]['value']} {weather['current_condition'][0]['temp_C']}°\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" + if i == 0: + data['tooltip'] += "Today, " + if i == 1: + data['tooltip'] += "Tomorrow, " + data['tooltip'] += f"{day['date']}\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" + + +print(json.dumps(data)) diff --git a/config/hypr/UserScripts/Weather.sh b/config/hypr/UserScripts/Weather.sh new file mode 100755 index 00000000..40048710 --- /dev/null +++ b/config/hypr/UserScripts/Weather.sh @@ -0,0 +1,80 @@ +#!/bin/bash + +city= +cachedir=~/.cache/rbn +cachefile=${0##*/}-$1 + +if [ ! -d $cachedir ]; then + mkdir -p $cachedir +fi + +if [ ! -f $cachedir/$cachefile ]; then + touch $cachedir/$cachefile +fi + +# Save current IFS +SAVEIFS=$IFS +# Change IFS to new line. +IFS=$'\n' + +cacheage=$(($(date +%s) - $(stat -c '%Y' "$cachedir/$cachefile"))) +if [ $cacheage -gt 1740 ] || [ ! -s $cachedir/$cachefile ]; then + data=($(curl -s https://en.wttr.in/"$city"$1\?0qnT 2>&1)) + echo ${data[0]} | cut -f1 -d, > $cachedir/$cachefile + echo ${data[1]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile + echo ${data[2]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile +fi + +weather=($(cat $cachedir/$cachefile)) + +# Restore IFSClear +IFS=$SAVEIFS + +temperature=$(echo ${weather[2]} | sed -E 's/([[:digit:]]+)\.\./\1 to /g') + +#echo ${weather[1]##*,} + +# https://fontawesome.com/icons?s=solid&c=weather +case $(echo ${weather[1]##*,} | tr '[:upper:]' '[:lower:]') in +"clear" | "sunny") + condition="" + ;; +"partly cloudy") + condition="󰖕" + ;; +"cloudy") + condition="" + ;; +"overcast") + condition="" + ;; +"fog" | "freezing fog") + condition="" + ;; +"patchy rain possible" | "patchy light drizzle" | "light drizzle" | "patchy light rain" | "light rain" | "light rain shower" | "mist" | "rain") + condition="󰼳" + ;; +"moderate rain at times" | "moderate rain" | "heavy rain at times" | "heavy rain" | "moderate or heavy rain shower" | "torrential rain shower" | "rain shower") + condition="" + ;; +"patchy snow possible" | "patchy sleet possible" | "patchy freezing drizzle possible" | "freezing drizzle" | "heavy freezing drizzle" | "light freezing rain" | "moderate or heavy freezing rain" | "light sleet" | "ice pellets" | "light sleet showers" | "moderate or heavy sleet showers") + condition="󰼴" + ;; +"blowing snow" | "moderate or heavy sleet" | "patchy light snow" | "light snow" | "light snow showers") + condition="󰙿" + ;; +"blizzard" | "patchy moderate snow" | "moderate snow" | "patchy heavy snow" | "heavy snow" | "moderate or heavy snow with thunder" | "moderate or heavy snow showers") + condition="" + ;; +"thundery outbreaks possible" | "patchy light rain with thunder" | "moderate or heavy rain with thunder" | "patchy light snow with thunder") + condition="" + ;; +*) + condition="" + echo -e "{\"text\":\""$condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}" + ;; +esac + +#echo $temp $condition + +echo -e "{\"text\":\""$temperature $condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}" diff --git a/config/hypr/UserScripts/ZshChangeTheme.sh b/config/hypr/UserScripts/ZshChangeTheme.sh new file mode 100755 index 00000000..7057ed2e --- /dev/null +++ b/config/hypr/UserScripts/ZshChangeTheme.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +themes_dir="$HOME/.oh-my-zsh/themes" +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" + +menu() { + for theme in "${themes_array[@]}"; do + echo "$theme" + done +} + +main() { + choice=$(menu | ${rofi_command}) + + # if nothing selected, script wont change anything + if [ -z "$choice" ]; then + exit 0 + fi + + zsh_path="$HOME/.zshrc" + var_name="ZSH_THEME" + for i in "${themes_array[@]}"; do + if [[ "$i" == "$choice"* ]]; then + if [ -f "$zsh_path" ]; then + sed -i "s/^$var_name=.*/$var_name=\"$i\"/" "$zsh_path" + else + echo "File not found" + fi + break + fi + done +} + +main diff --git a/config/hypr/configs/ENVariables.conf b/config/hypr/configs/ENVariables.conf deleted file mode 100644 index 4437c641..00000000 --- a/config/hypr/configs/ENVariables.conf +++ /dev/null @@ -1,40 +0,0 @@ -## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## - -#environment-variables -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_SCALE_FACTOR,1 -env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 -env = XDG_CURRENT_DESKTOP,Hyprland -env = XDG_SESSION_DESKTOP,Hyprland -env = XDG_SESSION_TYPE,wayland - -# vulkan -#env = WLR_RENDERER,vulkan - -# firefox -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 = GBM_BACKEND,nvidia-drm - -#env = __NV_PRIME_RENDER_OFFLOAD,1 -#env = __VK_LAYER_NV_optimus,NVIDIA_only -#env = WLR_DRM_NO_ATOMIC,1 -#env = NVD_BACKEND,direct - -# FOR VM and POSSIBLY NVIDIA -#env = WLR_RENDERER_ALLOW_SOFTWARE,1 - -# nvidia firefox (for hardware acceleration on FF)? -# check this post https://github.com/elFarto/nvidia-vaapi-driver#configuration -#env = MOZ_DISABLE_RDD_SANDBOX,1 -#env = NVD_BACKEND,direct -#env = EGL_PLATFORM,wayland \ No newline at end of file diff --git a/config/hypr/configs/Execs.conf b/config/hypr/configs/Execs.conf deleted file mode 100644 index ef5b8ad5..00000000 --- a/config/hypr/configs/Execs.conf +++ /dev/null @@ -1,55 +0,0 @@ -## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## -#Commands & Apps to be executed at launch - -$scriptsDir = $HOME/.config/hypr/scripts -$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 -exec-once = $SwwwRandom $WallpaperPath # random wallpaper switcher every 30 minutes - -# Startup -exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP -exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP - -# Polkit (Polkit Gnome / KDE) -exec-once = $scriptsDir/Polkit.sh - -# starup apps -exec-once = waybar & -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 - -# sway-idle with lock only -exec-once = swayidle -w timeout 900 '$lock' -# sway-idle with lock and sleep -#exec-once = swayidle -w timeout 900 '$lock' timeout 1200 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' before-sleep '$lock' -# sway idle without lock -#exec-once = swayidle -w timeout 900 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' - -## Here are list of features available but disabled by default -#exec-once = swww query || swww init && swww img $HOME/Pictures/wallpapers/mecha-nostalgia.png # persistent wallpaper - -#gnome polkit for nixos -#exec-once = $scriptsDir/Polkit-NixOS.sh - -# xdg-desktop-portal-hyprland (should be auto starting. However, you can force to start) -#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 diff --git a/config/hypr/configs/Keybinds.conf b/config/hypr/configs/Keybinds.conf index c36c0804..84b78cff 100644 --- a/config/hypr/configs/Keybinds.conf +++ b/config/hypr/configs/Keybinds.conf @@ -1,25 +1,15 @@ ## /* ---- 💫 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,window -bind = $mainMod, D, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window - -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 @@ -36,10 +26,6 @@ bind = $mainMod, Space, exec, $scriptsDir/ChangeLayout.sh # Toggle Master or Dwi bind = $mainMod ALT, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager bind = $mainMod SHIFT, N, exec, swaync-client -t -sw # swayNC panel - -# MISC (Miscellaneous Keybinds) -bind = $mainMod SHIFT, O, exec, $scriptsDir/ZshChangeTheme.sh # Change oh-my-zsh theme - # Wallpaper related keybinds bind = $mainMod, W, exec, $scriptsDir/WallpaperSelect.sh # Select wallpaper to apply bind = CTRL ALT, W, exec, $scriptsDir/Wallpaper.sh # Random wallpapers @@ -61,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 @@ -164,11 +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 - - -# 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/configs/LaptopDisplay.conf b/config/hypr/configs/LaptopDisplay.conf deleted file mode 100644 index d50c9119..00000000 --- a/config/hypr/configs/LaptopDisplay.conf +++ /dev/null @@ -1,4 +0,0 @@ -## NOTE, THIS FILE IS BEING USED by disabling Laptop display monitor behaviour when closing lid. -## See notes on Laptops.conf - -#monitor = eDP-1, preferred, auto, 1 diff --git a/config/hypr/configs/Laptops.conf b/config/hypr/configs/Laptops.conf deleted file mode 100644 index 17047320..00000000 --- a/config/hypr/configs/Laptops.conf +++ /dev/null @@ -1,45 +0,0 @@ -## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## - -# 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 -$mainMod = SUPER -$scriptsDir = $HOME/.config/hypr/scripts - -bind = , xf86KbdBrightnessDown, exec, $scriptsDir/BrightnessKbd.sh --dec #Keyboard brightness Down -bind = , xf86KbdBrightnessUp, exec, $scriptsDir/BrightnessKbd.sh --inc #Keyboard brightness up -bind = , xf86Launch1, exec, rog-control-center # ASUS Armory crate button -bind = , xf86Launch3, exec, asusctl led-mode -n #FN+F4 Switch keyboard RGB profile -bind = , xf86Launch4, exec, asusctl profile -n #FN+F5 change of fan profiles (Quite, Balance, Performance) -bind = , xf86MonBrightnessDown, exec, $scriptsDir/Brightness.sh --dec -bind = , xf86MonBrightnessUp, exec, $scriptsDir/Brightness.sh --inc -bind = , xf86TouchpadToggle, exec, $scriptsDir/TouchPad.sh #disable touchpad - -# Screenshot keybindings for Asus G15 (no PrinSrc button) -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 - -# Below are useful when you are connecting your laptop in external display -# Suggest you edit below for your laptop display -# From WIKI This is to disable laptop monitor when lid is closed. -# consult https://wiki.hyprland.org/hyprland-wiki/pages/Configuring/Binds/#switches -#bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, preferred, auto, 1" -#bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable" - -############################################################################# -### WARNING! Using this method has some caveats!! USE THIS PART WITH SOME CAUTION! -# CONS of doing this, is that you need to set up your wallpaper (SUPER W) and choose wallpaper. -# CAVEATS! Sometimes the Main Laptop Monitor DOES NOT have display that it needs to re-connect your external monitor -# One work around is to ensure that before shutting down laptop, MAKE SURE your laptop lid is OPEN!! -# Make sure to comment (put # on the both the bindl = , switch ......) above -# 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 - -# for laptop-lid action (to erase the last entry) -#exec-once = echo "eDP-1, preferred, auto, 1" > $HOME/.config/hypr/configs/LaptopDisplay.conf -############################################################################## diff --git a/config/hypr/configs/Monitors.conf b/config/hypr/configs/Monitors.conf deleted file mode 100644 index ac87862a..00000000 --- a/config/hypr/configs/Monitors.conf +++ /dev/null @@ -1,52 +0,0 @@ -## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## - -# Monitor Configuration -# See Hyprland wiki for more details -# 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 - -# NOTE: for laptop, kindly check notes in Laptops.conf regarding display -# Created this inorder for the monitor display to not wake up if not intended. -# See here: https://github.com/hyprwm/Hyprland/issues/4090 - -#monitor = eDP-1, preferred, auto, 1 -#monitor = eDP-1, 2560x1440@165, 0x0, 1 #own screen -#monitor = DP-2, preferred, auto, 1 -#monitor = DP-1, preferred, auto, 1 -#monitor = HDMI-A-1, preferred,auto,1 - -# QEMU-KVM or any virtual box -#monitor = Virtual-1, 1920x1080@60,auto,1 - -# Hi Refresh Rate -#monitor=,highrr,auto,1 - -# High Resolution -#monitor=,highres,auto,1 - -# to disable a monitor -#monitor=name,disable - -# Mirror -#monitor=DP-3,1920x1080@60,0x0,1,mirror,DP-2 -#monitor=,preferred,auto,1,mirror,eDP-1 - - -# Example : -#monitor=eDP-1,2560x1440@165,0x0,1 -#workspace=HDMI-A-1,1 -#monitor=HDMI-A-1,2560x1440@144,0x0,1,mirror,eDP-1 -#workspace=HDMI-A-2,2 - -#monitor=eDP-1,transform,0 -#monitor=eDP-1,addreserved,10,10,10,49 -#workspace=eDP-1,1 - diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf index 7db59116..e9901013 100644 --- a/config/hypr/configs/Settings.conf +++ b/config/hypr/configs/Settings.conf @@ -1,143 +1,7 @@ ## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## +# Default Settings. avoid changing this file as during update, this will be replaced ## 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 - 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 -} diff --git a/config/hypr/configs/WindowRules.conf b/config/hypr/configs/WindowRules.conf deleted file mode 100644 index a3a77cfb..00000000 --- a/config/hypr/configs/WindowRules.conf +++ /dev/null @@ -1,72 +0,0 @@ -## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## -# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more - -windowrule = float, org.kde.polkit-kde-authentication-agent-1 -windowrule = float, nm-connection-editor|blueman-manager -windowrule = float, pavucontrol -windowrule = float, nwg-look|qt5ct|mpv -windowrule = float, onedriver|onedriver-launcher -windowrule = float, eog -windowrule = float, zoom -windowrule = float, rofi -windowrule = float, gnome-system-monitor -windowrule = float, yad - -#windowrule = noblur,gamescope -#windowrule = fullscreen,gamescope -#windowrule = workspace 6 silent,^(gamescope)$ - -windowrule = center,^(pavucontrol) - -# windowrule v2 -windowrulev2 = workspace 1, class:^(thunderbird)$ -windowrulev2 = workspace 2, class:^(firefox)$ -windowrulev2 = workspace 2, class:^(Firefox-esr)$ -windowrulev2 = workspace 2, class:^(Microsoft-edge-beta)$ -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 6, class:^(virt-manager)$ -windowrulev2 = workspace 7 silent, class:^(discord)$ -windowrulev2 = workspace 7 silent, class:^(WebCord)$ -windowrulev2 = workspace 9 silent, class:^([Aa]udacious)$ - -#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.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:^(kitty)$ -windowrulev2 = opacity 0.9 0.7, class:^(mousepad)$ -windowrulev2 = opacity 0.9 0.7, class:^(codium-url-handler)$ -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)$ - - -#layerrule = unset,class:^([Rr]ofi)$ -#layerrule = blur,class:^([Rr]ofi)$ -#layerrule = ignorezero, - -#windowrulev2 = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1 -#windowrulev2 = bordercolor rgb(282737) rgb(1E1D2D), floating:1 -#windowrulev2 = opacity 0.8 0.8, pinned:1 - -# Picture-in-a-Picture (PIP) rules: Oddly, some need re-duplication. This is because the window for -# PIP changes after on first launch, and will not inherant the rules... -windowrulev2=opacity 0.95 0.75,title:^(Picture-in-Picture)$ # for opacity: [focus num] [bg num] -# Interestingly, the opacity rule above doesn't need the reduplication? -windowrulev2=pin,title:^(Picture-in-Picture)$ -#windowrulev2=pin,title:^(Firefox)$ -windowrulev2=float, title:^(Picture-in-Picture)$ -#windowrulev2=float, title:^(Firefox)$ -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 diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf index c09e6f75..4fd65aa4 100644 --- a/config/hypr/hyprland.conf +++ b/config/hypr/hyprland.conf @@ -1,17 +1,23 @@ # 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 +#### 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/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/RainbowBorders.sh b/config/hypr/scripts/RainbowBorders.sh deleted file mode 100755 index 1f5e6cdb..00000000 --- a/config/hypr/scripts/RainbowBorders.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -function random_hex() { - random_hex=("0xff$(openssl rand -hex 3)") - echo $random_hex -} - -hyprctl keyword general:col.active_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg - -hyprctl keyword general:col.inactive_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg \ No newline at end of file diff --git a/config/hypr/scripts/Refresh.sh b/config/hypr/scripts/Refresh.sh index 52f7e642..b5e0f556 100755 --- a/config/hypr/scripts/Refresh.sh +++ b/config/hypr/scripts/Refresh.sh @@ -1,6 +1,16 @@ #!/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 swaync) @@ -18,9 +28,13 @@ waybar & 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 dc99b623..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,10 +27,13 @@ done # Pywal refresh ${SCRIPTSDIR}/PywalSwww.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/Weather.py b/config/hypr/scripts/Weather.py deleted file mode 100755 index 154c1589..00000000 --- a/config/hypr/scripts/Weather.py +++ /dev/null @@ -1,122 +0,0 @@ -#!/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 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 = {} - - -weather = requests.get(f"https://wttr.in/{city}?format=j1").json() - - -def format_time(time): - return time.replace("00", "").zfill(2) - - -def format_temp(temp): - return (hour['FeelsLikeC']+"°").ljust(3) - - -def format_chances(hour): - chances = { - "chanceoffog": "Fog", - "chanceoffrost": "Frost", - "chanceofovercast": "Overcast", - "chanceofrain": "Rain", - "chanceofsnow": "Snow", - "chanceofsunshine": "Sunshine", - "chanceofthunder": "Thunder", - "chanceofwindy": "Wind" - } - - conditions = [] - for event in chances.keys(): - if int(hour[event]) > 0: - conditions.append(chances[event]+" "+hour[event]+"%") - return ", ".join(conditions) - -tempint = int(weather['current_condition'][0]['FeelsLikeC']) -extrachar = '' -if tempint > 0 and tempint < 10: - extrachar = '+' - - -data['text'] = ' '+WEATHER_CODES[weather['current_condition'][0]['weatherCode']] + \ - " "+extrachar+weather['current_condition'][0]['FeelsLikeC']+"°" - -data['tooltip'] = f"{weather['current_condition'][0]['weatherDesc'][0]['value']} {weather['current_condition'][0]['temp_C']}°\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" - if i == 0: - data['tooltip'] += "Today, " - if i == 1: - data['tooltip'] += "Tomorrow, " - data['tooltip'] += f"{day['date']}\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" - - -print(json.dumps(data)) diff --git a/config/hypr/scripts/Weather.sh b/config/hypr/scripts/Weather.sh deleted file mode 100755 index 40048710..00000000 --- a/config/hypr/scripts/Weather.sh +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/bash - -city= -cachedir=~/.cache/rbn -cachefile=${0##*/}-$1 - -if [ ! -d $cachedir ]; then - mkdir -p $cachedir -fi - -if [ ! -f $cachedir/$cachefile ]; then - touch $cachedir/$cachefile -fi - -# Save current IFS -SAVEIFS=$IFS -# Change IFS to new line. -IFS=$'\n' - -cacheage=$(($(date +%s) - $(stat -c '%Y' "$cachedir/$cachefile"))) -if [ $cacheage -gt 1740 ] || [ ! -s $cachedir/$cachefile ]; then - data=($(curl -s https://en.wttr.in/"$city"$1\?0qnT 2>&1)) - echo ${data[0]} | cut -f1 -d, > $cachedir/$cachefile - echo ${data[1]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile - echo ${data[2]} | sed -E 's/^.{15}//' >> $cachedir/$cachefile -fi - -weather=($(cat $cachedir/$cachefile)) - -# Restore IFSClear -IFS=$SAVEIFS - -temperature=$(echo ${weather[2]} | sed -E 's/([[:digit:]]+)\.\./\1 to /g') - -#echo ${weather[1]##*,} - -# https://fontawesome.com/icons?s=solid&c=weather -case $(echo ${weather[1]##*,} | tr '[:upper:]' '[:lower:]') in -"clear" | "sunny") - condition="" - ;; -"partly cloudy") - condition="󰖕" - ;; -"cloudy") - condition="" - ;; -"overcast") - condition="" - ;; -"fog" | "freezing fog") - condition="" - ;; -"patchy rain possible" | "patchy light drizzle" | "light drizzle" | "patchy light rain" | "light rain" | "light rain shower" | "mist" | "rain") - condition="󰼳" - ;; -"moderate rain at times" | "moderate rain" | "heavy rain at times" | "heavy rain" | "moderate or heavy rain shower" | "torrential rain shower" | "rain shower") - condition="" - ;; -"patchy snow possible" | "patchy sleet possible" | "patchy freezing drizzle possible" | "freezing drizzle" | "heavy freezing drizzle" | "light freezing rain" | "moderate or heavy freezing rain" | "light sleet" | "ice pellets" | "light sleet showers" | "moderate or heavy sleet showers") - condition="󰼴" - ;; -"blowing snow" | "moderate or heavy sleet" | "patchy light snow" | "light snow" | "light snow showers") - condition="󰙿" - ;; -"blizzard" | "patchy moderate snow" | "moderate snow" | "patchy heavy snow" | "heavy snow" | "moderate or heavy snow with thunder" | "moderate or heavy snow showers") - condition="" - ;; -"thundery outbreaks possible" | "patchy light rain with thunder" | "moderate or heavy rain with thunder" | "patchy light snow with thunder") - condition="" - ;; -*) - condition="" - echo -e "{\"text\":\""$condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}" - ;; -esac - -#echo $temp $condition - -echo -e "{\"text\":\""$temperature $condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}" diff --git a/config/hypr/scripts/ZshChangeTheme.sh b/config/hypr/scripts/ZshChangeTheme.sh deleted file mode 100755 index 7057ed2e..00000000 --- a/config/hypr/scripts/ZshChangeTheme.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash - -themes_dir="$HOME/.oh-my-zsh/themes" -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" - -menu() { - for theme in "${themes_array[@]}"; do - echo "$theme" - done -} - -main() { - choice=$(menu | ${rofi_command}) - - # if nothing selected, script wont change anything - if [ -z "$choice" ]; then - exit 0 - fi - - zsh_path="$HOME/.zshrc" - var_name="ZSH_THEME" - for i in "${themes_array[@]}"; do - if [[ "$i" == "$choice"* ]]; then - if [ -f "$zsh_path" ]; then - sed -i "s/^$var_name=.*/$var_name=\"$i\"/" "$zsh_path" - else - echo "File not found" - fi - break - fi - done -} - -main diff --git a/config/rofi/config-compact.rasi b/config/rofi/config-compact.rasi index 308ff85b..b5b45592 100644 --- a/config/rofi/config-compact.rasi +++ b/config/rofi/config-compact.rasi @@ -115,7 +115,7 @@ listview { spacing: 4px; dynamic: true; cycle: true; - scrollbar: false; + scrollbar: true; layout: vertical; reverse: false; fixed-height: true; diff --git a/config/rofi/resolution/1080p/config-compact.rasi b/config/rofi/resolution/1080p/config-compact.rasi index 308ff85b..b5b45592 100644 --- a/config/rofi/resolution/1080p/config-compact.rasi +++ b/config/rofi/resolution/1080p/config-compact.rasi @@ -115,7 +115,7 @@ listview { spacing: 4px; dynamic: true; cycle: true; - scrollbar: false; + scrollbar: true; layout: vertical; reverse: false; fixed-height: true; diff --git a/config/rofi/resolution/1440p/config-compact.rasi b/config/rofi/resolution/1440p/config-compact.rasi index 0dd5fe5d..029fdbdf 100644 --- a/config/rofi/resolution/1440p/config-compact.rasi +++ b/config/rofi/resolution/1440p/config-compact.rasi @@ -115,7 +115,7 @@ listview { spacing: 4px; dynamic: true; cycle: true; - scrollbar: false; + scrollbar: true; layout: vertical; reverse: false; fixed-height: true; diff --git a/copy.sh b/copy.sh index 612b60e4..8b5f454d 100755 --- a/copy.sh +++ b/copy.sh @@ -4,6 +4,7 @@ clear wallpaper=$HOME/Pictures/wallpapers/Cute-Cat_ja.jpg +Waybar_Style="$HOME/.config/waybar/style/[Pywal] Chroma Fusion.css" # Check if running as root. If root, script will exit if [[ $EUID -eq 0 ]]; then @@ -36,17 +37,17 @@ xdg-user-dirs-update 2>&1 | tee -a "$LOG" || true # uncommenting WLR_NO_HARDWARE_CURSORS if nvidia is detected if lspci -k | grep -A 2 -E "(VGA|3D)" | grep -iq nvidia; then # NVIDIA GPU detected, uncomment line 23 in ENVariables.conf - sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/configs/ENVariables.conf - sed -i '/env = LIBVA_DRIVER_NAME,nvidia/s/^#//' config/hypr/configs/ENVariables.conf - sed -i '/env = __GLX_VENDOR_LIBRARY_NAME,nvidia/s/^#//' config/hypr/configs/ENVariables.conf + sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/UserConfigs/ENVariables.conf + sed -i '/env = LIBVA_DRIVER_NAME,nvidia/s/^#//' config/hypr/UserConfigs/ENVariables.conf + sed -i '/env = __GLX_VENDOR_LIBRARY_NAME,nvidia/s/^#//' config/hypr/UserConfigs/ENVariables.conf fi # uncommenting WLR_RENDERER_ALLOW_SOFTWARE,1 if running in a VM is detected if hostnamectl | grep -q 'Chassis: vm'; then echo "This script is running in a virtual machine." - sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/configs/ENVariables.conf - sed -i '/env = WLR_RENDERER_ALLOW_SOFTWARE,1/s/^#//' config/hypr/configs/ENVariables.conf - sed -i '/monitor = Virtual-1, 1920x1080@60,auto,1/s/^#//' config/hypr/configs/Monitors.conf + sed -i '/env = WLR_NO_HARDWARE_CURSORS,1/s/^#//' config/hypr/UserConfigs/ENVariables.conf + sed -i '/env = WLR_RENDERER_ALLOW_SOFTWARE,1/s/^#//' config/hypr/UserConfigs/ENVariables.conf + sed -i '/monitor = Virtual-1, 1920x1080@60,auto,1/s/^#//' config/hypr/UserConfigs/Monitors.conf fi # Preparing hyprland.conf to check for current keyboard layout @@ -98,8 +99,8 @@ while true; do case $confirm in [yY]) # If the detected layout is correct, update the 'kb_layout=' line in the file - awk -v layout="$layout" '/kb_layout/ {$0 = " kb_layout=" layout} 1' config/hypr/configs/Settings.conf > temp.conf - mv temp.conf config/hypr/configs/Settings.conf + awk -v layout="$layout" '/kb_layout/ {$0 = " kb_layout=" layout} 1' config/hypr/UserConfigs/Settings.conf > temp.conf + mv temp.conf config/hypr/UserConfigs/Settings.conf break ;; [nN]) printf "\n%.0s" {1..2} @@ -111,8 +112,8 @@ while true; do printf "\n%.0s" {1..2} read -p "${CAT} - Please enter the correct keyboard layout: " new_layout # Update the 'kb_layout=' line with the correct layout in the file - awk -v new_layout="$new_layout" '/kb_layout/ {$0 = " kb_layout=" new_layout} 1' config/hypr/configs/Settings.conf > temp.conf - mv temp.conf config/hypr/configs/Settings.conf + awk -v new_layout="$new_layout" '/kb_layout/ {$0 = " kb_layout=" new_layout} 1' config/hypr/UserConfigs/Settings.conf > temp.conf + mv temp.conf config/hypr/UserConfigs/Settings.conf break ;; *) echo "Please enter either 'y' or 'n'." ;; @@ -166,7 +167,7 @@ get_backup_dirname() { echo "back-up_${timestamp}" } -for DIR in btop cava hypr kitty Kvantum qt5ct qt6ct rofi swappy swaylock wal waybar wlogout; do +for DIR in btop cava hypr kitty Kvantum qt5ct qt6ct rofi swappy swaync swaylock wal waybar wlogout; do DIRPATH=~/.config/"$DIR" if [ -d "$DIRPATH" ]; then echo -e "${NOTE} - Config for $DIR found, attempting to back up." @@ -198,7 +199,7 @@ cp -r wallpapers ~/Pictures/ && { echo "${OK}Copy completed!"; } || { echo "${ER # Set some files as executable chmod +x ~/.config/hypr/scripts/* 2>&1 | tee -a "$LOG" - +chmod +x ~/.config/hypr/UserScripts/* 2>&1 | tee -a "$LOG" # Set executable for initial-boot.sh chmod +x ~/.config/hypr/initial-boot.sh 2>&1 | tee -a "$LOG" @@ -252,7 +253,7 @@ else fi # symlinks for waybar style -ln -sf "$HOME/.config/waybar/style/[Pywal] Chroma Fusion.css" "$HOME/.config/waybar/style.css" && \ +ln -sf $Waybar_Style "$HOME/.config/waybar/style.css" && \ # initialize pywal to avoid config error on hyprland wal -i $wallpaper -s -t 2>&1 | tee -a "$LOG" -- cgit v1.2.3