#!/bin/sh -pe # # 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
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
language-options | File | 2.78 KB | 0755 |
|
language-validate | File | 1.79 KB | 0755 |
|
language2locale | File | 1.75 KB | 0755 |
|
locale2papersize | File | 320 B | 0755 |
|
main-countries | File | 420 B | 0644 |
|
save-to-pam-env | File | 1.03 KB | 0755 |
|
set-language-helper | File | 732 B | 0755 |
|
update-langlist | File | 1.36 KB | 0755 |
|