|
|
#!/usr/bin/env bash
|
|
|
#
|
|
|
# Initial script for UBLinux
|
|
|
# This script are launching before starting init from initrd 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='.'; CMD_CHROOT='chroot . '; }
|
|
|
SOURCE=${ROOTFS}/usr/lib/ublinux/functions; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
|
|
|
SOURCE=${ROOTFS}/usr/lib/ublinux/default; [[ -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}/desktop; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null
|
|
|
|
|
|
## Сервер XDMCP Lightdm
|
|
|
## LIGHTDM_XDMCP=yes|no|enable|disable
|
|
|
## yes|enable # Включить XDMCP
|
|
|
## no|disable # Выключить XDMCP
|
|
|
## LIGHTDM_XDMCP[port]=<port>
|
|
|
## <port> # Порт подключения UDP/IP. По умолчанию: 177
|
|
|
## LIGHTDM_XDMCP[listen-address]=<address>
|
|
|
## <address> # Адрес хоста соединения XDMCP. По умолчанию: все адреса
|
|
|
## LIGHTDM_XDMCP[key]=<key>
|
|
|
## <key> # Ключ аутентификации, используемый для XDM-AUTHENTICATION-1, или пустой, чтобы не использовать аутентификацию (хранится в файлеkeys.conf)
|
|
|
## LIGHTDM_XDMCP[hostname]=<hostname>
|
|
|
## <hostname> # Имя хоста для отправки отчета клиентам XDMCP. По умолчанию: системное имя хоста
|
|
|
|
|
|
declare -A LIGHTDM_XDMCP
|
|
|
|
|
|
FILE_LIGHTDM_CONF="${ROOTFS}/etc/lightdm/lightdm.conf"
|
|
|
FILE_LIGHTDM_XDMCP_CONF="${ROOTFS}/etc/lightdm/lightdm.conf.d/99-xdmcp-ubconfig.conf"
|
|
|
|
|
|
if [[ ${LIGHTDM_XDMCP} == @(""|"disable"|"no") ]]; then
|
|
|
rm -f "${FILE_LIGHTDM_XDMCP_CONF}"
|
|
|
else
|
|
|
[[ -d ${ROOTFS}/etc/lightdm/${FILE_LIGHTDM_XDMCP_CONF%/*} ]] || mkdir -p ${FILE_LIGHTDM_XDMCP_CONF%/*}
|
|
|
cat <<-EOF | sed 's/^\s*\t*//' > "${FILE_LIGHTDM_XDMCP_CONF}"
|
|
|
[XDMCPServer]
|
|
|
enabled=true
|
|
|
EOF
|
|
|
[[ -z ${LIGHTDM_XDMCP[port]} ]] || printf "port=${LIGHTDM_XDMCP[port]}\n" >> "${FILE_LIGHTDM_XDMCP_CONF}"
|
|
|
[[ -z ${LIGHTDM_XDMCP[listen-address]} ]] || printf "listen-address=${LIGHTDM_XDMCP[listen-address]}\n" >> "${FILE_LIGHTDM_XDMCP_CONF}"
|
|
|
[[ -z ${LIGHTDM_XDMCP[key]} ]] || printf "key=${LIGHTDM_XDMCP[key]}\n" >> "${FILE_LIGHTDM_XDMCP_CONF}"
|
|
|
[[ -z ${LIGHTDM_XDMCP[hostname]} ]] || printf "hostname=${LIGHTDM_XDMCP[hostname]}\n" >> "${FILE_LIGHTDM_XDMCP_CONF}"
|
|
|
fi
|
|
|
|