Skip to content

conform to the linux XDG specification #5649

Open
@RaafatTurki

Description

@RaafatTurki

Version

4.4.6

Environment info

  System:
    OS: Linux 5.7 Arch Linux
    CPU: (4) x64 Intel(R) Core(TM) i5-7400 CPU @ 3.00GHz
  Binaries:
    Node: 14.5.0 - /usr/bin/node
    Yarn: Not Found
    npm: 6.14.5 - /usr/bin/npm
  Browsers:
    Chrome: Not Found
    Firefox: 78.0.1
  npmGlobalPackages:
    @vue/cli: 4.4.6

Steps to reproduce

Do any of the following:

  1. use vue ui to create a project with a manual preset and then saving the preset
    this should generate the file .vuerc

  2. use vue ui to manage a project and change the UI blocks to anything other than the default positions and sizes
    this should generate the file .vue-cli-ui

  3. use vue create to create a project from a template
    this should generate the folder .vue-templates/

What is expected?

The files and folders generated by the actions above should be placed in proper XDG specific directories, these are agreed upon and are used in most UNIX based desktops.

.vuerc             -->     $XDG_CONFIG_HOME/vue/config   (~/.config/vue/vuerc as fallback)
.vue-cli-ui        -->     $XDG_DATA_HOME/vue/ui_data   (~/.local/share/vue/cli-ui as fallback)
.vue-templates/    -->     $XDG_DATA_HOME/vue/templates   (~/.local/share/vue/templates/ as fallback)

What is actually happening?

All files and folder are generated and thrown into $HOME which makes it harder to manage and keep track of as well as serving to clutter the $HOME directory.


Here's a nice breakdown of the specification as well as the full version.
This is not a breaking change, Vue could always fallback to legacy paths if the XDG ones (or their fallbacks) fail.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementintend to implementThe team has the intention to implement this feature at some point. Contribution is also welcome.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions