launcher icon indicating copy to clipboard operation
launcher copied to clipboard

Added support for XDG directory standards

Open mazunki opened this issue 2 years ago • 0 comments

For a long time I've had to create symlinks in my system so that Runelite doesn't pollute my home directory. Sufficient to say, this is not fun.

I added support for XDG standards, and is now the default on both Linux and MacOS versions.

  • RUNELITE_DIR is now XDG_DATA_HOME/runelite.
  • LOGS_DIR is now XDG_STATE_HOME/runelite.
  • REPO_DIR hasn't changed: RUNELITE_DIR/repository2 (documenting what this directory means would be nice)
  • CRASH_FILES haven't changed: LOGS_DIR/jvm_crash_pid_%p.log

Furthermore, we should now use OS.getXDG("config", "runelite"), OS.getXDG("data", "runelite"), OS.getXDG("cache", "runelite"), and OS.getXDG("state", "runelite"), OS.getXDG("pictures", "runelite") to appropriately place stuff. Replace "runelite" with "runescape" if that makes more sense for certain things.

With this, we should move towards separating runescape-specific stuff from runelite specific stuff, and make sure plugins also follow up. We should probably also move configuration into the configuration directory, and add a configuration file for each plugin under a subdirectory.

Important note for Linux and MacOS users: Manually move the directories from ~/.runelite into the ones specified above! Nothing will be lost if you don't do it, but it's not automatic.

  • added support for XDG base directory. only enforced on linux and macOS
  • added linux targets to gitignore
  • added XDG variable for screenshots

mazunki avatar Jul 19 '22 02:07 mazunki