62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env sh
 | 
						|
 | 
						|
# Check if wlogout is already running
 | 
						|
if pgrep -x "wlogout" > /dev/null
 | 
						|
then
 | 
						|
    pkill -x "wlogout"
 | 
						|
    exit 0
 | 
						|
fi
 | 
						|
 | 
						|
# set file variables
 | 
						|
ScrDir=`dirname "$(realpath "$0")"`
 | 
						|
source $ScrDir/globalcontrol.sh
 | 
						|
wLayout="${XDG_CONFIG_HOME:-$HOME/.config}/wlogout/layout_$1"
 | 
						|
wlTmplt="${XDG_CONFIG_HOME:-$HOME/.config}/wlogout/style_$1.css"
 | 
						|
 | 
						|
if [ ! -f $wLayout ] || [ ! -f $wlTmplt ] ; then
 | 
						|
    echo "ERROR: Config $1 not found..."
 | 
						|
    exit 1;
 | 
						|
fi
 | 
						|
 | 
						|
# detect monitor res
 | 
						|
x_mon=$(hyprctl -j monitors | jq '.[] | select(.focused==true) | .width')
 | 
						|
y_mon=$(hyprctl -j monitors | jq '.[] | select(.focused==true) | .height')
 | 
						|
hypr_scale=$(hyprctl -j monitors | jq '.[] | select (.focused == true) | .scale' | sed 's/\.//')
 | 
						|
 | 
						|
 | 
						|
# scale config layout and style
 | 
						|
case $1 in
 | 
						|
    1)  wlColms=6
 | 
						|
        export mgn=$(( y_mon * 28 / hypr_scale ))
 | 
						|
        export hvr=$(( y_mon * 23 / hypr_scale )) ;;
 | 
						|
    2)  wlColms=2
 | 
						|
        export x_mgn=$(( x_mon * 35 / hypr_scale ))
 | 
						|
        export y_mgn=$(( y_mon * 25 / hypr_scale ))
 | 
						|
        export x_hvr=$(( x_mon * 32 / hypr_scale ))
 | 
						|
        export y_hvr=$(( y_mon * 20 / hypr_scale )) ;;
 | 
						|
esac
 | 
						|
 | 
						|
# scale font size
 | 
						|
export fntSize=$(( y_mon * 2 / 100 ))
 | 
						|
 | 
						|
# detect gtk system theme
 | 
						|
export BtnCol=`[ "$gtkMode" == "dark" ] && ( echo "white" ) || ( echo "black" )`
 | 
						|
export WindBg=`[ "$gtkMode" == "dark" ] && ( echo "rgba(0,0,0,0.5)" ) || ( echo "rgba(255,255,255,0.5)" )`
 | 
						|
 | 
						|
if [ "$EnableWallDcol" -eq 1 ] ; then
 | 
						|
    export wbarTheme="Wall-Dcol"
 | 
						|
else
 | 
						|
    export wbarTheme="${gtkTheme}"
 | 
						|
fi
 | 
						|
 | 
						|
# eval hypr border radius
 | 
						|
export active_rad=$(( hypr_border * 5 ))
 | 
						|
export button_rad=$(( hypr_border * 8 ))
 | 
						|
 | 
						|
# eval config files
 | 
						|
wlStyle=`envsubst < $wlTmplt`
 | 
						|
 | 
						|
# launch wlogout
 | 
						|
wlogout -b $wlColms -c 0 -r 0 -m 0 --layout $wLayout --css <(echo "$wlStyle") --protocol layer-shell
 | 
						|
 |