Skip to content

Instantly share code, notes, and snippets.

@bzub
Last active January 24, 2024 12:15
Show Gist options
  • Save bzub/65aabace4a60874c61ece4838b6219f3 to your computer and use it in GitHub Desktop.
Save bzub/65aabace4a60874c61ece4838b6219f3 to your computer and use it in GitHub Desktop.
Fix Crostini Wayland/X (sommelier) service

If you can't get X11 or Wayland GUI Linux apps to start anymore on Chrome OS, try the following.

In the Terminal app, this will show the status of your systemd user services/units:

systemctl --user

If [email protected] and [email protected] show a failed status, the following worked for me:

sudo ln -s /opt/google/cros-containers/bin/sommelier.elf /usr/bin/
systemctl --user restart [email protected]
systemctl --user restart [email protected]
export DISPLAY=:0

Check again to see if those services are started now:

systemctl --user

Hopefully now X/Wayland apps work again.

xclock
@dimpase
Copy link

dimpase commented Aug 20, 2018

The Chrome launcher does not start these apps, however (it used to work before). So I need to launch them from the terminal.

@jpelton-stroud
Copy link

jpelton-stroud commented Aug 23, 2018

just got the dev update on my pixelbook i5, sadly fix isn't working for me. only [email protected] is failing:

$ systemctl --user
● [email protected]               loaded failed     failed    X11 sommelier at display 0                    

$ sudo ln -s /opt/google/cros-containers/bin/sommelier.elf /usr/bin/
ln: failed to create symbolic link '/usr/bin/sommelier.elf': File exists

$ systemctl --user restart [email protected]
Job for [email protected] failed because the control process exited with error code.
See "systemctl status [email protected]" and "journalctl -xe" for details.

$ systemctl status [email protected]
Unit [email protected] could not be found.

$ sudo journalctl -xe
-- 
-- Unit UNIT has finished shutting down.
Aug 23 20:51:03 penguin systemd[93]: Starting X11 sommelier at display 0...
-- Subject: Unit UNIT has begun start-up
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- Unit UNIT has begun starting up.
Aug 23 20:51:03 penguin sommelier[1226]: error: failed to create virtwl context: No such device
Aug 23 20:51:03 penguin systemd[93]: [email protected]: Main process exited, code=exited, status=1/FAILURE
Aug 23 20:51:03 penguin systemd[93]: Failed to start X11 sommelier at display 0.
-- Subject: Unit UNIT has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- Unit UNIT has failed.
-- 
-- The result is failed.
Aug 23 20:51:03 penguin systemd[93]: [email protected]: Unit entered failed state.
Aug 23 20:51:03 penguin systemd[93]: [email protected]: Failed with result 'exit-code'.
Aug 23 20:51:03 penguin systemd[93]: [email protected]: Service hold-off time over, scheduling restart.
Aug 23 20:51:03 penguin systemd[93]: Stopped X11 sommelier at display 0.
-- Subject: Unit UNIT has finished shutting down
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- Unit UNIT has finished shutting down.
Aug 23 20:51:03 penguin systemd[93]: [email protected]: Start request repeated too quickly.
Aug 23 20:51:03 penguin systemd[93]: Failed to start X11 sommelier at display 0.
-- Subject: Unit UNIT has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- Unit UNIT has failed.
-- 
-- The result is failed.
Aug 23 20:51:03 penguin systemd[93]: [email protected]: Unit entered failed state.
Aug 23 20:51:03 penguin systemd[93]: [email protected]: Failed with result 'exit-code'.

tried running export DISPLAY=:0 before systemctl --user restart [email protected], no change.

Any ideas would be greatly appreciated.

update:
reboot, launch terminal app, systemctl --user shows [email protected] running;
starting the launcher while terminal is running crashes the GUI (which then reloads automagically);
rerunning systemctl --user in still open terminal app shows [email protected] failed, and none of the above steps seem to revive it.

@dimpase
Copy link

dimpase commented Aug 27, 2018

@jpelton-stroud - I also did see this, and some reboots fixed it.

I think chrome launcher for x11/wayland apps is currently broken, and trying to use it actually leads to this error on the container. Not using it, but just the terminal, to start x11/wayland apps does work.

@Lucaacer
Copy link

Lucaacer commented Sep 2, 2018

It seems that both services are running on my Lenovo Pyro, but I will make a further check.

[email protected] loaded active running X11 sommelier at display 0
[email protected] loaded active running Master sommelier listening on socket wayland-0

Thanks for the hint.

@williamwilkerson2
Copy link

How to disable X Wayland and enable X Org on Crostini?

@vdegenne
Copy link

vdegenne commented Dec 29, 2020

You are such a genius... Thanks a tone !
Has this issue been reported to the Chrome OS team by the way? Seems like a bug after all.

@TheTechRobo
Copy link

Thank you very much! This worked.

@DarkevilPT
Copy link

and how to fix the android container if it freezes?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment