Notes For Publishing On Desura

Mark Chandler edited this page Jan 9, 2014 · 1 revision

You can find documentation on Publishing Content in the official DesuraNET wiki. However there is a confusing bug #218 in the client that will complicate your workflow. As a workaround when you create your MFC a pop-up will appear once the MFC is successfully generated and ask you if you want to upload it now. Don't click it! It will complain that you don't have permission. Instead close that pop-up window and choose the link upload it right next to it.

Changelog Format

Application changelog text is parsed and grouped based on the first word of each line. When viewed in the client, the changelog is rendered as nested HTML unordered lists.

For example, take this fictional changelog:

Added feature a
Fixed bug x
Updated aspect j
Updated aspect k
Added feature b
Fixed bug y
Changed balancing c

In the Desura/Desurium client, this would be represented as follows:

  • Added
    • feature a
    • feature b
  • Fixed
    • bug x
    • bug y
  • Updated
    • aspect j
    • aspect k
  • Changed
    • balancing c


You might want to create a bash script that Desura can launch and define it as a Wildcard:

[EXE] [GAME_LAUNCHER_SH] [Shell script to launch the game] [%GAME_PATH%/]

For OpenRA which is a .NET/Mono game the bash script looks like this:

exec mono OpenRA.Game.exe "$@"

You can then link to an execution command below and give it a name (default is "Play"). Upon installation the client will automatically create by linking and adding the locally cached dependencies to the LD_LIBRARY_PATH and finally executing the launcher script defined via the EXE wildcard below. If you add a new wild card "Map Editor" and assign to it the Desurium client will do the same and create a desura_launch_Map wrapper script again.

Desura does not yet support proper dependency resolution via Linux distribution package management. All files are stored in $HOME/.desura/tools and linked across the game installations.

You also need to create install checks (otherwise the game will "fail" to install)

Install Check     Game Path