top | item 37394659

Developing on and for Chromebooks is a terrible experience

51 points| esperkin39 | 2 years ago |medium.com

28 comments

order

nolist_policy|2 years ago

Coming from linux and developing for linux, I don't share the authors experience.

I mainly bought my chromebook convertible for university for notetaking. But now I am also doing all my freelance development work on open-source high availability and fault tolerance (qemu colo[1] if you're interested) on this thing. And it works great, the linux VM is very capable with seamless file, wayland and X11 passtrough. Nested virtualization works too.

Sure, it's not native but I don't see a reason why it should be. Google is actually caring about security here, you see it in every part and decision of ChromeOS. Google is taking VM based isolation to the mainstream and showing that a secure OS without ransomware is possible.

And the defaults are well done. The terminal app has infinite scrollback by default and is not too far off of xterm. The touchpad experience is excellent, switching between tabs, going forwards and backwards in history, switching virtual desktops and apps all done with a few gestures.

And don't forget the fonts, ChromeOS is worth it for the fonts alone :). Noto Sans Mono is the default monospace font system-wide, even in the linux VM. It looks awesome in emacs.

The maintainers of the linux part are very friendly, they will actually fix bugs you report. And that ChromeOS as a comercial/consumer OS has a public bug tracker at all, makes it very unique. Try that with windows :).

If you want a excellent out-of-the box (with few exceptions*) linux experience, buy a chromebook. Especially if you want more exotic hardware like convertible with pen input.

About the LaCrOs switch: I suspect the reason why Chrome was so deep integrated into the OS, is because there weren't any good graphics protocols (besides X11 which is meh.) when it launched so Chrome became application and window manager and compositor in one. And now that wayland has matured they are switching to it.

* You're not going to get direct hardware access from the linux VM, so things like running wireshark on your wlan interface, mounting a harddrive that isn't plain exfat or ext4, etc. won't work.

[1] https://wiki.qemu.org/Features/COLO

ravedave5|2 years ago

It's so bad. Old apps are grandfathered into features they don't have in their new APIs yet. Trying to write an android app for chrome also sucks, there's missing functionality. The APIs are all documented but in the most confusing way so you never know if something will work until you try it. Terrible, never doing it again.

ghaff|2 years ago

I was a big Chromebook supporter for a number of years--especially for travel. But the model I really liked, a ~11" ASUS doesn't seem to have a current equivalent and I generally just travel with an old MacBook now (or don't travel with a laptop at all depending on the nature of the trip). If I'm basically going to need the form factor of a 13" laptop I might as well carry the more general-purpose laptop--even if I mostly use it as a browser.

rnk|2 years ago

I got a framework chromebook and I'm very happy with it. The only thing that would be better would be running chromeos on a fast system with no fan, but that doesn't exist.

An apple silicon/arm is the ideal laptop form factor since it's fast and has no fan, but apple won't let google use that as a building block of course. I have tried running x86 binaries on my mac studio, it's dead slow as others have reported with ubuntu; I tried an arm ubuntu image and it ran at native speed. I couldn't immediate figure out how to get an arm chromeos vm to try to run on it.

appleaday1|2 years ago

Thinkpad Chromebook with Linux Mint FLIES - I am surprised the amount of battery life I get with it with minimal configurations that I have been running over a year, this holds up with a MacBook for me.

NoZebra120vClip|2 years ago

I'm not sure what a ChromeOS developer writes, since the "native apps" are PWAs only.

The author mentions various driver-like things, such as a custom keyboard. Can such custom drivers be installed when not in Developer Mode? I see no mechanism to do so, nor any "ChromeOS app store" where I might download such things.

If you're a ChromeOS developer, where and how do you distribute your products?

esperkin39|2 years ago

Author here.

App distribution is a major issue for the platform that I ran out of space to really talk about. Those driver-like things are largely extension APIs, but they were once the domain of the now deprecated "Chrome Apps." Both the Apps and Extensions are delivered via the Web Store, but I feel like there's a steady move to deprecate all system-customization on the platform.

If you want to use some non-optimized apps in a VM though, you can use the Gnome Software store or the Google Play Store.

seabrookmx|2 years ago

There was "Portable Native Client" aka. PNaCl. Users can't ship PNaCl apps themselves anymore (atleast via the store) since "Chrome Apps" died, but if you open the Terminal on a Chromebook you'll notice it still says "loading PNaCl client" so they certainly still use it internally.