Skip to content

Pain when installing a forked plugin #1461

@Zankoku-Okuno

Description

@Zankoku-Okuno

I've made a fork of a plugin, and wanted to install it through package control now rather than wait for upstream (which is already in the default channel). I did eventually get it working, but only after some hours of attempted magic, most of which I have not bothered to report.

tl;dr:

  • No ability to point at a single github repository holding a single package?
  • Is the name of a release on github significant? I couldn't find any documentation to this effect
  • Are pre-release versions ignored? Again, I could not find such documentation.
  • This story can't be that uncommon (I'm the fifth fork of this same package), so I was surprised to only see it directly addressed in an issue, and then only sparingly.

I was at first misled by Add Repository, thinking it meant to add a git repository that holds a sublime package. I therefore used Add Repository typing https://github.com/Zankoku-Okuno/sublime-MoveByParagraph. This silently failed to find my package, even watching the console output. I'll admit the documentation /is/ clear, even if it doesn't call out this confusion explicitly. However, it got me thinking: why not allow this method, since it's far more streamlined than what I eventually ended up doing?

Following the advice of #258 (which perhaps should belong in the documentation), I created a github repo holding a package control repo—and if that's not an easy-to-communicate concept, I don't know what is /s. I didn't want to add a repository.json to my fork directly, as I didn't want it submitted back upstream. I made a 1.2.3-beta release in my fork and attempted to install. Package Control did find my git repo, but installed an unmodified version.

Finally, I made a new release, being very careful to mimic upstream's releases (you know, because cargo-cult works if you do it well enough). I'm not sure if the name of the release matters, or that beta releases aren't recognized. If the former, I couldn't find this in the documentation. If the latter, I couldn't find any documentation to the effect of ignoring pre-release versions.

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