ksamu: fixed open in background choose cert file

This commit is contained in:
Mikhail Tergoev
2026-01-16 13:31:33 +03:00
parent 53a09b13d7
commit 2854f8751b

View File

@@ -2,7 +2,7 @@
# info_ru: “КСАМУ” - Комплексная система автоматизации медицинского учреждения.
########################################################################
export PROG_URL="https://docs.medicine-it.ru/"
export WH_WINE_USE="wine-10.18.1-alt2-wow64"
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
export WINEPREFIX="ksamu"
export PROG_NAME="КСАМУ"
export PROG_ICON="ksamu"
@@ -12,11 +12,31 @@ export INSTALL_DLL="corefonts tahoma richtx32 riched20 riched30 msls31 msftedit
# riched32
export WH_WINDOWS_VER="7"
export WH_USE_CPCSP_PROXY="1"
export WH_USE_CPCSP_CADES="0"
export WINE_D3D_CONFIG="renderer=gdi"
export WH_MAIN_DECORATED="1"
export WH_VIRTUAL_DESKTOP="0"
export WINE_TOP_WINDOW="Открыть"
prepair_wine
create_desktop "$PROG_NAME" "$DRIVE_C/KSAMU/KSAMU.exe" "$PROG_ICON"
echo '
# хак для исправления открытия выбора файла сертификата в фоне
if ! command -v wmctrl &>/dev/null ; then
wmctrl_not_found="Для продолжения работы установите wmctrl:\n\nsu -\napt-get update\napt-get install wmctrl\nexit"
zenity --error --title="Ошибка" --text="$wmctrl_not_found" --ok-label="Выход"
fatal "$wmctrl_not_found"
fi
background_task() {
while true; do
sleep 1
OPEN_WIN_ID=$(wmctrl -xl | grep -i "ksamu" | grep -i "открыть" | cut -d" " -f1)
if [[ -n $OPEN_WIN_ID ]] ; then
wmctrl -i -r $OPEN_WIN_ID -b add,above
fi
done
}
background_task &
BG_PID=$!
export BG_PID
' >> "$DRIVE_C/KSAMU/KSAMU.exe.whdb"