3.1 KiB
3.1 KiB
FFXIV Backup Restore UI
A Windows-native PyQt6 GUI for the FFXIV backup restore script.
Features
- Settings Tab: Configure Nextcloud credentials and local paths
- Restore Tab: Select backup and monitor restore progress in real-time
- Single Executable: Packaged with PyInstaller for easy distribution
- Threading: Non-blocking UI during restore operations
- Status Output: Real-time console output display
Requirements
- Python 3.8+
- Windows (tested on Windows 11)
- 7z command-line tool (for extraction)
Installation
1. Install Python Dependencies
pip install -r requirements.txt
2. Verify 7z is installed
The script requires 7z for extraction. Install it or ensure it's in your PATH.
Usage
Development (Running from source)
python restore_ui.py
Building Executable
Run the build script:
build.bat
Or manually with PyInstaller:
pyinstaller restore_ui.spec
The executable will be created in the dist\ directory.
Configuration
Configuration is loaded from .env file in the same directory as the script. The file contains:
- NC_URL: Nextcloud server URL
- NC_USER: Nextcloud username
- NC_PASS: Nextcloud password
- NC_TEMP_DOWNLOAD: Path to store downloaded .7z file
- TEMP_EXTRACT_PATH: Path to extract backup contents
- TEMP_BACKUP_PATH: Directory to store local backups
- PLUGIN_CONFIGS_PATH: XIVLauncher plugin config directory
- FFXIV_CONFIGS_PATH: FFXIV game config directory
Usage Steps
-
Configure Settings (if needed):
- Open "Settings" tab
- Verify Nextcloud credentials and paths
- Click outside tab to save (settings are read from .env on startup)
-
Restore Backup:
- Open "Restore" tab
- Enter remote archive path (e.g.,
Backups/FFXIV/Desktop/backup_file.7z) - Click "Start Restore"
- Monitor progress in output window
-
View Results:
- Success/error message appears upon completion
- Output can be cleared with "Clear Output" button
Troubleshooting
Missing Dependencies
If you get import errors, run: pip install -r requirements.txt
7z not found
Ensure 7z is installed and in your system PATH
Nextcloud Connection Failed
- Verify NC_URL is correct (including https://)
- Check username and password are correct
- Ensure network connection to Nextcloud server
PyInstaller Build Issues
If the .spec file fails:
- Delete
build/anddist/directories - Rebuild:
pyinstaller restore_ui.spec
Distributing the Executable
Once built, the executable (dist\FFXIV-Backup-Restore.exe) can be:
- Copied to any Windows system with .NET Framework (included in Windows)
- Distributed as a single file
- No Python installation required on target system
- Requires
.envfile in same directory as executable
Notes
- The UI runs the original
restore_backup.pyscript in a background thread - All output is captured and displayed in the UI
- Settings tab is for informational purposes (values are read from
.envat startup) - To update settings, edit
.envfile directly and restart the application