Open bartekpacia opened 3 months ago
Some users don't like when programs write tmp/state/config files to their $HOME (me included).
$HOME
Upon installation, Maestro creates the ~/.maestro directory and stores some data there.
~/.maestro
There exist a spec called XDG Base Directory Specification. Maestro should follow it.
$ ls -1F ~/.maestro bin/ deps/ lib/ sessions tests/ tmp/ uuid
I suggest the following:
bin/
/usr/local/bin
deps/
applesimutil
lib/
sessions
XDG_STATE_HOME
tests/
tmp/
XDG_CACHE_HOME
uuid
To support existing CLI installs, we should first look for ~/.maestro, and then fallback to XDG base dir spec.
~/Library/Logs/maestro
can't swipe the screen also.
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
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 theapplesimutil
binary, which we may not need soon, see #1797lib/
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
~/Library/Logs/maestro
(at least on macOS) (code link)