From edd4dacdcf11f57b6f838de302a57b95d8f1861a Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Wed, 13 Feb 2013 16:01:56 +0100 Subject: Add workaround for lightdm ignoring LANG (but#679386). --- X11/Xsession.d/39-lightdm-dmrc-fix | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 X11/Xsession.d/39-lightdm-dmrc-fix (limited to 'X11') diff --git a/X11/Xsession.d/39-lightdm-dmrc-fix b/X11/Xsession.d/39-lightdm-dmrc-fix new file mode 100644 index 0000000..310de67 --- /dev/null +++ b/X11/Xsession.d/39-lightdm-dmrc-fix @@ -0,0 +1,24 @@ +#!/bin/bash + +# workaround for session language selection in lightdm greeter +# use .dmrc or accountsservice data (if accounts-daemon is running) + +# origin: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=679386#107 + +# we need this only if lightdm is being used +if pidof lightdm; then + # if accountsservice is used, get info from there. + if pidof accounts-daemon; then + LANGFILE="/var/lib/AccountsService/users/$USER" + # if not, use .dmrc + else + LANGFILE="$HOME/.dmrc" + fi + + # extract, fix and export $LANG + TEMPLANG=$(cat "$LANGFILE" | grep ^Language= | cut -d '=' -f 2 | sed 's/utf8/UTF8/') + [ ! -z "$TEMPLANG" ] && export LANG=$TEMPLANG + # convert $LANG to $LANGUAGE and export + TEMPLANGUAGE="$(echo $LANG | cut -d '@' -f 1 | cut -d '.' -f 1):$(echo $LANG | cut -d '@' -f 1 | cut -d '.' -f 1 | cut -d '_' -f 1)" + [ ! -z "$TEMPLANGUAGE" ] && export LANGUAGE=$TEMPLANGUAGE +fi -- cgit v1.2.3