As Android devices have the super duper record of keeping things up-to-date promptly, I decided against going for a android tablet. As it is a wasted dead end wrt updates.
So instead I went with Chromebook Tab 10, because
- it is a decent enough Tablet with ChromeOS,
- so guarenteed support for 5 years
- security as well as new versions, well chrome os good in that sense
- Now Chrome OS supports Android, so I can use and or experiment with android apps on it.
- Now Chrome OS as support for Linux (including on this device), so I can do my linux related experiments on this
- well except for linux kernel level stuff (unless I don’t mind running a non-kvm emulator inside the container)
- And with a decent bluetooth keyboard, it can become a laptop (albeit bit bulky, but then again, only if I want it to be a laptop).
1.I) ISSUE 1
But good luck or bad luck, I ended up with a strange issue that after the 1st update for the device into v72, I never got the next update. Even thou other Chrome OS devices seemed to have been updated.
I searched and finally found a online location, which tells which chrome os device has what update. And inturn a way of checking if everyone is on the same boat or only me.
https://cros-omahaproxy.appspot.com
And strangely enough it also seemed to indicate that there is no update available for Tab 10 and few other OP1 based devices.
But then again, this didn’t make sense at one level, unless Google was reneging on their promise of guarenteed (TIMELY) updates. If not timely whats the use at one level.
So did further search and found, ok there is a Chrome OS/Device recovery app. And lo and behold, it is not supported on linux directly (seriously, a linux device related helper recovery gui not supported on linux, but all other OSs), but luckly they do provide a linux host based helper recovery script.
https://dl.google.com/dl/edgedl/chromeos/recovery/linux_recovery.sh
Or rather get the latest link from (Recover Your Chromebook support/help center page)
https://support.google.com/chromebook/answer/1080595?hl=en
And as strange as things could be even thou the Device itself and cros-omahaproxy was telling that the latest available version is v72, the recovery tool was properly downloading a v73 image as the recovery image for Chrome Tab 10.
1.F) FixForIssue1
The above being a contradicting and odd situation. Looked into the meta data in the recovery image, and it seemed to indicate that the match filter specified in the update image and the value of corresponding field on the target don’t match one another.
Tried contacting google on twitter, didn’t seem to have helped. Missed out on the related Bug in the Bug list. Luckily few days after this, google team seems to have found the issue on their own also.
https://bugs.chromium.org/p/chromium/issues/detail?id=951376#c11
And finally Tab 10 jumped throu v73 and into v74 in quick succession.
2.I) ISSUE 2
Now I find a different issue, the signing key used for signing google’s linux related apps/packages/distro expired sometime in the last 1 month and they had not planned on transitioning to new key well in time. This also means one is not able to update the linux distro provided by them, with in crostini the linux maya of Chrome OS in a safe way.
On Top, According to info in their bug list, they seem to have fixed the issue by re-signing all packages with new keys. But something seems to be amiss in their system, because for a custom container I created with-in crostini, the bug persists. While the default Penguin container is fine now. Have to debug this further later.
However if I use linux distro images from other sources, I potentially escape the problem. But then again, I wanted to depend on Google, but, but, but…
2.F) FixForIssue2WrtCrostini+
The problem seems to be that containers created using run_container.sh as well as any previously created google provided default debian/stretch containers will refer to the below server path for their metadata and packages in
/etc/apt/sources.list.d/cros.list
deb https://storage.googleapis.com/cros-packages stretch main
And the packages (and metadata, if debian validates them, haven’t checked, but ideally it should) in this path are signed using the old (and no longer valid) key. So apt-get update fails.
However containers created using vmc container testvm testc refer to a new server path for their metadata and packages in
/etc/apt/sources.list.d/cros.list
deb https://storage.googleapis.com/cros-packages/74 stretch main
And packages (and metadata …) in this path seem to be signed using the new key. So apt-get update flies smoothly.
Google bhai, behan, maibap, please provide info about such intricacies somewhere, when fixes are done. Otherwise people have to scratch their head and or dig around unnecessarily.
2.N) Additional note
The default Termina VM created by cros has lxc remote name google pointing to https://storage.googleapis.com/cros-containers
While any additional VM created using vmc start testvm, seems to have lxc remote name google pointing to https://images.linuxcontainers.org. However run_container.sh automatically seems to reset name google to proper url, not sure if vmc container also does the same or not, before creating a new container. Have to check.
Have a response on the buglist, where a googler has informed that run_container.sh is deprecated, so to use vmc going forward or else lxd tools directly. If google could have added a message to run_container.sh itself telling its deprecated would have been great. Also do remember that if creating a new container using vmc or lxc, from any image other than the one provided by google, then it may not have the cros related integration packages by default. One may have to do it manually. Have to check this.
Also one more thing for now is that Linux on Chrome OS is still in beta, hopefully by the time is gets a proper release, the experience will be more streamlined, documented and even better (for me that may be the day, when I can create a VM, with-in which I have control, for now the vm within crostini is locked down almost fully).
???) Oops – smalltalk – c++ – minix – Oops
Are we today prioritising the required things and or do we have bandwidth to prioritise the required things is a question we require to think about. Before overly assuming and depending on others to have done the right things. But then again in a cloudy cloudy ai ai ai-cloudy world ???