XIVLauncherWrapper/README.md

2 KiB

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.

    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:

    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:

./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:

    ./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".