mobile-dev-inc/maestro

Maestro dumps its state files into `$HOME`

オープン

#1,798 opened on 2024/07/12

 (1 件のコメント) (0 件のリアクション) (0 人の担当者)Kotlin (824 件のフォーク)batch import
P3buggood first issuemaestro cli

Repository metrics

Stars
 (14,051 個のスター)
PR merge metrics
 (平均マージ 12d 2h) (30d で 39 merged PRs)

説明

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

コントリビューターガイド