Add try_ and check_ function. Fix Unarc.dll in setup db

This commit is contained in:
castro-fidel
2021-03-15 01:41:16 +03:00
parent 290a6840bc
commit 66d9182c3e
5 changed files with 223 additions and 228 deletions

View File

@ -2,38 +2,22 @@
# Author: PortWINE-Linux.ru
. "$(dirname $(readlink -f "$0"))/runlib"
rm -f "${PORT_WINE_PATH}/"*".log"
rm -f "${PORT_WINE_TMP_PATH}/update_notifier"
rm -f "${PORT_WINE_TMP_PATH}/init_run_suc"
rm -fr "${PORT_WINE_PATH}/data/pfx/dosdevices"
rm -fr "${PORT_WINE_PATH}/data/port_on"
rm -fr "${PORT_WINE_PATH}/data/dxvk.conf"
rm -f "${PORT_WINE_PATH}/Create_shortcut_PP.desktop"
rm -f "${PORT_WINE_PATH}/Proton.desktop"
rm -f "${PORT_WINE_PATH}/settings.desktop"
rm -f "${PORT_WINE_PATH}/settings.desktop"
rm -f "${PORT_WINE_PATH}/debug.desktop"
try_remove_file "${PORT_WINE_TMP_PATH}/update_notifier"
try_remove_file "${PORT_WINE_TMP_PATH}/init_run_suc"
if [ -d "${PORT_WINE_PATH}/Settings" ]; then
rm -fr "${PORT_WINE_PATH}/Settings"
fi
if [ ! -z "${PATH_TO_GAME}" ]; then
rm -f "${PATH_TO_GAME}"/*.dxvk-cache
fi
if [ -f "${PORT_WINE_PATH}/restart.desktop" ]; then
rm "${PORT_WINE_PATH}/restart.desktop"
fi
if [ ! -d "/home/${USER}/.local/share/applications" ]
then
mkdir -p "/home/${USER}/.local/share/applications"
else
if [ -e "/home/${USER}/.local/share/applications/Create_shortcut_PP.desktop" ]; then
rm -f "/home/${USER}/.local/share/applications/Create_shortcut_PP.desktop"
fi
if [ -e "/home/${USER}/.local/share/applications/Proton.desktop" ]; then
rm -f "/home/${USER}/.local/share/applications/Proton.desktop"
fi
fi
try_remove_file "${PORT_WINE_PATH}/data/port_on"
try_remove_file "${PORT_WINE_PATH}/data/dxvk.conf"
try_remove_file "${PORT_WINE_PATH}/Create_shortcut_PP.desktop"
try_remove_file "${PORT_WINE_PATH}/Proton.desktop"
try_remove_file "${PORT_WINE_PATH}/settings.desktop"
try_remove_file "${PORT_WINE_PATH}/settings.desktop"
try_remove_file "${PORT_WINE_PATH}/debug.desktop"
try_remove_file "${PORT_WINE_PATH}/restart.desktop"
try_remove_dir "${PORT_WINE_PATH}/data/pfx/dosdevices"
try_remove_dir "${PORT_WINE_PATH}/Settings"
create_new_dir "/home/${USER}/.local/share/applications"
if ! [ "${portname}" = "PortProton" ]; then
name_desktop="${gamename}"
@ -84,9 +68,8 @@ do
chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop"
done
chmod u+x "${PORT_SCRIPTS_PATH}/"*
if [ ! -d "${PORT_WINE_PATH}/drive_c" ]; then
ln -s "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/drive_c"
fi
try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/drive_c"
if [ -d "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" ] && [ ! -L "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" ]; then
cp -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public"/* "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser/"
rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public"
@ -94,13 +77,16 @@ elif [ -L "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" ]; then
rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public"
fi
ln -s "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser" "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public"
if [ ! -d "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}" ]; then
ln -s "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser" "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}"
fi
if [ -e "${PORT_WINE_PATH}/data/pfx/system.reg" ] || [ -e "${PORT_WINE_PATH}/data/pfx/user.reg" ] || [ -e "${PORT_WINE_PATH}/data/pfx/userdef.reg" ]; then
sed -i "s/xuser/${USER}/g" "${PORT_WINE_PATH}/data/pfx/"*.reg
sed -i "s/vagrant/${USER}/g" "${PORT_WINE_PATH}/data/pfx/"*.reg
fi
if [ "${s_install}" = "1" ]; then
echo "Installation completed successfully."
else