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/Startup_Apps.conf | 56 +++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 config/hypr/UserConfigs/Startup_Apps.conf (limited to 'config/hypr/UserConfigs/Startup_Apps.conf') 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 -- cgit v1.2.3 From dcbb02b43a80e2be6ac2b77a4775b7df623d4809 Mon Sep 17 00:00:00 2001 From: "Ja.KooLit" Date: Fri, 29 Dec 2023 01:26:59 +0900 Subject: adjustments of scripts --- config/hypr/UserConfigs/Laptops.conf | 1 + config/hypr/UserConfigs/Startup_Apps.conf | 2 +- config/hypr/UserScripts/Sunset.sh | 2 ++ config/hypr/scripts/AirplaneMode.sh | 14 +++++---- config/hypr/scripts/Sunset.sh | 2 -- config/hypr/scripts/SwitchKeyboardLayout.sh | 4 +-- config/hypr/scripts/TouchPad.sh | 44 +++++++++-------------------- 7 files changed, 28 insertions(+), 41 deletions(-) create mode 100755 config/hypr/UserScripts/Sunset.sh delete mode 100755 config/hypr/scripts/Sunset.sh (limited to 'config/hypr/UserConfigs/Startup_Apps.conf') diff --git a/config/hypr/UserConfigs/Laptops.conf b/config/hypr/UserConfigs/Laptops.conf index 0a12d7fa..14413ce0 100644 --- a/config/hypr/UserConfigs/Laptops.conf +++ b/config/hypr/UserConfigs/Laptops.conf @@ -22,6 +22,7 @@ bind = $mainMod, F6, exec, $scriptsDir/ScreenShot.sh --now # Fullscreen bind = $mainMod SHIFT, F6, exec, $scriptsDir/ScreenShot.sh --area bind = $mainMod CTRL, F6, exec, $scriptsDir/ScreenShot.sh --in5 # Screenshot in 5 secs bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # Screenshot in 10 secs +bind = ALT, F6, exec, $scriptsDir/ScreenShot.sh --active # Screenshot active window # Below are useful when you are connecting your laptop in external display # Suggest you edit below for your laptop display diff --git a/config/hypr/UserConfigs/Startup_Apps.conf b/config/hypr/UserConfigs/Startup_Apps.conf index 6593268f..cb3afb94 100644 --- a/config/hypr/UserConfigs/Startup_Apps.conf +++ b/config/hypr/UserConfigs/Startup_Apps.conf @@ -53,4 +53,4 @@ exec-once = swayidle -w timeout 900 '$lock' #exec-once = $scriptsDir/PortalHyprland.sh # wlsunset - for automatic gamma adjustment. Default is 1900 to 0700 (7pm to 7am). Edit Sunset.sh accordingly -# exec-once = $scriptsDir/Sunset.sh \ No newline at end of file +# exec-once = $UserScriptsDir/Sunset.sh \ No newline at end of file diff --git a/config/hypr/UserScripts/Sunset.sh b/config/hypr/UserScripts/Sunset.sh new file mode 100755 index 00000000..96c27c5b --- /dev/null +++ b/config/hypr/UserScripts/Sunset.sh @@ -0,0 +1,2 @@ +#!/bin/bash +wlsunset -t 4000 -T 6500 -d 900 -S 07:00 -s 19:00 \ No newline at end of file diff --git a/config/hypr/scripts/AirplaneMode.sh b/config/hypr/scripts/AirplaneMode.sh index e0337dc7..f3a50629 100755 --- a/config/hypr/scripts/AirplaneMode.sh +++ b/config/hypr/scripts/AirplaneMode.sh @@ -2,11 +2,13 @@ notif="$HOME/.config/swaync/images/bell.png" -wifi="$(nmcli r wifi | awk 'FNR = 2 {print $1}')" -if [ "$wifi" == "enabled" ]; then - rfkill block all & - notify-send -u low -i "$notif" 'airplane mode: active' +# Check if any wireless device is blocked +wifi_blocked=$(rfkill list wifi | grep -o "Soft blocked: yes") + +if [ -n "$wifi_blocked" ]; then + rfkill unblock wifi + notify-send -u low -i "$notif" 'Airplane mode: OFF' else - rfkill unblock all & - notify-send -u low -i "$notif" 'airplane mode: inactive' + rfkill block wifi + notify-send -u low -i "$notif" 'Airplane mode: ON' fi diff --git a/config/hypr/scripts/Sunset.sh b/config/hypr/scripts/Sunset.sh deleted file mode 100755 index 96c27c5b..00000000 --- a/config/hypr/scripts/Sunset.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -wlsunset -t 4000 -T 6500 -d 900 -S 07:00 -s 19:00 \ No newline at end of file diff --git a/config/hypr/scripts/SwitchKeyboardLayout.sh b/config/hypr/scripts/SwitchKeyboardLayout.sh index 47469181..a53a567d 100755 --- a/config/hypr/scripts/SwitchKeyboardLayout.sh +++ b/config/hypr/scripts/SwitchKeyboardLayout.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash layout_f="$HOME/.cache/kb_layout" -settings_file="$HOME/.config/hypr/configs/Settings.conf" +settings_file="$HOME/.config/hypr/UserConfigs/UserSettings.conf" notif="$HOME/.config/swaync/images/bell.png" # Check if ~/.cache/kb_layout exists and create it with a default layout from Settings.conf if not found @@ -40,4 +40,4 @@ hyprctl keyword input:kb_layout "$new_layout" echo "$new_layout" > "$layout_f" # Notification for the new keyboard layout -notify-send -u low -i "$notif" "Keyboard layout set to $new_layout" \ No newline at end of file +notify-send -u low -i "$notif" "new KB_Layout: $new_layout" \ No newline at end of file diff --git a/config/hypr/scripts/TouchPad.sh b/config/hypr/scripts/TouchPad.sh index 7b9a1806..1fcb3249 100755 --- a/config/hypr/scripts/TouchPad.sh +++ b/config/hypr/scripts/TouchPad.sh @@ -1,38 +1,22 @@ #!/bin/bash +HYPRLAND_DEVICE="asue1209:00-04f3:319f-touchpad" notif="$HOME/.config/swaync/images/bell.png" -# NOTE: find the right device using hyprctl devices - HYPRLAND_DEVICE="asue1209:00-04f3:319f-touchpad" +XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR:-/run/user/$(id -u)} +STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status" -if [ -z "$XDG_RUNTIME_DIR" ]; then - export XDG_RUNTIME_DIR=/run/user/$(id -u) -fi - -export STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status" - -enable_touchpad() { - printf "true" > "$STATUS_FILE" - - notify-send -u low -i "$notif" "Enabling Touchpad" - - hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" true -} - -disable_touchpad() { - printf "false" > "$STATUS_FILE" - - notify-send -u low -i "$notif" "Disabling Touchpad" +toggle_touchpad() { + if [ ! -f "$STATUS_FILE" ] || [ "$(cat "$STATUS_FILE")" = "false" ]; then + echo "true" > "$STATUS_FILE" + action="enabled" + else + echo "false" > "$STATUS_FILE" + action="disabled" + fi - hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" false + notify-send -u low -i "$notif" "Touchpad $action" + hyprctl keyword "device:$HYPRLAND_DEVICE:enabled" "$(cat "$STATUS_FILE")" } -if ! [ -f "$STATUS_FILE" ]; then - enable_touchpad -else - if [ $(cat "$STATUS_FILE") = "true" ]; then - disable_touchpad - elif [ $(cat "$STATUS_FILE") = "false" ]; then - enable_touchpad - fi -fi +toggle_touchpad -- 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/UserConfigs/Startup_Apps.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