.xprofile 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #!/bin/sh
  2. ## This file is sourced by some DM and should not contain any desktop execution.
  3. ## Internet browsers that need X to run.
  4. for i in next qutebrowser conkeror chromium icecat firefox google-chrome; do
  5. command -v $i >/dev/null 2>&1 && export BROWSER=$i && break
  6. done
  7. ## ~/.local/share/applications/mimeapps.list shoud symlink to ~/.config/mimeapps.list.
  8. cat<<EOF > ~/.config/mimeapps.list
  9. [Added Associations]
  10. image/jpeg=sxiv.desktop
  11. video/H264=mpv.desktop
  12. text/html=$BROWSER.desktop
  13. application/pdf=$BROWSER.desktop
  14. [Default Applications]
  15. image/jpeg=sxiv.desktop
  16. image/png=sxiv.desktop
  17. text/html=$BROWSER.desktop
  18. application/pdf=zathura.desktop
  19. x-scheme-handler/http=$BROWSER.desktop
  20. x-scheme-handler/https=$BROWSER.desktop
  21. EOF
  22. ## X resources for xterm.
  23. ## Some DM merge this automatically; we merge it for TTY logins.
  24. [ -f "$HOME/.Xresources" ] && xrdb -merge "$HOME/.Xresources"
  25. ## Load custom keymap and configure input devices.
  26. ## Some login managers don't like output hence the redirection.
  27. setxkbmap -layout us -variant ""
  28. xkbcomp -I"$HOME/.xkb" "$HOME/.xkb/usim.xkb" $DISPLAY 2>/dev/null
  29. xcape -e 'Control_L=Escape'
  30. numlockx on
  31. xbindkeys
  32. ## Disable the touchpad. There might be better ways to do this.
  33. # xinput disable "SynPS/2 Synaptics TouchPad"
  34. ## Turn off the bell.
  35. xset -b
  36. ## Lock screen on sleep.
  37. xss-lock slock &
  38. ## PulseAudio. It should start automatically.
  39. # start-pulseaudio-x11 &
  40. ## Hook. Should be sourced last.
  41. [ -f ~/.xprofile_hook ] && . ~/.xprofile_hook