diff options
author | Robert Ancell <robert.ancell@canonical.com> | 2013-10-09 09:50:09 +1300 |
---|---|---|
committer | Robert Ancell <robert.ancell@canonical.com> | 2013-10-09 09:50:09 +1300 |
commit | 1a560001b6bf0de6c4430f47a5756249b8a553d0 (patch) | |
tree | 64ae2c5e8d0736cf1861f488f96692e8388703b1 | |
parent | b08b7abcdf0716aa1b2da9d50e09545b3feb33a6 (diff) | |
download | lightdm-git-1a560001b6bf0de6c4430f47a5756249b8a553d0.tar.gz |
Allow lightdm-session to run if xrdb, setxkbmap or xmodmap are not installed
-rw-r--r-- | debian/changelog | 7 | ||||
-rw-r--r-- | debian/lightdm-session | 56 |
2 files changed, 38 insertions, 25 deletions
diff --git a/debian/changelog b/debian/changelog index 9a2db8c8..c8195b33 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +lightdm (1.7.18-0ubuntu2) UNRELEASED; urgency=low + + * debian/lightdm-session: + - Handle xrdb, setxkbmap and xmodmap not being installed (LP: #1236317) + + -- Robert Ancell <robert.ancell@canonical.com> Wed, 09 Oct 2013 09:46:39 +1300 + lightdm (1.7.18-0ubuntu1) saucy; urgency=low * New upstream release: diff --git a/debian/lightdm-session b/debian/lightdm-session index c998ea3d..2a86cbf6 100644 --- a/debian/lightdm-session +++ b/debian/lightdm-session @@ -29,38 +29,44 @@ for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; d done # Load resources -xresourcedir="/etc/X11/Xresources" -if [ -d "$xresourcedir" ]; then - for file in $xresourcedir/*; do - echo "Loading resource: $file" - xrdb -nocpp -merge "$file" - done -fi -xresourcefile="$HOME/.Xresources" -if [ -f "$xresourcefile" ]; then - echo "Loading resource: $xresourcefile" - xrdb -nocpp -merge "$xresourcefile" -fi - -# Load keymaps -for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do - if [ -f "$file" ]; then - echo "Loading keymap: $file" - setxkbmap `cat "$file"` - XKB_IN_USE=yes +if type xrdb >/dev/null 2>&1; then + xresourcedir="/etc/X11/Xresources" + if [ -d "$xresourcedir" ]; then + for file in $xresourcedir/*; do + echo "Loading resource: $file" + xrdb -nocpp -merge "$file" + done + fi + xresourcefile="$HOME/.Xresources" + if [ -f "$xresourcefile" ]; then + echo "Loading resource: $xresourcefile" + xrdb -nocpp -merge "$xresourcefile" fi -done +fi -# Load xmodmap if not using XKB -if [ -z "$XKB_IN_USE" ]; then - for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do +# Load keymaps +if type setxkbmap >/dev/null 2>&1; then + for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do if [ -f "$file" ]; then - echo "Loading modmap: $file" - xmodmap "$file" + echo "Loading keymap: $file" + setxkbmap `cat "$file"` + XKB_IN_USE=yes fi done fi +# Load xmodmap if not using XKB +if type xmodmap >/dev/null 2>&1; then + if [ -z "$XKB_IN_USE" ]; then + for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do + if [ -f "$file" ]; then + echo "Loading modmap: $file" + xmodmap "$file" + fi + done + fi +fi + unset XKB_IN_USE # Run all system xinitrc shell scripts. |