X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=xinitrc;h=35bbe22f6157952d17fd9bf583f040198f3598ee;hb=429ce4dc8ecc960043dc0258bd0f795ef66e62ba;hp=7513f8203bdd6ea1daea369439144ecc11865961;hpb=f3394ebbb4fea4997b3c5cd6ebe0f126985b7284;p=config%2Fdotfiles.git diff --git a/xinitrc b/xinitrc old mode 100644 new mode 100755 index 7513f82..35bbe22 --- a/xinitrc +++ b/xinitrc @@ -1,17 +1,76 @@ +#!/bin/sh + # startx configuration file. +# Copyright (C) 2011-2012 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 +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# 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 + + +# 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 + # -s to force bourne shell output. This file is a bourne shell script even + # if the environment might suggest otherwise. + eval `/usr/bin/ssh-agent -s` +fi # Use a black background for the root window. xsetroot -solid black +# Force English keyboard layout. +if test -x /usr/bin/setxkbmap; then + setxkbmap us +fi + # Use my X11 key bindings. -xmodmap ~/.xmodmaprc +xmodmap "$HOME/.xmodmaprc" + +# Default to use a background image. Can be disabled in .xinitrc.local. +set_background=yes + +# Load settings for the local system. +if test -f "$HOME/.xinitrc.local"; then + . "$HOME/.xinitrc.local" +fi + +# Change the background if available. +if test -f "$HOME/.background" && test -n "$set_background"; then + if test -x /usr/bin/hsetroot; then + hsetroot -full "$HOME/.background" + elif test -x /usr/bin/feh; then + feh --bg-scale "$HOME/.background" + # --no-fehbg is only available in recent feh releases. + rm -f "$HOME/.fehbg" + fi +fi -if [ -f ~/.background ]; then - hsetroot -full ~/.background +# Display timed reminders and recheck the file for changes every minute (-z1). +if test -x /usr/bin/remind && test -f "$HOME/.reminders"; then + remind -z1 -k'.shell/bin/notify.py %s &' "$HOME/.reminders" & fi -# Start stumpwm. +# Start XMonad. xmonad # vim: ft=sh