Skip to content

Feature request: install a spoon from a git repository #350

@offbyone

Description

@offbyone

This is similar to #255, but it's not the same thing.

I'd love it if SpoonInstall supported unpackaged spoons in a git repository. Allow the addition of a git repo to the repos list like this:

spoon.SpoonInstall.repos.unpacked = {
  url = "https://github.com/offbyone/Spoons",
  layout = "git",
  desc = "My personal spoons",
  ref = "main",
}

The layout would be:

root/
  Spoons/
    MyNiftySpoon.spoon/
      init.lua
      README.md
    MyLessImpressiveButStillCoolSpoon.spoon/
      init.lua
  README.md

This would open up the ability to host spoons in a much less painful way -- I know, because I have a relatively complex GitHub Actions setup to build the spoon zip for my own spoons repository too! -- by simply having a git repository at the URL that contains the spoon code, and instead of having to have Spoons/*.spoon.zip in the repository, the developer could have the uncompressed Spoon content.

I'd propose a couple of options out of the gate for flexibility:

  • ref should support tags, branches, and pinned refs
  • relative_path should default to Spoons/ but could be configured

spoon.SpoonInstall's installation commands would act by cloning the repository, checking it out to the specified ref, and copying the spoon into the correct place.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions