X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=xinitrc;h=496295156224ed2afced300e785bbe7eabefda4a;hb=092a65d10c63ac3dd6544a2353aa16f9cd66fa99;hp=4e5f7bbefe217598697ae93d1d18bc300b3bea41;hpb=73ff664c0b33699029cab0f6c40c10cc78e90a04;p=config%2Fdotfiles.git diff --git a/xinitrc b/xinitrc index 4e5f7bb..4962951 100755 --- a/xinitrc +++ b/xinitrc @@ -2,7 +2,7 @@ # startx configuration file. -# Copyright (C) 2011-2012 Simon Ruderich +# Copyright (C) 2011-2013 Simon Ruderich # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,6 +18,20 @@ # along with this program. If not, see . +# Some systems don't set the LANG environment variable when starting xinitrc, +# this causes problems for rxvt-unicode-256color which fails to display UTF-8 +# characters correctly when LANG is missing and for notify.py which also needs +# LANG set (for Python's decode() function). Therefore set it here, might be +# overwritten by shell setup scripts. +LANG=en_US.UTF-8 +export LANG + + +installed() { + type "$1" >/dev/null 2>&1 +} + + # Start ssh-agent if we have private keys, thanks to # http://code.haskell.org/XMonadContrib/scripts/xinitrc (read on 2011-06-19). if test -x /usr/bin/ssh-agent && test -f "$HOME/.ssh/id_rsa"; then @@ -30,7 +44,7 @@ fi xsetroot -solid black # Force English keyboard layout. -if test -x /usr/bin/setxkbmap; then +if installed setxkbmap; then setxkbmap us fi @@ -46,20 +60,31 @@ if test -f "$HOME/.xinitrc.local"; then fi # Change the background if available. -if test -f "$HOME/.background" && test -n $set_background; then - if test -x /usr/bin/hsetroot; then +if test -f "$HOME/.background" && test -n "$set_background"; then + if installed hsetroot; then hsetroot -full "$HOME/.background" - elif test -x /usr/bin/feh; then + elif installed feh; then feh --bg-scale "$HOME/.background" + # Remove the unnecessary ~/.fehbg file created by `feh`. I don't want + # to restore the background, I just run `feh` on each startx run. + # --no-fehbg is only available in recent feh releases. + rm -f "$HOME/.fehbg" fi fi # Display timed reminders and recheck the file for changes every minute (-z1). -if test -x /usr/bin/remind && test -f "$HOME/.reminders"; then +if installed remind && test -f "$HOME/.reminders"; then remind -z1 -k'.shell/bin/notify.py %s &' "$HOME/.reminders" & fi -# Start XMonad. -xmonad +# Set color temperature of display according to time of day. +if installed redshift; then + redshift -l 49.9:10.9 -t 5500:4500 & +fi + -# vim: ft=sh +# XMonad doesn't start a shell on its own, start one when I login. +(urxvt || rxvt || xterm) & + +# Start window manager. +xmonad