mobile-dev-inc/maestro

Maestro dumps its state files into `$HOME`

Open

#1 798 ouverte le 12 juil. 2024

Voir sur GitHub
 (1 commentaire) (0 réactions) (0 assignés)Kotlin (306 forks)batch import
P3buggood first issuemaestro cli

Métriques du dépôt

Stars
 (6 111 stars)
Métriques de merge PR
 (Merge moyen 12j 2h) (39 PRs mergées en 30 j)

Description

Some users don't like when programs write tmp/state/config files to their $HOME (me included).

Current behavior

Upon installation, Maestro creates the ~/.maestro directory and stores some data there.

Expected behavior

There exist a spec called XDG Base Directory Specification. Maestro should follow it.

Implementation idea

$ ls -1F ~/.maestro
bin/
deps/
lib/
sessions
tests/
tmp/
uuid

I suggest the following:

  • bin/ should be in the path made for that, e.g. /usr/local/bin (or wherever your OS package manager installs programs)
  • deps/ contains only the applesimutil binary, which we may not need soon, see #1797
  • lib/ contains JARs. Not sure where they exactly they should go (let's look at how other JVM apps do this)
  • sessions -> XDG_STATE_HOME
  • tests/ -> XDG_STATE_HOME
  • tmp/ -> XDG_CACHE_HOME (not sure what goes in there, it's always empty on my machine)
  • uuid -> XDG_STATE_HOME

To support existing CLI installs, we should first look for ~/.maestro, and then fallback to XDG base dir spec.

Additional context

Guide contributeur