Package Details: cros-container-guest-tools-git r334.d0714026-1

Git Clone URL: https://aur.archlinux.org/cros-container-guest-tools-git.git (read-only, click to copy)
Package Base: cros-container-guest-tools-git
Description: Linux guest tools for the Crostini containers on ChromeOS
Upstream URL: https://chromium.googlesource.com/chromiumos/containers/cros-container-guest-tools
Keywords: chromeos containers crostini lxc
Licenses: custom
Submitter: ava1ar
Maintainer: mshaugh
Last Packager: mshaugh
Votes: 17
Popularity: 0.074927
First Submitted: 2018-05-23 06:53 (UTC)
Last Updated: 2022-04-14 12:38 (UTC)

Latest Comments

1 2 3 4 5 6 .. 10 Next › Last »

nickray commented on 2022-07-13 21:42 (UTC)

This package sets gtk-font-name = Roboto 10 in /etc/gtk-3.0/settings.ini but does not (even optionally) depend on ttf-roboto. Might be good to add? It took me a bit to figure out why e.g. Firefox's UI fonts (which were set to Liberation Mono) looked a bit "broken".

felipecrp commented on 2022-06-11 13:55 (UTC)

After running the run_container.sh manually, I rebooted and tried to open arch without running the run_container.sh and it worked - in fact, when I open the terminal for the first time it shows an error, but if I open another tab seconds later it works.

I observed that the lxc config is set for the container. Maybe, if we just set these parameters the garcon would work without the need of the run_container.sh (which would be deprecated).

$ lxc config show penguin
(...)
devices:
  container_token:
    path: /dev/.container_token
    required: "false"
    source: /run/tokens/penguin_token
    type: disk
  ssh_authorized_keys:
    path: /dev/.ssh/ssh_authorized_keys
    required: "false"
    source: /run/sshd/penguin/authorized_keys
    type: disk
  ssh_host_key:
    path: /dev/.ssh/ssh_host_key
    required: "false"
    source: /run/sshd/penguin/ssh_host_key
    type: disk
(...)

felipecrp commented on 2022-06-10 11:46 (UTC)

@EuphoricCatface I have the same problem. After starting run_container.sh manually I was able to start garcon and run arch from crostini terminal.

jgreen1tc commented on 2022-05-03 20:30 (UTC)

Out of curiosity, is anyone using this package able to create backups of the container using the Linux Backup and Restore option in the ChromeOS settings? I made a couple recently, but after some updates to ChromeOS and ultimately needing to do an ugly restore of a previous backup, I'm not able to create a backup with the integrated settings. Just checking I guess I could always come up with my own backup solution

EuphoricCatface commented on 2022-04-17 11:11 (UTC) (edited on 2022-04-17 11:26 (UTC) by EuphoricCatface)

Seems like you have to start the container with vmc container, e.g. vmc container termina arch. Starting with lxc console ... makes the container's garcon to fail, and starting with run_container.sh makes vmc to not recognize the container instance.

Well that's a bit anticlimactic :P

Long story short:

  1. Check if your container has eth0 ipv4 network connection after a restart. If it doesn't, apply the LXD workaround.
  2. Once you're set up with your container, make sure that the container is started with vmc container ... command before letting the crostini system take care of it. If you're unsure, you can copy the container with lxc command.

After all this, I'll still have to figure out why my GPU acceleration is broken for me with crostini :'(

EuphoricCatface commented on 2022-04-16 07:10 (UTC) (edited on 2022-04-17 00:19 (UTC) by EuphoricCatface)

I have managed to get Garcon running correctly (fixup: MOMENTARILY!). However, it is more of a "somehow it works now and I can't afford to perform a rigorous test" thing :P

  1. I have noticed crostini reports "Failed to launch vshd for termina:arch: requested container does not exist" on attempting to create a new container with vmc container ..., after some mucking around with Termina VM. I have enabled the #crostini-multi-container flag and it may or may not have contributed to it. I simply deleted those and did not try to go further with the "does not exist" containers.

  2. I noticed that the "multi container" settings interface has all the containers' names even though I deleted most of them in lxc. I deleted them in the UI and then created a new arch container. I cannot tell if this yields a different result than using vmc container .... cros-garcon already did not fail when started manually at this point, and .container_token and ssh_authorized_keys showed up in mount output.

  3. The network problem came back again after a reboot inside the container. The workaround in https://wiki.archlinux.org/title/LXD#No_IPv4_with_systemd-networkd proved effective this time. (I may have made a typo last time :P)

  4. And then I tried turning termina off and on - .container_token and ssh_authorized_keys do not appear on mount output, and cros-garcon fails to start :'(
    I have tried starting "Terminal" app or the VM manually with vmc, and with the latter, I have tried starting arch first or penguin (debian official) first. None of them seem to make arch to mount the tokens properly

Oh well, at least I have my network working now...

EuphoricCatface commented on 2022-04-16 02:01 (UTC) (edited on 2022-04-16 07:26 (UTC) by EuphoricCatface)

@jgreen1tc: you'll have to give the --user flag on the list command as well when you want to see the user services.

Sommelier units work fine for me. It is cros-garcon that I think is critical in this case. I believe this service is the one that crostini detects and communicates through to the guest system.

EDIT: I tried to figure out what creates /dev/.container_token and /dev/.ssh/ssh_authorized_keys. <s>While I have not found the former, the latter gets listed in mount in the official debian image.</s>
run on /dev/.ssh/ssh_authorized_keys type tmpfs (rw,nosuid,nodev,noexec,relatime,mode=755)
Besides, while digging into the matter, I have also realized that /usr/lib/systemd/user/cros-garcon.service has changed to lose all the Environments= keywords, and /usr/lib/systemd/user/cros-garcon.service.d folder has gone. The environment variables still appear on env command in the official container, but not in the arch container. I am yet to figure where it gets defined. I'll try to look into the debian package's file list.

EDIT2: I see both .container_token and ssh_authorized_keys showing up in mount output.

jgreen1tc commented on 2022-04-15 19:30 (UTC)

Try to start/enable the sommelier units as user units:

systemctl --user start sommelier-x0.service

and so on. At least mine are user units. That's why I was originally trying to install the usr-share-fonts-chromeos.mount unit as a user unit. I thought I did it right (at least it installed fine for me) but ever since I haven't seen the unit when I list the unit files.

icantremember commented on 2022-04-15 13:37 (UTC)

Having similar issues as EuphoricCatface on my Duet 5 running beta 101. After successfully editing PKGBUILD and getting no errors on the aur install, I cannot 'systemctl start' (or enable) the fonts package, nor the sommelier packages from the guide -- they're all not found.

I also get the same "terminal opens and then closes" error after renaming my arch container to penguin, even after a full restart of the machine.

And don't get me wrong, I'm glad Debian works. I've got openconnect and remmina running in it just fine, but I'd really like to get arch working for Signal desktop.

EuphoricCatface commented on 2022-04-15 02:32 (UTC) (edited on 2022-04-16 02:27 (UTC) by EuphoricCatface)

I think I've got everything right with the archwiki guide, but when I put it in the place of penguin, Crostini keeps erasing the arch image

I've been using Arch on Crostini on Asus C101PA until ~10 months ago (stopped because of the small storage of 16GB), so I think I'm not too noob about this. I'm currently trying anew on my new machine Asus Spin 513.

Just in case, one thing I think I'm currently deviating from the guide is that I'm copying the arch image into penguin, not moving. Not that I think it should matter, and earlier attempts with move failed as well.

EDIT: <s>Comparing /opt/google, the official debian image has only cros-containers while the arch image has bin cros-adapta lib lost+found.</s> I'm currently on Beta 101, maybe something's updated on the beta channel?

EDIT2: Some systemd services apparently fails without showing up in $ systemctl --failed and $ systemctl --failed --user. cros-garcon fails for missing /dev/.container_token, and cros-sftp fails for missing /dev/.ssh/ssh_authorized_keys. There could be couple more failed services.

EDIT3: I've noticed I lost the network connection of the container after some reboots... I have tried applying https://wiki.archlinux.org/title/LXD#No_IPv4_with_systemd-networkd but it still doesn't work. systemctl reports version 250.4-2-arch.

EDIT4: The error message 13 was crostini being unable to reach the lxc image server. It is irrelevant to the problem where crostini deletes the container and the container lacking network
Also, the speculation on EDIT (1) was my mistake. I seem to have mistakenly compared /opt/google and /opt/google/cros-containers when I wrote it. Comparing find output doesn't give obvious differences.