Atom-Package-Deps is a module that lets your atom package depend on other atom packages, It's quite simple and shows a nice progress bar as a notification as the packages are installed.
You need to have an array of package deps in your package manifest, like
{
"name": "linter-ruby",
...
"package-deps": ["linter"]
}
If you need to install package deps from a source other than https://atom.io, suffix a #
character followed by a git remote (in any format supported by apm install
):
{
"name": "linter-ruby",
...
"package-deps": ["linter#steelbrain/linter"]
}
If you need to install specific version of a package, you can add the minimum required version to the package name (semver doesn't work!), like this
{
"name": "linter-ruby",
...
"package-deps": ["linter:2.0.0"]
}
Because the package installation is async, it returns a promise that resolves when all the dependencies have been installed.
'use babel'
module.exports = {
activate() {
// replace the example argument 'linter-ruby' with the name of this Atom package
require('atom-package-deps')
.install('linter-ruby')
.then(function() {
console.log('All dependencies installed, good to go')
})
},
}
export function install(packageName, showPrompt = true)
Installation Prompt
Installation Progress
Installation Complete
This project is licensed under the terms of MIT license, See the license file or contact me for more info.