Saturday, February 26, 2011

New Cr-48 Chromium OS build: 0.11.201.2011_02_26

After some significant code refactoring went into the browser, here's another build available from the download page. The previous build had some issues with the login screen, so I didn't consider it "stable" yet. Here's crossing fingers that it's fixed now; testing will show...

Changes specific to my open-source builds:
  • The ambient light sensor has been disabled completely. (Update: Apparently that change didn't make it into this build. It will be in the next one.) Until a workaround is devised for the open light sensor issue, I'm forcing its sensitivity to zero to prevent unexpected major changes in backlight level.
  • I have integrated some pending changes to the trackpad driver's tuning values from this proposed change. Most notably, hypersensitivity should no longer be an issue, edge movement should be smoother, and detection of palm touches (a common cause of mistaken taps/movement when typing) has been enabled.
  • By multiple-request, finch, the text UI version of Pidgin, is included. The base built-in protocols are included, as well as GroupWise and Meanwhile/SameTime.
  • The OpenSwan client for vanilla IPsec-based firewalls, such as CheckPoint, is included. Configuration is in /usr/local/etc/ipsec.
Notable Chromium browser changes from 11.0.680.0 to 11.0.684.0:
  • When showing the cookie popup after clicking on the blocked-cookie icon in the Omnibox, the real domain of the source (rather than the cookie's possibly wildcarded domain) is now shown.
  • HTML5 media playback now disallows a HTTP redirect to a different domain from the original one in the SRC attribute, as specified by the HTML5 force same-origin policy.
Notable changes for the rest of the OS from 0.11.188.2011_02_23 to 0.11.201.2011_02_26:
  • Support for faster reconnect on WPA2-PSK based WiFi has been added. This should reduce reconnect time on resume-from-suspend dramatically (the bug comments indicate a drop from 5-10s to under half a second + DHCP renew time).
If you have any issues with this build, please let me know!

Update: After only an hour of using this build, I'm much happier with it. The trackpad, however, seems a little under-sensitive now (particularly in the vertical direction). It's plenty usable, but I'll give it a couple more tuning tweaks in the next build to come to more of a compromise between the hypersensitive original settings to the current slower settings.

Wednesday, February 23, 2011

Gmail folks, please give us a direct "Save in Google Docs" link

Last week, the Gmail team announced an enhancement to in-Gmail PDF viewing when using the Chrome browser: it will use Chrome's built-in PDF viewer if it's available. (So it shows up only on official Google Chrome builds, but not on things like the Debian/Ubuntu Chromium browser.)

Previously, the server-side-rendered PDFs such as this example document from the Docs Viewer main page would provide a "Save in Google Docs" link at the top to save the file to the logged-in user's Google Docs. This works for any document type supported by the Docs Viewer, which was recently expanded to add a dozen additional formats. However, Google Chrome users can no longer do this with PDFs (and maybe more file types in the future).

Alex Chitu from googleoperatingsystem.com noted that changing view=att to view=gvatt in the "View" link will produce the server-rendered view again. A similar possible hack was noticed before the "View" link was officially added to Gmail — by adding view=gvatt to the "Download" link — and someone wrapped that in a Greasemonkey script. So I'm tempted to do the same for this: add a "View in Google Docs" link via GM, or rewrite the "View" link to force the server-side rendering.

...But that is a lot more hacky than I'd like. So before I go sledgehammer on the Gmail-Docs viewer link, I'm writing this short appeal to the Gmail developers to add a "Save in Google Docs" link directly to Gmail attachments (regardless of file type). Besides restoring this functionality for Chrome and PDFs, and even saving the view/render step in the process, it is an important move towards further product integration critical to the Chrome OS vision.

Postscript: After the above was written, I did realize the other obvious way to prevent Gmail PDF attachments from using Chrome's native plugin, simply disabling "Chrome PDF Viewer" in about:plugins. Of course, this now means that the lightweight built-in PDF support is disabled for all sites, something I'll just have to live with for now.

New Cr-48 Chromium OS build: 0.11.188.2011_02_23

Another day, another build. It seems that Monday's build has some very bizarre performance issues with things that animate, even though the core Javascript performance is just fine.

As promised, with this build I've started tallying internal changes from the previous one. These changes are based on commit logs, and aren't guaranteed to be fully implemented (at least until I give the build some decent time to test).

Notable Chromium browser changes from 11.0.677.0 to 11.0.680.0:
  • On the about:flags page, the disabled options have a gray background to distinguish them much more easily from the enabled flags. Daniel at thechromesource.com has a screenshot.
  • If web page prerendering is enabled in about:flags, a prerendered page will add another icon to the Omnibox to show this fact. (Note: I recommend not using web page prerendering on the Cr-48, as it tends to thrash the disk more, and will likely result in a slower overall experience, at least for now.)
  • SQLite, which stores most of the browser's data on disk, has been changed not to force all writes to disk. This will result in saving a little battery power as noted in that bug. I still have to test this out, but this change should also result in a great reduction of the "a tab in the background is loading, and the one I'm looking at froze up!" problems (due to disk activity bottlenecks).
  • about: URLs now autocomplete in the Omnibox. (This change does remove the humorous about:vaporware alias for the more well-known about:flags page, though.)
  • A workaround was added for a preferences corruption bug, which may have been causing some of the cases where the user fell back to the Getting Started screen upon reboot.
Notable changes for the rest of the OS from 0.11.180.2011_02_21 to 0.11.18.2011_02_23:
  • The login shell for the "chronos" user is now dash (the Debian-modified POSIX shell), not bash. While bash is still in the base image, it will disappear eventually. This means that .bashrc changes (such as those I suggest for my add-on packages for official Chrome OS builds) may need to go into the more standard .profile file in the future... to be investigated.
Provided this build proves relatively stable in my testing, I'll bless it as "most stable build" on the main download page.

Monday, February 21, 2011

New Cr-48 Chromium OS build: 0.11.180.2011_02_21 (updated Flash!)

So it seems that yesterday's branch-based build wasn't really up to snuff. I also haven't seen any commits being checked in to that branch yet — though there's a lot of activity in the 0.10.156 branch; looks like it's being prepped for a move to the Beta channel.

I've withdrawn yesterday's build, and went back to ToT (tip of the tree) today in order to get a fix for the bookmark bar issue. Known changes since the previous ToT build, 0.11.159.2011_02_16:
  • The browser has been updated to 11.0.677.0.
  • Sun Java has been updated to 6u24, fixing some major security issues.
  • Adobe Flash has been updated to 10.2.152.27, eliminating the Flash-out-of-date warning. (No, this is not Pepper Flash, but that isn't updated to 10.2 yet anyway.)
  • Added "unrar" to the collection of extra CLI tools.
As noted before, I'm going to try to keep better track of changes in the OS source, to provide some perspective on what's changing behind the scenes in future builds.

The new build is available here.

Friday, February 18, 2011

New Cr-48 Chromium OS build: 0.11.166.2011_02_18

This blog is multi-purpose, but I plan on posting more detailed change information about my open-source Chromium OS builds for the Google Cr-48 notebook here under label "Chromium OS Builds" (RSS feed). I don't guarantee that these posts will be greatly informative, but I'll try to make them useful.

As before, new builds, and instructions for using them, will be available at: http://www.duh.org/chromiumos/cr-48/

The new build 0.11.166.2011_02_18_1248-a1 has the following known changes. (I hope to keep better track of the chromium-os-checkins list for future builds so I might be able to enumerate some of the chromium.org-provided changes between builds.)

  • Based on 0.11.166.B branch, likely to become the next official Development channel release
  • Sun Java has been updated to 6u24, fixing some major security issues
  • Added "unrar" to the collection of extra CLI tools
I'm contemplating creating separate build trains, beginning with this new branch: one for ToT (tip of the tree), which is analogous to the Chrome "Canary" build; and one for the Dev channel branch. More news to come later on this.

As a quick reminder, if you're not interested in replacing the official Chrome OS build with an open-source build, I've published some of the add-on tools (which are bundled into my builds) as add-on packages for official Chrome OS or other non-official builds.

UPDATE: I just finished trying out the above build, and it has two glaring issues:

  • Flash is still version 10.1; as a result, it's triggering the new plugin version check in the browser that auto-blocks the plugin. I'm putting together a new build tomorrow morning that updates it to 10.2; expect a follow-up post then. I've filed crosbug.com/12332 to document this discrepancy in open-source builds.
  • The Bookmark Bar is not rendering properly. This will likely be fixed on Monday with a new browser build; avoid the 0.11.166 builds for now if this is going to bother you. This is being tracked by crbug.com/73137 (ooh, a palindrome).