node-wsl
v2.0.0
Published
A wrapper for the Windows Subsystem for Linux (WSL) cli
Downloads
158
Readme
node-wsl
A wrapper for the Windows Subsystem for Linux (WSL) cli
Install
wsl:
You'll need Windows with WSL 2 to use this library. node-wsl
uses wsl.exe
under the hood.
⚠️ if Microsoft changes the
wsl.exe
interface with a future update, this package will probly break!
npm:
npm install node-wsl
yarn:
yarn add node-wsl
Usage
const { status } = require('node-wsl');
const status = await status();
assert.deepEqual(status, {
distributions: [
{
default: true,
running: true,
stopped: false,
name: 'Ubuntu',
state: 'Running',
version: '2',
},
{
default: false,
running: false,
stopped: true,
name: 'kali-linux',
state: 'Stopped',
version: '2',
},
{
default: false,
running: true,
stopped: false,
name: 'Debian',
state: 'Running',
version: '2',
},
],
runningDistributions: [
{
default: true,
running: true,
stopped: false,
name: 'Ubuntu',
state: 'Running',
version: '2',
},
{
default: false,
running: true,
stopped: false,
name: 'Debian',
state: 'Running',
version: '2',
},
],
stoppedDistributions: [
{
default: false,
running: false,
stopped: true,
name: 'kali-linux',
state: 'Stopped',
version: '2',
},
],
defaultDistribution: {
default: true,
running: true,
stopped: false,
name: 'Ubuntu',
state: 'Running',
version: '2',
},
total: 3,
running: 2,
stopped: 1,
});
API
⚠️ execa does not use a shell by default. So features like variable substitution will not work without specifying a shell
Contributors
| Name | Website | | ---------------- | --------------------------- | | Andreas Wehr | https://github.com/grmlin |
FAQ
- WSL fails because a path/file was not found
That probably if you some form of variable substitution in a path, eg.
~/backup.tar
, without specifying a shell forexeca
. Check the execa documentation for a detailed explanation.
Windows Compatibility
node-wsl
was tested with the following versions of Windows
| Version | Build | tested | | ------- | --------- | ------------------ | | 2004 | 19041.450 | :white_check_mark: |