feat!: add list subcommand and XDG-based config discovery#18
Merged
Conversation
be635e5 to
2ce72a9
Compare
Users need a way to inspect resolved mod lists without running a full update, and the tool previously required a writable local directory for its config file, making global installation awkward. This introduces a `vmm list` command that resolves and prints all mods (including transitive dependencies) from the current configuration, with optional JSON output for scripting. Config discovery is reworked to follow XDG conventions: vmm now looks for a local `vmm_config.toml` first, then falls back to `~/.config/vmm/vmm_config.toml`, creating the latter on first run if neither exists. A `--config` flag is also added for explicit overrides. The `cache_dir` config field is removed — the XDG config home is now always used for cached data, removing the need for users to configure this manually. BREAKING CHANGE: The `cache_dir` field is no longer read from config. Any existing `vmm_config.toml` files using `cache_dir` should remove that field; cached data now always lives under `~/.config/vmm/`.
2ce72a9 to
1c47ad1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Users need a way to inspect resolved mod lists without running a full
update, and the tool previously required a writable local directory for
its config file, making global installation awkward.
This introduces a
vmm listcommand that resolves and prints all mods(including transitive dependencies) from the current configuration, with
optional JSON output for scripting.
Config discovery is reworked to follow XDG conventions: vmm now looks
for a local
vmm_config.tomlfirst, then falls back to~/.config/vmm/vmm_config.toml, creating the latter on first run ifneither exists. A
--configflag is also added for explicit overrides.The
cache_dirconfig field is removed — the XDG config home is nowalways used for cached data, removing the need for users to configure
this manually.
BREAKING CHANGE: The
cache_dirfield is no longer read from config.Any existing
vmm_config.tomlfiles usingcache_dirshould removethat field; cached data now always lives under
~/.config/vmm/.