]> ruderich.org/simon Gitweb - config/dotfiles.git/blob - setup.sh
herbstluftwm/autostart: auto-detect new monitors
[config/dotfiles.git] / setup.sh
1 #!/bin/sh
2
3 # Setup script for X11 configuration files.
4
5 # Copyright (C) 2011-2012  Simon Ruderich
6 #
7 # This program is free software: you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation, either version 3 of the License, or
10 # (at your option) any later version.
11 #
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
19
20
21 set -e
22
23 . ../lib.sh
24
25
26 if installed stumpwm; then
27     link stumpwmrc ~/.stumpwmrc
28 fi
29 if installed xmonad; then
30     link xmonad ~/.xmonad
31 fi
32 if installed herbstluftwm; then
33     link herbstluftwm ~/.config/herbstluftwm
34 fi
35
36 if installed X; then
37     # Prevent code duplication. Term* rules are for all terminals; XTerm rules
38     # are for XTerm and UXTerm. At the moment XTerm, UXTerm and Rxvt are
39     # supported.
40     generate Xdefaults .in perl -ne \
41         'if (/^Term/) {
42              s/^Term//;
43              print "XTerm", $_;
44              print "UXTerm", $_;
45              print "Rxvt", $_;
46          } elsif (/^XTerm/) {
47              print $_;
48              s/^XTerm//;
49              print "UXTerm", $_;
50          } else {
51              print $_;
52          }'
53     # Xdefaults uses ! as comment instead of #.
54     sed_i 's/^#/!/' Xdefaults
55
56     if test ! "x`os`" = xdarwin; then
57         link xinitrc ~/.xinitrc
58         # lightdm doesn't use ~/.xinitrc but ~/.xprofile instead. Assume it's
59         # used when the lightdm configuration file is present.
60         if test -f "$HOME/.dmrc"; then
61             link xinitrc ~/.xprofile
62         fi
63     fi
64     if test -f xinitrc.local; then
65         link xinitrc.local ~/.xinitrc.local
66     fi
67     link xmodmaprc ~/.xmodmaprc
68     link Xdefaults ~/.Xdefaults
69     link XCompose ~/.XCompose
70 fi
71
72 if installed xpdf; then
73     link xpdfrc ~/.xpdfrc
74 fi
75 if installed zathura; then
76     mkdir -p ~/.config/zathura
77     link zathurarc ~/.config/zathura/zathurarc
78 fi
79
80 if installed feh; then
81     mkdir -p ~/.config
82     link feh ~/.config/feh
83     # Older feh versions only support theme options and configure them through
84     # ~/.fehrc.
85     link feh/themes ~/.fehrc
86 fi