spacegho.st / ffxiv mods

Dalamud plugin · Linux desktop

XivDesktop

Your Linux desktop, inside the game

For the game running under Wine on Linux: a launcher, workspaces and a taskbar for your real desktop applications, opened as windows in the game world. It draws no windows itself; it is the desktop on top of Ghostty's world panels.

XivDesktop: an app grid window under an aetheryte crystal, with a launcher palette and workspace cards
Honest status

The pure logic (app catalog, palette ranking, calculator, key chords, workspaces) has host-side tests, and the application scanner has been run against a real Linux host. Nothing has been observed in the game yet: not the palette, the key chords (including whether Wine delivers the Super key at all), launching against a running Ghostty, workspaces, notifications, or the Umbra widgets. It has a stable release (v1.0.1) and a newer test build.

What it does

Wine maps the Linux root to drive Z:, so the plugin reads your .desktop files and icons straight from the host. When you launch something, ghostty-agent starts it on the host inside a headless Wayland compositor, and Ghostty shows its window as a pet panel beside your character.

XivDesktop adds what a desktop has and a terminal command does not: an app catalog with icons, search, favourites and recents; a launcher palette; sway-style key chords; nine workspaces; open and close notifications; and IPC so other plugins and MCP tools can drive it.

Features

Everything below is built and its logic is host-tested; none of it has been observed in game yet.

Launcher palette

Super+D or /desktop: one query box over apps, open panels, actions, commands and a calculator, with fuzzy matching and prefixes (a: w: = >). Fully usable without a mouse.

unverified in game

App grid

/desktop apps: an icon grid of the host's applications with search, favourites and recents.

unverified in game

Nine workspaces

Sway style. Every window panel belongs to one; Super+19 switches and hides the others, Super+Shift+number moves a panel.

unverified in game

Panel actions

From the palette: focus, pet or pin, dock to the HUD, minimise, close and reorder, each with a key.

unverified in game

Taskbar and Apps widgets

Two optional Umbra toolbar widgets: an app menu, and a taskbar of the open window panels with the workspace number.

unverified in game

Notifications

A Dalamud notification when a window opens or closes.

unverified in game

IPC for plugins and MCP

XivDesktop.v1.* gates to list windows, launch apps, switch workspaces and search the palette, meant for XivMcp tools.

unverified in game

Keeps the game cursor

It never sets an ImGui cursor of its own, and asks Dalamud to leave the game's cursor alone over its windows.

unverified in game

Screenshots and clips

Planned shots. Empty frames are placeholders for screenshots and clips that will be captured in game.

Loading the shot list…

Install

Two ways, and both are kept on purpose: one click from the plugin repository, or build it from source and load it as a dev plugin.

One click

Add the repository once; every mod here installs and updates like any other plugin.

https://spacegho.st/mods/ffxiv/plugins.json
  1. In game, type /xlsettings → the Experimental tab.
  2. Under Custom Plugin Repositories, paste the URL into the empty row, press +, and leave its checkbox ticked.
  3. Save and Close.
  4. /xlpluginsAll Plugins → search XivDesktopInstall.

XivDesktop has a stable release, so it shows under All Plugins straight away. For the newer test build ahead of the next release, tick Get plugin testing builds in the same tab, then Receive plugin testing versions on its entry. It needs Ghostty too.

Dalamud will warn you that this is a third-party repository nobody but its author has reviewed. That is true. The repository page says more, including how test builds work.

Build it yourself

The dev plugin path: exactly the code in your checkout, no repository, no auto-update. It is how the author runs it, and the honest way to read the code before you trust it.

git clone https://github.com/Spaceghost/xivdesktop-dalamud
cd xivdesktop-dalamud
tools/install-dev.sh        # or: dotnet build XivDesktop.slnx -c Release
  1. Needs the .NET 10 SDK and Dalamud's reference assemblies, which an XIVLauncher install already has. Rebuild after every Dalamud update.
  2. tools/install-dev.sh builds Release, stages it outside the checkout, and prints the Wine path. It never edits Dalamud's configuration.
  3. In game: /xlsettingsExperimentalDev Plugin Locations → add the path of the built XivDesktop.dll (under Wine, a Z:\… path) → +Save and Close.
  4. /xlpluginsDev ToolsInstalled Dev Plugins → enable XivDesktop. Dev plugins are added disabled.
  5. Rebuilt while the game is running? Press the reload arrow on its entry. No relaunch.

If you later switch to the one-click install, disable the dev plugin first so the two copies cannot fight over the same name. The README has the details.

Requirements

  • A Linux host running the game through XIVLauncher.Core and Wine, with Dalamud (API level 15).
  • Ghostty, loaded, with ghostty-agent running with --windows wayland. Without it the launcher still lists apps, and launching is disabled.
  • Optional: Umbra for the Apps and Windows toolbar widgets.

Community screenshots

Screenshots of XivDesktop shared by players. Every one is reviewed by the site owner before it is shown here. Every mod's are in the gallery, and what XivDesktop should do next is up for a vote.

Loading…

Add yours

Sharing a screenshot needs a sign-in, so that everything sent to this site comes from an account.

Signing in with FFXIV needs an XIVAuth account and shares no character.

Hide your own name and chat first, and never share a terminal showing tokens or private paths. Metadata is stripped from the image before it is stored. Your upload is linked to your GitHub or XIVAuth account id, which the site owner can see; the public sees only the image and the credit you typed. To have a shot removed, contact the owner through github.com/Spaceghost.