fixed locales for intergation with ppdb site
This commit is contained in:
@@ -167,200 +167,6 @@ stop_activity_simulation() {
|
||||
fi
|
||||
}
|
||||
|
||||
change_locale () {
|
||||
if [[ -f "${PORT_WINE_TMP_PATH}/PortProton_loc" ]] ; then
|
||||
LANGUAGE=$(<"${PORT_WINE_TMP_PATH}/PortProton_loc")
|
||||
|
||||
# TODO: drop legacy check language after 01.01.2025
|
||||
if [[ "$LANGUAGE" == "RUS" ]] ; then
|
||||
LANGUAGE="ru"
|
||||
echo "ru" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
elif [[ "$LANGUAGE" == "ENG" ]] ; then
|
||||
LANGUAGE="en"
|
||||
echo "en" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
fi
|
||||
fi
|
||||
|
||||
local GAME_LANGUAGE="$LANGUAGE"
|
||||
|
||||
if check_gamescope_session ; then
|
||||
LANGUAGE="en"
|
||||
else
|
||||
[[ ! -f "${pw_yad}" ]] && pw_yad="yad"
|
||||
if [[ -z "$LANGUAGE" ]] \
|
||||
|| [[ "${PW_FORCE_CHANGE_LOC}" == "1" ]] ; then
|
||||
SET_LANG=(
|
||||
"${pw_yad}" --list
|
||||
--window-icon="$PW_GUI_ICON_PATH/portproton.svg"
|
||||
--title="Select language for PortProton"
|
||||
--column="Language" --column=""
|
||||
--width=400 --height=200
|
||||
|
||||
"Russian (Русский)" ru
|
||||
"English" en
|
||||
"Spanish (Español・Española)" es
|
||||
)
|
||||
|
||||
out=$("${SET_LANG[@]}")
|
||||
if [[ -z $out ]] \
|
||||
&& [[ -n "$LANGUAGE" ]] ; then
|
||||
echo "${LANGUAGE}" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
elif [[ -z $out ]] ; then
|
||||
echo "en" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
else
|
||||
LANGUAGE=$(echo "$out" | cut -d '|' -f2)
|
||||
echo "${LANGUAGE}" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
create_translations
|
||||
fi
|
||||
unset PW_FORCE_CHANGE_LOC
|
||||
restart_pp
|
||||
fi
|
||||
fi
|
||||
export LANGUAGE
|
||||
|
||||
case "$GAME_LANGUAGE" in
|
||||
ru)
|
||||
check_start_from_steam && export LC_ALL=ru_RU.UTF-8
|
||||
export FULL_LN="russian"
|
||||
export LANGUAGE_GIF="ru"
|
||||
;;
|
||||
es)
|
||||
check_start_from_steam && export LC_ALL=es_ES.UTF-8
|
||||
export FULL_LN="spanish"
|
||||
export LANGUAGE_GIF="en"
|
||||
;;
|
||||
*)
|
||||
export FULL_LN="english"
|
||||
export LANGUAGE_GIF="en"
|
||||
export LANGUAGE="en"
|
||||
;;
|
||||
esac
|
||||
|
||||
}
|
||||
export -f change_locale
|
||||
|
||||
generate_pot () {
|
||||
local FILES_FOR_GETTEXT i
|
||||
FILES_FOR_GETTEXT=(functions_helper start.sh setup.sh add_in_steam.sh)
|
||||
for i in "${FILES_FOR_GETTEXT[@]}" ; do
|
||||
sed -e 's/{translations\[/(gettext \"/g' -e 's/]}/")/g' "${PORT_SCRIPTS_PATH}/$i" > "${PORT_SCRIPTS_PATH}/${i}_tmp"
|
||||
sed -i '/\[\$/d' "${PORT_SCRIPTS_PATH}/${i}_tmp"
|
||||
done
|
||||
#Когда присходит предупреждение: синтаксис $"..." запрещен по соображениям безопасности; используйте eval_gettext
|
||||
#и ругается на строку в которой нет перевода, можно использовать sed -i '//d' и убрать эту строку
|
||||
#либо отредактировать сам код, чтобы не было такой ошибки (к примеру вместо двойных ковычек использовать в таком месте одинарные)
|
||||
for lang in $LANGUAGES_LIST ; do
|
||||
echo "${lang}"
|
||||
create_new_dir "${PORT_WINE_PATH}/data/locales/${lang}/LC_MESSAGES/"
|
||||
LANG_PO="${PORT_WINE_PATH}/data/locales/${lang}/LC_MESSAGES/PortProton.po"
|
||||
#LANG_MO="${PORT_WINE_PATH}/data/locales/${lang}/LC_MESSAGES/PortProton.mo"
|
||||
TEMPLATE_POT="${PORT_WINE_PATH}/data/locales/PortProton.pot"
|
||||
pushd "${PORT_WINE_PATH}" 1>/dev/null || fatal
|
||||
xgettext --no-location --from-code=UTF-8 --language Shell -i \
|
||||
"data/scripts/start.sh_tmp" \
|
||||
"data/scripts/setup.sh_tmp" \
|
||||
"data/scripts/functions_helper_tmp" \
|
||||
"data/scripts/add_in_steam.sh_tmp" \
|
||||
-o "$TEMPLATE_POT"
|
||||
popd 1>/dev/null || fatal
|
||||
if [[ -f "$LANG_PO" ]] ; then
|
||||
echo "update $LANG_PO file"
|
||||
msgmerge --update "$LANG_PO" "$TEMPLATE_POT"
|
||||
else
|
||||
echo "create $LANG_PO file"
|
||||
msginit --input="$TEMPLATE_POT" --locale="${lang}" --output="$LANG_PO"
|
||||
fi
|
||||
#msgfmt --output-file="$LANG_MO" "$LANG_PO"
|
||||
done
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/start.sh_tmp"
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/setup.sh_tmp"
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/functions_helper_tmp"
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/add_in_steam.sh_tmp"
|
||||
try_remove_dir "${PW_CACHE_LANG_PATH}"
|
||||
}
|
||||
export -f generate_pot
|
||||
|
||||
create_translations () {
|
||||
local po_file msgid msgstr
|
||||
[[ ! -d $PW_CACHE_LANG_PATH ]] && create_new_dir "$PW_CACHE_LANG_PATH"
|
||||
cat << EOF > "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
#!/usr/bin/env bash
|
||||
TRANSLATIONS_VER=$scripts_install_ver
|
||||
declare -A translations=(
|
||||
EOF
|
||||
if [[ $LANGUAGE == "en" ]] ; then
|
||||
po_file="${PORT_WINE_PATH}/data/locales/PortProton.pot"
|
||||
else
|
||||
po_file="${PORT_WINE_PATH}/data/locales/$LANGUAGE/LC_MESSAGES/PortProton.po"
|
||||
fi
|
||||
|
||||
while read -r line ; do
|
||||
while [[ $line =~ msgid ]] ; do
|
||||
unset msgid
|
||||
msgid="$line"
|
||||
read -r line
|
||||
while [[ ! $line =~ msgstr ]] ; do
|
||||
msgid+="$line"
|
||||
read -r line
|
||||
done
|
||||
if [[ $line =~ msgstr ]]; then
|
||||
if [[ $LANGUAGE == "en" ]] ; then
|
||||
if [[ $msgid == "msgid \"\"" ]] ; then
|
||||
continue
|
||||
fi
|
||||
msgstr="$msgid"
|
||||
else
|
||||
unset msgstr
|
||||
msgstr="$line"
|
||||
read -r line
|
||||
while [[ ! $line =~ msgid ]] ; do
|
||||
msgstr+=$line
|
||||
read -r line
|
||||
if [[ -z $line ]] ; then
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
if [[ $LANGUAGE != "en" ]] ; then
|
||||
msgstr=${msgstr//"msgstr "/}
|
||||
msgid=${msgid//"msgid "/}
|
||||
fi
|
||||
msgstr=${msgstr//" "/-_-}
|
||||
msgstr=${msgstr//"\n"\"\"/+_+}
|
||||
msgstr=${msgstr//\"\"/}
|
||||
msgstr=${msgstr//#*/}
|
||||
msgstr=${msgstr//"*"/#_#}
|
||||
msgid=${msgid//" "/-_-}
|
||||
msgid=${msgid//"\n"\"\"/+_+}
|
||||
msgid=${msgid//\"\"/}
|
||||
msgid=${msgid//#*/}
|
||||
msgid=${msgid//"*"/#_#}
|
||||
if [[ -n $msgid ]] ; then
|
||||
if [[ -z $msgstr ]] ; then
|
||||
msgstr="$msgid"
|
||||
fi
|
||||
if [[ $msgid =~ \$ ]] ; then
|
||||
msgid=${msgid//\$/\\$}
|
||||
if [[ $msgstr =~ \$% ]] ; then
|
||||
msgstr=${msgstr//\$/\\$}
|
||||
fi
|
||||
fi
|
||||
echo \["$msgid"\]="$msgstr" >> "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
fi
|
||||
done
|
||||
done < "$po_file"
|
||||
|
||||
echo ")" >> "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
sed -i 's/+_+/\n/g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
sed -i 's/#_#/\*/g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
sed -i 's/-_-/ /g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
if [[ $LANGUAGE == "en" ]] ; then
|
||||
sed -i 's/msgid //g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
fi
|
||||
}
|
||||
export -f create_translations
|
||||
|
||||
try_copy_file () {
|
||||
if [[ ! -f "$1" ]] ; then print_info "file $1 not found for copy" && return 1
|
||||
elif [[ -z "$2" ]] ; then print_error "no way to copy file $1" && return 1
|
||||
@@ -1597,6 +1403,8 @@ pw_reinstall_pp () {
|
||||
}
|
||||
|
||||
check_user_conf () {
|
||||
export USER_CONF="${PORT_WINE_PATH}/data/user.conf"
|
||||
|
||||
if [[ ! -f "${USER_CONF}" ]] ; then
|
||||
cat << EOF > "${USER_CONF}"
|
||||
#!/usr/bin/env bash"
|
||||
@@ -1604,6 +1412,201 @@ check_user_conf () {
|
||||
# export DXVK_HUD=full"
|
||||
# export GALLIUM_HUD=fps"
|
||||
EOF
|
||||
else
|
||||
sed -i \
|
||||
-e 's/="CDN"/="CLOUD"/g' \
|
||||
-e '/export PW_SOUND_DRIVER_USE=/d' \
|
||||
"$USER_CONF"
|
||||
fi
|
||||
|
||||
# shellcheck source=/dev/null
|
||||
source "$USER_CONF"
|
||||
}
|
||||
|
||||
|
||||
generate_pot () {
|
||||
local FILES_FOR_GETTEXT i
|
||||
FILES_FOR_GETTEXT=(functions_helper start.sh setup.sh add_in_steam.sh)
|
||||
for i in "${FILES_FOR_GETTEXT[@]}" ; do
|
||||
sed -e 's/{translations\[/(gettext \"/g' -e 's/]}/")/g' "${PORT_SCRIPTS_PATH}/$i" > "${PORT_SCRIPTS_PATH}/${i}_tmp"
|
||||
sed -i '/\[\$/d' "${PORT_SCRIPTS_PATH}/${i}_tmp"
|
||||
done
|
||||
#Когда присходит предупреждение: синтаксис $"..." запрещен по соображениям безопасности; используйте eval_gettext
|
||||
#и ругается на строку в которой нет перевода, можно использовать sed -i '//d' и убрать эту строку
|
||||
#либо отредактировать сам код, чтобы не было такой ошибки (к примеру вместо двойных ковычек использовать в таком месте одинарные)
|
||||
for lang in $LANGUAGES_LIST ; do
|
||||
echo "${lang}"
|
||||
create_new_dir "${PORT_WINE_PATH}/data/locales/${lang}/LC_MESSAGES/"
|
||||
LANG_PO="${PORT_WINE_PATH}/data/locales/${lang}/LC_MESSAGES/PortProton.po"
|
||||
#LANG_MO="${PORT_WINE_PATH}/data/locales/${lang}/LC_MESSAGES/PortProton.mo"
|
||||
TEMPLATE_POT="${PORT_WINE_PATH}/data/locales/PortProton.pot"
|
||||
pushd "${PORT_WINE_PATH}" 1>/dev/null || fatal
|
||||
xgettext --no-location --from-code=UTF-8 --language Shell -i \
|
||||
"data/scripts/start.sh_tmp" \
|
||||
"data/scripts/setup.sh_tmp" \
|
||||
"data/scripts/functions_helper_tmp" \
|
||||
"data/scripts/add_in_steam.sh_tmp" \
|
||||
-o "$TEMPLATE_POT"
|
||||
popd 1>/dev/null || fatal
|
||||
if [[ -f "$LANG_PO" ]] ; then
|
||||
echo "update $LANG_PO file"
|
||||
msgmerge --update "$LANG_PO" "$TEMPLATE_POT"
|
||||
else
|
||||
echo "create $LANG_PO file"
|
||||
msginit --input="$TEMPLATE_POT" --locale="${lang}" --output="$LANG_PO"
|
||||
fi
|
||||
#msgfmt --output-file="$LANG_MO" "$LANG_PO"
|
||||
done
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/start.sh_tmp"
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/setup.sh_tmp"
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/functions_helper_tmp"
|
||||
try_remove_file "${PORT_SCRIPTS_PATH}/add_in_steam.sh_tmp"
|
||||
try_remove_dir "${PW_CACHE_LANG_PATH}"
|
||||
}
|
||||
export -f generate_pot
|
||||
|
||||
create_translations () {
|
||||
local po_file msgid msgstr
|
||||
[[ ! -d $PW_CACHE_LANG_PATH ]] && create_new_dir "$PW_CACHE_LANG_PATH"
|
||||
cat << EOF > "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
#!/usr/bin/env bash
|
||||
TRANSLATIONS_VER=$scripts_install_ver
|
||||
declare -A translations=(
|
||||
EOF
|
||||
if [[ $LANGUAGE == "en" ]] ; then
|
||||
po_file="${PORT_WINE_PATH}/data/locales/PortProton.pot"
|
||||
else
|
||||
po_file="${PORT_WINE_PATH}/data/locales/$LANGUAGE/LC_MESSAGES/PortProton.po"
|
||||
fi
|
||||
|
||||
while read -r line ; do
|
||||
while [[ $line =~ msgid ]] ; do
|
||||
unset msgid
|
||||
msgid="$line"
|
||||
read -r line
|
||||
while [[ ! $line =~ msgstr ]] ; do
|
||||
msgid+="$line"
|
||||
read -r line
|
||||
done
|
||||
if [[ $line =~ msgstr ]]; then
|
||||
if [[ $LANGUAGE == "en" ]] ; then
|
||||
if [[ $msgid == "msgid \"\"" ]] ; then
|
||||
continue
|
||||
fi
|
||||
msgstr="$msgid"
|
||||
else
|
||||
unset msgstr
|
||||
msgstr="$line"
|
||||
read -r line
|
||||
while [[ ! $line =~ msgid ]] ; do
|
||||
msgstr+=$line
|
||||
read -r line
|
||||
if [[ -z $line ]] ; then
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
if [[ $LANGUAGE != "en" ]] ; then
|
||||
msgstr=${msgstr//"msgstr "/}
|
||||
msgid=${msgid//"msgid "/}
|
||||
fi
|
||||
msgstr=${msgstr//" "/-_-}
|
||||
msgstr=${msgstr//"\n"\"\"/+_+}
|
||||
msgstr=${msgstr//\"\"/}
|
||||
msgstr=${msgstr//#*/}
|
||||
msgstr=${msgstr//"*"/#_#}
|
||||
msgid=${msgid//" "/-_-}
|
||||
msgid=${msgid//"\n"\"\"/+_+}
|
||||
msgid=${msgid//\"\"/}
|
||||
msgid=${msgid//#*/}
|
||||
msgid=${msgid//"*"/#_#}
|
||||
if [[ -n $msgid ]] ; then
|
||||
if [[ -z $msgstr ]] ; then
|
||||
msgstr="$msgid"
|
||||
fi
|
||||
if [[ $msgid =~ \$ ]] ; then
|
||||
msgid=${msgid//\$/\\$}
|
||||
if [[ $msgstr =~ \$% ]] ; then
|
||||
msgstr=${msgstr//\$/\\$}
|
||||
fi
|
||||
fi
|
||||
echo \["$msgid"\]="$msgstr" >> "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
fi
|
||||
done
|
||||
done < "$po_file"
|
||||
|
||||
echo ")" >> "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
sed -i 's/+_+/\n/g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
sed -i 's/#_#/\*/g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
sed -i 's/-_-/ /g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
if [[ $LANGUAGE == "en" ]] ; then
|
||||
sed -i 's/msgid //g' "${PW_CACHE_LANG_PATH}/$LANGUAGE"
|
||||
fi
|
||||
}
|
||||
|
||||
check_translations () {
|
||||
if [[ -f "${PORT_WINE_TMP_PATH}/PortProton_loc" ]] ; then
|
||||
LANGUAGE=$(<"${PORT_WINE_TMP_PATH}/PortProton_loc")
|
||||
fi
|
||||
|
||||
if check_gamescope_session ; then
|
||||
LANGUAGE="en"
|
||||
else
|
||||
[[ ! -f "${pw_yad}" ]] && pw_yad="yad"
|
||||
if [[ -z "$LANGUAGE" ]] \
|
||||
|| [[ "${PW_FORCE_CHANGE_LOC}" == "1" ]] ; then
|
||||
SET_LANG=(
|
||||
"${pw_yad}" --list
|
||||
--window-icon="$PW_GUI_ICON_PATH/portproton.svg"
|
||||
--title="Select language for PortProton"
|
||||
--column="Language" --column=""
|
||||
--width=400 --height=200
|
||||
|
||||
"Russian (Русский)" ru
|
||||
"English" en
|
||||
"Spanish (Español・Española)" es
|
||||
)
|
||||
|
||||
out=$("${SET_LANG[@]}")
|
||||
if [[ -z $out ]] \
|
||||
&& [[ -n "$LANGUAGE" ]] ; then
|
||||
echo "${LANGUAGE}" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
elif [[ -z $out ]] ; then
|
||||
echo "en" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
else
|
||||
LANGUAGE=$(echo "$out" | cut -d '|' -f2)
|
||||
echo "${LANGUAGE}" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
|
||||
fi
|
||||
unset PW_FORCE_CHANGE_LOC
|
||||
fi
|
||||
fi
|
||||
export LANGUAGE
|
||||
|
||||
case "$LANGUAGE" in
|
||||
ru)
|
||||
check_start_from_steam && export LC_ALL=ru_RU.UTF-8
|
||||
export FULL_LN="russian"
|
||||
export LANGUAGE_GIF="ru"
|
||||
;;
|
||||
es)
|
||||
check_start_from_steam && export LC_ALL=es_ES.UTF-8
|
||||
export FULL_LN="spanish"
|
||||
export LANGUAGE_GIF="en"
|
||||
;;
|
||||
*)
|
||||
export FULL_LN="english"
|
||||
export LANGUAGE_GIF="en"
|
||||
export LANGUAGE="en"
|
||||
;;
|
||||
esac
|
||||
|
||||
export PW_CACHE_LANG_PATH="${PORT_WINE_TMP_PATH}/cache_lang/"
|
||||
if [[ ! -f "$PW_CACHE_LANG_PATH/$LANGUAGE" ]] ; then
|
||||
create_translations
|
||||
elif [[ $(sed -n '2p' "$PW_CACHE_LANG_PATH/$LANGUAGE") != "TRANSLATIONS_VER=$scripts_install_ver" ]] ; then
|
||||
try_remove_dir "$PW_CACHE_LANG_PATH"
|
||||
create_translations
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -7892,8 +7895,32 @@ update_ext_ppdb () {
|
||||
exit 0
|
||||
fi
|
||||
else
|
||||
yad_error "Not found desktop file for:\n<b>\n${tmp_ppdb_exe[@]}\n</b>"
|
||||
exit 1
|
||||
check_user_conf
|
||||
check_translations
|
||||
|
||||
# shellcheck source=/dev/null
|
||||
source "$PW_CACHE_LANG_PATH/$LANGUAGE"
|
||||
|
||||
# shellcheck source=/dev/null
|
||||
source "$PW_GUI_THEMES_PATH/$GUI_THEME.pptheme"
|
||||
|
||||
if yad_question "${translations[No shortcut found to launch]}:<b>\n${tmp_ppdb_exe[@]}\n</b>\n ${translations[Do you want to specify the path to the file manually?]}\n" ; then
|
||||
cd "$HOME"
|
||||
portwine_exe=$("${pw_yad}" --file --width=750 --height=600 \
|
||||
--window-icon="$PW_GUI_ICON_PATH/portproton.svg" --title "EXE FILE" --file-filter="*.exe" 2>/dev/null )
|
||||
YAD_STATUS="$?"
|
||||
|
||||
if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then
|
||||
exit 1
|
||||
fi
|
||||
print_info "Moved new $tmp_ppdb_file to ${portwine_exe}.ppdb"
|
||||
mv -f "$tmp_ppdb_file" "${portwine_exe}.ppdb"
|
||||
print_info "Restarting PP after move new ppdb file..."
|
||||
/usr/bin/env bash -c "${PORT_SCRIPTS_PATH}/start.sh $portwine_exe" &
|
||||
exit 0
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
else
|
||||
fatal "ppdb file \"$1\" not found!"
|
||||
|
||||
@@ -53,7 +53,6 @@ else
|
||||
export PW_TMPFS_PATH="${PORT_WINE_PATH}/data/tmp/PortProton_$USER"
|
||||
fi
|
||||
|
||||
export PW_CACHE_LANG_PATH="${PORT_WINE_TMP_PATH}/cache_lang/"
|
||||
export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui"
|
||||
export PW_GUI_THEMES_PATH="${PORT_WINE_PATH}/data/themes"
|
||||
|
||||
@@ -185,43 +184,26 @@ create_new_dir "$STEAM_SCRIPTS"
|
||||
export PW_PLUGINS_PATH="${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}"
|
||||
export pw_yad="${PW_GUI_THEMES_PATH}/gui/yad_gui_pp"
|
||||
|
||||
change_locale
|
||||
|
||||
export PW_WINELIB="${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}"
|
||||
try_remove_dir "${PW_WINELIB}/var"
|
||||
install_ver="$(<"${PORT_WINE_TMP_PATH}/PortProton_ver")"
|
||||
export install_ver
|
||||
if [[ -f "${PORT_WINE_TMP_PATH}/scripts_ver" ]]
|
||||
then scripts_install_ver="$(<"${PORT_WINE_TMP_PATH}/scripts_ver")"
|
||||
else scripts_install_ver="2025"
|
||||
else scripts_install_ver="2026"
|
||||
fi
|
||||
export scripts_install_ver
|
||||
export WINETRICKS_DOWNLOADER="curl"
|
||||
export USER_CONF="${PORT_WINE_PATH}/data/user.conf"
|
||||
|
||||
check_user_conf
|
||||
sed -i 's/="CDN"/="CLOUD"/g' "$USER_CONF"
|
||||
sed -i '/export PW_SOUND_DRIVER_USE=/d' "$USER_CONF"
|
||||
|
||||
check_variables PW_LOG "0"
|
||||
|
||||
try_remove_file "${PW_TMPFS_PATH}/update_pfx_log"
|
||||
|
||||
# shellcheck source=/dev/null
|
||||
source "$USER_CONF"
|
||||
|
||||
[[ ! -f "$PORT_WINE_TMP_PATH/statistics" ]] && touch "$PORT_WINE_TMP_PATH/statistics"
|
||||
[[ ! -f "$PW_CACHE_LANG_PATH/$LANGUAGE" ]] && create_translations
|
||||
|
||||
unset translations
|
||||
check_translations
|
||||
# shellcheck source=/dev/null
|
||||
source "$PW_CACHE_LANG_PATH/$LANGUAGE"
|
||||
|
||||
if [[ $TRANSLATIONS_VER != "$scripts_install_ver" ]] ; then
|
||||
try_remove_dir "$PW_CACHE_LANG_PATH"
|
||||
create_translations
|
||||
# shellcheck source=/dev/null
|
||||
source "$PW_CACHE_LANG_PATH/$LANGUAGE"
|
||||
fi
|
||||
check_variables PW_LOG "0"
|
||||
try_remove_file "${PW_TMPFS_PATH}/update_pfx_log"
|
||||
|
||||
[[ ! -f "$PORT_WINE_TMP_PATH/statistics" ]] && touch "$PORT_WINE_TMP_PATH/statistics"
|
||||
|
||||
if [[ -n "${STEAM_COMPAT_DATA_PATH:-}" ]]; then
|
||||
steamplay_launch "${@:2}"
|
||||
|
||||
Reference in New Issue
Block a user