Introduction
Web Launcher is a powerful app that allows you to remotely load your favorite webpages on a remote display (called the Viewer) from your Android phone or local computer. For example, launch links on your desktop computer, HTPC, projector, or other device all from your phone.
Features
Web Launcher features a modern, intuitive design that you can access either through a web browser or Android app. Some noteworthy features:
- launch any of your favorite links
- control the keyboard and mouse of the Viewer
- put the Viewer to sleep to save power
- a built-in sleep timer allows you to automatically put the Viewer to sleep after X minutes
- load custom links on-the-fly
- easily update your list of favorite links using Ansible
- the UI automatically adapts to your screen resolution
- easily wake up the Viewer with Wake-on-LAN or a USB device, e.g a big red button
Screenshots
The Viewer can be controlled either from either an Android device or a web browser on a PC. Below are screenshots from both interfaces:
Android App
![]() Launch your favorite links |
![]() Put the Viewer to sleep or other operations |
![]() Control the Viewer's keyboard and mouse |
Web Browser
Manage everything from an easy-to-use webpage:
Installation
Requirements
In order to use Web Launcher, you need the following:
- a computer capable of viewing the desired content (this will become the Viewer)
- a copy of the latest Lubuntu LTS ISO, burned to a CD or USB flash drive
- an Android device or computer that you will use to control the Viewer
Step 1: Viewer OS Install
The Viewer should be running the latest version of Lubuntu, preferably the latest LTS:
- download the latest Lubuntu LTS ISO and install it on the Viewer; during installation, choose the option for no login (auto-login on boot)
- install the
openssh-server
andgit
packages on the Viewer - try logging into the Viewer from your local system:
- Windows: use PuTTY
- Linux or Mac OS X: open a terminal and type
ssh <username>@<viewerhostname>
Step 2: Web Launcher Components
Once on the Viewer, install Web Launcher:
- on the Viewer, install Ansible
- checkout the
ansible-playbooks
git repo withgit clone checkout http://git/git/amartin/ansible-playbooks.git ~/ansible-playbooks
- edit the
viewer_user
variable inroles/weblauncher/viewer/defaults/main.yml
to correspond to the username you specified when installing Lubuntu - cd into the
~/ansible-playbooks
directory and run ansible withansible-playbook -i hosts --connection=local --diff weblauncher-local.yml
Note: you can simulate what Ansible will do (without actually applying the changes) using ansible-playbook -i hosts --connection=local --diff -C --skip-tags not_in_dry_run weblauncher-local.yml
Step 3: Manual Steps
Perform these steps on the Viewer:
- Login to any websites you want to use that require credentials
- By default, Web Launcher uses Chrome. However, if you prefer Firefox, configure these settings:
- edit
weblauncher-local.yml
and add a new variable undervars:
to set Firefox as the preferred browser:
- edit
vars: — preferred_browser: "firefox"
- set `browser.sessionstore.resume_from_crash` in Firefox's `about:config` to `false` to prevent the "restore session" page ([details](https://support.mozilla.org/en-US/questions/975670 details))
- install the [R-kiosk](https://addons.mozilla.org/EN-us/firefox/addon/r-kiosk/) extension
- Choose how you will wake up the Viewer:
- Wake-on-LAN: make sure your Viewer hardware is configured to use Wake-on-LAN and add your device to the android app's WOL page while it is on so the app can auto-detect your Viewer's IP address and MAC address
- USB device: follow these steps to select the desired USB device
- Click the menu in the bottom left corner and go to Preferences - Power Manager - Display tab and make sure that screen blanking, sleeping, and switching off are disabled
- Test audio, and if necessary run the
pavucontrol
program to select the desired audio device or see theset_hdmi_audio
variable indefaults/main.yml
(see below) - See
roles/weblauncher/viewer/defaults/main.yml
for some variables you can override to customize Web Launcher for your setup for fix certain software problems
Step 4: Adding Your Links
At this point, you should be able to go to http://<viewerhostname>
or http://<viewer_ip_address>
in a browser and see the Web Launcher webpage. Clicking on a link should launch it on the Viewer.
To customize the list of links:
- edit
weblauncher-local.yml
and change the list of links under thelinks
variable. The format of each line is first the text to display on the webpage and then the link. - run the ansible playbook again (using the same command you used in Step 2)
Step 5: Android App
You can control the mouse and keyboard on the Viewer and launch links using the Web Launcher Android app. To download the app, click here or do the following:
- Enable Third-Party Sources on your Android device
- visit
http://<viewerhostname>
in a browser on your Android device and click on the button to download the app; after it downloads to your device, click on it in your notifications drawer and install it - Launch the Web Launcher app. It should automatically detect and connect to the Viewer. If this is your first time running the app, you should click the power button (WOL) and add your Viewer's hostname while it is online. The app will then attempt to auto-detect your Viewer's IP address and MAC addres. You can then click on its entry on the WOL page to wake it up or load its list of links. You should now be able to launch links and use the mouse and keyboard from your Android device
Contributing
Would you like to help make Web Launcher even better? Submit your pull requests or ideas on Github:
Acknowledgements
The Web Launcher project would not be possible without the help of these great resources: