Beacon. A radical scripting tool for Launchpad

Beacon is the perfect companion to Launchpad. It's our command-line utility that effortlessly interacts with the entire library of Launchpad commands – all 2,050 of them!

Geek Out

Be a Super Geek

Script powerful macros with a little help from Hostineer. If Launchpad can do it, so can you.

Flexible Pipelining

Flexible Pipelining

Beacon pipes its output as human-readable, JSON, and native bash data types.

Access Anywhere

Access Anywhere

Beacon can be run anywhere, including your desktop.

Hall of Fame Snippets

Impress your boss, your friends, your mother, or even yourself with these Herculean feats of keyboard kungfu.

Find out what platform release your account is on.

beacon eval misc_platform_version

Quickly take control of all files in the current directory bypassing discretionary access controls.

beacon eval file_chown `realpath .` `whoami` 1

Randomly generate a new password for the specified user.

newpasswd username

function newpasswd { user=$1 password=`tr -cd '[:alnum:]' < /dev/urandom | fold -w12 | head -n1` beacon eval auth_change_password $user $password && echo "$user new password: $password" }

Create a new MySQL database and immediately access it.

mkdb dbname

function mkdb { prefix=`beacon eval common_get_service_value mysql dbaseprefix` db=$1 beacon eval sql_create_mysql_database $db && beacon eval sql_add_mysql_backup $db && mysql ${prefix}${db} }

Enumerate domains, check WordPress version and update if necessary.

# () also works in lieu of declare -a... declare -a DOMAINS=$(beacon eval --format=bash aliases_list_aliases) for domain in ${DOMAINS[@]} ; do STATUS=$(beacon eval wordpress_is_current $domain) if [$STATUS == 0]; then continue ; fi beacon wordpress_update $domain done

Grant read, write, execute permissions recursively to the named user

addacls username path

function addacls { user=$1 path=`realpath $2` beacon file_set_acls $path $user 7 "[recursive:1]" }

Creates a new addon domain, then installs WordPress, Drupal, or any web app. ${n,,} takes the parameter n and converts to lowercase in bash v4+ using case modifiers.

newdomain domain [wordpress|drupal|joomla|laravel|ghost]

function newdomain { domain=${1,,} app=${2,,} path=/var/www/${domain} beacon eval aliases_add_shared_domain $domain $path beacon eval aliases_synchronize_changes beacon eval ${app}_install $domain }