mobile-dev-inc/maestro

Maestro dumps its state files into `$HOME`

Open

#1.798 aberto em 12 de jul. de 2024

Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)Kotlin (306 forks)batch import
P3buggood first issuemaestro cli

Métricas do repositório

Stars
 (6.111 stars)
Métricas de merge de PR
 (Mesclagem média 12d 2h) (39 fundiu PRs em 30d)

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

Guia do colaborador