forked from CastroFidel/winehelper
Compare commits
15 Commits
refactor/s
...
fix_ui_rem
Author | SHA1 | Date | |
---|---|---|---|
80a425f421 | |||
8736bb8f53 | |||
d553256a7a | |||
33dd0aa45e | |||
877689ab5e | |||
418493b7b8 | |||
cadfe91198 | |||
615bcdd95b | |||
33a181fe4f | |||
dfe41ea9c2 | |||
299ee7ed53 | |||
7c41d656aa | |||
10707bd010 | |||
bd9d5b9561 | |||
9caea05eb5 |
@ -22,7 +22,7 @@ _winehelper_completions() {
|
|||||||
return 0
|
return 0
|
||||||
;;
|
;;
|
||||||
run|installed)
|
run|installed)
|
||||||
local installed=$(grep -h "Exec=env" ~/.local/share/winehelper/*.desktop 2>/dev/null | awk -F'/' '{print $NF}' | awk -F'"' '{print $1}')
|
local installed=$(ls -1 ~/.local/share/winehelper/ | grep ".desktop" | sed 's/.desktop//')
|
||||||
COMPREPLY=( $(compgen -W "${installed}" -- "${cur}") )
|
COMPREPLY=( $(compgen -W "${installed}" -- "${cur}") )
|
||||||
return 0
|
return 0
|
||||||
;;
|
;;
|
||||||
|
@ -101,9 +101,7 @@ _get_list_for_install () {
|
|||||||
|
|
||||||
_get_installed_list () {
|
_get_installed_list () {
|
||||||
installed=(
|
installed=(
|
||||||
${(f)"$(grep -h 'Exec=env' ~/.local/share/winehelper/*.desktop 2>/dev/null |
|
${(f)"$(ls -1 ~/.local/share/winehelper/ | grep ".desktop" | sed 's/.desktop//')"}
|
||||||
awk -F'/' '{print $NF}' |
|
|
||||||
awk -F'"' '{print $1}')"}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if ((! ${#installed[@]} == 0 )); then
|
if ((! ${#installed[@]} == 0 )); then
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
export PROG_NAME="T-FLEX CAD Учебная Версия 17"
|
export PROG_NAME="T-FLEX CAD Учебная Версия 17"
|
||||||
export PROG_ICON="tflexcad"
|
export PROG_ICON="tflexcad"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
@ -34,5 +35,5 @@ if try_download "https://www.tflexcad.ru/download/t-flex-cad-free/files/TFCAD_ST
|
|||||||
try_remove_dir "${WH_TMP_DIR}/Стандартные элементы 17"
|
try_remove_dir "${WH_TMP_DIR}/Стандартные элементы 17"
|
||||||
|
|
||||||
WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD Учебная Версия 17/Program/TFlexCad.exe"
|
WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD Учебная Версия 17/Program/TFlexCad.exe"
|
||||||
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
|
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCadEDU"
|
||||||
fi
|
fi
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
export PROG_NAME="T-FLEX CAD 17"
|
export PROG_NAME="T-FLEX CAD 17"
|
||||||
export PROG_ICON="tflexcad"
|
export PROG_ICON="tflexcad"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
@ -27,5 +28,5 @@ if try_download "https://www.tflex.ru/downloads/T-FLEX%20CAD%2017.zip" "${AUTOIN
|
|||||||
try_remove_file "${AUTOINSTALL_EXE}"
|
try_remove_file "${AUTOINSTALL_EXE}"
|
||||||
|
|
||||||
WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe"
|
WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe"
|
||||||
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
|
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCad"
|
||||||
fi
|
fi
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
########################################################################
|
########################################################################
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
export BASE_PFX="tflex17_pfx_x64_v01"
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
export WH_XDG_OPEN="log"
|
export WH_XDG_OPEN="log"
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
########################################################################
|
########################################################################
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
export BASE_PFX="tflex17_pfx_x64_v01"
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
export WH_XDG_OPEN="log"
|
export WH_XDG_OPEN="log"
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
export PROG_NAME="T-FLEX CAD 2D+ 17"
|
export PROG_NAME="T-FLEX CAD 2D+ 17"
|
||||||
export PROG_ICON="tflexcad"
|
export PROG_ICON="tflexcad"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
@ -27,5 +28,5 @@ if try_download "https://www.tflex.ru/downloads/T-FLEX%20CAD%202D+%2017.zip" "${
|
|||||||
try_remove_file "${AUTOINSTALL_EXE}"
|
try_remove_file "${AUTOINSTALL_EXE}"
|
||||||
|
|
||||||
WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 2D+ 17/Program/TFlexCad.exe"
|
WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 2D+ 17/Program/TFlexCad.exe"
|
||||||
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
|
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCad2D"
|
||||||
fi
|
fi
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
export PROG_NAME="T-FLEX DOCs 17"
|
export PROG_NAME="T-FLEX DOCs 17"
|
||||||
export PROG_ICON="tflexdoc"
|
export PROG_ICON="tflexdoc"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
export PROG_NAME="T-FLEX Viewer 17"
|
export PROG_NAME="T-FLEX Viewer 17"
|
||||||
export PROG_ICON="tflexcad"
|
export PROG_ICON="tflexcad"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
########################################################################
|
########################################################################
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
export BASE_PFX="tflex17_pfx_x64_v01"
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
export PROG_VERSION=""
|
export PROG_VERSION=""
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
export PROG_NAME="T-FLEX CAD 17"
|
export PROG_NAME="T-FLEX CAD 17"
|
||||||
export PROG_ICON="tflexcad"
|
export PROG_ICON="tflexcad"
|
||||||
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
|
||||||
|
export BASE_PFX="tflex17_pfx_x64_v02"
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WH_WINDOWS_VER="10"
|
export WH_WINDOWS_VER="10"
|
||||||
export WINEPREFIX="tflex17"
|
export WINEPREFIX="tflex17"
|
||||||
|
@ -45,6 +45,10 @@ f4cb2f380ad8887f334c6eb3c272b343ae8de327764945266e9e74f8acbac69f tflex17_pfx_x6
|
|||||||
# create with wine_x_tkg_10-0_amd64 (universal user: xuser)
|
# create with wine_x_tkg_10-0_amd64 (universal user: xuser)
|
||||||
# winetricks isolate_home msxml6 ipamona opensymbol wenquanyi ucrtbase2019 uff unifont droid wenquanyizenhei remove_mono internal dotnet40 dotnet48 dotnet20sp2 eufonts takao d3dcompiler_47 fontsmooth=rgb vcrun2022 vlgothic andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts liberation sourcehansans baekmuk tahoma lucida
|
# winetricks isolate_home msxml6 ipamona opensymbol wenquanyi ucrtbase2019 uff unifont droid wenquanyizenhei remove_mono internal dotnet40 dotnet48 dotnet20sp2 eufonts takao d3dcompiler_47 fontsmooth=rgb vcrun2022 vlgothic andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts liberation sourcehansans baekmuk tahoma lucida
|
||||||
|
|
||||||
|
be09f25bb795c5f912fad2d122c68c8aed937821255f161c2d75a4773d11a044 tflex17_pfx_x64_v02.tar.xz
|
||||||
|
# create with wine_wh_tflex_10-9_amd64
|
||||||
|
# winetricks isolate_home msxml6 ipamona opensymbol wenquanyi ucrtbase2019 uff unifont droid wenquanyizenhei remove_mono internal dotnet40 dotnet48 dotnet20 eufonts takao d3dcompiler_47 fontsmooth=rgb vcrun2022 vlgothic andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts liberation sourcehansans baekmuk tahoma lucida
|
||||||
|
|
||||||
7edbd69b40b8ca3fb3594933c6cd37030180c494c08fd13cbd1a5b46565d65e6 ved_ctm_pfx_x86_v03.tar.xz
|
7edbd69b40b8ca3fb3594933c6cd37030180c494c08fd13cbd1a5b46565d65e6 ved_ctm_pfx_x86_v03.tar.xz
|
||||||
# create with wine_x_tkg_10-0_amd64 (universal user: xuser)
|
# create with wine_x_tkg_10-0_amd64 (universal user: xuser)
|
||||||
# winetricks isolate_home msxml6 mdac27 wsh57 jet40 vb6run mdac28 vcrun2022 msxml3 arial dotnet40 dotnet48 art2k7min vcrun6 andale comicsans courier georgia impact times trebuchet verdana webdings corefonts msls31 ie8
|
# winetricks isolate_home msxml6 mdac27 wsh57 jet40 vb6run mdac28 vcrun2022 msxml3 arial dotnet40 dotnet48 art2k7min vcrun6 andale comicsans courier georgia impact times trebuchet verdana webdings corefonts msls31 ie8
|
||||||
|
130
winehelper
130
winehelper
@ -298,7 +298,7 @@ read_page () {
|
|||||||
try_remove_file "$OUT_PAGE_TMP"
|
try_remove_file "$OUT_PAGE_TMP"
|
||||||
unset OUT_PAGE_TMP
|
unset OUT_PAGE_TMP
|
||||||
else
|
else
|
||||||
echo "Исользуй try_get_page перед read_page"
|
echo "Используй try_get_page перед read_page"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -315,7 +315,7 @@ check_file_sum () {
|
|||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
try_remove_file "$check_file_path"
|
try_remove_file "$check_file_path"
|
||||||
fatal "Хэш-сумма файла $check_file_name не совподает!"
|
fatal "Хэш-сумма файла $check_file_name не совпадает!"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -433,10 +433,13 @@ var_ld_library_path_update () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
create_desktop () {
|
create_desktop () {
|
||||||
local name_desktop="$1"
|
local name_desktop exe_file desktop_filename icon_file desktop_path
|
||||||
local exe_file="$2"
|
name_desktop="$1"
|
||||||
local desktop_filename="$(basename "$exe_file" .exe | sed "s| |_|")"
|
exe_file="$2"
|
||||||
local icon_file
|
if [[ -n $4 ]] && [[ $4 != "nocopy" ]];
|
||||||
|
then desktop_filename="$4"
|
||||||
|
else desktop_filename="$(basename "$exe_file" .exe | sed "s| |_|")"
|
||||||
|
fi
|
||||||
if [[ "$RESTORE_FROM_BACKUP" == "1" ]] && [[ -f "$3" ]]
|
if [[ "$RESTORE_FROM_BACKUP" == "1" ]] && [[ -f "$3" ]]
|
||||||
then icon_file="$3"
|
then icon_file="$3"
|
||||||
elif [[ -f "$WH_IMAGE_PATH/$3.png" ]]
|
elif [[ -f "$WH_IMAGE_PATH/$3.png" ]]
|
||||||
@ -493,7 +496,6 @@ create_desktop () {
|
|||||||
echo "$name_desktop=${exe_file//$WINEPREFIX/}=$(basename "$icon_file")" >> "$WINEPREFIX/desktop.list"
|
echo "$name_desktop=${exe_file//$WINEPREFIX/}=$(basename "$icon_file")" >> "$WINEPREFIX/desktop.list"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
# создаем файл категории для меню
|
# создаем файл категории для меню
|
||||||
create_new_dir "$HOME/.local/share/desktop-directories"
|
create_new_dir "$HOME/.local/share/desktop-directories"
|
||||||
if [[ ! -f "$WH_MENU_CATEGORY" ]] ; then
|
if [[ ! -f "$WH_MENU_CATEGORY" ]] ; then
|
||||||
@ -528,14 +530,8 @@ EOF
|
|||||||
update-desktop-database "$HOME/.local/share/applications"
|
update-desktop-database "$HOME/.local/share/applications"
|
||||||
|
|
||||||
if [[ $4 != "nocopy" ]] ; then
|
if [[ $4 != "nocopy" ]] ; then
|
||||||
if [[ -n $4 ]] ; then
|
desktop_path="$(xdg-user-dir DESKTOP)"
|
||||||
local desktop_path="$(xdg-user-dir DESKTOP)/$4"
|
|
||||||
create_new_dir "$desktop_path"
|
|
||||||
print_info "В меню создан $desktop_filename.desktop и скопирован на рабочий стол в каталог $4"
|
|
||||||
else
|
|
||||||
local desktop_path="$(xdg-user-dir DESKTOP)"
|
|
||||||
print_info "В меню и на рабочем столе создан $desktop_filename.desktop"
|
print_info "В меню и на рабочем столе создан $desktop_filename.desktop"
|
||||||
fi
|
|
||||||
cp -f "$USER_WORK_PATH/$desktop_filename.desktop" "$desktop_path"
|
cp -f "$USER_WORK_PATH/$desktop_filename.desktop" "$desktop_path"
|
||||||
else
|
else
|
||||||
print_info "В меню создан $desktop_filename.desktop"
|
print_info "В меню создан $desktop_filename.desktop"
|
||||||
@ -589,7 +585,7 @@ check_installed_programs () {
|
|||||||
print_info "Список установленных программ:"
|
print_info "Список установленных программ:"
|
||||||
check_installed_programs
|
check_installed_programs
|
||||||
exit 1
|
exit 1
|
||||||
elif [[ "$EXE_PATH" =~ ${2}$ ]] ; then
|
elif [[ "$desktop_file" =~ ${2}.desktop ]] ; then
|
||||||
export EXE_PATH
|
export EXE_PATH
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
@ -597,7 +593,8 @@ check_installed_programs () {
|
|||||||
*)
|
*)
|
||||||
if [[ -f "$EXE_PATH.whdb" ]] ; then
|
if [[ -f "$EXE_PATH.whdb" ]] ; then
|
||||||
WH_INFO_RU="$(grep "info_ru:" "$EXE_PATH.whdb" | awk -F"info_ru: " '{print $2}')"
|
WH_INFO_RU="$(grep "info_ru:" "$EXE_PATH.whdb" | awk -F"info_ru: " '{print $2}')"
|
||||||
printf "\E[36m%s $SCRIPT_NAME run $(basename "$EXE_PATH") - $(basename "$desktop_file") %s\e[0m\n"
|
WH_PROG_NAME="$(grep "PROG_NAME" "$EXE_PATH.whdb" | awk -F"=" '{print $2}')"
|
||||||
|
printf "\E[36m%s $SCRIPT_NAME run $(basename "$desktop_file" .desktop) %s\e[0m- $WH_PROG_NAME\n"
|
||||||
echo -e "$WH_INFO_RU\n"
|
echo -e "$WH_INFO_RU\n"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
@ -898,25 +895,33 @@ get_base_pfx () {
|
|||||||
|
|
||||||
check_prefix_var () {
|
check_prefix_var () {
|
||||||
if [[ -z "$WINEPREFIX" ]] ; then
|
if [[ -z "$WINEPREFIX" ]] ; then
|
||||||
print_warning "Префикс не выбран."
|
|
||||||
|
|
||||||
local prefixes=()
|
local prefixes=()
|
||||||
local count=1
|
local count=1
|
||||||
print_info "Доступные префиксы WineHelper:"
|
|
||||||
for prefix in "$WH_PREFIXES_DIR"/* ; do
|
for prefix in "$WH_PREFIXES_DIR"/* ; do
|
||||||
if [[ -d "$prefix" ]]; then
|
if [[ -d "$prefix" ]]; then
|
||||||
prefixes+=("$prefix")
|
prefixes+=("$prefix")
|
||||||
echo "$count. $(basename "$prefix")"
|
|
||||||
((count++))
|
((count++))
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
[[ ${#prefixes[@]} -eq 0 ]] && fatal "Не найдено ни одного префикса!"
|
if [[ ${#prefixes[@]} -eq 0 ]]
|
||||||
|
then fatal "Не найдено ни одного префикса!"
|
||||||
|
else print_info "Доступные префиксы WineHelper:"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "0 - Отмена"
|
||||||
|
|
||||||
|
for ((i=0; i<${#prefixes[@]}; i++)); do
|
||||||
|
echo "$((i+1)) - $(basename "${prefixes[$i]}")"
|
||||||
|
done
|
||||||
|
|
||||||
local max_choice=${#prefixes[@]}
|
local max_choice=${#prefixes[@]}
|
||||||
read -p "Выберите префикс (1-$max_choice): " choice
|
read -p "Выберите префикс (0-$max_choice): " choice
|
||||||
|
|
||||||
if [[ "$choice" -ge 1 && "$choice" -le "$max_choice" ]] ; then
|
if [[ "$choice" == "0" ]]; then
|
||||||
|
print_info "Выбор префикса отменен."
|
||||||
|
exit 0
|
||||||
|
elif [[ "$choice" -ge 1 && "$choice" -le "$max_choice" ]] ; then
|
||||||
export WINEPREFIX="${prefixes[$choice-1]}"
|
export WINEPREFIX="${prefixes[$choice-1]}"
|
||||||
else
|
else
|
||||||
fatal "Неверный выбор."
|
fatal "Неверный выбор."
|
||||||
@ -942,6 +947,7 @@ init_wineprefix () {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
export DRIVE_C="$WINEPREFIX/drive_c"
|
export DRIVE_C="$WINEPREFIX/drive_c"
|
||||||
|
export XUSER_PATH="$DRIVE_C/users/xuser"
|
||||||
|
|
||||||
if [[ ! -f "$WINEPREFIX/.firstboot" ]] ; then
|
if [[ ! -f "$WINEPREFIX/.firstboot" ]] ; then
|
||||||
create_new_dir "$WINEPREFIX"
|
create_new_dir "$WINEPREFIX"
|
||||||
@ -971,10 +977,10 @@ init_wineprefix () {
|
|||||||
print_info "Windows версия изменена на win${WH_WINDOWS_VER}"
|
print_info "Windows версия изменена на win${WH_WINDOWS_VER}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -d "$DRIVE_C/users/xuser" ]] && [[ ! -d "$DRIVE_C/users/$USER" ]]
|
if [[ -d "$XUSER_PATH" ]] && [[ ! -d "$DRIVE_C/users/$USER" ]]
|
||||||
then try_force_link_dir "$DRIVE_C/users/xuser" "$DRIVE_C/users/$USER"
|
then try_force_link_dir "$XUSER_PATH" "$DRIVE_C/users/$USER"
|
||||||
elif [[ ! -d "$DRIVE_C/users/xuser" ]] && [[ -d "$DRIVE_C/users/$USER" ]]
|
elif [[ ! -d "$XUSER_PATH" ]] && [[ -d "$DRIVE_C/users/$USER" ]]
|
||||||
then try_force_link_dir "$DRIVE_C/users/$USER" "$DRIVE_C/users/xuser"
|
then try_force_link_dir "$DRIVE_C/users/$USER" "$XUSER_PATH"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ ! -f "$WINEPREFIX/.update-timestamp" ]] ; then
|
if [[ ! -f "$WINEPREFIX/.update-timestamp" ]] ; then
|
||||||
@ -983,12 +989,15 @@ init_wineprefix () {
|
|||||||
wait_wineserver
|
wait_wineserver
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ -L "$XUSER_PATH/Desktop" ]]
|
||||||
|
then rm -f "$XUSER_PATH/Desktop"
|
||||||
|
fi
|
||||||
|
create_new_dir "$XUSER_PATH/Desktop"
|
||||||
|
|
||||||
if [[ ! -L "$WINEPREFIX/dosdevices/h:" ]]
|
if [[ ! -L "$WINEPREFIX/dosdevices/h:" ]]
|
||||||
then try_force_link_dir "$HOME" "$WINEPREFIX/dosdevices/h:"
|
then try_force_link_dir "$HOME" "$WINEPREFIX/dosdevices/h:"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
try_remove_file "$DRIVE_C/windows/system32/winemenubuilder.exe"
|
|
||||||
|
|
||||||
if [[ $WH_USE_MESA_GL_OVERRIDE == "1" ]] \
|
if [[ $WH_USE_MESA_GL_OVERRIDE == "1" ]] \
|
||||||
&& ! lspci | grep -i nvidia > /dev/null ; then
|
&& ! lspci | grep -i nvidia > /dev/null ; then
|
||||||
export MESA_GL_VERSION_OVERRIDE="3.3"
|
export MESA_GL_VERSION_OVERRIDE="3.3"
|
||||||
@ -1280,21 +1289,35 @@ run_autoinstall () {
|
|||||||
export INSTALL_SCRIPT INSTALL_MODE
|
export INSTALL_SCRIPT INSTALL_MODE
|
||||||
|
|
||||||
if [[ $INSTALL_SCRIPT_NAME == "list" ]] || [[ -z "$INSTALL_SCRIPT_NAME" ]] ; then
|
if [[ $INSTALL_SCRIPT_NAME == "list" ]] || [[ -z "$INSTALL_SCRIPT_NAME" ]] ; then
|
||||||
print_info "Список программ с возможностью автоматической установки:"
|
|
||||||
for list in $(ls "$WH_AUTOINSTALL_DIR") ; do
|
list_install_scripts() {
|
||||||
AI_INFO="$(grep "info_ru:" "$WH_AUTOINSTALL_DIR/$list" | awk -F"info_ru: " '{print $2}')"
|
local dir="$1"
|
||||||
AI_PROGNAME="$(grep "PROG_NAME=" "$WH_AUTOINSTALL_DIR/$list" | awk -F"PROG_NAME=" '{print $2}')"
|
local title="$2"
|
||||||
echo -e "\n$list - $AI_PROGNAME"
|
[[ ! -d "$dir" ]] || [[ -z "$(ls -A "$dir" 2>/dev/null)" ]] && return
|
||||||
echo "$AI_INFO"
|
|
||||||
done
|
print_info "$title"
|
||||||
|
|
||||||
|
awk '
|
||||||
|
FNR==1 {
|
||||||
|
if (progname) {
|
||||||
|
printf "\n%s - %s\n%s\n", filename, progname, info
|
||||||
|
}
|
||||||
|
progname=""; info=""; filename=FILENAME
|
||||||
|
sub(".*/", "", filename)
|
||||||
|
}
|
||||||
|
/info_ru:/ { sub(/.*info_ru: /, ""); info=$0 }
|
||||||
|
/PROG_NAME=/ { sub(/.*PROG_NAME=/, ""); progname=$0 }
|
||||||
|
END {
|
||||||
|
if (progname) {
|
||||||
|
printf "\n%s - %s\n%s\n", filename, progname, info
|
||||||
|
}
|
||||||
|
}
|
||||||
|
' "$dir"/*
|
||||||
|
}
|
||||||
|
|
||||||
|
list_install_scripts "$WH_AUTOINSTALL_DIR" "Список программ с возможностью автоматической установки:"
|
||||||
echo
|
echo
|
||||||
print_info "Список программ с возможностью установки из существующего дистрибутива:"
|
list_install_scripts "$WH_MANUALINSTALL_DIR" "Список программ с возможностью установки из существующего дистрибутива:"
|
||||||
for list in $(ls "$WH_MANUALINSTALL_DIR") ; do
|
|
||||||
AI_INFO="$(grep "info_ru:" "$WH_MANUALINSTALL_DIR/$list" | awk -F"info_ru: " '{print $2}')"
|
|
||||||
AI_PROGNAME="$(grep "PROG_NAME=" "$WH_MANUALINSTALL_DIR/$list" | awk -F"PROG_NAME=" '{print $2}')"
|
|
||||||
echo -e "\n$list - $AI_PROGNAME"
|
|
||||||
echo "$AI_INFO"
|
|
||||||
done
|
|
||||||
elif [[ "$INSTALL_SCRIPT" != "0" ]] ; then
|
elif [[ "$INSTALL_SCRIPT" != "0" ]] ; then
|
||||||
source "$INSTALL_SCRIPT" "$@"
|
source "$INSTALL_SCRIPT" "$@"
|
||||||
print_info "Завершена установка $INSTALL_SCRIPT_NAME"
|
print_info "Завершена установка $INSTALL_SCRIPT_NAME"
|
||||||
@ -1307,7 +1330,7 @@ run_autoinstall () {
|
|||||||
remove_prefix() {
|
remove_prefix() {
|
||||||
export WINEPREFIX="$1"
|
export WINEPREFIX="$1"
|
||||||
if [[ -z "$WINEPREFIX" ]]
|
if [[ -z "$WINEPREFIX" ]]
|
||||||
then print_error "Не указано имя префикса для удаления!"
|
then print_warning "Не указано имя префикса для удаления. Выберите из списка..."
|
||||||
fi
|
fi
|
||||||
check_prefix_var
|
check_prefix_var
|
||||||
if [[ ! -d "$WINEPREFIX" ]]
|
if [[ ! -d "$WINEPREFIX" ]]
|
||||||
@ -1359,16 +1382,13 @@ remove_winehelper () {
|
|||||||
echo " - Все приложения/программы, установленные через WineHelper"
|
echo " - Все приложения/программы, установленные через WineHelper"
|
||||||
echo " - Все ярлыки из меню и с рабочего стола созданные с помощью WineHelper"
|
echo " - Все ярлыки из меню и с рабочего стола созданные с помощью WineHelper"
|
||||||
echo "======================================================"
|
echo "======================================================"
|
||||||
echo "Продолжить? (y/N)"
|
read -p "Продолжить? (y/N): " answer
|
||||||
read -r answer
|
|
||||||
|
|
||||||
if [[ "$answer" =~ ^[YyДд]$ ]] ; then
|
if [[ "$answer" =~ ^[YyДд]$ ]] ; then
|
||||||
# Второе подтверждение
|
|
||||||
echo "----------------------------------------------"
|
echo "----------------------------------------------"
|
||||||
print_warning " ВЫ ТОЧНО УВЕРЕНЫ?"
|
print_warning " ВЫ ТОЧНО УВЕРЕНЫ?"
|
||||||
echo "----------------------------------------------"
|
echo "----------------------------------------------"
|
||||||
echo "Продолжить? (y/N)"
|
read -p "Продолжить? (y/N): " answer
|
||||||
read -r answer
|
|
||||||
else
|
else
|
||||||
print_info "Удаление отменено."
|
print_info "Удаление отменено."
|
||||||
return 1
|
return 1
|
||||||
@ -1407,12 +1427,14 @@ create_base_pfx () {
|
|||||||
export WINEPREFIX="$1"
|
export WINEPREFIX="$1"
|
||||||
check_prefix_var
|
check_prefix_var
|
||||||
|
|
||||||
local prefix_dir="$WINEPREFIX"
|
local prefix_dir drive_c_dir users_dir archive_path
|
||||||
local drive_c_dir="$prefix_dir/drive_c"
|
prefix_dir="$WINEPREFIX"
|
||||||
local users_dir="$drive_c_dir/users"
|
drive_c_dir="$prefix_dir/drive_c"
|
||||||
local archive_path="$WH_TMP_DIR/pfx/new_${PREFIX_NAME}.tar.xz"
|
users_dir="$drive_c_dir/users"
|
||||||
|
archive_path="$WH_TMP_DIR/pfx/new_${PREFIX_NAME}.tar.xz"
|
||||||
|
|
||||||
try_copy_dir "$prefix_dir" "${prefix_dir}_bak"
|
try_copy_dir "$prefix_dir" "${prefix_dir}_bak"
|
||||||
|
create_new_dir "$WH_TMP_DIR/pfx/"
|
||||||
|
|
||||||
for wtlog in workaround isolate internal winxp win2 win7 win10
|
for wtlog in workaround isolate internal winxp win2 win7 win10
|
||||||
do sed -i "/$wtlog/d" "$prefix_dir/winetricks.log"
|
do sed -i "/$wtlog/d" "$prefix_dir/winetricks.log"
|
||||||
@ -1616,7 +1638,7 @@ wh_info () {
|
|||||||
install [скрипт] --clear-pfx не использовать готовый префикс для установки ПО
|
install [скрипт] --clear-pfx не использовать готовый префикс для установки ПО
|
||||||
|
|
||||||
installed список установленных программ
|
installed список установленных программ
|
||||||
run [программа.exe] запуск программы (отладка)
|
run [программа] запуск программы (отладка)
|
||||||
remove-all удалить WineHelper и все связанные данные
|
remove-all удалить WineHelper и все связанные данные
|
||||||
remove-prefix [имя_префикса] удалить префикс и все связанные данные
|
remove-prefix [имя_префикса] удалить префикс и все связанные данные
|
||||||
backup-prefix [имя_префикса] создать резерную копию префикса
|
backup-prefix [имя_префикса] создать резерную копию префикса
|
||||||
|
Reference in New Issue
Block a user