You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.9 KiB
46 lines
1.9 KiB
#!/usr/bin/env bash
|
|
#
|
|
# Initial script for Live operating system
|
|
# This script are launching before starting init from linux-live script.
|
|
# Current dir allways must be set to root (/)
|
|
# All system path must be relative, except initrd dirs
|
|
|
|
ENABLED=yes
|
|
[[ ${ENABLED} == "yes" ]] || exit 0
|
|
DEBUGMODE=no
|
|
|
|
PATH=.:/:/usr/bin:/usr/local/bin:/usr/local/sbin
|
|
|
|
[[ -d /usr/lib/ublinux ]] && { unset ROOTFS; unset CMD_CHROOT; } || { ROOTFS="/sysroot"; CMD_CHROOT="chroot ${ROOTFS}"; }
|
|
SOURCE=${ROOTFS}/usr/lib/ublinux/functions; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
|
|
SOURCE=${ROOTFS}/usr/lib/ublinux/os-config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
|
|
debug_mode "$0" "$@"
|
|
|
|
SYSCONF="${ROOTFS}${SYSCONF}"
|
|
SOURCE=${SYSCONF}/config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null
|
|
SOURCE=${SYSCONF}/keyboard; [ -f ${SOURCE} ] && . ${SOURCE} 2>/dev/null
|
|
SOURCE=${SYSCONF}/locale; [ -f ${SOURCE} ] && . ${SOURCE} 2>/dev/null
|
|
|
|
|
|
NEWLANG=$(cmdline_value lang)
|
|
[[ -z ${NEWLANG} ]] || { LOCALE+=",${NEWLANG}" && LANG="${NEWLANG}"; }
|
|
|
|
for I_LOCALE in ${LOCALE//,/ }; do
|
|
sed -i "s/^#${I_LOCALE} /${I_LOCALE} /g" ${ROOTFS}/etc/locale.gen
|
|
done
|
|
|
|
${CMD_CHROOT} env LANG=${LANG} locale > ${ROOTFS}/etc/locale.conf
|
|
|
|
[[ -n ${FORCE_LOCARCHIVE} ]] && FORCEGEN=1
|
|
[[ ! -f ${ROOTFS}/usr/lib/locale/locale-archive ]] && FORCEGEN=1
|
|
#[[ "$(echo -e ${LOCALE//,/\\n} | sort -fu)" != "$(chroot . localedef --list-archive | sort -fu)" ]] && FORCEGEN=1
|
|
[[ -n ${FORCEGEN} ]] && chroot . locale-gen &>/dev/null
|
|
#; unset LANG; source /etc/profile.d/locale.sh"
|
|
|
|
# Если имеются языкозависимые файлы, то копируем в корень
|
|
[[ -d ${ROOTFS}/usr/share/ublinux/langs/${LANG} ]] && cp -pfr ${ROOTFS}/usr/share/ublinux/langs/${LANG}/* ./
|
|
|
|
echo FONT=${CONSOLE_FONT} > ${ROOTFS}/etc/vconsole.conf
|
|
echo KEYMAP=${KEYBOARD} >> ${ROOTFS}/etc/vconsole.conf
|
|
[[ -z ${KEYMAP_TOGGLE} ]] || echo KEYMAP_TOGGLE="${KEYMAP_TOGGLE}" >> ${ROOTFS}/etc/vconsole.conf
|