#!/bin/bash # # larch-locales - Generate glibc locales to an overlay (a slightly tricky business) # #2009.08.26 # If there is a 'locale.gen' file in the profile (rootoverlay/etc/locale.gen) # it will be used for the generation, otherwise the existing '/etc/locale.gen' # (in the system to be larchified!) will be used, which is empty by default. # $1: path to system to be larchified ("" if running system) # $2: path to temporary overlay directory (where the overlay is being built) INSTLDIR="$1" OVERLAYDIR="$2" mkdir -p ${OVERLAYDIR}/usr/lib echo echo "********** Generating locales to an overlay **********" echo rm -f ${INSTLDIR}/etc/locale.gen_new rm -rf ${INSTLDIR}/usr/lib/locale.save if [ -f ${OVERLAYDIR}/etc/locale.gen ]; then mv -f ${INSTLDIR}/etc/locale.gen ${INSTLDIR}/etc/locale.gen_old cp ${OVERLAYDIR}/etc/locale.gen ${INSTLDIR}/etc cp -a ${INSTLDIR}/usr/lib/locale ${INSTLDIR}/usr/lib/locale.save fi if [ -n "${INSTLDIR}" ]; then chroot ${INSTLDIR} /usr/sbin/locale-gen else /usr/sbin/locale-gen fi rm -rf ${OVERLAYDIR}/usr/lib/locale cp -a ${INSTLDIR}/usr/lib/locale ${OVERLAYDIR}/usr/lib # /usr/lib/locale will be excluded from system.sqf # Restore old locale files if [ -f ${INSTLDIR}/etc/locale.gen_old ]; then mv -f ${INSTLDIR}/etc/locale.gen_old ${INSTLDIR}/etc/locale.gen rm -rf ${INSTLDIR}/usr/lib/locale mv ${INSTLDIR}/usr/lib/locale.save ${INSTLDIR}/usr/lib/locale fi