Files
.dotfiles/.xinitrc
2025-11-19 10:39:51 +01:00

31 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
# shellcheck disable=SC1090,SC1091
# load system xinit scripts
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in "/etc/X11/xinit/xinitrc.d"/?*.sh; do
source "$f"
done
unset f
fi
xrandr --setprivideroutputsource modesetting NVIDIA-0
xrandr --auto
nvidia-settings -l # apply nvidia-settings
export __GL_YIELD="USLEEP" # fix for awful diagonal screen tear
export __GL_THREADED_OPTIMIZATIONS=0 # allows gamescope to execute
export __GL_SYNC_TO_VBLANK=0 # disable vsync in driver, to aid with some screen tearing
#export __GL_MaxFramesAllowed=1 # can reduce lag and maybe stabilise things
#export __GL_NextGenCompiler=0 # legacy option, can help with shader compilation
numlockx on # ensure numlock is on before setting keymap
setxkbmap us -variant altgr-intl -option '' # load the correct keymap which actually has 3rd level shift
[[ -f "/etc/xprofile" ]] && source "/etc/xprofile" # load the system-wide xprofile
[[ -f "$HOME/.xprofile" ]] && source "$HOME/.xprofile" # load the local xprofile configuration
[[ -f "$HOME/.Xmodmap" ]] && xmodmap "$HOME/.Xmodmap" # load local keymap
[[ -x /usr/bin/picom ]] && /usr/bin/picom -b # start picom as a background service
exec i3 -c "$XDG_CONFIG_HOME/i3/config" # start the graphical environment (replaces shell)