From 3a0e11ee7fa1b0ad56053561e137a83962610752 Mon Sep 17 00:00:00 2001 From: Boria138 Date: Tue, 5 Mar 2024 15:14:05 +0500 Subject: [PATCH] Added pseudo cd-rom for very old games --- data_from_portwine/scripts/functions_helper | 3 ++- data_from_portwine/scripts/runlib | 8 ++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index bca27053..58314ed3 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -948,6 +948,7 @@ check_dirs_and_files_in_pfx () { [ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:" [ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:" + [ ! -d "${WINEPREFIX}/dosdevices/y:" ] && try_force_link_dir "${WINEPREFIX}/cdrom" "${WINEPREFIX}/dosdevices/y:" [ ! -d "${WINEPREFIX}/dosdevices/h:" ] && try_force_link_dir "$HOME" "${WINEPREFIX}/dosdevices/h:" create_new_dir "${WINEPREFIX}/drive_c/windows/Fonts/" @@ -982,7 +983,7 @@ check_dirs_and_files_in_pfx () { find "${WINEPREFIX}/dosdevices" -xtype l -maxdepth 1 2>/dev/null -exec rm {} \; rm -f "${WINEPREFIX}/dosdevices/"*:: - DRIVES=(d e f g i j k l m n o p q r s t u v w x y) + DRIVES=(d e f g i j k l m n o p q r s t u v w x) DEF_MOUNT_DIRS=('/media' "/media/$USER" '/mnt' '/run/media' "/run/media/$USER") MOUNT_DIRS=($(find "${DEF_MOUNT_DIRS[@]}" -maxdepth 1 -type d 2>/dev/null | sort -u)) diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index b83bb5d6..57d69071 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -619,6 +619,14 @@ start_portwine () { echo "Set to win${PW_WINDOWS_VER}" fi + if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" ]] && [[ -z `grep -o "\"y:\"=\"cdrom\"" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg"` ]] ; then + if [[ $(grep -Fo '[Software\\Wine\\Drives]' "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg") ]] ; then + sed -i '/\[Software\\\\Wine\\\\Drives\]/a "y:"="cdrom"' "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" + else + echo -e "\n[Software\\\\\\Wine\\\\\\Drives]\n\"y:\"=\"cdrom\"" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" + fi + fi + if [[ "${portwine_exe}" == *-Shipping.exe ]] ; then echo "Disable EAC" [[ -z "${LAUNCH_PARAMETERS}" ]] && export LAUNCH_PARAMETERS+=" -eac-nop-loaded "