diff --git a/dependencies.sh b/dependencies.sh
index 0aff0d1..c18be66 100755
--- a/dependencies.sh
+++ b/dependencies.sh
@@ -22,7 +22,7 @@ windows приложения. Подробнее по ссылке: https://www.
 apt-get install {i586-,}{glibc-core,libstdc++6,glibc-pthread,glibc-nss,\
 libOSMesa,libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,\
 libgnutls30,libGL,libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,\
-libvulkan1,libcups} winetricks ca-certificates cups-pdf  || fatal "Не удалось установить зависимости."
+libvulkan1,libcups} || fatal "Не удалось установить зависимости."
 
 apt-get install {i586-,}wine
 
diff --git a/winehelper b/winehelper
index fba43d3..d480914 100755
--- a/winehelper
+++ b/winehelper
@@ -106,19 +106,15 @@ fi
 
 ##### ROOT #####
 su_run () {
-    print_info "Для продолжения установки зависимостей введите root пароль..."
+    print_info "Для продолжения установки введите root пароль..."
     su - -c "$@"
 }
 
 ##### CHECK DEPENDENCIES #####
-# yad zenity cups-pdf
-
-if rpm -q {i586-,}{wine,glibc-core,libstdc++6,glibc-pthread,glibc-nss,libOSMesa,\
+if ! rpm -q {i586-,}{wine,glibc-core,libstdc++6,glibc-pthread,glibc-nss,libOSMesa,\
 libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,libgnutls30,libGL,\
-libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,libvulkan1,libcups} \
-winetricks ca-certificates cups-pdf 1>/dev/null
-then : # Зависимости установлены. Пропускаем...
-else
+libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,libvulkan1,libcups} 1>/dev/null
+then
     if su_run "$DATA_PATH/dependencies.sh"
     then print_info "Зависимости успешно установлены. Продолжаем работу $SCRIPT_NAME"
     else fatal "Не удалось установить зависимости. Работа $SCRIPT_NAME прервана."
@@ -153,9 +149,9 @@ try_remove_dir () {
 }
 
 try_copy_file () {
-    if [[ ! -f "$1" ]] ; then print_info "file $1 not found for copy" && return 1
-    elif [[ -z "$2" ]] ; then print_error "no way to copy file $1" && return 1
-    elif [[ -L "$2" ]] ; then print_warning "$2 is a file with a symbolic link"
+    if [[ ! -f "$1" ]] ; then print_info "файла $1 не существует для копирования" && return 1
+    elif [[ -z "$2" ]] ; then fatal "нет пути для копирования файла $1"
+    elif [[ -L "$2" ]] ; then
         try_remove_file "$2"
         cp -f "$1" "$2" && return 0 || return 1
     else
@@ -165,24 +161,24 @@ try_copy_file () {
 }
 
 try_copy_dir () {
-    if [[ ! -d "$1" ]] ; then print_info "directory $1 not found for copy"
-    elif [[ -z "$2" ]] ; then print_error "no way to copy directory $1"
+    if [[ ! -d "$1" ]] ; then print_info "каталога $1 не существует для копирования"
+    elif [[ -z "$2" ]] ; then fatal "нет пути для копирования каталога $1"
     else
         cp -fr "$1" "$2"
-        [[ "$?" != 0 ]] && print_error "failed to copy directory $1 to $2" || return 0
+        [[ "$?" != 0 ]] && print_error "не удалось скопировать каталог $1 в $2" || return 0
     fi
     return 1
 }
 
 try_force_link_file () {
     if [[ ! -f "$1" ]] ; then
-        print_warning "file not found for link: $1"
+        print_warning "нет файла для создания символьной ссылки: $1"
         if [[ -f "$2" ]] ; then
             try_remove_file "$2"
-            print_warning "removed old link: $2"
+            print_warning "удаляем символьную ссылку: $2"
         fi
         return 1
-    elif [[ -z "$2" ]] ; then print_error "no way to link file $1" && return 1
+    elif [[ -z "$2" ]] ; then fatal "нет пути для создания символьной ссылки на файл $1"
     else
         try_remove_file "$2"
         ln -s -f -r "$1" "$2"
@@ -191,25 +187,12 @@ try_force_link_file () {
     return 1
 }
 
-check_symlink () {
-    local CHK_SYMLINK_FILE="$(file "$1")"
-    if [[ -n "$(echo "$CHK_SYMLINK_FILE" | grep -v "broken" | grep "symbolic link to" | awk '{print $1}')" ]] ; then
-        return 0
-    elif [[ -n "$(echo "$CHK_SYMLINK_FILE" | grep "broken symbolic link to" | awk '{print $1}')" ]] ; then
-        print_error "remove broken symlink: $CHK_SYMLINK_FILE"
-        rm -fr "$CHK_SYMLINK_FILE"
-        return 1
-    else
-        return 1
-    fi
-}
-
 try_force_link_dir () {
-    if [[ ! -d "$1" ]] ; then print_info "directory $1 not found for link"
-    elif [[ -z "$2" ]] ; then print_error "no way to link directory $1"
+    if [[ ! -d "$1" ]] ; then print_info "каталога $1 не существует для создания символьной сссылки"
+    elif [[ -z "$2" ]] ; then fatal "не указан путь для создания символьной ссылки на каталог $1"
     else
         ln -s -f -r "$1" "$2"
-        [[ "$?" != 0 ]] && print_error "failed to link directory $1 to $2" || return 0
+        [[ "$?" != 0 ]] && print_error "не удалось сделать символьную ссылку на каталог $1 по пути $2" || return 0
     fi
     return 1
 }
@@ -309,7 +292,6 @@ try_copy_wine_dll_to_pfx_32() {
     fi
 }
 
-##### OVERRIDE VARIABLES FUNCTIONS #####
 var_winedlloverride_update () {
     if [[ -n "${WINEDLLOVERRIDES}" ]]
     then export WINEDLLOVERRIDES="${1};${WINEDLLOVERRIDES}"
@@ -355,7 +337,6 @@ var_ld_library_path_update () {
     return 0
 }
 
-##### CREATE DESKTOP FILE #####
 create_desktop () {
     local name_desktop="$1"
     local exe_file="$2"
@@ -382,11 +363,9 @@ create_desktop () {
         fi
     fi
 
-    create_new_dir "$WH_MENU_DIR"
-
-    [[ ! -f "$icon_file" ]] && icon_file=wine
-
     # создаем .desktop файл
+    create_new_dir "$WH_MENU_DIR"
+    [[ ! -f "$icon_file" ]] && icon_file=wine
     {
         echo "[Desktop Entry]"
         echo "Name=$name_desktop"
@@ -401,7 +380,6 @@ create_desktop () {
 
     cp -f "$USER_WORK_PATH/$desktop_filename.desktop" "$WH_MENU_DIR/"
 
-
     # добавляем информацию о приложении в "$WINEPREFIX/desktop.list"
     if [[ -f "$WINEPREFIX/desktop.list" ]] \
     && grep -qe "^${name_desktop}=" "$WINEPREFIX/desktop.list"
@@ -470,7 +448,6 @@ EOF
     fi
 }
 
-##### REMOVE DESKTOP FILE #####
 remove_desktop () {
     if [[ -n "$1" ]] ; then
         try_remove_file "$USER_WORK_PATH/$1.desktop"
@@ -491,7 +468,6 @@ remove_desktop () {
 
 }
 
-##### INSTALLED PROGRAMS #####
 check_installed_programs () {
     for desktop_file in "$USER_WORK_PATH"/*.desktop ; do
         if [[ ! -f "$desktop_file" ]] ; then
@@ -530,7 +506,6 @@ run_installed_programs () {
     fi
 }
 
-##### USED WINED3D LIBRARY #####
 init_wined3d () {
     if [[ "$USE_RENDERER" != "proton" ]] ; then
         WINED3D_FILES="d3d8 d3d9 d3d10_1 d3d10 d3d10core d3d11 dxgi d3d12 d3d12core"
@@ -548,7 +523,6 @@ init_wined3d () {
     fi
 }
 
-##### CHECK VULKAN LIBRARY #####
 init_dxvk () {
     check_variables USE_DXVK_VER "$1"
 
@@ -616,27 +590,19 @@ init_vkd3d () {
     done
 }
 
-##### DOWNLOAD WINE #####
-download_wine () {
-    if [[ ! -d "$WH_DIST_DIR/$WH_WINE_USE" ]] ; then
-        WINE_URL="$CLOUD_URL/$WH_WINE_USE.tar.xz"
-        local WINE_PACKAGE="$WH_TMP_DIR/${WH_WINE_USE}.tar.xz"
-        if try_download "$WINE_URL" "$WINE_PACKAGE" check256sum ; then
-            if unpack "$WINE_PACKAGE" "$WH_DIST_DIR/" ; then
-                echo "$WH_WINE_USE" > "$WH_DIST_DIR/$WH_WINE_USE/version"
-                try_remove_file "$WINE_PACKAGE"
-            fi
-        fi
-    fi
-}
-
-##### INITIAL WINE SETTINGS #####
 init_wine_ver () {
     if [[ "$WH_WINE_USE" != system* ]] ; then
         export WINEDIR="$WH_DIST_DIR/$WH_WINE_USE"
 
         if [[ ! -d "$WINEDIR" ]] ; then
-            download_wine
+            WINE_URL="$CLOUD_URL/$WH_WINE_USE.tar.xz"
+            local WINE_PACKAGE="$WH_TMP_DIR/${WH_WINE_USE}.tar.xz"
+            if try_download "$WINE_URL" "$WINE_PACKAGE" check256sum ; then
+                if unpack "$WINE_PACKAGE" "$WH_DIST_DIR/" ; then
+                    echo "$WH_WINE_USE" > "$WH_DIST_DIR/$WH_WINE_USE/version"
+                    try_remove_file "$WINE_PACKAGE"
+                fi
+            fi
         fi
 
         export WINE="${WINEDIR}/bin/wine"
@@ -731,9 +697,8 @@ init_wine_ver () {
     print_info "Используется версия wine: $WH_WINE_USE"
 }
 
-##### INITIAL WINEPREFIX SETTINGS #####
 get_and_set_reg_file () {
-    
+
     convert_dec_and_hex () {
         local type=$1
         local num=$2
@@ -841,10 +806,6 @@ get_and_set_reg_file () {
 }
 
 wait_wineserver () {
-#     while [[ -n "$(ls -l /proc/*/exe 2>/dev/null | grep -ie portproton | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')" ]] ; do
-#         sleep 1
-#     done
-
     "$WINESERVER" -w
 }
 
@@ -899,7 +860,7 @@ check_prefix_var () {
         print_info "Выбран префикс: $WINEPREFIX"
     fi
 
-    if echo "$WINEPREFIX" | grep -v '/' ; then
+    if echo "$WINEPREFIX" | grep -qv '/' ; then
         export WINEPREFIX="$WH_PREFIXES_DIR/$WINEPREFIX"
     fi
 
@@ -925,8 +886,8 @@ init_wineprefix () {
         fi
         print_info "Обновление префикса $WINEPREFIX."
         if [[ -d "$WINEPREFIX/drive_c/windows" ]]
-        then env WINEDLLOVERRIDES="winegstreamer=" "$WINELOADER" wineboot -u
-        else env WINEDLLOVERRIDES="winegstreamer=" "$WINELOADER" wineboot -i
+        then "$WINELOADER" wineboot -u
+        else "$WINELOADER" wineboot -i
         fi
         touch "$WINEPREFIX/.firstboot"
         wait_wineserver
@@ -939,7 +900,7 @@ init_wineprefix () {
         && [[ "$WINEARCH" != "win32" ]]
         then export WH_WINDOWS_VER="xp64"
         fi
-        env WINEDLLOVERRIDES="winegstreamer=" "$WINELOADER" winecfg -v $(echo "win${WH_WINDOWS_VER}" | sed 's/.*/\L&/')
+        "$WINELOADER" winecfg -v $(echo "win${WH_WINDOWS_VER}" | sed 's/.*/\L&/')
         wait_wineserver
         print_info "Windows версия изменена на win${WH_WINDOWS_VER}"
     fi
@@ -1035,7 +996,6 @@ init_wineprefix () {
     done
 }
 
-##### KILL AUTOSTART AFTER INSTALLING #####
 kill_autostart () {
     [[ -z "${1}" ]] && fatal "Нет аргумента для функции kill_autostart."
     [[ -z "${2}" ]] && SWAIT=3 || SWAIT="${2}"
@@ -1077,7 +1037,7 @@ use_winetricks () {
             print_info "Пробуем установить компоненты: ${WH_DLL_NEED_INSTALL}"
             print_info "Запускаем WINETRICKS..."
             export WINETRICKS_DOWNLOADER="curl"
-            env WINEDLLOVERRIDES="winegstreamer=" "$WH_WINETRICKS" -q ${WH_DLL_NEED_INSTALL}
+            "$WH_WINETRICKS" -q ${WH_DLL_NEED_INSTALL}
             wait_wineserver
         fi
     fi
@@ -1112,8 +1072,7 @@ init_database () {
         print_info "Используется файл настроек: $WHDB_FILE"
         . "$WHDB_FILE"
     elif check_prefix_var && [[ -f "$WINEPREFIX/last.conf" ]] ; then
-        print_info "Найдены настройки из предыдущего использования префикса."
-        echo "$WINEPREFIX/last.conf"
+        print_info "Найдены настройки из предыдущего использования префикса: $WINEPREFIX"
         cat "$WINEPREFIX/last.conf"
         . "$WINEPREFIX/last.conf"
     else
@@ -1234,7 +1193,6 @@ run_autoinstall () {
     echo
 }
 
-##### REMOVE PREFIX #####
 remove_prefix() {
     local prefix_name="$1"
     local prefix_path="$WH_PREFIXES_DIR/$prefix_name"
@@ -1286,7 +1244,6 @@ remove_prefix() {
     fi
 }
 
-##### REMOVE WINEHELPER #####
 remove_winehelper () {
     local answer
     if [[ $1 =~ --force|-y ]] ; then