XIVLauncherWrapper/README.md

61 lines
2 KiB
Markdown

# XIVLauncher OTP Wrapper
This is a simple wrapper script for Linux that launches `xivlauncher-core` and automatically injects your One-Time Password (OTP) when the launcher requests it.
## Setup
1. **Configure:**
Create the configuration directory and copy the example config.
```bash
mkdir -p ~/.config/xivlauncher-wrapper
cp config.example.json ~/.config/xivlauncher-wrapper/config.json
nano ~/.config/xivlauncher-wrapper/config.json
```
* `secret`: Enter your TOTP secret key (in Base32 format, usually provided when you set up your authenticator app).
* `launcher_cmd`: The command to launch XIVLauncher (default: `xivlauncher-core`).
2. **Make Executable:**
Ensure the script is executable:
```bash
chmod +x wrapper.py
```
3. **XIVLauncher Settings:**
Ensure that "Enable XL Authenticator app/OTP macro support" is enabled in XIVLauncher settings.
## Usage
Simply run the wrapper instead of the launcher:
```bash
./wrapper.py
```
The script will:
1. Launch XIVLauncher.
2. Wait for the launcher to start its local HTTP server (port 4646).
3. Generate the current OTP code.
4. Send it to the launcher automatically.
## Steam Deck / Linux Desktop Installation
For Steam Deck or standard Linux desktop users, you can use the provided installer script to set everything up automatically.
1. **Run the Installer:**
```bash
./install-steamdeck.sh
```
Follow the prompts to enter your OTP secret.
2. **What it does:**
* Creates the configuration file with your secret.
* Installs the wrapper to `~/.local/bin/xivlauncher-wrapper`.
* Installs a `.desktop` file to `~/.local/share/applications/` so it appears in your application menu (and can be added to Steam as a non-Steam game).
3. **Steam Integration:**
* Switch to Desktop Mode.
* Open Steam.
* "Games" -> "Add a Non-Steam Game to My Library".
* Select "XIVLauncher Wrapper" from the list.
* Return to Gaming Mode and launch "XIVLauncher Wrapper".