# Anyone succuessfully run Vision 8.1 on a chrome book, chrome os?

**URL:** <https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836>\
**Category:** Ignition\
**Tags:** ignition81, vision\
**Created:** [April 15, 2024, 4:47pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836 "2024-04-15T16:47:55Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![Carly\_Jankowski](https://avatars.discourse-cdn.com/v4/letter/c/e480ec/32.png) [@Carly\_Jankowski](https://forum.inductiveautomation.com/u/Carly_Jankowski)\
**Post date:** [April 15, 2024, 4:47pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/1 "2024-04-15T16:47:55Z")

</div>

Need a short term solution to run a Vision 8.1 client until we can get a full computer. Anyone have success running a Vision 8.1 client on a chrome book?

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [April 15, 2024, 5:09pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/2 "2024-04-15T17:09:40Z")

</div>

You can't run Vision without a Java runtime. I don't think there's any available for ChromeOS, though maybe you could get something working by getting to the underlying Linux OS?

---

<div class="post-metadata">

**Author:** ![Paul\_Clearfire](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul_clearfire/32/71718_2.png) [@Paul\_Clearfire](https://forum.inductiveautomation.com/u/Paul_Clearfire)\
**Post date:** [January 17, 2025, 10:30pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/3 "2025-01-17T22:30:31Z")

</div>

Greetings. I've got 8.1 running on ChromeOS Flex running on a Dell laptop. The main trick is that you need to enable the Linux Developer Environment, then load JRE from the "penguin" command line. You'll then download the Linux version of the client launcher from your gateway and unpack it to the "Linux Files" directory, where it will then be available in your Linux user home directory. The rest of the necessary steps are nearly the same for a standard Linux install, and are covered in this forum thread:

> [@Install Vision Client Launcher for Linux](https://forum.inductiveautomation.com/t/install-vision-client-launcher-for-linux/45024/9?page=2):
>
> Blindly dropping complete applications into a folder standardized to hold just .desktop files is begging for breakage. If you want to install for all users, expand somewhere in /usr/local/ or /usr/share or /opt, then copy just the .desktop file into /usr/share/applications/. Tweak the paths in the copied file so it points where you actually put the complete application. Similarly, if you want install just for yourself, but have the icon show in the menu properly, expand into a folder in $HOME,…

Once I've done this a few times, I plan to document all of these steps in one place and post them here and in that thread.

Hope this is helpful.

Cheers!

Paul

---

<div class="post-metadata">

**Author:** ![Paul\_Clearfire](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul_clearfire/32/71718_2.png) [@Paul\_Clearfire](https://forum.inductiveautomation.com/u/Paul_Clearfire)\
**Post date:** [February 15, 2025, 1:15am UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/4 "2025-02-15T01:15:01Z")

</div>

OK - Here are my fully fleshed out and tested instructions:

## Installing Vision Client on ChromeOS and Chrome OS Flex

### Prerequisites

1. The machine should be running either ChromeOS or ChromeOS Flex
2. Enable the Linux Developer Environment:

- The following instructions are taken from [this Google article](https://support.google.com/chromebook/answer/9145439?hl=en), which also has tips for troubleshooting and installing other linux apps.
  - On ChromeOS/Flex, at the bottom right, select the time.
  - Select Settings ![](https://us1.discourse-cdn.com/inductiveautomation/original/3X/3/7/370fff8d6c65ba090549bb4031d1fe55f8b12767.png) ![and then](https://us1.discourse-cdn.com/inductiveautomation/original/3X/7/1/7125bf051c3ca651f9ee19f396b118bccda4e9af.png) About ChromeOS ![and then](https://us1.discourse-cdn.com/inductiveautomation/original/3X/7/1/7125bf051c3ca651f9ee19f396b118bccda4e9af.png) Developers.
  - Next to "Linux development environment," select Set up.
  - Follow the on-screen instructions. Setup can take 10 minutes or more
  - A terminal window opens to a Debian environment. You can run Linux commands, install more tools using the APT package manager, and customize your shell.

- Some notes about the Linux Developer Environment.
  - Enabling this in ChromeOS creates a “virtual machine” that runs a limited version of LinuxOS Debian (called crostini) alongside ChromeOS. It is capable of running most of what is available in a typical Debian Linux installation, but not everything.
  - The virtual machine is named “Penguin” by default. So, when you run a terminal session, you will be `username@penguin`.
  - You can start a linux terminal session from the applications menu in Chrome OS (available via the little circle at the bottom left of the screen). The icon looks like… a penguin… sort of.

1. Install Java Runtime Environment (JRE) for Debian

- From the wiki at debian dot org:
  - From the terminal run:

```sh
sudo apt update

```

Then run:

```sh
sudo apt-get install default-jre

```

## Install Vision Client Launcher

1. Navigate to your Vision gateway and download the installer for Linux. The installer is compressed in a .tar package named `visionclientlauncher.tar.gz`

2. Download the installer to the “Linux Files” directory in ChromeOS or move it there after you download it (use the ChromeOS “FIles” app to find it at My Files/Linux Files, or use the `mv` command from the Linux terminal to move it to your home directory).

The next few steps are based on the threads from [this post at the Inductive Automation Users Forum](https://forum.inductiveautomation.com/t/install-vision-client-launcher-for-linux/45024/8?page=2):

1. Unpack the `visionclientlauncher.tar` package:

2. Move the unpacked `visonclientlauncher/` folder to the appropriate location, depending on if you’re installing for all users or just one:

3. Change the permissions visionclientlauncher folder:

4. Within visionclientlauncher/app, change the visionclientlauncher.sh and the launcher-vision-client-linux.jar file to be executable -

5. Using Nano, vi, or your preferred text editor, edit the copied version of the `visionclientlauncher.desktop` file that you copied in step 3 above to change the paths accordingly (see below). Note that because these directories are protected, you'll need to invoke your text editor as sudo.

6. You should now be able to load the Vision Client Launcher from the Applications pane (access from the circle icon at the bottom left of the screen)

7. Add the icon shortcut to the taskbar.

## Example edits for the visionclientlauncher.desktop file

The `visionclientlauncher.desktop` file is very important, as it provides the OS with the information needed to open the Vision Client Launcher when a user clicks on the icon in the applications folder in the Chrome OS GUI. Thus, if you don’t get this right, the application simply won’t load. The reference to the icon tells the GUI what icon to use in the applications folder and other locations. If you get this wrong then the GUI will simply choose the default “linux app” penguin icon.

I was using a shared machine, and needed the Vision program to be available just to me. So I moved the `visionclientlauncher/` folder to the root level of my home directory at `/home/paulc/`. Then I edited the `visionclientlauncher.desktop` file to look like this:

```python
[Desktop Entry]
Encoding=UTF-8
Version=1.1
Type=Application
Terminal=False
Icon=/home/paulc/visionclientlauncher/app/launcher.png
Name=Vision Client Launcher
Exec=/home/paulc/visionclientlauncher/app/visionclientlauncher.sh -Dapp.h
Path=/home/paulc/visionclientlauncher/app/

```

If you’re installing for all users, and you’ve saved to `/usr/local/` then your `visionclientlauncher.desktop` file should look like this:

```python
[Desktop Entry]
Encoding=UTF-8
Version=1.1
Type=Application
Terminal=False
Icon=/usr/local/visionclientlauncher/app/launcher.png
Name=Vision Client Launcher
Exec=/usr/local/visionclientlauncher/app/visionclientlauncher.sh -Dapp.h
Path=/usr/local/visionclientlauncher/app/

```

You get the idea. The paths for Icon, Exec and Path just need to match whatever location you’ve chosen.

Good luck!

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [February 15, 2025, 1:47am UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/5 "2025-02-15T01:47:15Z")

</div>

@Paul_Clearfire thanks for the _excellent_ post!

I took the liberty of going through and doing some quick formatting operations to make things a little nicer to read, and made your other post a backlink to this post, so if you have to make any changes in the future you only have to do it once 😄

---

<div class="post-metadata">

**Author:** ![Paul\_Clearfire](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul_clearfire/32/71718_2.png) [@Paul\_Clearfire](https://forum.inductiveautomation.com/u/Paul_Clearfire)\
**Post date:** [February 15, 2025, 2:05am UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/6 "2025-02-15T02:05:56Z")

</div>

Thank you so much, Paul. Your edits look terrific. Much clearer. I hope others find this useful.

Cheers!

P

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [February 15, 2025, 2:11pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/7 "2025-02-15T14:11:57Z")

</div>

You probably should revise your `.desktop` files to use `Version=1.1`. Some entries, like `Path=`, are ignored in 1.0 in most distros.

---

<div class="post-metadata">

**Author:** ![Paul\_Clearfire](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul_clearfire/32/71718_2.png) [@Paul\_Clearfire](https://forum.inductiveautomation.com/u/Paul_Clearfire)\
**Post date:** [February 15, 2025, 4:56pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/8 "2025-02-15T16:56:41Z")

</div>

Thanks for the tip!

---

<div class="post-metadata">

**Author:** ![Paul\_Clearfire](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul_clearfire/32/71718_2.png) [@Paul\_Clearfire](https://forum.inductiveautomation.com/u/Paul_Clearfire)\
**Post date:** [March 13, 2025, 1:41am UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/9 "2025-03-13T01:41:41Z")

</div>

@pturmel and @paul-griffith Now that I've got this working, I've realized that installing "for all users" only makes the Vision Client Launcher available, but _not_ the Linux dev environment. So somehow I need to set up each ChromeOS device in our organization such that both Vision and Crostini are pre-loaded and authorized for all users at startup. Ideally, I'd like to figure out a way to script all of this and have both Vision and Crostini force installed and authorized for all users during _device enrollment_. So... any ideas where I might get started with this? Possibly via Google Workspace Admin? Tall order... esp. since I know little of Linux and nothing of, say, Python.... but I'm willing to reach. 😀

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [March 13, 2025, 1:55am UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/10 "2025-03-13T01:55:31Z")

</div>

Every contact I've had with ChromeOS has frustrated me to no end. I don't use it at all. Sorry.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [March 13, 2025, 2:29pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/11 "2025-03-13T14:29:54Z")

</div>

:shrug:

Some google led me here, YMMV:

> **[Reddit - Heart of the internet](https://www.reddit.com/r/Crostini/comments/bujena/how_to_setup_crostini_on_a_managed_chromebook/?rdt=36995)**

---

<div class="post-metadata">

**Author:** ![Paul\_Clearfire](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul_clearfire/32/71718_2.png) [@Paul\_Clearfire](https://forum.inductiveautomation.com/u/Paul_Clearfire)\
**Post date:** [March 14, 2025, 8:01pm UTC](https://forum.inductiveautomation.com/t/anyone-succuessfully-run-vision-8-1-on-a-chrome-book-chrome-os/88836/12 "2025-03-14T20:01:24Z")

</div>

Thanks, but those instructions merely grant permissions for the use of the linux developer environment.

And now that I dig into that a bit more deeply, what I think I'm seeing is that ChromeOS sets up a unique instance of Penguin and Crostini for each individual user. Easy to see the security justification for that one. So even if I set up visionclientlauncher "for all users" that only applies to "all users" within that instance of the VM. Since each instance only has one user by definition, there's no way that can be made to work for a multi-user machine.

So, I think to make this work, we'll need to turn to something like a multi-boot solution. Something that will load a full Linux VM alongside Chrome, and then we'll need to load the .desktop file somewhere that all chrome users will see, and point it to the app running on the VM. I don't know how to do any of this yet, but as I say, willing to reach ;-).
