]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - setup.sh
enable real transparency in urxvt with compton
[config/dotfiles.git] / setup.sh
index 6a980a346d90661237a8366713f74f50c17e34a6..9e330d1231dfea8c5c39ff2f1b6824c58af08925 100755 (executable)
--- a/setup.sh
+++ b/setup.sh
@@ -22,18 +22,22 @@ set -e
 
 . ../lib.sh
 
+
 if installed stumpwm; then
     link stumpwmrc ~/.stumpwmrc
 fi
 if installed xmonad; then
     link xmonad ~/.xmonad
 fi
+if installed herbstluftwm; then
+    link herbstluftwm ~/.config/herbstluftwm
+fi
 
 if installed X; then
     # Prevent code duplication. Term* rules are for all terminals; XTerm rules
     # are for XTerm and UXTerm. At the moment XTerm, UXTerm and Rxvt are
     # supported.
-    generate perl Xdefaults -ne \
+    generate Xdefaults .in perl -ne \
         'if (/^Term/) {
              s/^Term//;
              print "XTerm", $_;
@@ -46,13 +50,23 @@ if installed X; then
          } else {
              print $_;
          }'
-    # Xdefaults uses ! as comment instead of #. tmp file necessary because of
-    # different implementations of `sed -i`.
-    sed 's/^#/!/' Xdefaults > Xdefaults.tmp
-    mv Xdefaults.tmp Xdefaults
+    # Xdefaults uses ! as comment instead of #.
+    sed_i 's/^#/!/' Xdefaults
+    # Use urxvt's pseudo-transparency if compton is not available. Better than
+    # nothing.
+    if ! installed compton; then
+        echo 'Xdefaults: no compton found, enabling pseudo-transparency'
+        sed_i 's/^Rxvt\*background/!&/' Xdefaults
+        sed_i 's/^!NO_COMPTON //' Xdefaults
+    fi
 
     if test ! "x`os`" = xdarwin; then
         link xinitrc ~/.xinitrc
+        # lightdm doesn't use ~/.xinitrc but ~/.xprofile instead. Assume it's
+        # used when the lightdm configuration file is present.
+        if test -f "$HOME/.dmrc"; then
+            link xinitrc ~/.xprofile
+        fi
     fi
     if test -f xinitrc.local; then
         link xinitrc.local ~/.xinitrc.local