Scuttlebot Package Manager (ssbpm)
A decentralized package manager built on secure-scuttlebutt. Unlike gx, it supports version ranges.
This is the earliest release of something that might deserve the name "package manager". Lots of features are missing, and there will be breaking changes.
docs folder for more details on the datafile and the commands.
Usage is currently very primitive: edit the datafile by hand, and run
spm install or
An incomplete list of potential features:
- commands to manipulate the datafile
- support petnames in these commands
dataentry in the datfile to attach arbitrary data to
- allow additional data on
previousreferences in messages (e.g. for changelogs)
- hooks and plugins (collections of hooks)
- more control over resolution of conflicting versions
- check for validity of
previousreferences before publishing
- check for negative votes when resolving dependencies with an open version range
- gui for module browsing and flagging
- robust error handling (e.g. retries, detected too large blobs/messages, etc.)
- automatically split blobs and messages that are too large
Features that might actuall not be good ideas:
- provide commands to manipulate the datafile based on version numbers/ranges
- more expressiv version specifications (e.g. ranges with lower and upper bounds)
- more detailed versioning (e.g. break - feature - patch)
- resolve dependencies from the filesystem, git, ipfs, etc.
- some notion of dev-dependencies
- specify plugins by hash and automatially install them if necessary
- specify default cli arguments in datafile
- command to create a package
Built with git-ssb-web