xinitrc 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #!/bin/sh
  2. # start with a black screen
  3. feh --bg-scale --no-fehbg "$XDG_DATA_HOME"/norisa/black.jpg
  4. # set keyboard layout to Swiss German
  5. setxkbmap ch
  6. # start hotkey daemon
  7. xbindkeys -f "$XDG_CONFIG_HOME"/xbindkeys/config &
  8. # turn off BIOS beeper
  9. xset b off
  10. # set WM name (for Java apps)
  11. wmname LG3D
  12. # load chadwm bar
  13. ~/.config/chadwm/scripts/bar.sh &
  14. # load notification deamon
  15. dunst &
  16. # load composite manager
  17. picom &
  18. # swap caps and escape (for vim users)
  19. setxkbmap -option caps:swapescape
  20. # swap left alt and super key (for wannabe mac users)
  21. setxkbmap -option altwin:swap_lalt_lwin
  22. # set machine specific xmodmap rules
  23. for f in ${XDG_DATA_HOME:-$HOME/.local/share}/xmodmap/*; do xmodmap $f; done
  24. # set brightness
  25. brightnessctl -d $(brightnessctl -l | grep "class 'backlight'" | head -n 1 | awk '{print $2}' | tr -d "'") set $(cat ~/.config/norisa/brightness-state)%
  26. # don't display mouse if not used recently
  27. unclutter &
  28. # apply local config
  29. localconfig="${XDG_CONFIG_HOME:-$HOME/.config}/norisa.local"
  30. if [ -f "$localconfig" ]; then
  31. . "$localconfig"
  32. [ -z "$NORISA_XORG_MOUSE_ID" ] || scripted-mouse-acceleration \
  33. "$NORISA_XORG_MOUSE_ID" &
  34. [ -z "$NORISA_DISPLAYSETUP" ] || $NORISA_DISPLAYSETUP
  35. fi
  36. # set (previous) wallpaper
  37. ~/.cache/.fehbg && mv ~/.fehbg ~/.cache
  38. # start pulseaudio when unable to fetch the volume
  39. volume=$(amixer sget Master | grep 'Front Left:' | awk -F '[\\]\\[]' '{print $2}')
  40. [ -z "$volume" ] && pulseaudio &
  41. # run dwm
  42. exec dwm