Page MenuHomePhorge

Tool to manage Extensions Installation (Phorge)
Open, WishlistPublic

Description

I'm playing with a cli utility for installing/managing extensions in Phorge.

My plan so far:

  • add a script in ./bin/extensions that is actually a symlink to arc binary
    • arc has a built-in support for "toolsets", which is essentially different groups of workflows that use argv[0] to filter.
    • Using arc directly here prevents the script from trying to load installed extensions, which may be broken or missing (or evil). It will only load arcanist and phorge libraries.
    • Using arc this way also skips loading some other parts of Phorge, which I hope won't be a problem.
  • The workflows for this script will include install --from-git <git-url>, list, remove, upgrade-all, for now.
    • eventually, install will learn to use the app store from T15030.
  • These tools will directly manipulate conf/local.json, and another file which will include some metadata about installed/cached/etc. extensions.
  • For actual installation, there'll be some directory somewhere where the script will dump all the extensions, and will update load-libraries in local.json.

No web component at this time, and maybe not ever - installing an extension basically allows full access to the server, so for security reasons we should require full access to the server before you can do that.


Ref Q91 (NixOs package managers like having read-only filesystem, so find a way to work with that).

Event Timeline

avivey triaged this task as Wishlist priority.Feb 3 2024, 10:30
avivey created this task.