xinitrc 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. #!/bin/sh
  2. # Inspired by:
  3. # https://bbs.archlinux.org/viewtopic.php?pid=485129#p485129
  4. #
  5. # ~/.xinitrc
  6. #
  7. # Executed by startx (run your window manager from here)
  8. #
  9. # See also ~/.xserverrc
  10. userresources=$HOME/.Xresources
  11. usermodmap=$HOME/.Xmodmap
  12. sysresources=/etc/X11/xinit/.Xresources
  13. sysmodmap=/etc/X11/xinit/.Xmodmap
  14. export XDG_DATA_DIRS="/usr/share:/usr/local/share:$XDG_DATA_DIRS"
  15. if [ -f $sysresources ]; then
  16. xrdb -merge $sysresources
  17. fi
  18. if [ -f $sysmodmap ]; then
  19. xmodmap $sysmodmap
  20. fi
  21. if [ -f "$userresources" ]; then
  22. xrdb -merge "$userresources"
  23. fi
  24. if [ -f "$usermodmap" ]; then
  25. xmodmap "$usermodmap"
  26. fi
  27. # start some nice programs
  28. if [ -d /etc/X11/xinit/xinitrc.d ] ; then
  29. for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
  30. [ -x "$f" ] && . "$f"
  31. done
  32. unset f
  33. fi
  34. WHAT=
  35. if [ -z "$1" ]; then
  36. WHAT="xterm"
  37. else
  38. WHAT="$1"
  39. fi
  40. echo "running $WHAT"
  41. case "$WHAT" in
  42. a|awesome)
  43. WHAT=awesome
  44. ;;
  45. openbox)
  46. WHAT=openbox-session
  47. ;;
  48. fluxbox)
  49. WHAT=startfluxbox
  50. ;;
  51. xfce4)
  52. WHAT=startxfce4
  53. ;;
  54. kde)
  55. WHAT=startkde
  56. ;;
  57. gnome)
  58. WHAT=gnome-session
  59. ;;
  60. e|enlightenment)
  61. WHAT=enlightenment_start
  62. ;;
  63. lxde)
  64. WHAT=startlxde
  65. ;;
  66. dwm)
  67. WHAT=dwm_run
  68. ;;
  69. icewm)
  70. WHAT=icewm-session
  71. ;;
  72. *)
  73. ;;
  74. esac
  75. [[ -x /usr/bin/lxsession ]] && /usr/bin/lxsession &
  76. [[ -x /usr/bin/xscreensaver ]] && /usr/bin/xscreensaver -nosplash -display $DISPLAY &
  77. if [ -n "`pgrep -U $LOGNAME gnome-keyring`" ]; then
  78. eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)
  79. export SSH_AUTH_SOCK
  80. fi
  81. [[ -x /usr/bin/redshift ]] && [[ -z "`pgrep -U $LOGNAME redshift`" ]] && /usr/bin/redshift&
  82. [[ -x /usr/bin/compton ]] && /usr/bin/compton -d $DISPLAY -b
  83. exec $WHAT >> ~/.cache/xinit_stdout 2>> ~/.cache/xinit_stderr
  84. echo "`basename $0` terminated with status $?"