Is your ChromeOS Linux Terminal Broken??? Why not replace it with Gnome Terminal?

If you were like me who found their Terminal application completely broken after upgrading to ChromeOS 68.0.3431.0, you are likely irritated and mashing the update button for a fix to be delivered a few times a day. I got to thinking this afternoon of a workaround, why not replace it with something a bit more reliable – like Gnome Terminal? It turns out that it works flawlessly and is pretty easy to setup. Here are the steps;

Accessing your Virtual Machine

As a reminder, this is currently only supported on the Google Pixelbook. We will need to start by accessing your virtual machine. Fortunately this can be done from inside of the ChromeOS Shell by following the steps below:

Open a ChromeOS Terminal via (ALT + Ctrl + T) and run the following commands. Make sure you replaceĀ  <unixusername> with your gmail username (before the @gmail.com/@domain.com). If my gmail address were gmailtest@gmail.com, my unix username will be gmailtest

vmc start termina
run_container.sh --container_name=penguin --user=<unixusername> --shell

If you were dropped to a “<unixusername>@penguin” prompt, it means you are now inside of your container. The next few steps will take place inside of that container.

Installing Gnome Terminal

Run the following commands from within the container

sudo apt-get update
sudo apt-get install nano gnome-terminal

If everything went well, you should now have Gnome Terminal installed however you will need to do one additional step to allow it to show up in ChromeOS’s Application Launcher. For some reason, ChromeOS cannot use the .desktop launcher that ships with Gnome Desktop but fortunately it is very easy to create our own.

Run the following command to create the desktop entry.

sudo nano /usr/share/applications/GnomeTerminal.desktop

This will open the nano text editor and tell it to create a new desktop entry. Copy the following into that new file.

[Desktop Entry]
Name=Gnome Terminal
#GenericName=Terminal
Comment=Gnome Terminal for ChromeOS
Exec=/usr/bin/gnome-terminal
Terminal=false
Type=Application
#Encoding=UTF-8
Icon=/usr/share/icons/Adwaita/scalable/apps/utilities-terminal-symbolic.svg
Categories=System;TerminalEmulator;Utility;
Keywords=shell;prompt;command;commandline;cmd;

On your keyboard, hit Ctrl+X followed by a “Y” at the prompt to save the entry. You should now be able to locate the “Gnome Terminal” icon from within your ChromeOS Application Launcher. You can even pin this to the system shelf to give you easy access.

 

9 thoughts on “Is your ChromeOS Linux Terminal Broken??? Why not replace it with Gnome Terminal?”

  1. How was your terminal app “completely broken after upgrading to ChromeOS 68.0.3431.0”? I hadn’t heard about this. (I’m on 66.0.3359.181 and wondering what’s ahead.)

    Reply
    • When launching the ChromeOS Linux Terminal Application, it launches with the window decorations but it never drops to the bash prompt.

      Reply
  2. Have you seen this?
    “`
    $ sudo apt-get update

    We trust you have received the usual lecture from the local System
    Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

    sudo: no tty present and no askpass program specified
    “`

    Reply
  3. The Gnome Terminal works fine if I launch it through the default terminal, but if I try to launch it from the app drawer it just infinitely loads on the shelf.
    What can I do to fix this?

    Reply
      • I found a fix. When the applications stop loading/crash on startup you can type “vmc stop termina” in the Crosh, then launch your preferred terminal again and launch gui apps from there.

        Reply
  4. vmc start terminal
    Error: routine at frontends/vmc.rs:133 `vm_start(vm_name,user_id_hash,VmFeatures{gpu:matches.opt_present(“enable-gpu”),software_tpm:matches.opt_present(“software-tpm”),})` failed: component updater could not load component `cros-termina`
    crosh>

    Reply
    • Unfortunately the only fix I have come across is to rebuild your crostini instance, it seems like there is a problem with the way GPU flag was enabled between some updates.

      Reply

Leave a Reply to Keith I Myers Cancel reply

%d bloggers like this: