user-startup

Automatically run commands when the user logs in (cross-platform)

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
user-startup
12130.2.26 years ago7 years agoMinified + gzip package size for user-startup in KB

Readme

user-startup Build Status npm version
Automatically run commands when the user logs in. Used in hotel and stop-server.

No admin privileges required Cross-platform (OS X, Linux and Windows)

Install

npm install user-startup --save

Example

const startup = require('user-startup')

const nodePath = process.execPath
const args = ['/some/path/app.js']
const out = '/some/path/out.log'

// Creates startup script and spawns process
startup.create('my-script', nodePath, args, out)

// Removes startup script
startup.remove('my-script')

Note: you should check that root isn't running this code to avoid startup scripts being created in root's home directory. Use sudo-block or is-root.

API

add(id, cmd[, args[, out]])
  • id <String> id
  • cmd <String> command
  • args <Array> optional list of string arguments
  • out <String> optional path to output file (directory needs to exist before)

Creates startup script.
create(id, cmd[, args[, out]])
Creates a startup script and spawns process.
remove(id)
Removes startup script.
dir
Returns startup script directory.
getFile(id)
Returns startup script path.

How it works

  • On OS X, it creates a plist file in ~/Library/LaunchAgents
  • On Linux, it creates a desktop file in ~/.config/autostart
  • On Windows, it creates a vbs script in AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

License

MIT - Typicode