#!/usr/bin/env bash # info_ru: Компоненты сервисов поддержки T-FLEX 17 ######################################################################## export WH_WINDOWS_VER="10" export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export BASE_PFX="tflex17_pfx_x64_v01" export WINEARCH="win64" export WINEPREFIX="tflex17" export PROG_VERSION="" export WH_XDG_OPEN="log" export INSTALL_DLL="corefonts d3dcompiler_47 dotnet48 vcrun2022 ucrtbase2019 msxml6 fontsmooth=rgb baekmuk droid eufonts ipamona liberation lucida opensymbol sourcehansans tahoma takao uff unifont vlgothic wenquanyi wenquanyizenhei" export WH_USE_MESA_GL_OVERRIDE="1" # Компоненты поддержки T-FLEX PLM 17 (Linux) AUTOINSTALL_ZIP_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux.zip" AUTOINSTALL_DIR_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux" AUTOINSTALL_REG_LIN="$AUTOINSTALL_DIR_LIN/Components/fake_hasp.reg" # Компоненты поддержки T-FLEX PLM 17 (Windows) AUTOINSTALL_ZIP_WIN="$WH_TMP_DIR/T-FLEX 17 Prerequisites.zip" AUTOINSTALL_DIR_WIN="$WH_TMP_DIR/Компоненты поддержки T-FLEX 17" AUTOINSTALL_EXE_WIN1="$AUTOINSTALL_DIR_WIN/Access Database Engine 2007/AccessDatabaseEngine.exe" AUTOINSTALL_EXE_WIN_MSI="$AUTOINSTALL_DIR_WIN/Access Database Engine 2007" AUTOINSTALL_EXE_WIN2="$AUTOINSTALL_DIR_WIN/TSC2/Setup_TSC2.msi" prepair_wine if [[ -d "$WINEPREFIX" ]] \ && grep -q "t-flex-cad17-prepair" "$WINEPREFIX/winetricks.log" \ && systemctl list-units --type service --state running | grep aksusbd \ && systemctl list-units --type service --state running | grep hasplmd then print_info "Префикс $PREFIX_NAME готов к установке ПО." print_info "Сервисы: aksusbd и hasplmd уже запущены." else print_warning "Службы aksusbd и hasplmd не запущены, или префикс не подготовлен" print_info "Запускаем подготовку префикса скриптом: t-flex-cad17-prepair" if [[ "$BASE_PFX" == "none" ]] \ || ! systemctl list-units --type service --state running | grep aksusbd \ || ! systemctl list-units --type service --state running | grep hasplmd then # Компоненты поддержки T-FLEX PLM 17 (Linux) if try_download "https://www.tflex.ru/downloads/Prerequisites_T-FLEX_17_Linux.zip" "${AUTOINSTALL_ZIP_LIN}" ; then unpack "$AUTOINSTALL_ZIP_LIN" "$AUTOINSTALL_DIR_LIN" "$WINELOADER" regedit "$AUTOINSTALL_REG_LIN" fi if [[ "$BASE_PFX" == "none" ]] ; then # Компоненты поддержки T-FLEX PLM 17 (Windows) if try_download "https://www.tflex.ru/downloads/T-FLEX%2017%20Prerequisites.zip" "${AUTOINSTALL_ZIP_WIN}" ; then unpack "$AUTOINSTALL_ZIP_WIN" "$WH_TMP_DIR" unpack "$AUTOINSTALL_EXE_WIN1" "$AUTOINSTALL_EXE_WIN_MSI" wine_run_install "$AUTOINSTALL_EXE_WIN_MSI/AceRedist.msi" /q wine_run_install "$AUTOINSTALL_EXE_WIN2" /q fi rm -fR "$DRIVE_C/Program Files/Common Files/System" rm -fR "$DRIVE_C/Program Files (x86)/Common Files/System" cp -r "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/Program Files/Common Files/System" "$DRIVE_C/Program Files/Common Files" cp -r "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/Program Files (x86)/Common Files/System" "$DRIVE_C/Program Files (x86)/Common Files" mv -f "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/Windows/System32/"*.dll "$DRIVE_C/windows/system32" "$WINELOADER" regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/ado-32.reg" "$WINELOADER"64 regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/ado-64.reg" "$WINELOADER" regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/tflex.reg" fi if systemctl list-units --type service --state running | grep aksusbd \ && systemctl list-units --type service --state running | grep hasplmd then print_info "Службы aksusbd и hasplmd уже запущены. Пропускаем..." else echo "#!/usr/bin/env bash cd \"$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/HASP_Linux/aksusbd/\" bash ./dinst mv -f \"$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/HASP_Linux/\"*.so /var/hasplm/ systemctl restart hasplmd.service" > "$WH_TMP_DIR/tflex17_aksusbd.sh" chmod +x $WH_TMP_DIR/tflex17_aksusbd.sh unset TFLEX_ERROR print_info "Будут установлены и запущены службы aksusbd и hasplmd." su_run "$WH_TMP_DIR/tflex17_aksusbd.sh" || TFLEX_ERROR=1 try_remove_file "$WH_TMP_DIR/tflex17_aksusbd.sh" fi fi try_remove_dir "$AUTOINSTALL_DIR_LIN" try_remove_dir "$AUTOINSTALL_DIR_WIN" if [[ $TFLEX_ERROR == "1" ]] ; then fatal "Произошла ошибка во время подготовки префикса, или установки компонентов ПО." else echo "t-flex-cad17-prepair" >> "$WINEPREFIX/winetricks.log" try_remove_file "$AUTOINSTALL_ZIP_LIN" try_remove_file "$AUTOINSTALL_ZIP_WIN" print_info "Подготовка префикса и установка компонентов завершены." fi fi