Skip to content

Add support for the XDG Base Directory Specification #104

Open
@severen

Description

@severen

I recommend storing:

  • ~/.multirust/toolchains under $XDG_DATA_HOME/multirust.
  • ~/.multirust/default, ~/.multirust/overrides and ~/.multirust/version under $XDG_CONFIG_HOME/multirust.
  • ~/.multirust/cache and ~/.multirust/update-hashes under $XDG_CACHE_HOME/multirust.

You can find the specification here.

This blog post lists the advantages of using the XDG Base Directory Specification as follows:

  • $HOME is a lot less cluttered.
  • Backups are a lot more safer and easier (you know that creating a backup of your $XDG_DATA_HOME along with your files is enough).
  • A lot easier to reset a default configuration if you want/need it (and without any risk of loosing information).
  • Avoid some strange bugs that happen because you had a old version of some configuration file.
  • It is a lot more flexible and portable because no paths are hard-coded. You can use the XDG library that does the job for you or, if you don’t want the dependency, implementing the XDG specification is only a few lines of code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions