wok-current view slitaz-i18n/stuff/locale-pack.functions @ rev 16549

slitaz-i18n: carefully check all Core packages
author Aleksej Bobylev <al.bobylev@gmail.com>
date Tue Apr 29 18:19:20 2014 +0000 (2014-04-29)
parents 1c56350ea155
children c4533f65e171
line source
1 get_locale()
2 {
3 [ "x$CHARMAP" == x ] && CHARMAP=UTF-8
5 # Get translated Openbox menu from SliTaz sub project slitaz-configs
6 obmenu=$WOK/slitaz-configs/install/etc/xdg/openbox/menu.$LOCALE.xml
7 if [ -f $obmenu ]; then
8 mkdir -p $fs/etc/xdg/openbox
9 echo "* Found $LOCALE translations for: openbox menu"
10 cp $obmenu $fs/etc/xdg/openbox
11 fi
13 # Get the core packages messages.
14 mkdir -p $fs/usr/share/locale/$LOCALE
15 for app in $CORE_PKGS; do
16 app_locale=$WOK/$app/install/usr/share/locale/$LOCALE
17 if [ -d $app_locale ]; then
18 echo "* Found $LOCALE translations for: $app"
19 cp -a $app_locale $fs/usr/share/locale
20 fi
21 done
23 # List of available locales
24 cd $WOK/glibc/install/usr/share/i18n/locales
25 locales=$(ls -1 | sed -n '/^'$LOCALE'$/p; /^'$LOCALE'_.*/p' | sed '/translit/d')
26 [ "x$LOCALEDEF" != x ] && locales=$LOCALEDEF
28 # Get X11 locale
29 for def in $locales; do
30 x11_locale=$WOK/xorg-libX11/install/usr/share/X11/locale/$def.$CHARMAP
31 if [ -d $x11_locale ]; then
32 echo "* Found $def.$CHARMAP locale for: X11"
33 mkdir -p $fs/usr/share/X11/locale
34 cp -a $x11_locale $fs/usr/share/X11/locale
35 fi
36 done
38 # NO: This we gen a huge /usr/lib/locale directory. We gen locale file
39 # at boot and glibc-locale is not needed for that.
40 #
41 # Pregenerate locale file so we dont need glibc-locale as dep.
42 #for def in $locales; do
43 # echo "* Generate $def locale definition"
44 # mkdir -p $fs/usr/lib/locale
45 # localedef -i $def -c -f $CHARMAP $fs/usr/lib/locale/$def
46 #done
48 # OK, Christophe. So, we still need next // Aleksej
49 usil=usr/share/i18n/locales
50 for def in $locales; do
51 echo "* Copying $def locale files"
52 mkdir -p $fs/$usil
53 cp -a $WOK/glibc/install/$usil/$def $fs/$usil
54 done
56 # Get timezones
57 countries=$(echo $locales | \
58 sed 's|@[^ ]*||g; s|[^ _]*_||g' | tr ' ' '\n' | sort -u)
59 echo "* Copy timezone info for countries: "$countries
60 locations=''
61 for country in $countries; do
62 location=$(grep '^'$country \
63 $WOK/glibc/install/usr/share/zoneinfo/zone.tab | awk '{ print $3}')
64 locations="$locations $location"
65 done
66 for location in $locations; do
67 for tz in $location posix/$location right/$location; do
68 install -Dm644 /usr/share/zoneinfo/$tz \
69 $fs/usr/share/zoneinfo/$tz
70 done
71 done
72 }