Compare commits

..

3 Commits

Author SHA1 Message Date
Mikhail Tergoev
2fe7a31b54 added arg: control 2026-01-23 12:30:50 +03:00
Mikhail Tergoev
32070ec065 fixed passing arguments to wine_run 2026-01-23 12:22:55 +03:00
Mikhail Tergoev
5e4f63c50b replaced wine to wow64 and base_pfx to none by default 2026-01-23 11:46:37 +03:00

View File

@@ -138,7 +138,7 @@ check_variables WINEFSYNC "0"
check_variables WINEUSERNAME "xuser" check_variables WINEUSERNAME "xuser"
check_variables WINEARCH "win64" # or "win32" check_variables WINEARCH "win64" # or "win32"
check_variables WH_WINE_USE "wine_x_tkg_10-0_amd64" # or system check_variables WH_WINE_USE "wine-10.18.1-alt1-wow64" # or system
check_variables WH_USE_CPCSP_PROXY "0" check_variables WH_USE_CPCSP_PROXY "0"
check_variables CPCSP_PROXY_X86_64_VER "0.6.1-alt1" check_variables CPCSP_PROXY_X86_64_VER "0.6.1-alt1"
@@ -1151,10 +1151,7 @@ check_prefix_var () {
init_wineprefix () { init_wineprefix () {
check_prefix_var check_prefix_var
if [[ "$WINEARCH" == "win32" ]] check_variables BASE_PFX "none"
then check_variables BASE_PFX "defpfx_x86_v01"
else check_variables BASE_PFX "defpfx_x64_v01"
fi
export DRIVE_C="$WINEPREFIX/drive_c" export DRIVE_C="$WINEPREFIX/drive_c"
export XUSER_PATH="$DRIVE_C/users/xuser" export XUSER_PATH="$DRIVE_C/users/xuser"
@@ -1198,7 +1195,7 @@ init_wineprefix () {
if [[ ! -d "$WINEPREFIX/dosdevices" ]] ; then if [[ ! -d "$WINEPREFIX/dosdevices" ]] ; then
create_new_dir "$WINEPREFIX/dosdevices" create_new_dir "$WINEPREFIX/dosdevices"
local run_wbr="1" export REBOOT_PFX="1"
fi fi
if [[ ! -d "${WINEPREFIX}/dosdevices/c:" ]] ; then if [[ ! -d "${WINEPREFIX}/dosdevices/c:" ]] ; then
@@ -1211,10 +1208,9 @@ init_wineprefix () {
try_force_link_dir "$HOME" "${WINEPREFIX}/dosdevices/h:" try_force_link_dir "$HOME" "${WINEPREFIX}/dosdevices/h:"
fi fi
if [[ $run_wbr == "1" ]] ; then if [[ $REBOOT_PFX == "1" ]] ; then
"$WINELOADER" wineboot -r "$WINELOADER" wineboot -r
wait_wineserver wait_wineserver
unset run_wbr
fi fi
if [[ -f "$WINEPREFIX/system.reg" ]] \ if [[ -f "$WINEPREFIX/system.reg" ]] \
@@ -1371,7 +1367,9 @@ init_wineprefix () {
fi fi
fi fi
if ! grep -q "cpcsp_proxy.dll" "$WINEPREFIX/system.reg" ; then if ! grep -q "cpcsp_proxy.dll" "$WINEPREFIX/system.reg" \
|| [[ $REBOOT_PFX == "1" ]]
then
print_info "Запускаем настройку cpcsp_proxy..." print_info "Запускаем настройку cpcsp_proxy..."
CPCSP_PROXY_OK="0" CPCSP_PROXY_OK="0"
@@ -1444,6 +1442,8 @@ init_wineprefix () {
do do
echo "export $var=\"${!var}\"" >> "$WINEPREFIX/last.conf" echo "export $var=\"${!var}\"" >> "$WINEPREFIX/last.conf"
done done
unset REBOOT_PFX
} }
kill_autostart () { kill_autostart () {
@@ -1566,7 +1566,7 @@ wine_regfile () {
wine_run () { wine_run () {
local wh_add_args win_file_exec win_file_path win_file_name local wh_add_args win_file_exec win_file_path win_file_name
if [[ $1 =~ (winecfg|regedit|winefile|wineconsole) ]] ; then if [[ $1 =~ (winecfg|regedit|winefile|wineconsole|control) ]] ; then
win_file_exec="$1" win_file_exec="$1"
win_file_name="$win_file_exec" win_file_name="$win_file_exec"
win_file_path="$DRIVE_C" win_file_path="$DRIVE_C"
@@ -1616,9 +1616,9 @@ wine_run () {
| grep -v "ICON" | sort | tee -a "$log_file" | grep -v "ICON" | sort | tee -a "$log_file"
echo -e "\n##### Лог WINE #####" | 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" $MANGOHUD_RUN "$WINELOADER" $wh_add_args "$win_file_exec" "$@" 2>&1 | tee -a "$log_file"
else else
$MANGOHUD_RUN "$WINELOADER" $wh_add_args "$win_file_exec" "$@" $LAUNCH_PARAMETERS $MANGOHUD_RUN "$WINELOADER" $wh_add_args "$win_file_exec" "$@"
fi fi
wait_wineserver wait_wineserver
@@ -2628,6 +2628,7 @@ case "$arg1" in
winereg|regedit) prepair_wine ; wine_run "regedit" ;; winereg|regedit) prepair_wine ; wine_run "regedit" ;;
winefile|explorer) prepair_wine ; wine_run "winefile" ;; winefile|explorer) prepair_wine ; wine_run "winefile" ;;
wineconsole|cmd) prepair_wine ; wine_run "wineconsole" ;; wineconsole|cmd) prepair_wine ; wine_run "wineconsole" ;;
control) prepair_wine ; wine_run "control" ;;
winetricks) prepair_wine ; "$WH_WINETRICKS" -q "$@" ;; winetricks) prepair_wine ; "$WH_WINETRICKS" -q "$@" ;;
desktop) create_desktop "$@" ; exit 0 ;; desktop) create_desktop "$@" ; exit 0 ;;
install|-i) run_autoinstall "$@" ;; install|-i) run_autoinstall "$@" ;;
@@ -2662,15 +2663,16 @@ case "$arg1" in
if [[ -n "$1" ]] && [[ -f "$1" ]] ; then if [[ -n "$1" ]] && [[ -f "$1" ]] ; then
WIN_OPEN_FILE="$("$WINELOADER" winepath -w "$1")" WIN_OPEN_FILE="$("$WINELOADER" winepath -w "$1")"
shift shift
wine_run "$WIN_FILE_EXEC" "$@" "$WIN_OPEN_FILE"
else
wine_run "$WIN_FILE_EXEC" "$@"
fi fi
wine_run "$WIN_FILE_EXEC" "$@" "$WIN_OPEN_FILE"
else else
print_error "Команды $arg1 не существует." print_error "Команды $arg1 не существует."
wh_info wh_info
exit 1 exit 1
fi fi
;; ;;
esac esac
if [[ -n "$WH_BG_PID" ]] ; then if [[ -n "$WH_BG_PID" ]] ; then