winehelper/autoinstall/npul
2025-04-01 16:37:35 +03:00

56 lines
2.9 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env bash
# info_ru: Программа автоматизации процесса подготовки юридическими и физическими лицами документов для представления в налоговые органы в электронной форме и на бумажном носителе.
########################################################################
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="nalog"
export PROG_NAME="Налогоплательщик ЮЛ"
export PROG_ICON="npul"
export BASE_PFX="defpfx_x86_v01"
export WINEARCH="win32"
export INSTALL_DLL="msxml3 msxml4 msxml6 corefonts wsh57 vcrun6 jet40 gdiplus"
export WH_WINDOWS_VER="10"
NPUL_FILE="${WH_TMP_DIR}/npul.html"
curl -o "$NPUL_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://www.nalog.gov.ru/rn77/program/5961229/"
if [[ ! -f "$NPUL_FILE" ]] \
|| grep -q "Forbidden" "$NPUL_FILE"
then
fatal "Страница сайта не доступна, или превышено количество запросов к странице."
fi
VER_MSI=$(grep -oP 'NalogUL\K[0-9.]+(?=\.msi)' "$NPUL_FILE" | tail -n 1)
VER_MSI_SLASH=$(grep -oP '[0-9]+\.[0-9]+/NalogUL[0-9]+\.msi' "$NPUL_FILE" | tail -n 1)
VER_EXE=$(grep -oP 'NalogUL\K[0-9.]+(?=\.exe)' "$NPUL_FILE" | tail -n 1)
VER_EXE_SLASH=$(grep -oP '[0-9]+\.[0-9]+\.[0-9]+/NalogUL[0-9]+\.exe' "$NPUL_FILE" | tail -n 1)
AUTOINSTALL_MSI="${WH_TMP_DIR}/NalogUL${VER_MSI}.msi"
AUTOINSTALL_EXE="${WH_TMP_DIR}/NalogUL${VER_EXE}.exe"
prepair_wine
if try_download "https://data.nalog.ru/files/nalul/${VER_MSI_SLASH}" "${AUTOINSTALL_MSI}" ; then
wine_run_install "${AUTOINSTALL_MSI}" /quiet INSTALLDIR="c:\npul"
try_remove_file "${AUTOINSTALL_MSI}"
PRINT_INSTALLER="$(find "$DRIVE_C/npul/INPUTDOC" -name "*.msi")"
wine_run_install "${PRINT_INSTALLER}" "/q"
# Процедуры конвертации, индексация данных. По завершении процедур программа сама закроется. Признаком успешного завершения будет отсутствие в папке с программой файла setupmarker.ini. Если не принять процедуру, .exe файл обновления не установиться.
wine_run_install "$DRIVE_C/npul/INPUTDOC/inputdoc.exe" go.ini
#TODO: Сделать запуск процедуры в тихом режиме.
fi
if [[ -n "$VER_EXE" ]] \
&& try_download "https://data.nalog.ru/files/nalul/${VER_EXE_SLASH}" "${AUTOINSTALL_EXE}"
then
wine_run_install "${AUTOINSTALL_EXE}" "/SILENT"
try_remove_file "${AUTOINSTALL_EXE}"
else
print_info "Дополнительных обновлений не требуется."
fi
touch "$DRIVE_C/npul/INPUTDOC/linux.txt"
WIN_FILE_EXEC="$DRIVE_C/npul/INPUTDOC/inputdoc.exe"
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
try_remove_file "$NPUL_FILE"