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