Compare commits

...

6 Commits

6 changed files with 86 additions and 4 deletions

View File

@ -0,0 +1,25 @@
#!/usr/bin/env bash
# info_ru: Специализированное программное обеспечение «Автономная станция прослушивания» предназначено для загрузки и прослушивания электронных материалов итогового собеседования.
########################################################################
export WH_AUTOINSTALL="1"
export WH_WINE_USE="wine_x_tkg_10-0_i586"
export WINEPREFIX="audio_station"
export PROG_NAME="АС Прослушивания"
export PROG_ICON="desktopaudiostation"
export BASE_PFX="none"
export WH_WINDOWS_VER="10"
export WINEARCH="win32"
export INSTALL_DLL="dotnet48 corefonts vcrun2022 dsound xact winhttp gdiplus"
export USE_RENDERER="proton"
if [[ -f "$2" ]] ; then
prepair_wine
wine_run_install "$2" /s /nr # /l=Russian
WIN_FILE_EXEC="$DRIVE_C/Program Files/Автономная станция прослушивания (2025)/DesktopAudioStation.exe"
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
else
fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру:
winehelper install $1 \"/путь/до/установочногоайла\""
fi

View File

@ -0,0 +1,25 @@
#!/usr/bin/env bash
# info_ru: Специализированное программное обеспечение «Автономная станция записи» предназначено для записи ответов участников итогового собеседования.
########################################################################
export WH_AUTOINSTALL="1"
export WH_WINE_USE="wine_x_tkg_10-0_i586"
export WINEPREFIX="audio_station"
export PROG_NAME="АС Записи"
export PROG_ICON="recordingstation"
export BASE_PFX="none"
export WH_WINDOWS_VER="10"
export WINEARCH="win32"
export INSTALL_DLL="dotnet48 corefonts vcrun2022 dsound xact winhttp gdiplus"
export USE_RENDERER="proton"
if [[ -f "$2" ]] ; then
prepair_wine
wine_run_install "$2" /S /v/qn
WIN_FILE_EXEC="$DRIVE_C/Program Files/Federal Test Center/ISRecordStation2024-2025/RecordStation.exe"
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
else
fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру:
winehelper install $1 \"/путь/до/установочногоайла\""
fi

View File

@ -2,7 +2,7 @@
# info_ru: Это мощный, современный инструмент быстрой и качественной разработки АСУТП # info_ru: Это мощный, современный инструмент быстрой и качественной разработки АСУТП
######################################################################## ########################################################################
export WH_AUTOINSTALL="1" export WH_AUTOINSTALL="1"
export WH_WINE_USE="wine_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586 export WH_WINE_USE="wine_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
export WINEPREFIX="scada-krug-2000" export WINEPREFIX="scada-krug-2000"
export PROG_NAME="SCADA КРУГ 2000" export PROG_NAME="SCADA КРУГ 2000"
export PROG_ICON="krugtaskmanager" export PROG_ICON="krugtaskmanager"
@ -15,11 +15,10 @@ export USE_RENDERER="proton"
if [[ -f "$2" ]] ; then if [[ -f "$2" ]] ; then
prepair_wine prepair_wine
kill_autostart "KrugTaskManager.exe" &
wine_run_install "$2" /quiet wine_run_install "$2" /quiet
WIN_FILE_EXEC="$DRIVE_C/Program Files/Krug2000/Bin/KrugTaskManager.exe" WIN_FILE_EXEC="$DRIVE_C/Program Files/Krug2000/Bin/KrugTaskManager.exe"
# TODO: Если файл не найден, использовать автопоиск по имени exe файла $WIN_FILE_EXEC
# TODO: кил автозапуска после установки
create_desktop "Менеджер задач" "$WIN_FILE_EXEC" "$PROG_ICON" create_desktop "Менеджер задач" "$WIN_FILE_EXEC" "$PROG_ICON"
else else
fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру: fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру:

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
image/recordingstation.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@ -369,8 +369,24 @@ create_desktop () {
if [[ -z "$name_desktop" ]] || [[ -z "$exe_file" ]] ; then if [[ -z "$name_desktop" ]] || [[ -z "$exe_file" ]] ; then
fatal "Used: $SCRIPT_NAME --desktop \"desktop_name\" \"path_to_exe\" \"name_png_from_image\"" fatal "Used: $SCRIPT_NAME --desktop \"desktop_name\" \"path_to_exe\" \"name_png_from_image\""
elif [[ ! -f "$exe_file" ]] ; then
print_warning "Для создания ярлыка не найден исполняемый файл: $exe_file"
BASENAME_EXE="$(basename "$exe_file")"
print_info "Запускаем поиск $BASENAME_EXE"
if [[ -z "$DRIVE_C" ]] || [[ ! -d "$DRIVE_C" ]]
then FIND_PATH="$WH_PREFIXES_DIR"
else FIND_PATH="$DRIVE_C"
fi
exe_file="$(find "$FIND_PATH" -type f -not -type l \
-not -path "*/windows/*" -not -path "*/dosdevices/*" \
-iname "$BASENAME_EXE")"
if [[ -z "$exe_file" ]] || [[ ! -f "$exe_file" ]]
then fatal "Для создания ярлыка не найден исполняемый файл: $BASENAME_EXE"
else print_ok "Исполняемый файл $BASENAME_EXE найден по пути $(dirname "$exe_file")/"
fi
fi fi
[[ ! -f "$exe_file" ]] && fatal "Для создания ярлыка не найден исполняемый файл: $exe_file"
[[ ! -f "$icon_file" ]] && icon_file=wine [[ ! -f "$icon_file" ]] && icon_file=wine
{ {
@ -712,6 +728,22 @@ init_wineprefix () {
try_remove_file "$DRIVE_C/windows/system32/winemenubuilder.exe" try_remove_file "$DRIVE_C/windows/system32/winemenubuilder.exe"
} }
##### KILL AUTOSTART AFTER INSTALLING #####
kill_autostart () {
[[ -z "${1}" ]] && fatal "Нет аргумента для функции kill_autostart."
[[ -z "${2}" ]] && SWAIT=3 || SWAIT="${2}"
sleep 5
while ps aux | grep -m 1 -i "$WINESERVER" | grep -v grep &>/dev/null ; do
if [[ -z "$(ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}')" ]] ; then
print_info "PID для $1 не найден. Ожидаем окончания установки..."
sleep "${SWAIT}"
else
print_ok "PID для $1 найден. Завершаем работу автозапуска приложения."
"$WINESERVER" -k
break
fi
done
}
update_winetricks () { update_winetricks () {
W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks" W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks"
@ -851,6 +883,7 @@ wine_run () {
wine_run_install () { wine_run_install () {
print_info "Запускаем установку приложения $PROG_NAME." print_info "Запускаем установку приложения $PROG_NAME."
print_warning "Рекомендуется не менять пути для установки приложения!"
[[ ! -f "$1" ]] && fatal "Нет файла для установки: $1" [[ ! -f "$1" ]] && fatal "Нет файла для установки: $1"
case "${1,,}" in case "${1,,}" in
*.exe) wine_run $WINE_WIN_START "$@" ;; *.exe) wine_run $WINE_WIN_START "$@" ;;