slitaz-tools annotate tinyutils/tazlocale @ rev 147

tazlocale: KISS gen locale list with 'locale -a'
author Christophe Lincoln <pankso@slitaz.org>
date Thu Apr 17 21:48:40 2008 +0200 (2008-04-17)
parents 6fdcd51993b5
children ba7eb3717f49
rev   line source
pankso@5 1 #!/bin/sh
pankso@5 2 #
pankso@5 3 # Tazlocale: SliTaz GNU/Linux locale setting using dialog boxes.
pankso@5 4 # Configuration file is : /etc/locale.conf
pankso@5 5 #
pankso@145 6 # 20080417 <pankso@slitaz.org> - GNU gpl.
pankso@5 7 #
pankso@5 8 : ${DIALOG=dialog}
pankso@5 9
pankso@5 10 # Script functions.
pankso@5 11 status()
pankso@5 12 {
pankso@5 13 local CHECK=$?
pankso@5 14 echo -en "\\033[70G[ "
pankso@5 15 if [ $CHECK = 0 ]; then
pankso@5 16 echo -en "\\033[1;33mOK"
pankso@5 17 else
pankso@5 18 echo -en "\\033[1;31mFailed"
pankso@5 19 fi
pankso@5 20 echo -e "\\033[0;39m ]"
pankso@5 21 }
pankso@5 22
pankso@5 23 # Check if user is root.
pankso@5 24 #
pankso@5 25 if test $(id -u) != 0; then
pankso@145 26 echo -e "\nYou must be root to run `basename $0`!"
pankso@145 27 echo -e "Type su and root password to become super-user.\n"
pankso@145 28 exit 1
pankso@5 29 fi
pankso@5 30
pankso@5 31 # Dialog menu.
pankso@5 32 #
pankso@5 33 exec 3>&1
pankso@5 34 value=`$DIALOG --clear \
pankso@145 35 --title " SliTaz locale configuration " \
pankso@145 36 --menu \
pankso@145 37 "Select your language - Séléctionnez votre langue" 15 70 5 \
pankso@147 38 "en" "Locale" \
pankso@147 39 $(locale -a | grep ^[a-z] | awk '{ printf "%s Locale\n",$1,$2 }') \
pankso@5 40 2>&1 1>&3`
pankso@5 41 retval=$?
pankso@5 42 exec 3>&-
pankso@5 43
pankso@5 44 case $retval in
pankso@145 45 0)
pankso@145 46 continue ;;
pankso@145 47 1)
pankso@145 48 echo "Cancel pressed."
pankso@145 49 exit 0 ;;
pankso@145 50 255)
pankso@145 51 if test -n "$value"; then
pankso@145 52 echo "$value"
pankso@145 53 else
pankso@145 54 echo "ESC pressed."
pankso@145 55 exit 0
pankso@145 56 fi ;;
pankso@5 57 esac
pankso@5 58
pankso@147 59 # Default: C = English
pankso@147 60 if [ "$value" = "en" ]; then
pankso@147 61 value='C'
pankso@147 62 fi
pankso@5 63
pankso@145 64 # System configuration
pankso@147 65 echo "LANG=$value" > /etc/locale.conf
pankso@147 66 echo "LC_ALL=$value" >> /etc/locale.conf
pankso@145 67
pankso@147 68 . /etc/locale.conf && export LANG LC_ALL
pankso@5 69
pankso@5 70 exit 0