From f67f353dd4a230e5d849333002b7b9fcd05839c7 Mon Sep 17 00:00:00 2001 From: kRHYME7 Date: Thu, 28 Nov 2024 22:25:14 +0800 Subject: [PATCH] performance: use dconf load once --- Configs/.local/lib/hyde/wbarstylegen.sh | 5 ++-- Configs/.local/share/hyde/hyprland.conf | 38 +++++++++++++------------ 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/Configs/.local/lib/hyde/wbarstylegen.sh b/Configs/.local/lib/hyde/wbarstylegen.sh index 4480e78..4d4aff0 100755 --- a/Configs/.local/lib/hyde/wbarstylegen.sh +++ b/Configs/.local/lib/hyde/wbarstylegen.sh @@ -114,8 +114,7 @@ envsubst < "$in_file" > "$out_file" # override rounded couners - -hypr_border=$(awk -F '=' '{if($1~" rounding ") print $2}' "$src_file" | sed 's/ //g') -if [ "$hypr_border" == "0" ] ; then +hypr_border=${hypr_border:-$(hyprctl -j getoption decoration:rounding | jq '.int')} +if [ "$hypr_border" == "0" ] || [ -z "$hypr_border" ] ; then sed -i "/border-radius: /c\ border-radius: 0px;" "$out_file" fi diff --git a/Configs/.local/share/hyde/hyprland.conf b/Configs/.local/share/hyde/hyprland.conf index ee5d5f2..881e732 100644 --- a/Configs/.local/share/hyde/hyprland.conf +++ b/Configs/.local/share/hyde/hyprland.conf @@ -76,7 +76,7 @@ $env.ELECTRON_OZONE_PLATFORM_HINT=auto # Set Electron Ozone Platform Hint to aut # XDG-DIRS # $XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR:-/run/user/$(id -u)} # $XDG_CONFIG_HOME=${XDG_CONFIG_HOME:-$HOME/.config} -# $XDG_CACHE_HOME=${XDG_CACHE_HOME:-$HOME/.cache} +# >> $env.XDG_CACHE_HOME=${XDG_CACHE_HOME:-$HOME/.cache} # $XDG_DATA_HOME=${XDG_DATA_HOME:-$HOME/.local/share} $env.XDG_RUNTIME_DIR=$XDG_RUNTIME_DIR @@ -306,29 +306,31 @@ env = XCURSOR_THEME,$CURSOR_THEME env = XCURSOR_SIZE,$CURSOR_SIZE # Execute on reload -$dconf_write = dconf write /org/gnome/desktop/interface -exec = $dconf_write/icon-theme "'$ICON_THEME'" -exec = $dconf_write/gtk-theme "'$GTK_THEME'" -exec = $dconf_write/color-scheme "'$COLOR_SCHEME'" +# HyDE Preparation +exec = mkdir -p $env.XDG_RUNTIME_DIR/hyde $env.XDG_CACHE_HOME/hyde/wallbash $env.XDG_CONFIG_HOME/hyde $env.XDG_DATA_HOME/hyde $(dirname $env.XDG_DATA_HOME)/state/hyde # Create HyDE directories -exec = $dconf_write/cursor-theme "'$CURSOR_THEME'" -exec = $dconf_write/cursor-size $CURSOR_SIZE -exec = hyprctl setcursor $CURSOR_THEME $CURSOR_SIZE +# These echo commands are used to create a dconf file that will be loaded later one time, better then multiple dconf commands +$donFile=$env.XDG_CACHE_HOME/hyde/dconf +exec = echo "[org/gnome/desktop/interface]" > $dcondFile +exec = echo "icon-theme='$ICON_THEME'" >> $dcondFile +exec = echo "gtk-theme='$GTK_THEME'" >> $dcondFile +exec = echo "color-scheme='$COLOR_SCHEME'" >> $dcondFile -exec = $dconf_write/font-name "'$FONT $FONT_SIZE'" -exec = $dconf_write/document-font-name "'$DOCUMENT_FONT $DOCUMENT_FONT_SIZE'" -exec = $dconf_write/monospace-font-name "'$MONOSPACE_FONT $MONOSPACE_FONT_SIZE'" -exec = $dconf_write/font-antialiasing "'$FONT_ANTIALIASING'" -exec = $dconf_write/font-hinting "'$FONT_HINTING'" +exec = echo "cursor-theme='$CURSOR_THEME'" >> $dcondFile +exec = echo "cursor-size=$CURSOR_SIZE" >> $dcondFile +exec = hyprctl setcursor $CURSOR_THEME $CURSOR_SIZE -exec = dconf write /org/gnome/desktop/default-applications/terminal/executable "'$(which $TERMINAL)'" +exec = echo "font-name='$FONT $FONT_SIZE'" >> $dcondFile +exec = echo "document-font-name='$DOCUMENT_FONT $DOCUMENT_FONT_SIZE'" >> $dcondFile +exec = echo "monospace-font-name='$MONOSPACE_FONT $MONOSPACE_FONT_SIZE'" >> $dcondFile +exec = echo "font-antialiasing='$FONT_ANTIALIASING'" >> $dcondFile +exec = echo "font-hinting='$FONT_HINTING'" >> $dcondFile -exec = echo -e "GDK_BACKEND='$env.GDK_BACKEND'\nQT_QPA_PLATFORM='$env.QT_QPA_PLATFORM'\nSDL_VIDEODRIVER='$env.SDL_VIDEODRIVER'\nCLUTTER_BACKEND='$env.CLUTTER_BACKEND'\nXDG_CURRENT_DESKTOP='$env.XDG_CURRENT_DESKTOP'\nXDG_SESSION_TYPE='$env.XDG_SESSION_TYPE'\nXDG_SESSION_DESKTOP='$env.XDG_SESSION_DESKTOP'\nQT_AUTO_SCREEN_SCALE_FACTOR='$env.QT_AUTO_SCREEN_SCALE_FACTOR'\nQT_WAYLAND_DISABLE_WINDOWDECORATION='$env.QT_WAYLAND_DISABLE_WINDOWDECORATION'\nQT_QPA_PLATFORMTHEME='$env.QT_QPA_PLATFORMTHEME'\nHYDE_PATH='$full.PATH'\nMOZ_ENABLE_WAYLAND='$env.MOZ_ENABLE_WAYLAND'\nGDK_SCALE='$env.GDK_SCALE'\nELECTRON_OZONE_PLATFORM_HINT='$env.ELECTRON_OZONE_PLATFORM_HINT'\nXDG_RUNTIME_DIR='$env.XDG_RUNTIME_DIR'\nXDG_CONFIG_HOME='$env.XDG_CONFIG_HOME'\nXDG_CACHE_HOME='$env.XDG_CACHE_HOME'\nXDG_DATA_HOME='$env.XDG_DATA_HOME'\n_GTK_THEME='$GTK_THEME'\n_ICON_THEME='$ICON_THEME'\n_COLOR_SCHEME='$COLOR_SCHEME'\n_CURSOR_SIZE='$CURSOR_SIZE'\n_CURSOR_THEME='$CURSOR_THEME'\nFONT='$FONT'\nFONT_SIZE='$FONT_SIZE'\nDOCUMENT_FONT='$DOCUMENT_FONT'\nDOCUMENT_FONT_SIZE='$DOCUMENT_FONT_SIZE'\nMONOSPACE_FONT='$MONOSPACE_FONT'\nMONOSPACE_FONT_SIZE='$MONOSPACE_FONT_SIZE'\nFONT_ANTIALIASING='$FONT_ANTIALIASING'\nFONT_HINTING='$FONT_HINTING'\nHYDE_RUNTIME_DIR='$env.XDG_RUNTIME_DIR/hyde'\nHYDE_CONFIG_HOME='$env.XDG_CONFIG_HOME/hyde'\nHYDE_CACHE_HOME='$env.XDG_CACHE_HOME/hyde'\nHYDE_DATA_HOME='$env.XDG_DATA_HOME/hyde'\nHYDE_STATE_HOME='$(dirname $env.XDG_DATA_HOME)/state/hyde'\nexport TERMINAL='$(which $TERMINAL)'" > "$env.XDG_RUNTIME_DIR/hyde/environment" +exec = echo -e "[org/gnome/desktop/default-applications/terminal]\nexecutable='$(which $TERMINAL)'" >> $dcondFile +exec = dconf load / < $dcondFile -# HyDE Preparation -exec = mkdir -p $env.XDG_RUNTIME_DIR/hyde $env.XDG_CACHE_HOME/hyde/wallbash $env.XDG_CONFIG_HOME/hyde $env.XDG_DATA_HOME/hyde $(dirname $env.XDG_DATA_HOME)/state/hyde # Create HyDE directories - +exec = echo -e "GDK_BACKEND='$env.GDK_BACKEND'\nQT_QPA_PLATFORM='$env.QT_QPA_PLATFORM'\nSDL_VIDEODRIVER='$env.SDL_VIDEODRIVER'\nCLUTTER_BACKEND='$env.CLUTTER_BACKEND'\nXDG_CURRENT_DESKTOP='$env.XDG_CURRENT_DESKTOP'\nXDG_SESSION_TYPE='$env.XDG_SESSION_TYPE'\nXDG_SESSION_DESKTOP='$env.XDG_SESSION_DESKTOP'\nQT_AUTO_SCREEN_SCALE_FACTOR='$env.QT_AUTO_SCREEN_SCALE_FACTOR'\nQT_WAYLAND_DISABLE_WINDOWDECORATION='$env.QT_WAYLAND_DISABLE_WINDOWDECORATION'\nQT_QPA_PLATFORMTHEME='$env.QT_QPA_PLATFORMTHEME'\nHYDE_PATH='$full.PATH'\nMOZ_ENABLE_WAYLAND='$env.MOZ_ENABLE_WAYLAND'\nGDK_SCALE='$env.GDK_SCALE'\nELECTRON_OZONE_PLATFORM_HINT='$env.ELECTRON_OZONE_PLATFORM_HINT'\nXDG_RUNTIME_DIR='$env.XDG_RUNTIME_DIR'\nXDG_CONFIG_HOME='$env.XDG_CONFIG_HOME'\nXDG_CACHE_HOME='$env.XDG_CACHE_HOME'\nXDG_DATA_HOME='$env.XDG_DATA_HOME'\n_GTK_THEME='$GTK_THEME'\n_ICON_THEME='$ICON_THEME'\n_COLOR_SCHEME='$COLOR_SCHEME'\n_CURSOR_SIZE='$CURSOR_SIZE'\n_CURSOR_THEME='$CURSOR_THEME'\nFONT='$FONT'\nFONT_SIZE='$FONT_SIZE'\nDOCUMENT_FONT='$DOCUMENT_FONT'\nDOCUMENT_FONT_SIZE='$DOCUMENT_FONT_SIZE'\nMONOSPACE_FONT='$MONOSPACE_FONT'\nMONOSPACE_FONT_SIZE='$MONOSPACE_FONT_SIZE'\nFONT_ANTIALIASING='$FONT_ANTIALIASING'\nFONT_HINTING='$FONT_HINTING'\nHYDE_RUNTIME_DIR='$env.XDG_RUNTIME_DIR/hyde'\nHYDE_CONFIG_HOME='$env.XDG_CONFIG_HOME/hyde'\nHYDE_CACHE_HOME='$env.XDG_CACHE_HOME/hyde'\nHYDE_DATA_HOME='$env.XDG_DATA_HOME/hyde'\nHYDE_STATE_HOME='$(dirname $env.XDG_DATA_HOME)/state/hyde'\nexport TERMINAL='$(which $TERMINAL)'" > "$env.XDG_RUNTIME_DIR/hyde/environment" # // █░░ ▄▀█ █░█ █▄░█ █▀▀ █░█ # // █▄▄ █▀█ █▄█ █░▀█ █▄▄ █▀█