Compare commits

..

10 Commits
0.8.5 ... 0.8.6

Author SHA1 Message Date
Mikhail Tergoev
bcf53c361c updated ksamu (test without cades) 2025-12-23 14:34:53 +03:00
Mikhail Tergoev
5b38f2c10d added variables for enable/disable decorated 2025-12-23 14:31:44 +03:00
Mikhail Tergoev
aec21eda1e added wine-10.18.1-alt1-wow64 2025-12-23 12:18:07 +03:00
Mikhail Tergoev
f8ce14d725 added new default variables 2025-12-22 14:35:49 +03:00
Mikhail Tergoev
ce1fb05fc7 install win cades if WH_USE_CPCSP_CADES=1 2025-12-22 14:24:18 +03:00
Mikhail Tergoev
659b0b1f5b added more 32-bit dependencies 2025-12-19 12:42:01 +03:00
Mikhail Tergoev
3732f71b7b added version WH to log 2025-12-18 20:36:01 +03:00
Mikhail Tergoev
d4f2d367b5 Merge branch 'minergenon-devel' 2025-12-18 12:31:35 +03:00
Mikhail Tergoev
a75e6c4f83 added sorting for variables in log file 2025-12-18 12:31:14 +03:00
Sergey Palcheh
fd2759f52b horizontal scrollbar disabled:
- the Installed tab in the Wine version selection dialog
- download bookmarks (WINE AMD64, WINE WOW64, WINE I586)
- dialog for selecting the component version (DXVK/VKD3D)
- tabs of the main window: Automatic installation, Manual installation, Installed
2025-12-18 11:28:38 +06:00
5 changed files with 80 additions and 31 deletions

View File

@@ -22,8 +22,8 @@ windows приложения. Подробнее по ссылке: https://www.
# fonts-ttf-ms
apt-get install {i586-,}{glibc-core,libstdc++6,glibc-pthread,glibc-nss,\
libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,\
libgnutls30,libGL,libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,\
libvulkan1,libcups} || fatal "Не удалось установить зависимости."
libnm,libnss,libnss-mdns,libnsl1,libunwind,libunixODBC2,ocl-icd,libfreetype,\
libcups,libfontconfig1,libgnutls30,libGL,libEGL,libvulkan1,xorg-dri-swrast,\
xorg-dri-intel,xorg-dri-radeon} || fatal "Не удалось установить зависимости."
apt-get install {i586-,}wine

View File

@@ -1,6 +1,7 @@
##### WINE WOW64 #####
e9a8b79dfe12cad1304dca573d73aefe109e3d69b6fff739c8dbb8b2d3c271c6 wine-10.12.1-alt1-wow64.tar.xz
a862761c432f8619caf8100589678a1cbb523787259120ccd4388089d81e3b17 wine-10.18.1-tflex-alt2-wow64.tar.xz
349c707148a23e667970309248bbbf97b4e2a0db59c548e73d9fe9c3f585872c wine-10.18.1-alt1-wow64.tar.xz
##### WINE AMD64 #####
009c95bfe2df3f9264c9c5092f3e30ea7a168dd7869046058a718a70739602d4 wine_wh_tflex_10-9_amd64.tar.xz

View File

@@ -2,7 +2,7 @@
# info_ru: “КСАМУ” - Комплексная система автоматизации медицинского учреждения.
########################################################################
export PROG_URL="https://docs.medicine-it.ru/"
export WH_WINE_USE="wine-10.12.1-alt1-wow64"
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
export WINEPREFIX="ksamu"
export PROG_NAME="КСАМУ"
export PROG_ICON="ksamu"
@@ -13,6 +13,10 @@ export INSTALL_DLL="richtx32 riched20 riched30 msls31 msftedit msxml6 msxml4 msx
export WH_USE_EXTRA_FONTS="1"
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_MC_DECORATED="1"
prepair_wine
create_desktop "$PROG_NAME" "$DRIVE_C/KSAMU/KSAMU.exe" "$PROG_ICON"

View File

@@ -144,9 +144,12 @@ check_variables WH_WINE_USE "wine_x_tkg_10-0_amd64" # or system
check_variables WH_USE_CPCSP_PROXY "0"
check_variables CPCSP_PROXY_X86_64_VER "0.6.1-alt1"
check_variables CPCSP_PROXY_WOW64_VER "0.7.7-alt1-wow64"
check_variables WH_USE_CPCSP_CADES "0"
check_variables WH_USE_EXTRA_FONTS "0"
check_variables EXTRA_FONTS_VER "01"
check_variables WH_FONT_MSS_REPLACE "0"
check_variables WH_FONT_SMOOTHING "0"
check_variables STAGING_SHARED_MEMORY "1"
check_variables WINE_LARGE_ADDRESS_AWARE "1"
@@ -162,6 +165,8 @@ check_variables WH_USE_SHADER_CACHE "1"
check_variables WH_USE_MESA_GL_OVERRIDE "0"
check_variables WH_USE_WINE_DXGI "0"
check_variables WH_DLL_INSTALL ""
check_variables WH_MAIN_DECORATED "default"
check_variables WH_MC_DECORATED "default"
check_variables WINE_WIN_START "start /wait /high /unix"
@@ -205,8 +210,9 @@ su_run () {
# fonts-ttf-ms
if ! rpm -q {i586-,}{wine,glibc-core,libstdc++6,glibc-pthread,glibc-nss,\
libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,libgnutls30,libGL,\
libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,libvulkan1,libcups} 1>/dev/null
libnm,libnss,libnss-mdns,libnsl1,libunwind,libunixODBC2,ocl-icd,libfreetype,\
libcups,libfontconfig1,libgnutls30,libGL,libEGL,libvulkan1,xorg-dri-swrast,\
xorg-dri-intel,xorg-dri-radeon} 1>/dev/null
then
if su_run "$DATA_PATH/dependencies.sh"
then print_info "Зависимости успешно установлены. Продолжаем работу $SCRIPT_NAME"
@@ -1223,20 +1229,29 @@ init_wineprefix () {
get_and_set_reg_file --delete 'Software\Wine\X11 Driver' 'UseXVidMode'
fi
if [[ $WH_MC_NO_DECORATED = "1" ]] ; then
# отключаем декоратор для maincontroller.exe
# заменяет патч: https://git.altlinux.org/gears/w/wine.git?p=wine.git;a=blob;f=patches/0009-wine.inf.in-disable-decorated-window-for-maincontrol.patch;h=887a5e90e130cddeefdead831ef7a78a32588f11;hb=d097f4e4b64873c82ec31542c6f49f70829ab2b4
get_and_set_reg_file --add 'Software\Wine\AppDefaults\maincontroller.exe\X11 Driver' 'Decorated' 'REG_SZ' "N" "user"
# управляем декоратором для ПО по умолчанию
if [[ $WH_MAIN_DECORATED = "0" ]] ; then
get_and_set_reg_file --add 'Software\Wine\X11 Driver' 'Decorated' 'REG_SZ' "N" "user"
elif [[ $WH_MAIN_DECORATED = "1" ]] ; then
get_and_set_reg_file --add 'Software\Wine\X11 Driver' 'Decorated' 'REG_SZ' "Y" "user"
fi
# управляем декоратором для maincontroller.exe
if [[ $WH_MC_DECORATED = "0" ]] ; then
# заменяет патч: https://git.altlinux.org/gears/w/wine.git?p=wine.git;a=blob;f=patches/0009-wine.inf.in-disable-decorated-window-for-maincontrol.patch;h=887a5e90e130cddeefdead831ef7a78a32588f11;hb=d097f4e4b64873c82ec31542c6f49f70829ab2b4
get_and_set_reg_file --add 'Software\Wine\AppDefaults\maincontroller.exe\X11 Driver' 'Decorated' 'REG_SZ' "N" "user"
elif [[ $WH_MC_DECORATED = "1" ]] ; then
get_and_set_reg_file --add 'Software\Wine\AppDefaults\maincontroller.exe\X11 Driver' 'Decorated' 'REG_SZ' "Y" "user"
fi
# заменям шрифт Microsoft Sans Serif на Tahoma
if [[ $WH_FONT_MSS_REPLACE = "1" ]] ; then
# заменям шрифт Microsoft Sans Serif на Tahoma
# заменяет патч: https://git.altlinux.org/gears/w/wine.git?p=wine.git;a=blob;f=patches/0003-wine.inf-Add-the-font-replacement-for-Microsoft-Sans.patch;h=26b8ae2192d94a2b8ddd8565b90b62a2c2b0ed52;hb=d097f4e4b64873c82ec31542c6f49f70829ab2b4
get_and_set_reg_file --add 'Software\Wine\Fonts\Replacements' 'Microsoft Sans Serif' 'REG_SZ' "Tahoma" "user"
fi
# добавляем сглаживание шрифтов
if [[ $WH_FONT_SMOOTHING = "1" ]] ; then
# добавляем сглаживание шрифтов
# заменяет патч: https://git.altlinux.org/gears/w/wine.git?p=wine.git;a=blob;f=patches/0002-Add-font-smoothing.patch;h=d7c252899499e9ee0e1a93f7c02548cc79025358;hb=d097f4e4b64873c82ec31542c6f49f70829ab2b4
get_and_set_reg_file --add 'Control Panel\Desktop' 'FontSmoothing' 'REG_SZ' "2" "user"
get_and_set_reg_file --add 'Control Panel\Desktop' 'FontSmoothingGamma' 'REG_DWORD' "0x00000578" "user"
@@ -1291,24 +1306,26 @@ init_wineprefix () {
# настраиваем префикс для работы с cpcsp_proxy
if [[ $WH_USE_CPCSP_PROXY == "1" ]] ; then
local cades_ver="release_2_0_14892"
local url_cades_dll="https://cryptopro.ru/sites/default/files/products/cades/$cades_ver"
if [[ $WH_USE_CPCSP_CADES == "1" ]] ; then
local cades_ver="release_2_0_14892"
local url_cades_dll="https://cryptopro.ru/sites/default/files/products/cades/$cades_ver"
if [[ ! -d "$DRIVE_C/Program Files (x86)/Common Files/Crypto Pro/Shared/" ]]
then
local msi_cades32="cades-win32.msi"
try_download cloud "$url_cades_dll/$msi_cades32" "$WH_TMP_DIR/$msi_cades32"
print_info "Установка КриптоПро ЭЦП Runtime ($msi_cades32)"
WINEDLLOVERRIDES="msxml3=b" wine_run "$WH_TMP_DIR/$msi_cades32" /q
fi
if [[ ! -d "$DRIVE_C/Program Files (x86)/Common Files/Crypto Pro/Shared/" ]]
then
local msi_cades32="cades-win32.msi"
try_download cloud "$url_cades_dll/$msi_cades32" "$WH_TMP_DIR/$msi_cades32"
print_info "Установка КриптоПро ЭЦП Runtime ($msi_cades32)"
WINEDLLOVERRIDES="msxml3=b" wine_run "$WH_TMP_DIR/$msi_cades32" /q
fi
if [[ "$WINEARCH" == "win64" ]] \
&& [[ ! -d "$DRIVE_C/Program Files/Common Files/Crypto Pro/Shared" ]]
then
local msi_cades64="cades-x64.msi"
try_download cloud "$url_cades_dll/$msi_cades64" "$WH_TMP_DIR/$msi_cades64"
print_info "Установка КриптоПро ЭЦП Runtime ($msi_cades64)"
WINEDLLOVERRIDES="msxml3=b" wine_run "$WH_TMP_DIR/$msi_cades64" /q
if [[ "$WINEARCH" == "win64" ]] \
&& [[ ! -d "$DRIVE_C/Program Files/Common Files/Crypto Pro/Shared" ]]
then
local msi_cades64="cades-x64.msi"
try_download cloud "$url_cades_dll/$msi_cades64" "$WH_TMP_DIR/$msi_cades64"
print_info "Установка КриптоПро ЭЦП Runtime ($msi_cades64)"
WINEDLLOVERRIDES="msxml3=b" wine_run "$WH_TMP_DIR/$msi_cades64" /q
fi
fi
if ! grep -q "cpcsp_proxy.dll" "$WINEPREFIX/system.reg" ; then
@@ -1545,13 +1562,17 @@ wine_run () {
create_new_dir "$log_dir"
date > "$log_file"
echo -e "\n##### Версия установленного WineHelper #####" | tee -a "$log_file"
rpm -q winehelper | tee -a "$log_file"
print_warning "Включен режим логирования работы WINE."
print_warning "Лог будет сохранен по пути: $log_file"
echo "##### Основные переменные #####" | tee -a "$log_file"
env | grep -e "WH_" -e "WINE" -e "DXVK" -e "VKD3D" | tee -a "$log_file"
echo "##### Лог WINE #####" | tee -a "$log_file"
echo -e "\n##### Основные переменные #####" | tee -a "$log_file"
env | grep -e "WH_" -e "WINE" -e "DXVK" -e "VKD3D" -e "LD_" \
| grep -v "ICON" | sort | tee -a "$log_file"
echo -e "\n##### Лог WINE #####" | tee -a "$log_file"
$MANGOHUD_RUN "$WINELOADER" $wh_add_args "$win_file_exec" "$@" $LAUNCH_PARAMETERS 2>&1 | tee -a "$log_file"
else
$MANGOHUD_RUN "$WINELOADER" $wh_add_args "$win_file_exec" "$@" $LAUNCH_PARAMETERS

View File

@@ -1224,6 +1224,7 @@ class WineVersionSelectionDialog(QDialog):
installed_layout = QVBoxLayout(installed_tab)
installed_scroll_area = QScrollArea()
installed_scroll_area.setWidgetResizable(True)
installed_scroll_area.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
installed_layout.addWidget(installed_scroll_area)
installed_content = QWidget()
installed_scroll_area.setWidget(installed_content)
@@ -1296,6 +1297,7 @@ class WineVersionSelectionDialog(QDialog):
scroll_area = QScrollArea()
scroll_area.setWidgetResizable(True)
scroll_area.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
tab_layout.addWidget(scroll_area)
scroll_content = QWidget()
@@ -1724,6 +1726,7 @@ class ComponentVersionSelectionDialog(QDialog):
self.scroll_area = QScrollArea()
self.scroll_area.setWidgetResizable(True)
self.scroll_area.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
main_layout.addWidget(self.scroll_area)
scroll_content = QWidget()
@@ -2399,7 +2402,27 @@ class WineHelperGUI(QMainWindow):
scroll_area = QScrollArea()
scroll_area.setWidgetResizable(True)
scroll_area.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
scroll_area.setContentsMargins(0, 0, 0, 0)
# Уменьшаем ширину вертикального скроллбара
scroll_area.setStyleSheet("""
QScrollBar:vertical {
width: 10px;
background: transparent;
margin: 0px;
}
QScrollBar::handle:vertical {
background: #555;
min-height: 20px;
border-radius: 5px;
}
QScrollBar::handle:vertical:hover {
background: #666;
}
QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical {
height: 0px;
}
""")
layout.addWidget(scroll_area)
scroll_content_widget = QWidget()