UNPKG

node-snapd

Version:

nodejs client interface to ubuntu core snapd api

136 lines (87 loc) 5.01 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Home - Documentation</title> <script src="scripts/prettify/prettify.js"></script> <script src="scripts/prettify/lang-css.js"></script> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <link type="text/css" rel="stylesheet" href="styles/prettify.css"> <link type="text/css" rel="stylesheet" href="styles/jsdoc.css"> <script src="scripts/nav.js" defer></script> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <input type="checkbox" id="nav-trigger" class="nav-trigger" /> <label for="nav-trigger" class="navicon-button x"> <div class="navicon"></div> </label> <label for="nav-trigger" class="overlay"></label> <nav > <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="SnapClient.html">SnapClient</a><ul class='methods'><li data-type='method'><a href="SnapClient.html#abort">abort</a></li><li data-type='method'><a href="SnapClient.html#connect">connect</a></li><li data-type='method'><a href="SnapClient.html#disable">disable</a></li><li data-type='method'><a href="SnapClient.html#disconnect">disconnect</a></li><li data-type='method'><a href="SnapClient.html#enable">enable</a></li><li data-type='method'><a href="SnapClient.html#info">info</a></li><li data-type='method'><a href="SnapClient.html#install">install</a></li><li data-type='method'><a href="SnapClient.html#listInterfaces">listInterfaces</a></li><li data-type='method'><a href="SnapClient.html#listSnaps">listSnaps</a></li><li data-type='method'><a href="SnapClient.html#login">login</a></li><li data-type='method'><a href="SnapClient.html#logout">logout</a></li><li data-type='method'><a href="SnapClient.html#modify">modify</a></li><li data-type='method'><a href="SnapClient.html#modifyInterface">modifyInterface</a></li><li data-type='method'><a href="SnapClient.html#readAuth">readAuth</a></li><li data-type='method'><a href="SnapClient.html#refresh">refresh</a></li><li data-type='method'><a href="SnapClient.html#remove">remove</a></li><li data-type='method'><a href="SnapClient.html#rest">rest</a></li><li data-type='method'><a href="SnapClient.html#revert">revert</a></li><li data-type='method'><a href="SnapClient.html#status">status</a></li><li data-type='method'><a href="SnapClient.html#switch">switch</a></li></ul></li><li><a href="SnapdError.html">SnapdError</a></li></ul> </nav> <div id="main"> <section class="package"> <h3>node-snapd 1.0.0</h3> </section> <section class="readme"> <article><h1>node-snapd</h1> <p><em>nodejs client interface to ubuntu <a href="https://github.com/snapcore/snapd/wiki/REST-API">core snapd rest api</a></em></p> <img src=https://img.shields.io/npm/v/node-snapd.svg> <p>With node-snapd, you can now easily introspect the Snapd host and the installed Snap packages.</p> <p>[](API Documentation)</p> <pre class="prettyprint source"><code>const Snapd = require('node-snapd') let snapd = new Snapd() const snapList = await snapd.listSnaps() console.log(snapList) const coreInfo = await snapd.info({name: 'core'}) console.log(coreInfo) </code></pre> <p>When run with elevated permissions you can also install and configure applications in the system.</p> <pre class="prettyprint source"><code>const vectrId = await snapd.install({name: 'vectr'}) </code></pre> <h2>Defaults</h2> <ul> <li>SnapClient.authFile: <code>$HOME/.snap/auth.json</code></li> <li>SnapClient.socketPath: <code>/run/snapd.socket</code></li> </ul> <h1>Developing</h1> <p>To develop you will need to install</p> <ul> <li>nodejs</li> <li>yarn</li> <li>snapd</li> </ul> <p>To interactively develop run:</p> <pre class="prettyprint source"><code>yarn yarn watch </code></pre> <h2>Tests</h2> <p>To run tests:</p> <p><code>yarn test</code></p> <h1>Further Reading</h1> <ul> <li><a href="https://medium.com/roshub/introducing-node-snapd-2199c80c6bed">Annoucement Blog Post</a></li> <li><a href="https://www.npmjs.com/package/node-snapd">NPM Page</a></li> <li><a href="https://github.com/snapcore/snapd/wiki/REST-API">Snapd REST API</a></li> </ul> <h1>Credits</h1> <p><a href="https://roshub.io"><img src=https://github.com/roshub/vapor_master/raw/master/icons/roshub_logo_cropped_large.png width=300></a></p> <p>node-snapd is open source software developed by <a href="https://roshub.io">RosHub Inc.</a></p> <ul> <li>Philetus Weller</li> <li>Alan Meekins</li> </ul></article> </section> </div> <br class="clear"> <footer> Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Wed Jul 17 2019 01:12:54 GMT-0700 (Pacific Daylight Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme. </footer> <script>prettyPrint();</script> <script src="scripts/polyfill.js"></script> <script src="scripts/linenumber.js"></script> </body> </html>