extension of the remote_desktop function #20

Closed
minergenon wants to merge 2 commits from minergenon:extention_remote_desktop into master
Showing only changes of commit c7606312ae - Show all commits

View File

@ -1268,9 +1268,6 @@ remove_prefix() {
then print_error "Не указано имя префикса для удаления!" then print_error "Не указано имя префикса для удаления!"
fi fi
check_prefix_var check_prefix_var
if [[ ! -d "$WINEPREFIX" ]]
then fatal "Префикса \"$PREFIX_NAME\" не существует!"
fi
if [[ ! $2 =~ --force|-y ]] ; then if [[ ! $2 =~ --force|-y ]] ; then
echo "======================================================" echo "======================================================"
@ -1287,14 +1284,20 @@ remove_prefix() {
return 0 return 0
fi fi
fi fi
try_remove_dir "$WINEPREFIX"
if try_remove_dir "$WINEPREFIX" ; then if [[ $? -eq 0 ]]; then
print_ok "Префикс "$PREFIX_NAME" успешно удален." print_ok "Префикс "$PREFIX_NAME" успешно удален."
# Ищем и удаляем все ярлыки, связанные с этим префиксом
print_info "Поиск и удаление связанных ярлыков..."
for desktop_file in "$WH_MENU_DIR"/*.desktop; do for desktop_file in "$WH_MENU_DIR"/*.desktop; do
if grep -q "$WINEPREFIX" "$desktop_file"; then if [[ -f "$desktop_file" ]] && grep -q "$WINEPREFIX" "$desktop_file"; then
desktop_name=$(basename "$desktop_file") # Извлекаем отображаемое имя (значение ключа Name=)
remove_desktop "${desktop_name%.*}" display_name=$(grep -m 1 -E "^Name=" "$desktop_file" | cut -d'=' -f2-)
if [[ -n "$display_name" ]]; then
remove_desktop "$display_name"
fi
fi fi
done done