Sublime Forum

Best practices for plugin-deployment and packaging


I’ve developed a plugin called autogit that will autocommit to a git repository on every file save. …

This works great. But when I’m deploying this to other users, I’m wondering what is the best practice for packaging the plugin, especially when another python module (pygit2) and native libraries (libgit2) are involved?

Chris Parnin



Most everyone uses Package Control to distribute plugins, and that takes care of packaging.

As for third-party packages, there’s no real elegant solution AFAIK. Normally people just include them in the plugin directory and modify sys.path.



For a situation where you need to include code for specific platforms and architectures you can specify different packages for those, or you can create a single package with all of the files and choose the correct folder to add to sys.path by checking sublime.platform() and sublime.arch(). If you look at the SVN package I wrote, you’ll see how I am handling for linux on different architectures and versions of Sublime Text.



Thanks. I was able to successfully set up things in package control.