Command line tools for runtime.js
.
npm install -g runtime-cli
USAGE: runtime <command> [<args>]
Commands:
start Quickly start runtime.js VM using current directory
watch Watch current directory and automatically restart runtime.js VM
pack Package specified directory into ramdisk bundle
run Run runtime.js VM using specified ramdisk bundle
show Print VM output or log
mkimg Easily create a disk image for use with runtime.js
help Print this usage help
To setup a project simply install runtimejs
package as a dependency. It doesn't need to be require()
-d anywhere, just make sure it exists in node_modules
.
mkdir project
cd project
npm install runtimejs
echo "console.log('ok')" > index.js
Run project in QEMU VM:
runtime start
Or let it watch directory for changes and restart QEMU automatically:
runtime watch
start
, watch
and run
commands are very similar and have pretty much the same list of arguments. They all launch runtime.js in the QEMU VM.
USAGE: runtime start [<args>]
(Quickly start runtime.js VM using current directory)
Arguments:
--net Enable network (value can be "none", "user", "tap" or
"bridge", defaults to "user")
--netdump Save network activity to a file
--kvm Enable Linux KVM (much faster virtualization)
--curses Use text-mode graphics
--port Redirect TCP/UDP connections on the host port to the runtime.js
--append Append string to runtime.js command line
--dry-run Test input but do not launch the VM
--verbose Output extra info like VM command line
--virtio-rng Enable VIRTIO-RNG entropy source for the runtime.js
--nographic Disable graphics, run in command line mode
--kernel Specify custom kernel binary file to use
--local Download the kernel locally (i.e. in the module's directory)
pack
packages directory into ramdisk/initrd bundle. This is useful if you'd like to ship compiled bundle somewhere and don't want to run it locally.
USAGE: runtime pack [<args>] <directory>
(Package specified directory into ramdisk bundle)
<directory> Directory to package
Arguments:
--list-files List packaged files only
--ignore Add file ignore pattern
--entry Set entry point import/require string (defaults to "/")
--add-dir Add a directory into the package (format: <path> or <path>:<package-path>)
mkimg
creates a FAT disk image for use with runtime.js. On some systems, you may need to use root/administrator privileges. Depends on qemu-img on all platforms, hdiutil and diskutil on macOS (builtin), losetup and mkfs.msdos on Linux (included on most distributions), and diskpart on Windows (bulitin).
USAGE: runtime mkimg [<args>] <filename>
(Easily create a disk image for use with runtime.js)
<filename> The filename for the newly created disk image including the extension,
default to "disk.img"
Arguments:
--size Size of the new image, defaults to 1 gigabyte. See `qemu-img --help` for sizes.
Must be >= 33792 kb (~33 mb)
--label Label of the new image, defaults to "RUNTIMEJS"
Enables tab-completion for all commands.
runtime completion >> ~/.bashrc
runtime completion >> ~/.zshrc
Apache License, Version 2.0