janet-lang / jpm

Janet Project Manager
MIT License
68 stars 22 forks source link

Using global configuration file #11

Closed pyrmont closed 2 years ago

pyrmont commented 3 years ago

According to the man page:

https://github.com/janet-lang/jpm/blob/2547d00d5aa084dadafede4a8be30269f05cbf84/jpm.1#L198-L201

Is this correct? I tried created a jpmconf.jdn file in my home directory that contained the following:

{:tree "modules"}

which I thought would cause all invocations of jpm to run as if the --tree=modules command line switch had been set but that doesn't seem to be the case.

bakpakin commented 2 years ago

The :tree option is a shortcut for modifying an existing config. You are basically bypassing the entire config system, so no default values are found.

Instead, either modify or copy the system config, and then add :tree "modules". Or use :local true.

sogaiu commented 2 years ago

ATM, I'm not finding any code that implements processing from $HOME/jpmconf.jdn -- though perhaps I missed it.

I think ATM it's preferrable for people who want to override the configuration to make use of the JANET_JPM_CONFIG environment variable.

Regarding a location for jpmconf.jdn, to get this to work on multiple platforms, I don't think under $HOME is so good (e.g. Windows). But also, even for some platforms with $HOME, perhaps xdg-related locations might be preferred. So it seems like support might end up with a platform-specific location.

At any rate, for the moment, to reduce future confusion, would a PR to remove the reference to $HOME/jpmconfig.jdn from the man page be accepted?