From 1e2a3b25aa760885ee326433ef0ab176e39c73bc Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Wed, 27 Dec 2023 13:23:34 +0900 Subject: updated for swaync --- config/hypr/configs/Settings.conf | 1 - 1 file changed, 1 deletion(-) (limited to 'config/hypr/configs/Settings.conf') diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf index 7b0c0606..2ad370ad 100644 --- a/config/hypr/configs/Settings.conf +++ b/config/hypr/configs/Settings.conf @@ -1,7 +1,6 @@ ## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## ## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables - # Sourcing colors generated by pywal source = $HOME/.cache/wal/colors-hyprland # blurls = waybar -- cgit v1.2.3 From 33d4cd47ce639aeb39991b944895477a0e3b1745 Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Wed, 27 Dec 2023 20:58:22 +0900 Subject: updated swaync, Settings animation and DarkLight.sh --- config/hypr/configs/Settings.conf | 16 +++--- config/hypr/scripts/DarkLight.sh | 15 ++++-- config/swaync/config.json | 10 ++-- config/swaync/style.css | 103 +++++++++++++++++++++++--------------- 4 files changed, 88 insertions(+), 56 deletions(-) (limited to 'config/hypr/configs/Settings.conf') diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf index 2ad370ad..7107d408 100644 --- a/config/hypr/configs/Settings.conf +++ b/config/hypr/configs/Settings.conf @@ -1,6 +1,7 @@ ## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ## ## refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables + # Sourcing colors generated by pywal source = $HOME/.cache/wal/colors-hyprland # blurls = waybar @@ -26,7 +27,7 @@ general { border_size = 2 resize_on_border = true - col.active_border = $color0 $color2 $color4 $color6 $color8 45deg + col.active_border = $color0 $color2 $color4 $color6 $color8 90deg col.inactive_border = $backgroundCol layout = master @@ -78,13 +79,14 @@ animations { 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 = windows, 1, 6, wind, slide + animation = windowsIn, 1, 6, winIn, slide + animation = windowsOut, 1, 5, winOut, slide animation = windowsMove, 1, 5, wind, slide - animation = border, 1, 10, linear - animation = borderangle, 1, 100, linear, loop - animation = fade, 1, 5, overshot + animation = border, 1, 1, linear + animation = borderangle, 1, 150, linear, loop + animation = fade, 1, 10, default animation = workspaces, 1, 5, wind animation = windows, 1, 5, bounce, popin } diff --git a/config/hypr/scripts/DarkLight.sh b/config/hypr/scripts/DarkLight.sh index a2b7af70..ec8c4473 100755 --- a/config/hypr/scripts/DarkLight.sh +++ b/config/hypr/scripts/DarkLight.sh @@ -1,10 +1,11 @@ #!/bin/bash -#set -x +set -x # Paths wallpaper_base_path="$HOME/Pictures/wallpapers/Dynamic-Wallpapers" dark_wallpapers="$wallpaper_base_path/Dark" light_wallpapers="$wallpaper_base_path/Light" hypr_config_path="$HOME/.config/hypr" +swaync_style="$HOME/.config/swaync/style.css" SCRIPTSDIR="$HOME/.config/hypr/scripts" notif="$HOME/.config/swaync/images/bell.png" dark_rofi_pywal="$HOME/.cache/wal/colors-rofi-dark.rasi" @@ -61,6 +62,15 @@ set_waybar_style "$next_mode" notify_user "$next_mode" +# swaync color change +if [ "$next_mode" = "Dark" ]; then + sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.8);/' "${swaync_style}" + sed -i '/@define-color noti-bg-alt/s/#.*;/#111111;/' "${swaync_style}" +else + sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.9);/' "${swaync_style}" + sed -i '/@define-color noti-bg-alt/s/#.*;/#F0F0F0;/' "${swaync_style}" +fi + # Set Dynamic Wallpaper for Dark or Light Mode if [ "$next_mode" = "Dark" ]; then next_wallpaper="$(find "${dark_wallpapers}" -type f \( -iname "*.jpg" -o -iname "*.png" \) -print0 | shuf -n1 -z | xargs -0)" @@ -177,8 +187,7 @@ sleep 1 ${SCRIPTSDIR}/Refresh.sh # Display notifications for theme and icon changes -notify-send -u normal -i "$notif" "Themes are set to $selected_theme" -notify-send -u normal -i "$notif" "Icon themes set to $selected_icon" +notify-send -u normal -i "$notif" "Themes in $next_mode Mode" exit 0 diff --git a/config/swaync/config.json b/config/swaync/config.json index 7d187fa0..6c703328 100644 --- a/config/swaync/config.json +++ b/config/swaync/config.json @@ -6,7 +6,7 @@ "control-center-layer": "top", "layer-shell": true, "cssPriority": "application", - "control-center-margin-top": 0, + "control-center-margin-top": 10, "control-center-margin-bottom": 0, "control-center-margin-right": 0, "control-center-margin-left": 0, @@ -31,9 +31,9 @@ "widgets": [ "dnd", "buttons-grid", - /* "mpris", */ - /* "volume", */ - /* "backlight",*/ + "mpris", + "volume", + "backlight", "title", "notifications" ], @@ -51,7 +51,7 @@ "text": "Notification" }, "mpris": { - "image-size": 20, + "image-size": 10, "image-radius": 0 }, "volume": { diff --git a/config/swaync/style.css b/config/swaync/style.css index 59aea3c6..f0d41fb4 100644 --- a/config/swaync/style.css +++ b/config/swaync/style.css @@ -1,10 +1,13 @@ +/* ----------- 💫 https://github.com/JaKooLit 💫 -------- */ + @import '../../.cache/wal/colors-waybar.css'; @define-color noti-border-color @color2; -@define-color noti-bg @background; -@define-color noti-bg-darker rgba(43, 43, 57, 0.6); +@define-color noti-bg rgba(0, 0, 0, 0.8); +@define-color noti-bg-alt #111111; @define-color noti-bg-hover @color2; -@define-color text-color @color7; +@define-color text-color @color2; +@define-color text-color-alt @color7; @define-color text-color-disabled rgba(150, 150, 150, 0.8); * { @@ -14,26 +17,24 @@ .control-center .notification-row:focus, .control-center .notification-row:hover { - opacity: 0.5; + opacity: 1; background: @noti-bg; border-radius: 10px } .notification-row { outline: none; - margin: 10px; - padding: 0; + margin: 0px; } .notification { - background: transparent; - padding: 0px; - margin: 0px; + border-radius: 10px; } -.notification-content { +.notification-content{ + color: @text-color; background: @noti-bg; - padding: 6px; + padding: 3px 10px 3px 6px; border-radius: 10px; border: 2px solid @noti-border-color; margin: 0px; @@ -73,12 +74,12 @@ .notification-default-action:hover, .notification-action:hover { color: @text-color; - background: #7aa2f7 + background: @color1 } .notification-default-action { border-radius: 10px; - margin: 0px; + margin: 5px; } .notification-default-action:not(:only-child) { @@ -109,7 +110,7 @@ } .inline-reply-button { - font-size: 0.5rem; + font-size: 0.5rem; margin-left: 4px; background: @noti-bg; border: 1px solid @noti-border-color; @@ -129,21 +130,21 @@ .body-image { margin-top: 6px; - background-color: #fff; + color: @text-color-alt; border-radius: 10px } .summary { font-size: 1rem; - font-weight: 700; + font-weight: 200; background: transparent; - color: rgba(158, 206, 106, 0.9); + color: @text-color-alt; text-shadow: none } .time { font-size: 1rem; - font-weight: 700; + font-weight: 200; background: transparent; color: @text-color; text-shadow: none; @@ -152,7 +153,7 @@ .body { font-size: 1rem; - font-weight: 400; + font-weight: 200; background: transparent; color: @text-color; text-shadow: none @@ -169,7 +170,7 @@ } .control-center-list-placeholder { - opacity: .5 + opacity: 0.5 } .floating-notifications { @@ -182,9 +183,9 @@ .widget-title { color: @noti-border-color; - background: @noti-bg-darker; + background: @noti-bg-alt; padding: 3px 6px; - margin: 10px 10px 5px 10px; + margin: 5px; font-size: 1rem; border-radius: 10px; } @@ -203,9 +204,9 @@ } .widget-dnd { - background: @noti-bg-darker; - padding: 3px 5px 3px 5px; - margin: 5px 10px 10px 10px; + background: @noti-bg-alt; + padding: 3px 6px; + margin: 5px; border-radius: 10px; font-size: 1rem; color: @noti-border-color; @@ -233,7 +234,7 @@ } .widget-label { - margin: 0px; + margin: 5px; } .widget-label>label { @@ -243,9 +244,9 @@ .widget-mpris { color: @text-color; - background: @noti-bg-darker; - padding: 2px 6px; - margin: 5px 10px 5px 10px; + background: @noti-bg-alt; + padding: 3px 6px; + margin: 5px; border-radius: 10px; } @@ -254,25 +255,26 @@ } .widget-mpris-player { - padding: 5px 10px; - margin: 10px + padding: 3px 6px; + margin: 5px; } .widget-mpris-title { - font-weight: 700; - font-size: 1.25rem + font-weight: 100; + font-size: 1rem } .widget-mpris-subtitle { - font-size: 1.1rem + font-size: 0.75rem } .widget-buttons-grid { - font-size: x-large; + font-size: large; + color: @noti-border-color; padding: 2px; - margin: 0px; + margin: 5px; border-radius: 10px; - background: @noti-bg-darker; + background: @noti-bg-alt; } .widget-buttons-grid>flowbox>flowboxchild>button { @@ -284,7 +286,7 @@ .widget-buttons-grid>flowbox>flowboxchild>button:hover { background: rgba(122, 162, 247, 0.1); - color: @noti-border-color; + color: @text-color-alt } .widget-menubar>box>.menu-button-bar>button { @@ -298,12 +300,12 @@ } .widget-volume { - background: @noti-bg-darker; + background: @noti-bg-alt; padding: 2px; margin: 10px 10px 5px 10px; border-radius: 10px; font-size: x-large; - color: @text-color; + color: @text-color } .widget-volume>box>button { @@ -316,13 +318,32 @@ padding: 4px 8px 8px; margin: 0 8px 8px; border-radius: 10px; + color: @text-color } .widget-backlight { - background: @noti-bg-darker; + background: @noti-bg-alt; padding: 5px; margin: 10px 10px 5px 10px; border-radius: 10px; font-size: x-large; color: @text-color } + +.low { + background: @text-color; + padding: 0px; + border-radius: 10px; +} + +.normal { + background: @text-color; + padding: 0px; + border-radius: 10px; +} + +.critical { + background: red; + padding: 0px; + border-radius: 10px; +} -- cgit v1.2.3 From e8cb40a7a50fcaec00b3e0bd405507509bb53763 Mon Sep 17 00:00:00 2001 From: JaKooLit Date: Wed, 27 Dec 2023 21:49:51 +0900 Subject: typo and animation --- config/hypr/configs/Settings.conf | 13 ++++++------- config/hypr/scripts/KeyHints.sh | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) (limited to 'config/hypr/configs/Settings.conf') diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf index 7107d408..859df94d 100644 --- a/config/hypr/configs/Settings.conf +++ b/config/hypr/configs/Settings.conf @@ -79,14 +79,13 @@ animations { 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 = windows, 1, 6, wind, slide - animation = windowsIn, 1, 6, winIn, slide - animation = windowsOut, 1, 5, winOut, slide + + animation = windowsIn, 1, 5, slow, popin + animation = windowsOut, 1, 5, winOut, popin animation = windowsMove, 1, 5, wind, slide - animation = border, 1, 1, linear - animation = borderangle, 1, 150, linear, loop - animation = fade, 1, 10, default + animation = border, 1, 10, linear + animation = borderangle, 1, 100, linear, loop + animation = fade, 1, 5, overshot animation = workspaces, 1, 5, wind animation = windows, 1, 5, bounce, popin } diff --git a/config/hypr/scripts/KeyHints.sh b/config/hypr/scripts/KeyHints.sh index a9d93d00..86d10f09 100755 --- a/config/hypr/scripts/KeyHints.sh +++ b/config/hypr/scripts/KeyHints.sh @@ -49,7 +49,7 @@ yad --width=$dynamic_width --height=$dynamic_height \ " CTRL B" "Choose waybar styles" "(waybar styles)" \ " ALT B" "Choose waybar layout" "(waybar layout)" \ " ALT R" "Reload Waybar swaync Rofi" "CHECK NOTIFICATION FIRST!!!" \ -" SHIFT N" "Launch Notification Pannel" "SwayNC Control Center" \ +" SHIFT N" "Launch Notification Panel" "swaync Notification Center" \ " Print" "screenshot" "(grim)" \ " Shift Print" "screenshot region" "(grim + slurp)" \ " Shift S" "screenshot region" "(swappy)" \ -- 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/configs/Settings.conf') 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/configs/Settings.conf') 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 From 7dd29c700fe9bf791c6cc7a39d0bfe916d80cac5 Mon Sep 17 00:00:00 2001 From: "Ja.KooLit" Date: Fri, 29 Dec 2023 12:30:50 +0900 Subject: Final changes for v2.2.2 --- config/hypr/UserConfigs/00-Readme | 9 +++++++++ config/hypr/UserConfigs/Monitors.conf | 4 ---- config/hypr/UserConfigs/Startup_Apps.conf | 2 -- config/hypr/UserConfigs/UserSettings.conf | 7 ++++++- config/hypr/UserScripts/00-Readme | 1 + config/hypr/configs/Settings.conf | 5 +++-- config/hypr/hyprland.conf | 3 +-- config/hypr/initial-boot.sh | 3 ++- 8 files changed, 22 insertions(+), 12 deletions(-) create mode 100644 config/hypr/UserConfigs/00-Readme create mode 100644 config/hypr/UserScripts/00-Readme (limited to 'config/hypr/configs/Settings.conf') diff --git a/config/hypr/UserConfigs/00-Readme b/config/hypr/UserConfigs/00-Readme new file mode 100644 index 00000000..315e3376 --- /dev/null +++ b/config/hypr/UserConfigs/00-Readme @@ -0,0 +1,9 @@ +Hyprland-Dots v2.2.2 + +1.) Suggest not to rename files in this folder. As this is connected and being sourced from hyprland.conf in ~/.config/hypr + +2.) This folder, along with UserScripts folder will NOT be touch during update. + +3.) However, if hyprland has a big change in settings, i.e., blur section is moved into another group, you should managed the change. + +I will update the Hyprland-Dots wiki for guidance. Make sure to check out changelogs as well diff --git a/config/hypr/UserConfigs/Monitors.conf b/config/hypr/UserConfigs/Monitors.conf index ac87862a..ca2ef0e6 100644 --- a/config/hypr/UserConfigs/Monitors.conf +++ b/config/hypr/UserConfigs/Monitors.conf @@ -5,10 +5,6 @@ # https://wiki.hyprland.org/Configuring/Monitors/ # Configure your Display resolution, offset, scale and Monitors here, use `hyprctl monitors` to get the info. -#Could help when scaling and not pixelating -xwayland { - force_zero_scaling = true -} # Monitors monitor=,preferred,auto,1 diff --git a/config/hypr/UserConfigs/Startup_Apps.conf b/config/hypr/UserConfigs/Startup_Apps.conf index cb3afb94..2aacba44 100644 --- a/config/hypr/UserConfigs/Startup_Apps.conf +++ b/config/hypr/UserConfigs/Startup_Apps.conf @@ -7,8 +7,6 @@ $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 diff --git a/config/hypr/UserConfigs/UserSettings.conf b/config/hypr/UserConfigs/UserSettings.conf index 338658a4..fa2e55a9 100644 --- a/config/hypr/UserConfigs/UserSettings.conf +++ b/config/hypr/UserConfigs/UserSettings.conf @@ -86,7 +86,7 @@ animations { animation = windowsOut, 1, 5, winOut, popin animation = windowsMove, 1, 5, wind, slide animation = border, 1, 10, linear - animation = borderangle, 1, 180, linear, loop + animation = borderangle, 1, 180, linear, loop #used by rainbow borders and rotating colors animation = fade, 1, 5, overshot animation = workspaces, 1, 5, wind animation = windows, 1, 5, bounce, popin @@ -143,3 +143,8 @@ binds { allow_workspace_cycles=1 pass_mouse_when_bound=0 } + +#Could help when scaling and not pixelating +xwayland { + force_zero_scaling = true +} diff --git a/config/hypr/UserScripts/00-Readme b/config/hypr/UserScripts/00-Readme new file mode 100644 index 00000000..de251df0 --- /dev/null +++ b/config/hypr/UserScripts/00-Readme @@ -0,0 +1 @@ +a) Place your new scripts here. If you need to edit a script from main script (~/.config/hypr/scripts), copy it on this folder, and edit. Make sure to update as well the keybinds in ~/.config/hypr/UserConfigs folder if any script is attached to it \ No newline at end of file diff --git a/config/hypr/configs/Settings.conf b/config/hypr/configs/Settings.conf index e9901013..96f6f1e9 100644 --- a/config/hypr/configs/Settings.conf +++ b/config/hypr/configs/Settings.conf @@ -1,7 +1,8 @@ ## /* ---- 💫 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 - - +# Initial boot script enable to apply initial wallpapers, theming, new settings etc. +exec-once = $HOME/.config/hypr/initial-boot.sh \ No newline at end of file diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf index 4fd65aa4..24c0be6f 100644 --- a/config/hypr/hyprland.conf +++ b/config/hypr/hyprland.conf @@ -3,9 +3,8 @@ ###### Default Configs $configs = $HOME/.config/hypr/configs -source=$configs/Keybinds.conf source=$configs/Settings.conf - +source=$configs/Keybinds.conf #### User Configs $UserConfigs = $HOME/.config/hypr/UserConfigs diff --git a/config/hypr/initial-boot.sh b/config/hypr/initial-boot.sh index 704d8676..e31863ca 100755 --- a/config/hypr/initial-boot.sh +++ b/config/hypr/initial-boot.sh @@ -2,8 +2,9 @@ # A bash script designed to run only once dotfiles installed -# THIS SCRIPT CAN BE DELETED ONCE SUCCESSFULLY BOOTED!! And also, edit ~/.config/hypr/configs/Execs.conf +# THIS SCRIPT CAN BE DELETED ONCE SUCCESSFULLY BOOTED!! And also, edit ~/.config/hypr/configs/Settings.conf # not necessary to do since this script is only designed to run only once as long as the marker exists +# However, I do highly suggest not to touch it since again, as long as the marker exist, script wont run # Variables scriptsDir=$HOME/.config/hypr/scripts -- cgit v1.2.3