Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ReaScript APIs for enumerating and installing/removing packages #37

Open
Bindernews opened this issue May 23, 2021 · 2 comments
Open

Comments

@Bindernews
Copy link

Bindernews commented May 23, 2021

I'm working on a setup tool for reaper, with the ability to parse and assign keyboard shortcuts (working), mouse modifiers (in progress), settings (todo), and hopefully install reapack packages. The problem is that while ReaPack has APIs for adding repositories, there's not an API for queuing things to be installed, or for enumerating the available packages.

I can see about submitting a PR, but I'm not at all familiar with the code so it might take me a while.

EDIT: Suggested APIs

  • bool ok, string name = reaper.ReaPack_EnumRepositories(int index)
  • PackageEntry retval, string error = reaper.ReaPack_EnumRepositoryPackages(string repo_name, int index)
  • bool ok, string error = reaper.ReaPack_InstallPackage(string repo, string name, string | nil version, int pin, bool reinstall)
    • If version is nil, the package will be uninstalled
    • if reinstall is true, the package will be force-reinstalled
    • pin==0: no pin, pin==1 pin to given version, pin==2 user preference
  • bool ok, string version = reaper.ReaPack_EnumPackageVersions(string repo, string package, int index)
@nikolalkc
Copy link

This would be very useful. I completely agree.

@MichaelPilyavskiy
Copy link

Since reapack doesn't support dependencies, I get a million times of "what to do? it require another package", so a huge +1 from me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants