#!/usr/bin/env bash ENABLED=yes [[ ${ENABLED} != "yes" ]] && exit 0 DEBUGMODE=no SOURCE=/usr/lib/ublinux/functions; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0 SOURCE=/usr/lib/ublinux/default; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0 debug_mode "$0" "$@" SOURCE=${SYSCONF}/config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null SOURCE=${SYSCONF}/kiosk; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null ## Режим киоска XFCE4, запретить изменять параметры пользователям и группам ## XFCE4_KIOSK[:]= ## # Пользователи и группы, варианты значений: ## =ALL # Разрешить всем ## =NONE # Запретить ## =@whell,@users # Разрешить группам ## =superadmin,user-1 # Разрешить пользователям ## =@wheel,user-1 # Разрешить группе и пользователю #XFCE4_KIOSK[xfce4-panel:CustomizePanel]=@wheel KIOSKRC="/etc/xdg/xfce4/kiosk/kioskrc" if [[ ${#XFCE4_KIOSK[@]} -ne 0 ]]; then [[ -d ${KIOSKRC%/*} ]] || install -dm0755 -o root -g root "${KIOSKRC%/*}" true > ${KIOSKRC} for SELECT in "${!XFCE4_KIOSK[@]}"; do SECTION=$(cut -d: -f1 <<< ${SELECT}) PROPERTY=$(cut -d: -f2 <<< ${SELECT}) VALUE=${XFCE4_KIOSK[${SELECT}]} [[ ${VALUE,,} == "none" ]] && VALUE=NONE [[ ${VALUE,,} == "all" ]] && VALUE=ALL [[ ${VALUE} =~ '@' ]] && VALUE=$(tr '@' '%' <<< ${VALUE}) grep -q "${SECTION}" ${KIOSKRC} || echo -e "[${SECTION}]\n" >> ${KIOSKRC} sed "/^${PROPERTY}.*/d" -i ${KIOSKRC} sed "/\[${SECTION}\]/a ${PROPERTY}=${VALUE}" -i ${KIOSKRC} done fi ## Назначить настройки киоска XFCE4 пользователям ## XFCE4_KIOSK_USER_LOCKED=disable ## disable # Снять все ограничения ## XFCE4_KIOSK_USER_LOCKED= ## # Пользователи и группы, варианты значений: ## =* # Все пользователи ## =@whell;@users # Указанные группы ## =superadmin;user-1 # Указанным пользователям ## =@wheel;user-1 # Указанным группам и пользователям ## XFCE4_KIOSK_USER_LOCKED="*" ## Назначить исключения настроек киоска XFCE4 пользователям ## XFCE4_KIOSK_USER_UNLOCKED=disable ## disable # Снять все ограничения ## XFCE4_KIOSK_USER_UNLOCKED= ## # Пользователи и группы, варианты значений: ## =* # Все пользователи ## =@whell;@users # Указанные группы ## =superadmin;user-1 # Указанным пользователям ## =@wheel;user-1 # Указанным группам и пользователям ## XFCE4_KIOSK_USER_UNLOCKED="root,@wheel" PATH_XDG_XFCE_CHANNEL="/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/" PARAM_LOCKED= PARAM_UNLOCKED= if [[ -n ${XFCE4_KIOSK_USER_LOCKED} || -n ${XFCE4_KIOSK_USER_UNLOCKED} ]]; then if [[ ${XFCE4_KIOSK_USER_LOCKED} == "disable" || ${XFCE4_KIOSK_USER_UNLOCKED} == "disable" ]]; then for FILE_CHANNEL_XML in ${PATH_XDG_XFCE_CHANNEL}/*.xml; do sed -E "s/^]*>//" -i ${FILE_CHANNEL_XML} done else [[ -n ${XFCE4_KIOSK_USER_LOCKED} ]] && PARAM_LOCKED=" locked=\"${XFCE4_KIOSK_USER_LOCKED//,/;}\"" [[ -n ${XFCE4_KIOSK_USER_UNLOCKED} ]] && PARAM_UNLOCKED=" unlocked=\"${XFCE4_KIOSK_USER_UNLOCKED//,/;}\"" for FILE_CHANNEL_XML in ${PATH_XDG_XFCE_CHANNEL}/*.xml; do sed -E "s/^]*>//" -i ${FILE_CHANNEL_XML} done fi fi