#!/bin/es . ~/.esrc fn load_configs{ for (x=`{ls ~/.config/xresources/*}) {xrdb -merge $x} } fn setup_daemons{ if {~ $HOSTNAME speculatores} { backend=xrender } { backend=glx } # Start the compositor. picom -cCzfGD3 -i.85 --shadow-exclude bounding_shaped --vsync --no-use-damage --backend $backend& # Manage clicks on the root window. # xclickroot -1 aemenu & # Manage hotkeys. sxhkd -c $FXDE_DIR/fxde-core/config/sxhkdrc & # Start the screen locker on a timer. xssstart slock & } fn start_ui{ # Welcome chime. aplay $FXDE_DIR/fxde-assets/audio/Login.wav & # Set cursor. xsetroot -xcf $FXDE_DIR/fxde-assets/cursors/$CURSOR/cursors/left_ptr 12 & # Set wallpaper. xwallpaper --no-randr --stretch $FXDE_DIR/fxde-assets/wallpaper/$PAPE # Start the status bar. Doesn't work in some WMs. EWMH maybe..? # $FXDE_DIR/fxde-core/scripts/bar.es|lemonbar -b -F '#000000' -g265x16+0+0 -B '#00000000' -f 'xft:family=Iosevka:style=Mono:size=9:' |sh - & # Start the task bar in environments where the status bar doesn't work. aepanel & # Spawn a tray. stalonetray --window-type desktop --icon-gravity N -v -t --grow-gravity S -i 24 --geometry 1x1+0-17 & } ################################################################################ ## The actual config is below this. ## ################################################################################ # Where to look for assets. FXDE_DIR=~/.config/fxde/ # Paper to use. PAPE=lain-ascii.jpg # What cursor? CURSOR=Lambda # What WM? wm=aewm-wrap for (phase=load_configs setup_daemons start_ui){$phase} exec $wm