/usr/share/language-tools/save-to-pam-env is in accountsservice 0.6.45-1ubuntu1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | #!/bin/sh -e
#
# updates the ~/.pam_environment config file
homedir=$1
locale_name=$2
language_list=$3
[ -n "$homedir" -a -n "$locale_name" ] || exit 1
langtoolsdir=/usr/share/language-tools
# create ~/.pam_environment if it doesn't exist
touch "$homedir/.pam_environment" || exit 1
save_to_pam_env() {
var=$1; value=$2
if [ "$( grep -E "^$var(\s+DEFAULT|=)" .pam_environment )" ]; then
sed -r -i "s/^$var(\s+DEFAULT|=).*/$var\tDEFAULT=$value/" .pam_environment
else
echo "$var\tDEFAULT=$value" >> .pam_environment
fi
}
cd "$homedir"
if [ -n "$language_list" ]; then
save_to_pam_env 'LANGUAGE' $language_list
save_to_pam_env 'LANG' $locale_name
else
for var in 'LC_NUMERIC' 'LC_TIME' 'LC_MONETARY' 'LC_PAPER' 'LC_NAME' \
'LC_ADDRESS' 'LC_TELEPHONE' 'LC_MEASUREMENT' 'LC_IDENTIFICATION'; do
save_to_pam_env $var $locale_name
done
papersize=$( $langtoolsdir/locale2papersize $locale_name )
save_to_pam_env 'PAPERSIZE' $papersize
echo $locale_name
fi
exit 0
|