Package repository for Sunbundler: a package manager for shortcuts. It can install packages with recursive dependencies. It lets you install and uninstall packages containing shortcuts, shell scripts, and javascript files.
Installation
Read about how to install Sunbundler in INSTALL.md.
Creating sbundles
To create sbundles, use the project editor included with ShortTerm. You can either run sbundlerX.X.X directly + enter the project's path, or run sb project editor ./project. This will launch the editor. If the project doesn't exist yet, it will prompt you to create it. Then you can edit it with a UI menu. Learn more in its man page.
.sbundle format:
sbundles are renamed .zip files with the contents:
- apps.json: { "apps": [ { "title": "appname", "id": "appbundleidentifier", "store": "appstoreurl" } ... ] }
- version.json: { "name": "packname", "num": "packver", "usid": "packshortcutname", "islib": true/false, "author": "your name", "created": "creation date", "updated": "update date", "get-latest": "https://github.com/sbundle/sbundle-repo/raw/refs/heads/master/lib/sbundles/usid/latest.txt", "update": "https://github.com/sbundle/sbundle-repo/raw/refs/heads/master/lib/sbundles/usid/usidLatest.sbundle", "datafold": "package's data folder location relative to shortcuts"}
- README.md: package README file
- lib/file/, lib/web/, bin/file/, bin/web/: required shortcuts either as
.shortcutfiles (file) or iCloud links as.txt(web). Thefilefolders can also contain shell scripts and javascript files. - deps/: group of required
.sbundlefiles - data/: initial data folder contents
Note that the only required file is version.json.
For a concrete example, see libHelloWorld or helloWorld.
future plans
- JS editor
- Widget library for UICuts
credit
Thanks, Owen Pawling for helping me make the automatic app dependency detector for sbundler.
bugs
Report all bugs in the issues tab.
contact info
Contact me at mjbrewer17@gmail.com