|
|
#!/usr/bin/bash
|
|
|
#
|
|
|
# Author: Dmitry Razumov <asmeron@ublinux.com>
|
|
|
# Copyright (c) 2021-2025 UBLinux <support@ublinux.com>
|
|
|
#
|
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
#
|
|
|
|
|
|
ENABLED=yes
|
|
|
[[ ${ENABLED} == "yes" ]] || { return 0 2>/dev/null && return 0 || exit 0; }
|
|
|
DEBUGMODE=no
|
|
|
|
|
|
unset ROOTFS; [[ -d /usr/lib/ublinux ]] || ROOTFS=.
|
|
|
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}/kiosk; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null
|
|
|
|
|
|
## TODO Настройка desktop файлов
|
|
|
if [[ -n ${APPDESKTOP_WHITELIST[@]} ]]; then
|
|
|
for USER in "${!APPDESKTOP_WHITELIST[@]}"; do
|
|
|
true
|
|
|
done
|
|
|
fi
|
|
|
if [[ -n ${APPDESKTOP_BLACKLIST[@]} ]]; then
|
|
|
for USER in "${!APPDESKTOP_BLACKLIST[@]}"; do
|
|
|
if [[ ${USER} == "LOCAL" ]]; then
|
|
|
# for DESKTOP_FILE in $(tr ',;' '\n' <<< ${APPDESKTOP_BLACKLIST[${USER}]}); do
|
|
|
true
|
|
|
# done
|
|
|
elif [[ ${USER} == "GLOBAL" ]]; then
|
|
|
for DESKTOP_FILE in $(tr ',;' '\n' <<< ${APPDESKTOP_BLACKLIST[${USER}]}); do
|
|
|
if [[ ${DESKTOP_FILE} == "*" ]]; then
|
|
|
for DESKTOP_FILE_FIND in $(find /usr/share/applications/ /usr/share/local/applications/ /home/*/.local/share/applications/ -type f -iname "*.desktop"); do
|
|
|
DESKTOP_FILE_FIND_NAME=${DESKTOP_FILE_FIND##*/}; DESKTOP_FILE_FIND_NAME=${DESKTOP_FILE_FIND_NAME%.desktop}
|
|
|
#Нужно сравнить с белым списком, и то что в белом списке есть не удалить
|
|
|
# if [[ ${DESKTOP_FILE_FIND_NAME} ==
|
|
|
done
|
|
|
else
|
|
|
rm -f /usr/share/applications/${DESKTOP_FILE}.desktop
|
|
|
rm -f /usr/share/local/applications/${DESKTOP_FILE}.desktop
|
|
|
rm -f /home/*/.local/share/applications/${DESKTOP_FILE}.desktop
|
|
|
fi
|
|
|
done
|
|
|
else
|
|
|
true
|
|
|
fi
|
|
|
done
|
|
|
fi
|
|
|
|