diff --git a/assets/jsons/translations/de.json b/assets/jsons/translations/de.json index 72887719..db90e0d8 100644 --- a/assets/jsons/translations/de.json +++ b/assets/jsons/translations/de.json @@ -94,8 +94,7 @@ "edit": "Bearbeiten", "uninstall": "Entfernen", "create-shortcut": "Verknüpfung erstellen", - "shared-folders": "Geteilte Ordner", - "restore-oculus-folder": "Ordner wiederherstellen" + "shared-folders": "Geteilte Ordner" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "Achtung", "body": { "must-be-installed-once": "Sie müssen Beat Saber mindestens einmal aus dem Oculus Store installiert haben, sonst könnte sich Beat Saber nach dem Start automatisch schließen.", - "need-backup": "Um diese Version zu starten, wird der Installationsordner von Beat Saber in Ihrer Oculus-Bibliothek umbenannt.", - "can-restore-later": "Bei Bedarf können Sie ihn vom BSManager aus wiederherstellen, indem Sie zu den Optionen der originalen Oculus-Version gehen und auf 'Ordner wiederherstellen' klicken" + "will-backup": "Um diese Version zu starten, wird der ursprüngliche Installationsordner von Beat Saber in Ihrer Oculus-Bibliothek umbenannt und beim Schließen von Beat Saber automatisch wiederhergestellt." }, "not-remind-me": "Nicht mehr erinnern", "understood": "Verstanden" diff --git a/assets/jsons/translations/en.json b/assets/jsons/translations/en.json index f615809e..b185748e 100644 --- a/assets/jsons/translations/en.json +++ b/assets/jsons/translations/en.json @@ -94,8 +94,7 @@ "edit": "Edit", "uninstall": "Uninstall", "create-shortcut": "Create a shortcut", - "shared-folders": "Shared Folders", - "restore-oculus-folder": "Restore the folder" + "shared-folders": "Shared Folders" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "Warning", "body": { "must-be-installed-once": "You must have installed Beat Saber at least once from the Oculus Store, otherwise Beat Saber might automatically close after launching.", - "need-backup": "To launch this version, the Beat Saber installation folder located in your Oculus library will be renamed.", - "can-restore-later": "If needed, you can restore it from BSManager by going to the options of the original Oculus version and clicking on 'Restore the folder'" + "will-backup": "To launch this version, the original installation folder of Beat Saber located in your Oculus library will be renamed and will be automatically restored when Beat Saber is closed." }, "not-remind-me": "Do not remind me", "understood": "Understood" diff --git a/assets/jsons/translations/es.json b/assets/jsons/translations/es.json index 7a5596e4..252e96cf 100644 --- a/assets/jsons/translations/es.json +++ b/assets/jsons/translations/es.json @@ -94,8 +94,7 @@ "edit": "Editar", "uninstall": "Desinstalar", "create-shortcut": "Crear un atajo", - "shared-folders": "Carpetas Compartidas", - "restore-oculus-folder": "Restaurar la carpeta" + "shared-folders": "Carpetas Compartidas" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "Atención", "body": { "must-be-installed-once": "Debes haber instalado Beat Saber al menos una vez desde la Oculus Store, de lo contrario, Beat Saber podría cerrarse automáticamente después de iniciar.", - "need-backup": "Para iniciar esta versión, la carpeta de instalación de Beat Saber que se encuentra en tu biblioteca de Oculus será renombrada.", - "can-restore-later": "Si es necesario, podrás restaurarla desde el BSManager accediendo a las opciones de la versión original de Oculus y haciendo clic en 'Restaurar la carpeta'" + "will-backup": "Para lanzar esta versión, la carpeta de instalación original de Beat Saber ubicada en tu biblioteca de Oculus será renombrada y se restaurará automáticamente al cerrar Beat Saber." }, "not-remind-me": "No volver a recordármelo", "understood": "Entendido" diff --git a/assets/jsons/translations/fr.json b/assets/jsons/translations/fr.json index a0347710..1a7c724e 100644 --- a/assets/jsons/translations/fr.json +++ b/assets/jsons/translations/fr.json @@ -94,8 +94,7 @@ "edit": "Modifier", "uninstall": "Désinstaller", "create-shortcut": "Créer un raccourci", - "shared-folders": "Dossiers partagés", - "restore-oculus-folder": "Restaurer le dossier" + "shared-folders": "Dossiers partagés" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "Attention", "body": { "must-be-installed-once": "Vous devez avoir installé au moins une fois Beat Saber depuis l'Oculus Store, sinon Beat Saber pourrait se fermer automatiquement après son lancement.", - "need-backup": "Pour lancer cette version, le dossier d'installation de Beat Saber se trouvant dans votre librairie Oculus va être renommé.", - "can-restore-later": "Au besoin, vous pourrez le restaurer depuis BSManager en vous rendant dans les options de la version originale Oculus et en cliquant sur \"Restaurer le dossier\"" + "will-backup": "Afin de lancer cette version, le dossier d'installation original de Beat Saber se trouvant dans votre bibliothèque Oculus va être renommé et sera automatiquement restauré à l'arrêt de Beat Saber." }, "not-remind-me": "Ne plus me rappeler", "understood": "J'ai compris" diff --git a/assets/jsons/translations/ja.json b/assets/jsons/translations/ja.json index 0c6b9658..6a721d5c 100644 --- a/assets/jsons/translations/ja.json +++ b/assets/jsons/translations/ja.json @@ -94,8 +94,7 @@ "edit": "編集", "uninstall": "アンインストール", "create-shortcut": "ショートカットを作成", - "shared-folders": "共有フォルダー", - "restore-oculus-folder": "フォルダーの復元" + "shared-folders": "共有フォルダー" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "注意", "body": { "must-be-installed-once": "少なくとも一度はOculus StoreからBeat Saberをインストールしている必要があります。そうしないとBeat Saberは起動後に自動的に終了する可能性があります。", - "need-backup": "このバージョンを起動するには、OculusライブラリにあるBeat Saberインストールフォルダの名前を変更します。", - "can-restore-later": "必要であれば、BSManagerから元のOculusバージョンのオプションに行き、'フォルダを復元'をクリックして復元することができます。" + "will-backup": "このバージョンを起動するために、OculusライブラリにあるBeat Saberの元のインストールフォルダは名前が変更され、Beat Saberの終了時に自動的に復元されます。" }, "not-remind-me": "二度と表示しないでください", "understood": "分かった" diff --git a/assets/jsons/translations/ru.json b/assets/jsons/translations/ru.json index 8dfb20ee..aa0d5f2e 100644 --- a/assets/jsons/translations/ru.json +++ b/assets/jsons/translations/ru.json @@ -94,8 +94,7 @@ "edit": "Редактировать", "uninstall": "Удалить", "create-shortcut": "Создать ярлык", - "shared-folders": "Общие папки", - "restore-oculus-folder": "Восстановить папку" + "shared-folders": "Общие папки" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "Внимание", "body": { "must-be-installed-once": "Вы должны были установить Beat Saber хотя бы один раз из Oculus Store, иначе Beat Saber может автоматически закрыться после запуска.", - "need-backup": "Для запуска этой версии папка установки Beat Saber в вашей библиотеке Oculus будет переименована.", - "can-restore-later": "При необходимости вы можете восстановить её через BSManager, перейдя в опции оригинальной версии Oculus и нажав на 'Восстановить папку'" + "will-backup": "Для запуска этой версии исходная папка установки Beat Saber, находящаяся в вашей библиотеке Oculus, будет переименована и автоматически восстановлена при выходе из Beat Saber." }, "not-remind-me": "Больше не напоминать", "understood": "Понял" diff --git a/assets/jsons/translations/zh-tw.json b/assets/jsons/translations/zh-tw.json index cf72e52a..09455531 100644 --- a/assets/jsons/translations/zh-tw.json +++ b/assets/jsons/translations/zh-tw.json @@ -94,8 +94,7 @@ "edit": "編輯", "uninstall": "移除", "create-shortcut": "創建捷徑", - "shared-folders": "Shared Folders", - "restore-oculus-folder": "Restore the folder" + "shared-folders": "Shared Folders" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "警告", "body": { "must-be-installed-once": "你必須至少從 Oculus 商店安裝過一次 BeatSaber,否則 BeatSaber 可能會在啟動後自動關閉。", - "need-backup": "要啟動該版本,位於你的 Oculus 庫中的 BeatSaber 安裝文件夾將被重命名。", - "can-restore-later": "如果需要,你可以通過前往 BSManager 的原始 Oculus 版本選項並點擊'恢復文件夾'來恢復它。" + "will-backup": "為了啟動這個版本,位於您的Oculus庫中的Beat Saber的原始安裝文件夾將被重新命名,並且在Beat Saber關閉時會自動恢復。" }, "not-remind-me": "不再提醒我", "understood": "明白了" diff --git a/assets/jsons/translations/zh.json b/assets/jsons/translations/zh.json index 98ca3ce6..7aeb6af7 100644 --- a/assets/jsons/translations/zh.json +++ b/assets/jsons/translations/zh.json @@ -94,8 +94,7 @@ "edit": "编辑", "uninstall": "卸载", "create-shortcut": "创建快捷方式", - "shared-folders": "Shared Folders", - "restore-oculus-folder": "Restore the folder" + "shared-folders": "Shared Folders" } }, "available-versions": { @@ -695,8 +694,7 @@ "title": "警告", "body": { "must-be-installed-once": "你必须至少从 Oculus 商店安装过一次 BeatSaber,否则 BeatSaber 可能会在启动后自动关闭。", - "need-backup": "要启动该版本,位于你的 Oculus 库中的 BeatSaber 安装文件夹将被重命名。", - "can-restore-later": "如果需要,你可以通过前往 BSManager 的原始 Oculus 版本选项并点击'恢复文件夹'来恢复它。" + "will-backup": "为了启动这个版本,位于您的Oculus库中的Beat Saber的原始安装文件夹将被重命名,并且在Beat Saber关闭时会自动恢复。" }, "not-remind-me": "不再提醒我", "understood": "明白了" diff --git a/assets/scripts/oculus_symlink_cleaner.exe b/assets/scripts/oculus_symlink_cleaner.exe index 9abb6862..05659aeb 100644 Binary files a/assets/scripts/oculus_symlink_cleaner.exe and b/assets/scripts/oculus_symlink_cleaner.exe differ diff --git a/externals/oculus-symlink-cleaner/src/main.rs b/externals/oculus-symlink-cleaner/src/main.rs index f7edc5c6..5d3a39ed 100644 --- a/externals/oculus-symlink-cleaner/src/main.rs +++ b/externals/oculus-symlink-cleaner/src/main.rs @@ -36,7 +36,12 @@ fn main() { None => { println!("Process {} has stopped, deleting directory {:?}", pid, directory_path); match delete_dir_if_is_symlink(directory_path) { - Ok(_) => println!("Directory {:?} deleted successfully.", directory_path), + Ok(_) => { + println!("Directory {:?} deleted successfully.", directory_path); + if let Err(e) = rename_specific_backup_directory(directory_path.parent().unwrap()) { + eprintln!("Failed to rename backup directory: {}", e); + } + }, Err(e) => eprintln!("Failed to delete directory {:?}: {}", directory_path, e), } break; @@ -58,3 +63,16 @@ fn delete_dir_if_is_symlink(path: &Path) -> Result<(), Box Result<(), Box> { + let backup_dir_name = format!("{}.bsmbak", BEAT_SABER_OCULUS_FOLDER_NAME); + let backup_path = parent_path.join(&backup_dir_name); + if backup_path.exists() && backup_path.is_dir() { + let new_path = parent_path.join(BEAT_SABER_OCULUS_FOLDER_NAME); + fs::rename(&backup_path, &new_path)?; + println!("Renamed {:?} to {:?}", backup_path, new_path); + Ok(()) + } else { + Err(format!("Backup directory {:?} does not exist or is not a directory.", backup_path).into()) + } +} + diff --git a/src/main/ipcs/bs-launcher-ipcs.ts b/src/main/ipcs/bs-launcher-ipcs.ts index c96c6a9b..ba7c9f1f 100644 --- a/src/main/ipcs/bs-launcher-ipcs.ts +++ b/src/main/ipcs/bs-launcher-ipcs.ts @@ -37,10 +37,3 @@ ipc.on("bs-launch.restore-steamvr", (_, reply) => { const steamLauncher = SteamLauncherService.getInstance(); reply(from(steamLauncher.restoreSteamVR())); }); - -ipc.on("restore-original-oculus-folder", (_, reply) => { - const oculusLauncher = OculusLauncherService.getInstance(); - reply(from( - oculusLauncher.deleteBsSymlinks().then(() => oculusLauncher.restoreOriginalBeatSaber()) - )); -}) diff --git a/src/renderer/components/modal/modal-types/original-oculus-version-backup.modal.tsx b/src/renderer/components/modal/modal-types/original-oculus-version-backup.modal.tsx index a31b3394..81bc3765 100644 --- a/src/renderer/components/modal/modal-types/original-oculus-version-backup.modal.tsx +++ b/src/renderer/components/modal/modal-types/original-oculus-version-backup.modal.tsx @@ -21,8 +21,7 @@ export const OriginalOculusVersionBackupModal: ModalComponent = (

{t("modals.original-version-backup-oculus.body.must-be-installed-once")}

-

{t("modals.original-version-backup-oculus.body.need-backup")}

-

{t("modals.original-version-backup-oculus.body.can-restore-later")}

+

{t("modals.original-version-backup-oculus.body.will-backup")}

diff --git a/src/renderer/pages/version-viewer.component.tsx b/src/renderer/pages/version-viewer.component.tsx index fdefa9f0..2b3f1cf8 100644 --- a/src/renderer/pages/version-viewer.component.tsx +++ b/src/renderer/pages/version-viewer.component.tsx @@ -99,20 +99,6 @@ export function VersionViewer() { }); } - const restoreOriginalOculusFolder = () => { - lastValueFrom(ipcService.sendV2("restore-original-oculus-folder")).then(() => { - notification.notifySuccess({ - title: "Restauration réussie", - desc: "Le dossier a été restauré avec succès" - }); - }).catch(() => { - notification.notifyError({ - title: "Erreur lors de la restauration", - desc: "Le dossier n'a pas pu être restauré" - }); - }); - } - return ( <> @@ -131,7 +117,6 @@ export function VersionViewer() {