About me

我的相片
I'm a web and software developer from Kaohsiung, Taiwan.
I design and implement user interfaces, also contribute to open source projects.
http://penkia.net/portfolio

2010年12月21日 星期二

xPad 0.1 released!

What if Chrome OS Tablet concept UI get implemented?

Don't you love the Chrome OS Tablet concept UI above? I fell in love as soon as I read about it on the wiki, but Eric Schmidt crush my dream by stating that "Chrome OS aimed at keyboard based solutions".

I don't know either the actual roadmap of Chrome OS nor what Google has in mind, but since it's an open source project and I'm a FOSS developer, I decided to build it on my own. After a weekend of hacking, let me introduce to you:

the xPad - tablet edition of xPUD



Download: xpad-0.1.iso (47MB)

Due to the limitation of hardware support in this image, it can only boot on Virtualbox. But we have already integrated this touch and virtual keyboard solution onto MeeGo Netbook UX, and ported to some selected platforms like OMAP3 and Moorestown. (Any demo or customization request please feel free to send me a mail ;-)

Main Features

  • finger scrolling browser - it's basically a simple GtkWebKit browser with a custom GtkScrolledWindow widget from the Midori project. We also wrote a QtWebKit version in case you want to demo it on MeeGo.
  • enhanced WebKit - that rendering fast and with less library dependencies, we also patched WebCore/HTMLInputElement to hint input method with different input type, including password field.
  • auto showing/hiding of input method - by patching against scim-bridge, we made the Gtk and Qt4 immodule brings up the keyboard while focus in, and hide it when focus out.
  • virtual keyboard that can actually use - we add Toggle feature into fvkbd, that can toggle input method as well as switch keyboard layout; also applied the MODE_STATUS_TEMP patch from sayamindu to support CKJ users.
  • input method panel - we fixed the ToggleVkb feature of scim-panel-vkb-gtk, also adjust the layout to integrate SCIM and different input methods well.
  • multi-lingua keyboard layout - we carefully crafted a "bopomofo" friendly keyboard layout, that shows how flexible the fvkbd can be.

Known Issues

Apparently it's still buggy and unstable, the browser doesn't have much features like Tap-and-Hold or right click, nor tab or hiding scroll bar support, sometimes you have to toggle the keyboard and change input method to English to get it right.

But we'll keep working on that, maybe replaced it with a custom build of chromium, or some Qt-based browser like IXS-Browser from Movial.

While xPUD team are busy working on the next generation of TableWare UI, this is something you can play with during the Christmas holiday! :-)

All the best,
penk

2010年11月3日 星期三

xPUD 0.9.5 - Re-implemented everything, again


Download: xpud-0.9.5.iso (65MB)

Notice

This is a technical preview release, which only suits developers. If you're looking for next stable release please follow us on twitter.

New Features

Ubuntu 10.10 base and Linux kernel 2.6.35.7, alone with an updated build system.

TableWare platform


Starting with this version we launch a new project called TableWare, a web-based window manager, which replaced the old XPCOM/MozPlugger implementation with following software components:
  • new NPAPI plugin
  • new XCB-based window manager
  • Node.js and WebSocket support
  • new daemon with inotify and D-Bus support
  • new WebKit-based runtime
So the fun starts here!

How cool will it be if you can write a window manager using CSS/HTML and JS in 297 lines of code?


Known Issues

  • only tested in virtualbox
  • still very very buggy
  • iframe-shim doesn't work in webkit

What to expect next?

  • re-designed plate UI
  • compositor of tableware platform
  • ARM port and xPad, THE tablet edition! :-)
  • If you've got any question or request, feel free to drop me a mail

2010年11月2日 星期二

xPUD 0.9.5 - 宇宙最美麗的 OS 出世了!

世上最不穩定的 xPUD 終於姍姍來遲了!


下載: xpud-0.9.5.iso (65MB)

作者的忠告

這是開發中的版本, 只適合想自己寫程式或修理錯誤的開發者使用, 若要等穩定版釋出請追蹤 xpudos 的推特帳號.

新功能

升級到 Ubuntu 10.10 系統與 Linux 核心 2.6.35.7, mkxpud 也同步更新.

TableWare 平台


自 0.9.5 開始我們正式啟動 TableWare 計畫, 它將取代 XPCOM/MozPlugger 成為下一代 xPUD 的主力平台, 新元件如下:
  • 新的 NPAPI 外掛
  • 新的 XCB 視窗管理員
  • Node.js 和 WebSocket 支援
  • 可用 D-Bus 和遙控器操作
  • 新的 WebKit 核心
用新平台寫視窗管理有多酷呢? 請見「輕滑頓幻舞 (Sliding Effect)」展示影片:



一共只用了 297 行 HTML/CSS/JS!

已知問題

  • 只在 virtualbox 測試過
  • 非常多 bug, 常常掉東西
  • 沒有中文輸入法
  • iframe-shim 壞了

下集節目預告

  • 全新打造的 plate UI
  • 圖形加速功能
  • ARM 版本以及 xPad, 平板電腦介面! :-)
  • 有任何問題或需求歡迎和我聯絡
按這裡貼到噗浪

2010年10月17日 星期日

Daily Bookmarks 10/17/2010

The Wilderness Downtown: How it was Made

http://ajaxian.com/archives/the-wilderness-downtown-how-it-was-made

Video Conferencing with the HTML5 Device Element

http://ajaxian.com/archives/video-conferencing-with-the-html5-device-element

jQuery Data Binding, Templates, and Mobile: John Resig at FOWA

http://ajaxian.com/archives/jquery-data-binding-templates-and-mobile-john-resig-at-fowa

Yo Yo, develop killer cross platform mobile Web apps with Jo

http://ajaxian.com/archives/yo-yo-developer-killer-cross-platform-mobile-web-apps-with-jo

Behind the scenes: Customer Wall

http://37signals.com/svn/posts/2616-behind-the-scenes-customer-wall

How to Create a Successful MMO

http://www.guildwars.com/events/tradeshows/gc2007/gcspeech.php

Customizing web forms with CSS3 and WebKit

http://37signals.com/svn/posts/2609-customizing-web-forms-with-css3-and-webkit

Ryan's talk at Future of Web Apps 2010, London

http://37signals.com/svn/posts/2608-ryans-talk-at-future-of-web-apps-2010-london

Here's what we've learned about doing UI for mobile web apps with WebKit

http://37signals.com/svn/posts/2603-heres-what-weve-learned-about-doing-ui-for-mobile-web-apps-with-html5

Redesigned: The new 37signals.com

http://37signals.com/svn/posts/2596-redesigned-the-new-37signalscom

Why non-profit pricing?

http://37signals.com/svn/posts/2580-why-non-profit-pricing

Weaving Design and Development

http://37signals.com/svn/posts/2579-heres-a-video-of-my-talk-on-weaving

Loading spinner animation using CSS and WebKit

http://37signals.com/svn/posts/2577-loading-spinner-animation-using-css-and-webkit

Newton Never Dies

http://www.panic.com/blog/2010/09/newton-never-dies/

jQuery Events: Stop (Mis)Using Return False

http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/

Linux 無調注音輸入法 - ibus-pinyin-bopomofo

http://yurinfore.blogspot.com/2010/10/linux-ibus-pinyin-bopomofo.html

吃了蘑菇的 gnome-shell

http://yurinfore.blogspot.com/2010/09/gnome-shell.html

Bloomberg Game Changers: Steve Jobs

http://www.bloomberg.com/video/63722844/

互動素描標記法 v0.1

http://blog.bobchao.net/2010/10/v01.html

Stuxnet:事實 vs. 理論

http://www.zdnet.com.tw/enterprise/technology/0,2000085680,20147815,00.htm

jQuery Code Style

http://blog.othree.net/log/2010/10/17/jquery-code-style/

WAI-ARIA 介紹之一

http://blog.othree.net/log/2010/10/10/introduction-to-wai-aria-1/

Arcade Fire - Funeral

http://pulp.bluecircus.net/archives/014699.html

2010年9月6日 星期一

Daily Bookmarks 09/06/2010

A couple of interesting UI techniques at Flickr

http://37signals.com/svn/posts/2552-a-couple-of-interesting-ui-techniques-at-flickr

Quoted by 37signals on September 1 2010

http://37signals.com/svn/posts/2532-if-you-ask-an-artist-why-the-greatest-artists

The first step is to start

http://37signals.com/svn/posts/2538-the-first-step-is-to-start

iTunes 10 hands-on: snappier performance, questionable UI choices

http://arstechnica.com/apple/news/2010/09/itunes-10-hands-on-snappier-performance-questionable-ui-choices.ars

Palm Details webOS 2.0, Releases Beta SDK

http://www.osnews.com/story/23749/Palm_Details_webOS_2_0_Releases_Beta_SDK

Judge Rules Fusion Garage, TechCrunch Were Partners

http://www.osnews.com/story/23744/Judge_Rules_Fusion_Garage_TechCrunch_Were_Partners

Simplicity vs. Choice

http://www.joelonsoftware.com/items/2010/08/19.html

Entelligence: A tale of two TVs

http://www.engadget.com/2010/09/05/entelligence-a-tale-of-two-tvs/

Switched On: FaceTime prepares for prime time

http://www.engadget.com/2010/09/04/switched-on-facetime-prepares-for-prime-time/

Chromium Graphics Overhaul

http://blog.chromium.org/2010/08/chromium-graphics-overhaul.html

The Node.js now running on webOS – and more Web improvements

http://ajaxian.com/archives/the-node-js-now-running-on-webos-and-more-web-improvements

How to Become a JavaScript Badass

http://www.clientcide.com/deep-thoughts/how-to-become-a-javascript-badass/

美國觀察:Google Android 帶來的副作用

http://www.zdnet.com.tw/enterprise/technology/0,2000085680,20147210,00.htm

NOISE IS THE NEW AQUA

http://jiwostudio.com/archives/2581

【中國觀察】含著滷蛋講話的中國時報!

http://sophist4ever.pixnet.net/blog/post/27124496

在桌面應用程式中使用 WebKit

http://zonble.net/archives/2010_09/1369.php

42年的鴻溝 – Dyna Book與iPad

http://blog.vgod.tw/2010/08/31/dynabook-and-ipad/

水果牌電視之我是一片雲

http://potatoplan.blogspot.com/2010/09/blog-post.html

Android 淺探 (二), 2010 – 系統廠商

http://mmdays.com/2010/08/30/android-2/

2010年8月11日 星期三

Daily Bookmarks 08/11/2010

北京 WebRebuild 演講,收獲滿檔!

http://josephj.com/entry.php?id=336

Javascript的模块化开发

http://threecups.org/?p=129

如何確認出版社有製作電子書的能力?

http://www.readgoing.com/?p=585

iPhone 軟體的無障礙支援

http://zonble.net/archives/2010_07/1339.php

black hat 與 DEF CON 2010 的投影片與程式碼上線了

http://armorize-cht.blogspot.com/2010/08/black-hat-def-con-2010.html

ELASTIX DIRECTOR ANSWERS THE COMMUNITY

http://www.elastix.org/en/home/475-Elastix%20Director%20answers%20the%20community.html

Coda Notes for Safari: Now Available!

http://www.panic.com/blog/2010/07/coda-notes-for-safari-now-available/

Groundhog Day, or, the Problem with A/B Testing

http://www.codinghorror.com/blog/2010/07/groundhog-day-or-the-problem-with-ab-testing.html

Domain Names

http://blog.stackoverflow.com/2010/07/domain-names/

Valuable to others, or only you?

http://sivers.org/starving-artist

Looking at JS emulator core for GameBoy

http://ajaxian.com/archives/looking-at-js-emulator-core-for-gameboy

Perl 6 十周年慶: Pugs:黃金年代 (五之三)

http://pugs.blogs.com/pugs/2010/07/perl-6-十周年慶-pugs黃金年代-五之三.html

Frugal: saving session to entire partition

http://bkhome.org/blog/?viewDetailed=01731

USB settling time

http://bkhome.org/blog/?viewDetailed=01723

Google、Verizon 共提網路中立架構

http://www.zdnet.com.tw/news/comm/0,2000085675,20146988,00.htm

Big Think Interview With David Heinemeier Hansson

http://bigthink.com/ideas/21596

Competition

http://sethgodin.typepad.com/seths_blog/2010/08/competition.html

iPad入手和當作電音樂器的未來可能

http://jeph.bluecircus.net/archives/music/ipad_as_an_instrument.php

Introducing: Peppermint Ice

http://peppermintos.com/2010/07/introducing-peppermint-ice/

Nokia's App Development Strategy: Qt, Qt, Qt

http://www.engadget.com/2010/08/05/nokias-app-development-strategy-qt-qt-qt-video/

My first post, introducing iX.

http://blog.ixproject.org/?p=6

Build a web-based notification tool with XMPP

http://www.ibm.com/developerworks/xml/tutorials/x-realtimeXMPPtut/index.html

Peppermint Ice: a faster, lighter cloud-focused Linux OS

http://www.geek.com/articles/news/peppermint-ice-a-faster-lighter-cloud-focused-linux-os-20100719/

Google executive frustrated by Java, C++ complexity

http://www.pcworld.idg.com.au/article/354210/google_executive_frustrated_by_java_c_complexity/

2010年7月11日 星期日

Next-Gen xPUD

I'm planning next generation of xPUD while preparing the talk for Gnome Asia Summit this year.
Here's the fact:
  1. we're using mozplugger and <embed> to get applications embedded for now
  2. but we can't handle popup window, quit from applications or
    application started by xterm
  3. we need a way to listen CreateNotify / DestroyNotify event
  4. and only window manager can do that!
Here's my plan:
  1. write a window manager using xcb, do nothing but a) open web browser in fullscreen, and b) send dbus signal through dbus-javascript bridge to the browser while getting MapRequest event
  2. when the browser get that signal, add an <embed> tag with an id of the window id, and reparent it
  3. while the window manager get DestroyNotify event, remove that
    corresponding <embed> tag
So we can solve this once and for all!

I've done about 50% of the window manager (haven't named it yet, any idea?), and 80% of the "touchweb" browser (based on webkit and javascript dbus bridge), we might eventually need our own NPAPI plugger (could be a stripped down version of mozplugger)

That's for now. Stay tuned.

2010年7月8日 星期四

Daily Bookmarks 07/07/2010

常用 CSS Hack 再整理

http://ka-yue.com/blog/common-css-hack

iOS Icons Made in Pure CSS

http://blog.graphicpeel.com/post/740928981/ios-icons-made-in-pure-css

Basecamp home page redesign

http://37signals.com/svn/posts/2431-basecamp-home-page-redesign

Launch: Draft for iPad

http://37signals.com/svn/posts/2420-launch-draft-for-ipad

Device-scale user interface elements in iOS Mobile Safari

http://37signals.com/svn/posts/2407-device-scale-user-interface-elements-in-ios-mobile-safari

Great since day one

http://www.marco.org/769340032

Don Norman at the Business of Software 2009

http://www.joelonsoftware.com/items/2010/06/28.html

Network_tray

http://bkhome.org/blog/?viewDetailed=01690

How to hire a programmer to make your ideas happen

http://sivers.org/how2hire

Keep your vows; Keeping wed to Node

http://ajaxian.com/archives/keep-your-vows-keeping-wed-to-node

How Custom Events Will Save Us All

http://ajaxian.com/archives/how-custom-events-will-save-us-all

Scaling UI controls appropriately on the mobile Web

http://ajaxian.com/archives/mobile-web-scaling-controls

Connect: Great middleware for Node!

http://ajaxian.com/archives/connect-great-middleware-for-node

Firefox 之簡易觸控手勢實做

http://yurinfore.blogspot.com/2010/07/firefox.html

GLUT 作為 Embedded System 的 UI 平台

http://heaven.branda.to/~thinker/GinGin_CGI.py/show_id_doc/415

dissy -- 好用的 objdump 圖形前端工具

http://blog.linux.org.tw/~jserv/archives/2010/07/dissy_--_objdum.html

如何讓員工忠於公司?

http://www.ruanyifeng.com/blog/2010/06/how_to_keep_someone_with_you_forever.html

插圖式主頁

http://www.ruanyifeng.com/blog/2010/06/illustration_web_design.html

創業公司打工指南

http://www.ruanyifeng.com/blog/2010/06/work_at_a_startup.html

莫斯科地鐵交通圖

http://www.ruanyifeng.com/blog/2010/06/moscow_metro_map.html

Perl學習之旅的回顧(之三)

http://mrhsulife.blogspot.com/2010/07/perl.html

在盛大在線做的《閒談用戶體驗》的講稿

http://dingyu.me/blog/posts/view/ue-keynote-at-sdo

2010年5月30日 星期日

Daily Bookmarks 05/30/2010

MeeGo v1.0 Core Software Platform & Netbook User Experience project release

http://meego.com/community/blogs/imad/2010/meego-v1.0-core-software-platform-netbook-user-experience-project-release

You Can't Solve a Problem by Eliminating All Existing Solutions

http://forecasterror.blogspot.com/2010/05/you-cant-solve-problem-by-eliminating.html

模擬實戰標籤綁架手法(Challenge to TabNapping)

http://armorize-cht.blogspot.com/2010/05/challenge-to-tabnapping.html

Android Toolchain 原始程式碼尋寶

http://jserv.blogspot.com/2010/05/android-toolchain.html

Google TV:只是加上Google搜尋框的電視?

http://www.zdnet.com.tw/enterprise/technology/0,2000085680,20145663,00.htm

Amazon 的早與晚

http://www.readgoing.com/?p=576

真的Geek,愿意花几年时间下载并赏玩一个操作系统,这就是OpenStep

http://dingyu.me/blog/posts/view/openstep-finally

SVG 加 Gecko 完全攻略

http://heaven.branda.to/~thinker/GinGin_CGI.py/show_id_doc/413

LadyBugz

http://zonble.net/archives/2010_05/1314.php

【昨天的文化政爭】中華文化與西方思潮的拉鋸!(上)

http://sophist4ever.pixnet.net/blog/post/26687602

誰需要「EP同步」?

http://fred.ipod.to/blog/?post/2129

HTML5的视频格式之争

http://www.ruanyifeng.com/blog/2010/05/html5_codec_fight.html

Javascript 面向对象编程(一):封装

http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_encapsulation.html

The difference between a graphic designer & interface designer

http://sam.brown.tc/entry/430/the-difference-between-a-graphic-designer-interface-designer

A Study of SVG-based Application Development

http://people.debian.org.tw/~chihchun/2010/05/08/a-study-of-svg-based-application-development/

Back In

http://speirs.org/blog/2010/5/3/back-in.html

iPad Multi-Touch

http://mattgemmell.com/2010/05/09/ipad-multi-touch

Kathy Sierra's talk at the Business of Software 2009

http://www.joelonsoftware.com/items/2010/05/10.html

Feature removal

http://www.marco.org/595644480

On Working Remotely

http://www.codinghorror.com/blog/2010/05/on-working-remotely.html

Redesigning Steam for Mac

http://blog.cocoia.com/2010/redesigning-steam-for-mac/

Great win for WebGL and standards; O3D becomes JS library

http://ajaxian.com/archives/great-win-for-webgl-and-standards-o3d-becomes-js-library

Native Client now comes with an actual SDK

http://ajaxian.com/archives/native-client-now-comes-with-an-actual-sdk

Your Cappuccino Apps Just Became Desktop Apps

http://ajaxian.com/archives/your-cappuccino-apps-just-became-desktop-apps

Quirky 1.1

http://bkhome.org/blog/?viewDetailed=01596

Why Perl Isn't Going Away Soon (Or Ever)

http://www.osnews.com/story/23279/Why_Perl_Isn_t_Going_Away_Soon_Or_Ever_

webOS Boots, Runs on PC Hardware Without Modifications

http://www.osnews.com/story/23309/webOS_Boots_Runs_on_PC_Hardware_Without_Modifications

Resource Management for Web Applications in ServiceOS

http://www.osnews.com/story/23368/Resource_Management_for_Web_Applications_in_ServiceOS

The art of taking things away

http://37signals.com/svn/posts/2335-the-art-of-taking-things-away

Visuals

http://37signals.com/svn/posts/2317-visuals

2010年3月3日 星期三

Daily Bookmarks 03/03/2010

HTML5 Theora Video Codec for Silverlight

http://www.atoker.com/blog/2010/02/04/html5-theora-video-codec-for-silverlight/

Mozilla JägerMonkey: Method based JIT + Trace based JIT = speed

http://ajaxian.com/archives/mozilla-jagermonkey-method-based-jit-trace-based-jit-speed

The Non-Programming Programmer

http://www.codinghorror.com/blog/2010/02/the-nonprogramming-programmer.html

Nexus One from an iPhone Developer's Perspective

http://iphonedevelopment.blogspot.com/2010/02/nexus-one-from-iphone-developer.html

Uniform – 最好的美化網頁表單插件

http://ka-yue.com/blog/uniform-jquery-form-style-plugin

Report of the First Season of 2010

http://iamhlb.com/writings/2010/02/23/report-of-the-first-season-of-2010

Theora 與 H.264 的畫質差異

http://blog.gslin.org/archives/2010/02/27/2223/

Scaling Rails Site:Reading Material # 1

http://blog.xdite.net/?p=1597

Transparent House製作的3D影片「Anatomy of Apple Design」。

http://whiteappleer.blogspot.com/2010/03/transparent-house3danatomy-of-apple.html

Why Can't PCs Work More Like iPhones?

http://bits.blogs.nytimes.com/2010/02/25/why-cant-pcs-work-more-like-iphones/

Feature checklist dysfunction: Twitter vs. Google Buzz

http://37signals.com/svn/posts/2171-feature-checklist-dysfunction-twitter-vs-google-buzz

Illustrating REWORK (Part 1 of 2)

http://37signals.com/svn/posts/2180-illustrating-rework-part-1-of-2

Instapaper developer: "I try to minimize ways for my customers to
shoot themselves in the foot"

http://37signals.com/svn/posts/2165-instapaper-developer-i-try-to-minimize-ways-for-my-customers-to-shoot-themselves-in-the-foot

All the wrong reasons for Stack Overflow's VC chase

http://37signals.com/svn/posts/2159-all-the-wrong-reasons-for-stack-overflows-vc-chase

Use real content to judge a design

http://37signals.com/svn/posts/2149-use-real-content-to-judge-a-design

Computers shouldn't make people feel like idiots

http://37signals.com/svn/posts/2132-computers-shouldnt-make-people-feel-like-idiots

Puppy flavours

http://bkhome.org/blog/?viewDetailed=01413

Haiku: Diving Into WebKit

http://www.osnews.com/story/22916/Haiku_Diving_Into_WebKit

Headcount

http://www.joelonsoftware.com/items/2010/02/11.html

Going with the Flow

http://hexxeh.net/?p=328117468

從宏碁暫時不玩電子書說起

http://fred.ipod.to/blog/?post/2098

Bloom box發電箱的挑戰:可靠度、成本

http://www.zdnet.com.tw/news/hardware/0,2000085676,20144362,00.htm

Reblog: A conversation Dan Wineman has every month or so

http://blog.lukhnos.org/post/389921188/reblog-a-conversation-dan-wineman-has-every-month-or

吃你自己的狗食、工程師當自強

http://josephj.com/entry.php?id=315

5S再屌嘛

http://blog.lester850.info/archives/2010/02/05/1050/

判斷美股的重要因子:Dividend Yield

http://yesfx-global-invest.blogspot.com/2010/02/dividend-yield.html

介紹阿碼新執行長Caleb Sima

http://armorize-cht.blogspot.com/2010/02/caleb-sima.html

关于URL编码

http://www.ruanyifeng.com/blog/2010/02/url_encoding.html

Under the Hood with MeeGo

http://www.linux.com/news/embedded-mobile/mobile-linux/287498-under-the-hood-with-meego

2010年2月20日 星期六

Notes on Chromium OS for ARM

各位新年快樂! ULLab 的團隊成員除了在年假中加緊趕工, 為 xPUD 新版本加入平板模式 (tablet mode) 的支援外, 也「嘴巴說不要、身體卻很誠實」地接了一些 Chrome OS 的客製化案子.



如同之前提到的, 第一版的 Chrome OS 建置方式著實有點虛弱, 無法滿足不同平台或是未來實做各項功能的需求, 因此我們可以發現 Google 動作很快的提出了一些改進, 改用了一套新的 build system, 主要有兩個特點:
  • 採用 Gentoo Linux 的 portage 作為套件管理/編譯系統
  • 目前只支援 64 位元的平台
我們比較關注的 ebuild 目前都放在 ~/trunk/src/third_party/chromiumos-overlay/chromeos-base/ 底下, 若是熟悉 Gentoo 的話照著文件也可以輕易上手.

寫給自己的一些骯髒溫馨小提示:
  • 為了略過一些套件或修正編譯問題, 改完 ebuild 以後要重新產生 Manifest, 如 ebuild ~/trunk/src/third_party/chromiumos-overlay/chromeos-base/chromeos-chrome-bin/chromeos-chrome-bin-0.0.1-r1.ebuild manifest
  • 若有自己重打包原始碼放在 /var/lib/portage/distfiles/, 要重算 du -b, rmd160 -x, sha1sumsha256sum. (太髒了不推薦 XD)
另外有別於一般的 chromium 瀏覽器, 我們需要的是 "chromeos" 版的 (這樣才有左上角的 Panel), 在取得原始碼後:
  • .gclient 中加入:
    { "name"        : "cros_deps",
    "url" : "http://src.chromium.org/svn/trunk/cros_deps",
    } ,
  • 設定 GYP_DEFINES=chromeos=1
  • 執行 gclient sync --deps="unix,chromeos"
其他的部份可參考文件 Building Chromium for ARMBuild instructions for Linux.

2010年2月3日 星期三

Daily Bookmarks 02/03/2010

淚推李宗盛新作「給自己的歌」

http://blog.roodo.com/honeypie/archives/11599691.html

Facebook 的 PHP 加速計畫

http://blog.gslin.org/archives/2010/02/03/2211/

Rails3 架構與進展 Part.1

http://blog.xdite.net/?p=1497

Great products are triumphs of taste

http://37signals.com/svn/posts/2129-great-products-are-triumphs-of-taste

iPad: forget the old people — it's a chick magnet

http://ultimibarbarorum.com/2010/01/29/ipad-actually-its-a-chick-magnet/

Interface magazine takes a look at 37signals' "paradoxical" approach
to business

http://37signals.com/svn/posts/2125-interface-magazine-takes-a-look-at-37signals-paradoxical-approach-to-business

Entrepreneurial Success Not Correlated to University Prestige

http://www.lonegunman.co.uk/2009/12/21/entrepreneurial-success-not-correlated-to-university-prestige/

Why testers?

http://www.joelonsoftware.com/items/2010/01/26.html

A little less conversation

http://www.joelonsoftware.com/items/2010/01/22.html

Rocket Surgery Made Easy

http://www.joelonsoftware.com/items/2010/01/25.html

Change The World!

http://blog.vgod.tw/2010/01/25/change-the-world/

git archive 與 log 小技巧

http://people.debian.org.tw/~chihchun/2010/02/01/git-archive-and-log/

[Licensing a game] 買遊戲#1 從5萬美金開始做夢

http://www.gameimp.com/archives/2010/01/25/1585/

iPad,數位閱讀「失落的一角」

http://www.readgoing.com/?p=509

iPad與電子書,還不明朗的未來世界

http://www.readgoing.com/?p=492

Keep Your Mouth Shut

http://forecasterror.blogspot.com/2010/01/keep-your-mouth-shut.html

The Heavyweight Fight is On

http://forecasterror.blogspot.com/2010/01/heavyweight-fight-is-on.html

Ya or Nay on Bernanke's Next Term?

http://forecasterror.blogspot.com/2010/01/ya-or-nay-on-bernankes-next-term.html

微软雅黑的设计

http://vic.sina.com.cn/news/27/2009/0820/4684.html

THOUGHTS ON IPAD

http://jiwostudio.com/archives/1942

2010年2月1日 星期一

xPUD 火力展示:全世界最小的 Chromium OS


下載: minimized-chromiumos.iso (58MB)

xPUD 專案的特色一向是強調活動規劃式 (activity-based) 的介面、對既有程式與網頁的整合、以及降低網頁開發者撰寫客製化介面的門檻。很高興 Google 的 Chrome OS 專案與 xPUD 團隊對於未來的作業系統分享著一些共通的觀點,儘管我們說著不同的故事,但有著相似的看法。

在測試過 Chromium OS 及其編譯系統後,我們發現這是一個絕佳的機會,可以藉此展示 xPUD 的彈性與縮小體積的能力。因此我們很高興的釋出此一實驗性質的版本:Minimized Chromium OS。相較於一般動輒 2G~4G 的映像檔,xPUD 的編譯系統 mkxpud 成功地將整個系統體積縮小為不到 60MB。

注意:這個版本並不適用於一般使用者的日常使用,更多資訊請參考以下關於技術細節的段落。

安裝方式


就像每一個 xPUD 檔案一樣,這個 ISO 本身是 LiveCD 也是可開機的混合式映像檔 (hybrid iso image)。因此製作可開機隨身碟的方式非常簡單,直接使用 dd 指令即可:
# dd bs=4096 if=minimized-chromiumos.iso of=/dev/sdX

主要功能

  • 縮小的系統:基本系統 (32MB);瀏覽器 (18MB);輸入法 (8MB)
  • 跳過開機畫面與登入選單
  • Chromium OS 瀏覽器與外掛 (不包含 DeviceKit 所以電量顯示沒有作用)
  • 中文字型與常見輸入法

技術細節


其實根據官方的文件顯示,第一階段的 Chromium OS 實作真的沒有什麼特別,說穿了不過就是個 Ubuntu 系統加上瀏覽器,以及用 Clutter 寫成的視窗管理程式。

開機流程當中,以樹狀圖來看就是
slim
|-- Xorg
`-- ck-launch-session
`-- chromeos-wm -+-chromeos-chrome
/sbin/chromeos-startup 這隻程式叫出開機畫面,透過 SLiM 進行登入管理,在使用者登入後,執行 /etc/X11/chromeos-xsession 開啟視窗管理程式 /usr/bin/chromeos-wm,並透過無限迴圈的 /usr/bin/chromeos-chrome-loop 確保瀏覽器不會被關掉。

這是一個在接案子的過程中產生的有趣實驗,我們的用意是以此來探討 Chromium OS 的客製化與開機流程,也歡迎有興趣加入參與 xPUD 開發的人敬請指教。 :-)

2010年1月12日 星期二

Daily Bookmarks 01/12/2010

[RPG] 為什麼Ray Muzyka說日本角色扮演遊戲已經卡住了?

http://www.gameimp.com/archives/2010/01/11/1459/

CSS3 + Progressive Enhancement = Smart Design

http://perishablepress.com/press/2010/01/11/css3-progressive-enhancement-smart-design/

Ignorance Is Bliss

http://24ways.org/2009/ignorance-is-bliss

Tug of War

http://forecasterror.blogspot.com/2010/01/tug-of-war.html

PHP很烂?我的看法

http://www.ruanyifeng.com/blog/2010/01/does_php_suck.html

親愛的,這才是Nexus One的重點

http://fred.ipod.to/blog/?post/2075

長大吧!台客實驗室(ULLab)

http://fred-zone.blogspot.com/2010/01/ullab.html

Weasel words and the absurdity of corporate speak

http://37signals.com/svn/posts/2102-weasel-words-and-the-absurdity-of-corporate-speak

Fixed-scheduled productivity

http://37signals.com/svn/posts/2084-fixed-scheduled-productivity

Boxee Launches Beta with New UI, Boxee Box

http://www.osnews.com/story/22705/Boxee_Launches_Beta_with_New_UI_Boxee_Box

It's Zero hour!

http://blog.hexxeh.net/post/328117465/its-zero-hour

iPhone Tethering on Ubuntu 9.10 (Karmic)

http://www.ubuntugeek.com/iphone-tethering-on-ubuntu-9-10-karmic.html

WebKitGTK+ hackfest improves HTML renderer for GNOME apps

http://arstechnica.com/open-source/news/2010/01/webkitgtk-hackfest-improves-html-renderer-for-gnome-apps.ars

A Democracy of Netbooks

http://www.codinghorror.com/blog/archives/001318.html

Crooked Fingers, One Of Those Unforgettable Sounds You Almost Forget

http://pulp.bluecircus.net/archives/014488.html

2010年1月7日 星期四

Daily Bookmarks 01/07/2009

It's Important to Tell the Truth, in Time

http://forecasterror.blogspot.com/2010/01/its-important-to-tell-truth-in-time.html

16世纪的英国,21世纪的中国

http://www.ruanyifeng.com/blog/2010/01/england_in_16th_century_vs_china_in_21st_century.html

12种不宜使用的Javascript语法

http://www.ruanyifeng.com/blog/2010/01/12_javascript_syntax_structures_you_should_not_use.html

我要翻译Paul Graham了

http://www.ruanyifeng.com/blog/2009/12/i_will_translate_paul_graham.html

iTablet? iSlate? iWhat?

http://fred.ipod.to/blog/?post/2071

也談悲慘指數──為南方大師續貂

http://fred.ipod.to/blog/?post/2072

Nexus One:Google的「蟲洞」

http://fred.ipod.to/blog/?post/2073

OpenSource 與嵌入式系統

http://heaven.branda.to/~thinker/GinGin_CGI.py/show_id_doc/407

Nokia要在北美和蘋果、RIM相抗衡

http://www.zdnet.com.tw/news/comm/0,2000085675,20143587,00.htm

微軟、英特爾將把平板電腦市場拱手讓給蘋果?

http://www.zdnet.com.tw/news/ce/0,2000085674,20143539,00.htm

Using firebug for firefox 除錯 javascript

http://blog.wu-boy.com/2010/01/05/1943/

讓Intel CPU 自動依需要調整頻率

http://shelandy.blogspot.com/2009/12/intel-cpu.html

Apple Store madness.

http://cocoa.zonble.net/post/318289809/apple-store-madness

Rumors about the Tablet

http://cocoa.zonble.net/post/312299130/rumors-about-the-tablet

What every mass marketer needs to learn from Groucho Marx

http://sethgodin.typepad.com/seths_blog/2010/01/what-every-marketer-needs-to-learn-from-groucho-marx.html

Secret language

http://www.joelonsoftware.com/items/2009/12/30.html

Responsible Open Source Code Parenting

http://www.codinghorror.com/blog/archives/001317.html