diff options
author | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
---|---|---|
committer | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
commit | 709c4d66e0b107ca606941b988bad717c0b45d9b (patch) | |
tree | 37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/xserver-common/files/setDPI.sh | |
parent | fa6cd5a3b993f16c27de4ff82b42684516d433ba (diff) |
rename packages/ to recipes/ per earlier agreement
See links below for more details:
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Acked-by: Mike Westerhof <mwester@dls.net>
Acked-by: Philip Balister <philip@balister.org>
Acked-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Marcin Juszkiewicz <hrw@openembedded.org>
Acked-by: Koen Kooi <koen@openembedded.org>
Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/xserver-common/files/setDPI.sh')
-rw-r--r-- | recipes/xserver-common/files/setDPI.sh | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/recipes/xserver-common/files/setDPI.sh b/recipes/xserver-common/files/setDPI.sh new file mode 100644 index 0000000000..04a2edd6c6 --- /dev/null +++ b/recipes/xserver-common/files/setDPI.sh @@ -0,0 +1,92 @@ +#! /bin/sh +# +# Copyright Matthias Hentges <devel@hentges.net> (c) 2006 +# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license) +# +# Filename: setDPI.sh +# Date: 09-Apr-06 + +# This script configures Xft.dpi dependent on your screens DPI. This insures that the same font-size +# setting of 7 can be used on all machines. + + +XDEFAULTS="/etc/X11/Xdefaults" + + + +set_dpi() { + + CURRENT_SETTING="`cat ${XDEFAULTS} | sed -n "/Xft.dpi\:/s/.*\:\(.*\)/\1/p" | sed -n "s/\ //p"`" + + if test "$CURRENT_SETTING" != "$1" + then + echo "Using Xft.dpi of $SET_SCREEN_DPI for your $SCREEN_DPI DPI screen" + + if grep -q "Xft.dpi" "$XDEFAULTS" + then + cat "${XDEFAULTS}" | sed "s/^Xft.dpi\:.*/Xft.dpi\: $SET_SCREEN_DPI/" > "${XDEFAULTS}_" + mv "${XDEFAULTS}_" "${XDEFAULTS}" + else + echo -e "Xft.dpi: $SET_SCREEN_DPI\n" >> "$XDEFAULTS" + fi + else + echo "Your $SCREEN_DPI DPI screen is already configured." + fi +} + +set_rxvt_font() { + + CURRENT_SETTING="`cat ${XDEFAULTS} | sed -n "/Rxvt\*font/s/\(.*\pixelsize=\)\(.*\)/\2/p"`" + + if test "$1" -gt 100 + then + + # Configure the rxvt font-size for your screen here: + test "$1" -gt 180 -a "$1" -lt "221" && RXVT_FONT_SIZE=16 + + if test -z "$RXVT_FONT_SIZE" + then + echo "WARNING: No rxvt font-size configured for a $SCREEN_DPI DPI screen!" + echo "Defaulting to size 9" + RXVT_FONT_SIZE=9 + fi + + if test "$CURRENT_SETTING" != "$RXVT_FONT_SIZE" + then + echo "Using a rxvt font-size of $RXVT_FONT_SIZE" + cat ${XDEFAULTS} | sed "/Rxvt\*font/s/\(.*\pixelsize\)\(=*.*\)/\1=$RXVT_FONT_SIZE/" > ${XDEFAULTS}_ + mv ${XDEFAULTS}_ ${XDEFAULTS} + else + echo "The rxvt font-size is already configured" + fi + fi +} + +if test -z "$DISPLAY" +then + echo "DISPLAY is not set, aborting..." + exit 0 +fi + +SCREEN_DPI="`/usr/bin/xdpyinfo | grep "dots per inch" | awk '{print $2}'| sed -n "s/\(.*\)x\(.*\)/\2/p"`" + +if test -z "$SCREEN_DPI" +then + echo "WARNING: Couldn't read your screens DPI, defaulting to 100" + SCREEN_DPI=100 +fi + +# Configure your screen here: +test "$SCREEN_DPI" -gt 180 -a "$SCREEN_DPI" -lt "221" && SET_SCREEN_DPI=160 +test "$SCREEN_DPI" -gt 90 -a "$SCREEN_DPI" -lt "121" && SET_SCREEN_DPI=100 + + +if test -z "$SET_SCREEN_DPI" +then + echo "WARNING: No default configuration found for your $SCREEN_DPI DPI screen!" + echo "Using 100 DPI" + SET_SCREEN_DPI=100 +fi + +set_dpi "$SET_SCREEN_DPI" +set_rxvt_font "$SCREEN_DPI" |