You are not logged in.
I've uploaded chromiumos-ui-bin, chromiumos-ui-tts-git, chromiumos-ui-session and chromiumos-ui-service, packages for installing an 'official' prebuilt snapshot of the UI component of Chromium OS (the open source variant of Chrome OS) to the AUR.
Chromium OS UI running in a window, using i3 window manager
What sets these packages apart from other similar packages:
chromiumos-ui-bin
Can update to the latest known-to-be-good version, without re-downloading the same zip file if there are no changes
Depends on chromium package for the chrome-sandbox SUID helper
Minimalist wrapper script, no commandline options hardcoded except to set user data directory to $HOME/.config/chromiumos-ui, to prevent clobbering of Chromium's user data directory
Configuration via /etc/chromiumos-ui/default, which can be a symlink to /etc/chromium/default, for sharing of commandline options, Pepper plugins, etc
Use without logging into a Google account (appears logged in as "stub-user@example.com"): `chromiumos-ui`, "Chromium OS UI" desktop menu item, useful for Web app development
Login to Google account, with sync support: `chromiumos-ui --login`, "Chromium OS UI (Login manager)" desktop menu item, first-time login supports the "out-of-box-experience"
Resume last login session (no password required, convenient for use with display manager sessions): `chromiumos-ui --login --lastuser`, "Chromium OS UI (Last logged-in user)" desktop menu item
chromiumos-ui-session
Display manager sessions for use with LightDM, GDM etc., using Matchbox window manager to make Chromium OS UI display fullscreen
chromiumos-ui-service
Systemd service support, for running Chromium OS UI as standalone display manager, running as user 'chronos'
chromiumos-ui-tts-git
Support for ChromeVox text-to-speech, with accessibility support
What works for me:
chromiumos-ui-bin:
Syncing (note: may break with specific builds, currently broken after build 237973, remember: this is development stuff). Check your current sync status by browsing to chrome://sync
Graphics: Aura, compositing, hardware acceleration, WebGL, when available. Check supported features by browsing to chrome://gpu
Sound: tested with Pulseaudio, with pulseaudio-alsa package installed
Touch operation: tested with touchscreen on a Dell XT2 convertible tablet/notebook. List input devices with `xinput --list`, then add touch-capable device IDs to commandline option `--touch-devices=<id1>,<id2>,...`
Flash support: tested using chromium-pepper-flash-stable package from the AUR
Native Client support: tested using "Bullet Native Client Acceleration Module" from the App Store.
Accessibility: tested the built-in screen magnifier (turn it on using Settings/Show Advanced Settings/Accessibility/Enable screen magnifier) and screen reader (using chromiumos-ui-tts-git package, use Ctrl-Alt-Z to toggle it on/off), but I don't know what some of the keyboard mappings are (notably Ctrl-BrightnessUp/-Down to zoom in/out). Braille support is also installed by chromiumos-ui-tts, but I haven't tested it
chromiumos-ui-session:
Login session: tested using LightDM
chromiumos-ui-service:
Run as systemd service: replacing the primary display manager, run as independent display manager on any VT
chromiumos-ui-tts:
Speech output during login and normal use. (Tip: Install "US English Female Text-to-speech (by Google)" from the App Store for much better audio quality than the built-in voice)
What doesn't work (yet):
Signing out: the application exits, but user stays logged in
Volume control, display settings, Bluetooth, network management: missing (D-Bus and other) services
Known problems:
Dependency on chromium for the chrome-sandbox SUID helper: required until I figure out either where to find a corresponding version of this helper for Chromium OS prebuilt binaries, or how to build it from source without the need to "rebuild the world"
The infamous `NVIDIA: could not open the device file /dev/nvidia0 (Operation not permitted).` error is back, probably affecting VDPAU support. This can be worked around by adding `--no-sandbox` commandline option, with obvious security implications. Help with this is very welcome
For some reason, only touch drag (for moving/resizing/scrolling windows) currently works, tapping flashes the tapped item, but doesn't actually perform any action
Touch drag reverts to mouse pointer movement after unblanking the screen after it blanks from inactivity
On exit, the application may leave behind stray processes which may interfere with subsequent runs (the application appears to 'hang'), and which can be hard to kill. This is a long-standing, well-known problem with all things Chrome/Chromium. A remedy is to run `$ pkill -9 -f chromiumos-ui/chrome` or use a 'reaper' wrapper script. Mainly upstream problem I think (leaving processes running after exit for the benefit of some "background apps" or extensions only makes sense if it is possible to reliably 'reconnect' with them on subsequent runs), but help with this is also very welcome. (EDIT: Simple reaper loop added to chromiumos-ui-session script)
Speech output may stop working after the session has been idle for a while, earcons continue working
Questions, comments and suggestions are very welcome.
Last edited by ackalker (2013-12-06 07:30:27)
Offline
This is probably better suited for the "Community Contributions" Forum: https://bbs.archlinux.org/viewforum.php?id=27
Really cool project. I'll be following it!
Offline
.... And, I am moving it to Community Contributions
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Online
Thanks I will keep you updated.
Offline
Updated first post: added chromiumos-ui-tts (ChromeVox text-to-speech, with accessibility support) optional dependency package, added tests for Native Client and accessibility support, all working
Offline
I tested it yesterday. It works surprisingly well! What kind of login manager does ChromeOS use? I had the problem, that I signed in with email address A into the Chrome desktop and signed into Chromium with email address B which is asscoiated to the same Google account, which resulted in not being able to install any offline chrome apps from the Chrome Store. It wanted me to switch the accounts but signing out of Chromium means I get back to GDM, which is used as login manager.
Offline
@blackout23
Yup, signing out is a known problem. It is also not possible to add or switch to another user or Google account yet, neither using the login manager nor from the Settings menu, probably because a lot of the infrastructure of Chromium OS isn't actually there.
Currently, I've wired things up to use the login manager only the first time you log in (it gives you the "out-of-box-experience" and asks for your Google account info), also because using it for all logins would cause it to ask for a password, which is inconvenient if you start the UI from a display manager (in which case you would have been asked for a password already).
To fix your problem, I think the best thing to try is to delete $HOME/.config/chromiumos-ui/user directory and try to login again (my script will then try and use the login manager once more). Since everything on a Chromebook is supposed to be synced to the cloud, you should not lose any data, but make a backup of $HOME/.config/chromiumos-ui if you want to be really sure.
Hope this helps, if not, don't hesitate to ask
Last edited by ackalker (2013-12-02 13:53:58)
Offline
Thinking of it, it may be wise to use the login manager also when you run the Chromium OS UI from a desktop environment and not a login session, because that way it will ask for your password and not log you into Google automatically.
I just have to figure out a way to detect whether chromiumos-ui-login is started as a session or as a regular application. Preferably something that isn't too easy to 'fake', as otherwise your smart 9-year-old nephew could log into your Google account without you knowing
Offline
Updated chromiumos-ui-bin, chromiumos-ui-session:
chromiumos-ui-bin:
Reworked login manager logic: starting Chromium OS UI as regular application now always uses the login manager, starting it as a session from a display manager only uses it when the user has never logged into a Google account before. This avoids the need for a user to type in two passwords in succession. It also means that new users can only be added when the UI is started as regular application
Added proper license file
chromiumos-ui-session:
Forcibly kill off all stray processes at the end of the session
Last edited by ackalker (2013-12-02 18:25:03)
Offline
Updated chromiumos-ui-bin:
chromiumos-ui-login and "Chromium OS UI (Login manager)" will now always use the login manager
chromiumos-ui-login --session and "Chromium OS UI (Last logged-in user)" will attempt to login as the last non-stub user, or fall back to using the login manager
Offline
Sure, I'm adding one to the first post.
Last edited by ackalker (2013-12-03 18:15:33)
Offline
Added test: Touch operation kinda works: touch dragging to move/resize/scroll windows works great, but tapping only flashes the tapped item, doesn't actually perform any action. Also, touch drag stopped working (reverting to mouse pointer movement) after unblanking the screen when it had blanked after a period of inactivity. Still a great start , but need to investigate further.
Last edited by ackalker (2013-12-04 22:23:11)
Offline
Updated chromiumos-ui-bin and chromiumos-ui-session (cleanup), added chromiumos-ui-service: run Chromium OS UI as either primary display manager or alongside your existing DM, on any VT.
This runs as user 'chronos', like on a 'real' Chromebook.
To enable as primary display manager (you may wish to install xterm package to enable the use of an emergency shell with Ctrl-Alt-X, a Matchbox keyboard shortcut):
# systemctl enable chromiumos-ui.service
To start as independent display manager on any VT, say vt2 (which maps to tty2):
# systemctl start chromiumos-ui@tty2.service
Last edited by ackalker (2013-12-05 20:13:54)
Offline
Tip: If Alt-Tab and possibly other keyboard shortcuts aren't working in a Chromium OS UI session started from your display manager, this is because the Matchbox window manager has grabbed them. To fix this, create $HOME/.matchbox/kbdconfig with the following contents:
# Start emergency shell
<ctrl><alt>x=!xterm
(You can add keyboard shortcuts for other tools, e.g. network setup, volume control, etc. as well, as long as they don't clash with Chromium OS keyboard shortcuts that you plan on using.)
This has been fixed also in chromiumos-ui-service.
Last edited by ackalker (2013-12-05 20:12:49)
Offline
Quickfix: adding xorg-xinit as dependency to chromiumos-ui-service. Oops, sorry
Last edited by ackalker (2013-12-05 22:01:59)
Offline
Yay, sync working well again with latest build. Setting chromiumos-ui-bin version to fetch latest known good revision (LKGR). Have fun
Last edited by ackalker (2013-12-06 06:34:04)
Offline
Aclaker i'm getting this error while i try to install chromiumos-ui-bin
==> Validando el archivo fuente con md5sums...
chrome-linux-252451.zip ... Saltando
LICENSE.chromium_os ... FALLÓ
chromiumos-ui.default ... Aprobado
chromiumos-ui.desktop ... Aprobado
chromiumos-ui.sh ... Aprobado
chromiumos-ui-lastuser.desktop ... Aprobado
chromiumos-ui-login.desktop ... Aprobado
==> ERROR: ¡Uno o más archivos no pasaron la verificación de integridad!
==> ERROR: Makepkg no ha podido compilar chromiumos-ui-bin.
==> Reiniciar la compilación de chromiumos-ui-bin? [s/N]
Offline
@ch3l0_1M
Please respect the Forum Etiquette when posting output,
Please prepend LC_ALL=C to posted commands so that the output will be in English.
\(o_X)/
'Cause I wanna be an Archy - An Archy in the UK // Sex Pistols
Offline
Please respect the Forum Etiquette when posting output,
And, for the love of all that is sacred,
Use code tags. Else, you defile all that you know and love.
All the best,
-HG
Offline
Sorry for the very late reply :-(
The LICENSE file must have changed, I will check it and update the PKGBUILD.
Offline
Hey, I think I may have found an issue that might need to be looked into, or at least the LKGR needs to be changed to something that doesn't contain ICU issues, anyway, when I try to run this on my hardware (can't test it on other people's hardware, just my laptop and desktop) I get this:
0513/003837:FATAL:content_main_runner.cc(735)] Check failed: base::i18n::InitializeICU().
Aborted (core dumped)
when initializing it from a tty AND from i3 with urxvt, and I'm assuming it's running into that when run as a service, as well.
Now, I've done some googling at this issue, and found nothing but a bug report on dz0ny's Ubuntu package for the UI, which is no longer maintained. so I'm wondering if this might be something more widespread and needs looking into?
Offline
@c_smith, try symlink `icudctl.dat` from `chromium` to `chromiumos-ui`
ln -sf /usr/lib/chromium/icudctl.dat /usr/lib/chromiumos-ui
You cand modify `.install` file, too.
Offline
aditya@aditya-desktop ~ [14:36:08]
> $ chromiumos-ui
[0520/143610:FATAL:content_main_runner.cc(735)] Check failed: base::i18n::InitializeICU().
[1] 8392 abort (core dumped) chromiumos-ui
aditya@aditya-desktop ~ [14:36:10]
> $
Offline
Also, arch 64bit. I have the google-chrome-dev from aur installed, could that be the cause?
Offline