ラベル MeeGo の投稿を表示しています。 すべての投稿を表示
ラベル MeeGo の投稿を表示しています。 すべての投稿を表示

2011年6月2日木曜日

MeeGo Porting Guide なんちゃって翻訳(その2) 相変わらず途中まで

はい、前回のMeeGo Porting Guide翻訳のパート2です。

前回の翻訳部分は概要の後、ビルドのツールについての説明に入っていました。

思いっきり要約すると、「MeeGoのコンプライアンスに従い、ABIやAPIを壊すことがないのであれば、HWベンダは独自のソフトのために独自のビルドマシンを使おうと、MeeGoのビルドシステムを使おうとかまわない。ただ、そのためには、MeeGoをビルドしているシステムと同じツールセットを使うことになるだろう」ということで、MeeGoのビルドに使われているツールが列挙されていました。

というわけで、前回に引き続き途中までGoogle翻訳で翻訳を続けていたのですが・・・twitterで、Google Translator Toolkitでないと普通の翻訳は覚えてくれないよ・・・と指摘を受けまして、がっかりです。無駄に浪費時間を返せ!と叫びたい気分です。

というわけで、途中からはかなり投げやりに適当翻訳を行ってますので、ご容赦ください。



ベンダ独自のOBS

したがって、結局のところ、MeeGo OSを実行する実際の製品を作成する場合、ベンダーは独自のOBSビルドシステムを設定する事にになるかもしれません。独自のOBSシステムは新しいハードウェア上でテストするためのMeeGo OSの変更とビルドの柔軟な方法を提供するので、初期のハードウェア/製品開発の段階で有益であるかもしれません。ベンダ独自のOBSシステムはMeeGoから示されたパッケージを扱うためや他のソース、例えば、そのベンダーに固有のクローズドソースのパッケージ等、を扱うリンクをMeeGoOBSにリンクできます。このセットアップの概要図を参照してください。

ベンダーの設定:
  • 独自のOBSシステムを設定する
    OBSシステムの設定に関する手順については、OBS Applicances OpenSUSE OBSのWikiになります。
  • 独自のコンポーネントのため独自のOBS 下のプロジェクトを作成する
  • MeeGoコンポーネント用に独自のOBSをMeeGoOBS へのリンクする
  • 自分のOBSがMeeGoのコンポーネントに試験的なパッチを当てることがあります
    Note : 最終的に完成したMeeGoベースの製品でMeeGoのコンポーネントに必要なすべてのパッチはMeeGo.comにプッシュする必要があります。ただし、これはMeeGoコンプライアンス要件および該当するSWライセンスのルールとして満たされている限り絶対に必須要件になるわけではありません。
    上流のプロジェクト、MeeGo、製品、およびパッチを参照してください

  • OBSで作成されたパッケージからリリースおよびイメージを作成するために必要な機器をセットアップが必要
    この機器は、MeeGoで使用されるツールセットをベースにすることができます(上記参照)

MeeGo.comの下での作業

いくつかの新しいハードウェアにMeeGoを移植するのもう一つの方法は、新しいハードウェアは、1つMeeGoリファレンスハードウェアとして受け入れを取得し、MeeGoビルド機構で通常のMeeGoリリース構築サイクルの一部ハードウェアとしてリファレンス用にビルド作成するものです(リリースタイムラインリリースプロセスを参照してください)。また、この設定ではMeeGoサイド​​のリファレンスハードウェアのQAサポートを含めることができます(クオリティを参照してください)。この文書の執筆時点で、MeeGoの新規リファレンスハードウェアを得るための実際のプロセスはまだ多少は不明瞭です。いずれにせよ、このモデルはMeeGoで、それらのリファレンスハードウェアをサポートする一般的なMeeGo作業ではベンダーから特に積極的に参加する必要があります。

ベンダーの設定:
  • それらのコンポーネントのMeeGo OBS下にあるデバイス/プラットフォーム開発プロジェクトを作成します。オープンソースのコンポーネントは、MeeGoトランクに提出になるでしょう。: 含めるために他のMeeGoコンポーネントのようにテストやレビューを行います。
    MeeGo OBSではいくつかのリファレンスHWのMeeGoをビルド含めるためクローズドソースのバイナリコンポーネントを持つことも可能であることに注意してください。これらは、トランク:non-ossのリポジトリに提出されます。repo.meego.com からミラーやホストができないので、通常、ライセンスはコンポーネントが少なくとも再配布可能性を含むようにする必要があります。
  • 他のMeeGoコンポーネントへのパッチは、必要に応じてMeeGo.comへをプッシュします(上流のプロジェクト、MeeGo、製品、およびパッチを参照)
  • それらのリファレンスHWのイメージを構築するためのMICキックスタートファイルを作成します(または作成をサポートします)
  • 必要に応じて、MeeGoのビルドとインフラストラクチャのリリースツールでそれらのリファレンスハードウェアとソフトウェアコンポーネントのサポートを追加サポートします
トライアル
上記のプロセスの代わりに、限定的ですが簡単な"try it out"について以下に記述します。

最初の試み
  • まずはあなたのターゲットにもっとも近いすでにビルドされたMeegoのリファレンスのためのrootファイルシステムを入手します。ARMv7の場合、通常N900ハンドセットのイメージで、Atomの場合、Netbookのイメージやハンドセットのイメージになるでしょう。
  • あなたのデバイス向けのLinux kernelをビルドしモジュールを/lib/modulesにインストールします。
  • rootファイルシステムを起動し、コンフィグレーションに手をいれ、デバイスをとめるようなUXをはずします。
  • あなたのポーティング作業について修正したり追加したことを書きとめておいて下さい。

最初のイメージの作成

適切なハードウェアアダプテーションの第二ステップは、あなた自身のイメージをビルドできるようにすることです。この前までの作業がリファレンスデバイスのイメージに基づいているので、手始めにこのイメージを作成することが理にかなっています。MeeGoのイメージは、イメージの内容計画を記述するいわゆる'kickstartファイル'に基づいて構成されます。
  • Meego Image Creator tool(MIC)をインストールします
  • リファレンスデバイスのイメージを見つけたのと同じディレクトリからkickstartファイル(.ks)をダウンロードします。
  • mic-image-creatorを使ってイメージを生成します(should be elaborated)。
  • 前のステップで焼きたてほやほやのイメージを試してみる。

あなたが移植した最初の再生イメージをビルドする
  • MeeGo kernelをダウンロードし、場合によっては新しいデバイスドライバを含むパッチを適用し、カーネルをビルドします(新チップセットをサポートしたMeeGoカーネルの取得方法の記述を参照)
  • Kickstart fileにあなたのカーネルパッケージを含むリポジトリを追加します(to be elaborated)
  • Kickstartファイルからリファレンスデバイス固有の部分を取り除きます
  • %packagesセクションにあなたのカーネルパッケージについての記述を追加します
  • あなたのデバイスに合わせてkickstartファイルの%postセクションに、ビルドしたパッケージやシェルスクリプトの設定を追加変更します。
この方法のバリエーションとして詳細な説明は、ここで見つけられる(もっとよい説明が必要)


MeeGoカーネルの新しいチップセットのサポートを入手する
どのようにMeeGoカーネルを動作させ、新しいハードウェアをサポートするかについてのもっと詳細な情報は、How-Toの 新チップセットをサポートしたMeeGoカーネルの取得方法を参照してください。




というわけで、失意のなかでちらほらとがんばったのですが、全部翻訳するには到底おいついていないわけで、今日も途中までということで。

本日twitterで@kimitake さんが見つけてきてくださった過去MLを超大雑把に翻訳すると、meego.comの翻訳については歓迎するけど、どう載せていくかは、meego.jpのような方法が良いんじゃなかろうかといった意見がある様子。

でも、実は、meego.jpはwikiをもってなくて、独自wikiがあるのはmeego-users.jpなんですよね。

このあたりがこうムズムズするところなんですが、MeeGoというのはもともと、もっとオープンにコミュニティーとして作り上げていこうという趣旨もあって、meego.comにアカウントを作ることもそのwikiを編集することも自由のようです。

ところが、日本の場合は、meego.comの日本版のはずのmeego.jpのほかに、meego-users.jpなんてのもあるんですよね。Androidの場合は、新しい方向性やベースの開発はクローズドに行われているし、OHAとユーザー会とが別にできるのはしょうがないのですけど。

meego.jpとmeego-users.jpの立ち位置とか、ユーザーが何をどこまでどうしていけるのか、もう少し明瞭にしてもらわないと動きにくいような気がしています。

# え、ユーザー会で直接言えって?まぁ、そうかもしれないのだけど、隠者はほら、超小心者ですので・・・・orz

2011年6月1日水曜日

MeeGo Porting Guide なんちゃってGoogle翻訳(途中)

今のGoogle翻訳は使えないとか思っている隠者です。出てくる翻訳結果がねぇ・・・。

ただ、Google翻訳は、自力で訂正を登録できるようなので、もしかしたら頻繁に修正していけば、使い物になるのうになるのかもしれません。というわけで、MeeGo Porting GuideをGoogle翻訳を使いながらちょこちょこ翻訳を手直ししつつ、多少は読める所までを目標に翻訳はじめてみました。です・ます調とである調が混在してますけど、とりあえず半自動翻訳なのでお許し下さい(注:どうしてもうまく文節を認識してもらえないものは分割して翻訳しています)。

本当は meego.jp のwikiにいれたいのだけど、いまいちページの構成とかどう階層付けしたらいいかとかわからないんですよねぇ・・・・。

イントロダクション


MeeGo Porting Guide(MPG)の目標は、(新しい)ハードウェアの上でMeeGo OSを実行し、最終的にMeeGo OSをベースに製品を作成したい人のための貴重な情報と説明を提供することです。 MPGは、移植プロセス、ツール、およびその他の関連する背景情報の概要から始め、移植が実際に個々の技術的/機能的領域において意味することの説明に移ります。

移植ガイドは、厳密に特定のMeeGo OSバージョンまたはデバイスのカテゴリに関連付けていません。代わりに異なるデバイスの種類をカバーするだけでなく、新しいMeeGo OSのバージョンで導入された変更に追従し十分に汎用的であることを目指しています。

異なる技術分野での詳細移植情報は、各MeeGoアーキテクチャに依存しています。いくつかのケースでは、このアーキテクチャでまだ未決定の可能性があり、これについては該当するセクションに記載されています。



フィードバック

これらのページへ投稿はオープンです。すべてのMeeGoコミュニティのメンバーはいつでもこれらのページを向上させる自由があります。また、MeeGo移植メーリングリストにフィードバックをすることができます。

一般的な移植情報/ガイドライン

MeeGo Compliance

おそらく、MPGに関連する背景情報の最も重要な部分は、MeeGoコンプライアンス要件です。MeeGoに準拠することを意図されているデバイスは該当するデバイスのカテゴリのMeeGoコンプライアンス仕様(仕様の最初のバージョンは2010年10月に使用できるようになっている)に記載されている要件を満たす必要があります。要するに、MeeGo準拠のデバイスは以下を満たす必要があります:
  • 該当するデバイスカテゴリの最小ハードウェア性能とコンポーネント要件を満たす
  • MeeGoコアOSを構成するすべてのSWのコンポーネントを含める
  • 該当するデバイスカテゴリにおいて存在するデバイスの必要な、追加ソフトウェアコンポーネントを含む
  • MeeGo由来コンポーネントのいずれのAPI/ ABIも壊さない
  • MeeGo ソフトウェア包装規則に従う
コンプライアンス規則はMeeGo OSそのものとMeeGoアプリケーションが異なる環境(使用される命令セットコンパイラバージョン、コンパイラオプションなど)でコンパイルされる方法に関してCPUアーキテクチャ固有の要件を指定します。

デバイスの製造元は、MeeGoコンプライアンスを壊さしない限り、それらのデバイスの追加機能をハードウェアコンポーネントとSWのコンポーネントを含むことができる。ベンダーはパッチがMeeGoコンプライアンスを壊さない場合、MeeGo OSのコンポーネントにパッチを当てる事ができる。それら該当するソフトウェアライセンスにより設定されている規則に準拠する限り、デバイスベンダー独自のソフトウェアコンポーネントは、オープンソースやクローズドソースののコンポーネントにすることができます。

MeeGo Porting Guideの観点から、コンプライアンスの要件は-存在する必要のあるソフトウェアコンポーネントとハードウェアコンポーネントを定義している-デバイスのベンダで移植するための必要な作業最小セットとMeeGo OS側からの関連するソフトウェアコンポーネントを効果的に定義しています。

移植プロセスとツール

概要

ベンダーのデバイスが上記で定義したMeeGoに準拠している場合に限り、彼らが、デバイスのためのSWをどのようにビルドするのかは基本的にはベンダー次第です。ベンダーは、彼らの所有するビルドのマシンやMeeGoでも使用されるOBSビルドシステムをセットアップして使用することができます。ベンダーのビルドシステムが、何であるかに関係なく、それはMeeGoビルドインフラストラクチャと統合するするには、少なくともビルドのためにMeeGoソースパッケージを取得するだけでなく、MeeGoコンポーネントがMeeGoビルドシステムで構築される同じ方法(同じコンパイラおよびコンパイラオプションを使用してなど)で、それぞれのビルドをする必要があります。いずれにせよ、MeeGoにおいては、任意のハードウェアまたはソフトウェアのベンダーが、効率的なSWの作成に使用できるオープンなツールセットを提供し使用しています。MeeGoと同じツールセットを使用することでMeeGoビルドインフラストラクチャとベンダー独自のビルドシステムを統合する最も簡単な方法を提供できるでしょう。

MeeGoビルドインフラストラクチャおよびツールセットの主要な成分:

  • MeeGo Gitorious
    様々なMeeGo固有SWコンポーネントとツールのソースファイルのバージョン管理システム
  • MeeGo OBS
    ソースからMeeGoパッケージ(RPM)を構築するために使用されているビルドシステム
  • MeeGo Repository
    ビルドされたMeeGoリリース、すなわちMeeGoパッケージとイメージが格納されている場所
  • MeeGo Image Creator
    ハードウェアにフラッシュ/インストールできるMeeGoイメージをビルドするために使用するツール
  • MeeGo release tools
    repo.meego.comの下でMeeGoリリースの作成に使用されているBOSSとREVSのようなのツール

関連情報を参照するには、ビルドインフラストラクチャリリースインフラストラクチャおよびリリースエンジニアリングを参照してください。

MeeGoの移植プロセスの別の概要については、ハードウェアの有効化プロセスを参照してください。


2011年3月3日木曜日

MeeGo勉強会に参加してきました

納期が近い @hermit4 です。先月半ば頃から結構忙しくて大変です。そんなわけで、相変わらずブログの更新が止まってます(三日坊主じゃないんだからね!)。

さて、そんな忙しい最中なんですが、@himamura さんにぜひ来て!と呼ばれてしまったので、巣鴨にあるCQ出版さんのセミナールームでMeeGo勉強会参加してきました。

MeeGoユーザー会勉強会&OSCボランティア募集


日時:2011年3月3日(木) 18時~
定員:30人
会場:CQ出版社セミナールーム
       東京都豊島区巣鴨1-14-2 炭七ビル1階
料金:無料

正直なところ、都内とはいえ外れの方から1時間半近くかかる場所に18時はきつかったです。仕事を下さっているお客様には、忙しい最中なのにごめんなさいと心の中で土下座しつつ、遊び勉強に出向きました。

ちなみに、今回会場を貸して下さったCQ出版さんのInterface 2011年3月号には「Linuxベースの開発プラットホームMeeGoの基礎知識」という記事が掲載されているとの事。ご興味のある方は急ぎ購入されることをおすすめします(というか、つい先ほどぽちりました。最近書店で見かけてトップの記事に興味があるときしか買ってないです。ごめんなさい)。



さて、今まで参加してきた勉強会の多くは、発表者が数名スライドを用意してきて、それについて質問や意見等を忌憚なくぶつけてみるというものなんですが、今回は特にそういうこともなく、それぞれ思い思いに話す感じでした。

最初は自己紹介タイム
Nokiaの端末が好きな方、Qtを仕事にしていて興味を持った方から、仕事でMeeGoを始めた方、暗い話の多い仕事だから、何か新しく楽しいことをやりたいと思ってという方まで、色々な方がいらっしゃいました。

IntelさんからNokiaさんの発表について
Intelの今別府さんからは、WMCの目前、丁度1年目という正直時期の悪い発表でしたけど、Intelとしてはスタンスにもリソースにも変更はなしとのこと。このままMeeGo続けますよとの発言がありました。
上層部は知っていたのかもしれないですが、かなりサプライズ的な発表でしたとの事。
かなり各所への火消しが大変だったみたいですけど、それでも中にはNokiaさんがデバイスの主軸から外した事で逆に電話に使いやすくなるかもなぁ的な意見もあったようです。
まぁ、Intel色が強くなりすぎる事に懸念をしめしている方々もいるとの事でしたけど。

ユーザー会の盛り上げ方について
@himamura さんからAndroidのユーザー会の活発な活動についての紹介とMeeGoユーザー会に対する意見があったので、 MeeGoユーザー会の現状について、ちょっと不満に思っていた辺りを意見してきました。

MeeGoユーザー会なんですが、参加したもののあまり盛り上がりのないフォーラムがWebにあるだけで、勉強会も参加者が誰なのかよくわからない状態。
昨今の勉強会は、Google Groups等で、参加者の概要がわかったり、イベントもATND等で募集して、誰が参加しているのか見えやすい。そういったユーザー同士のつながりが今のMeeGoユーザー会では作られにくいという事をもっと開放的な組織になるようにしないと駄目なのではないかなということで述べて来ました。

という話をしていた辺りで、MeeGoユーザー会の事務局の人や、Nokiaの佐相さん登場。

Nokiaさんのスタンスと今回WMCの話
色々噂話も出てるのだけどという前置きで色々話をしていただきました。
今回の発表は、MeeGoからの完全撤収という話ではなくて、主軸の製品から外れてしまって実験的なものになってしまっただけとの事。MeeGoへの貢献は続けて行きたいとの事でした。

Nokiaさんが抜けるとARMをやる人がいなくなるのでは的な話には、元々、Nokiaとしても、Intelさんのチップでという考えもあって、実はわりとIntel寄りだったとの事。
人材流出が始まっているとの話は、その多くがMeeGo主軸にとがんばってきていて、このままMeeGoをやっていきたいと思っている人のようです。Intelさんへ転職されて続けようという人もいるようですね。
Qtについても、もう終わりだ的な発言をする人がいるけれど、WMCへのQtに関する出展もストップはかからなかったし、まだ首にはなりそうもないとの事でした。

WMCについては、MeeGoのコーナーもあったとの事。発表直後だけあって、Intelさんのブースには近寄りにくかったそうですけど、色々な種類のデバイスが展示してあったそうです。
Androidのピンバッチについては、高いお金払って(一般参加だと結構お金かかるそうですね)来てるのに、バッチ集めで良いのかなぁ?・・・との事。冷静だなぁ。
あれはあれで、収集癖を刺激する良い方法な気もしますけど、バッチを集め歩いた人たちの今の心境を聞いてみたくなりました。


ちなみに、Qt大好きプログラマとしては、今後のNokiaさんの動向が気になるものの、実際のところは、LGPL化されており、サポートが途絶えたとしても、オープンソースの世界で生き残れるだろうと思っているため、悲観的な感想は持っていません。

Nokiaさんの中には、Trolltech時代からQtをやってきたQtエンジニアの方々も相当数いるでしょうし、今回の発表でリソースや予算の面では、今までよりは厳しい状況がくるのかもしれませんけど、Qt側の人たちには何とかがんばって欲しいなと思います。


そんなあれこれな、お話の間に、WeTABにMeeGoを入れたものを回して頂いて触ってみました。正直な感想を言わせてもらうと・・・もう少しユーザーにとって使いやすそうなインターフェースにできないかなという感触。
iPadをまねれば良いというものでもないですけど、なんでしょうね、こう、まだ萌えが足りない感じでした。まぁ、まだまだやるべき事が一杯ある、丁度Androidの最初の頃のような印象でした。

雑談ちっくな勉強会の話しの中で、Qtに関するプログラマーのイベントについてのお話が出ました。

・NokiaさんのN8向けのアプリを作って懸賞金総額10億円!

N8だからSymbianですかね。でもアプリはQtで組めるので、もってなくてもいけるか・・・?!とまぁ、さすがに厳しいかなぁとも思いつつ。

2011年1月11日火曜日

Installing MeeGo on N900

というわけで、N900のMeeGo化挑戦中の隠者でございます。

N900へのインストール方法にもいくつかの種類があるようです。
最初は古い情報を元にNative installを行おうとしていましたが、Nokiaの朝木さんから、通常はMicroSDに入れてのデュアルブートが良いですよと教えられて、microSDでの起動を行いました。ちなみにwikiを見てみると、現在はNative installは未サポートになったようです。
外部MMCへのインストール
SDカードを使うことで内蔵メモリのデータを壊さずに実行する方法。現在の推奨手順
chrootインストール
Maemo5上からMeeGoをchrootで起動する方法
NFS-Root over usb networking
USBネットワーク経由のNFSを使い、Maemo5を削除したり、焼き込んだり、SDを使ったりせずにMeeGoを実行する方法
Dual Boot Maemo5 PR1.3 and MeeGo1.1
Maemo5(PR1.3)と、MeeGo1.1のデュアルブート方法
Native install
現在のバージョンでは未対応 内蔵メモリへのMeeGo1.1のインストール(Maemo5削除)
kexecを使ったMeeGo起動
現在のバージョンでは未対応? kexec機能を使ったMeeGoの起動手順


本題:MMC+USBでのカーネル転送を使ったMeeGo起動手順
0. 必要なモノ
  • N900本体
  • 2GB以上のマイクロSD
  • インターネットに接続されたUbuntu(32bit)環境
  • N900とUbuntu搭載マシンを接続するUSBケーブル

1. Flasherのinstall
Flasherは、Maemo deviceの内蔵NANDにデータをフラッシュするためのツールです。Windows版、Ubuntu版、Mac OS X版が用意されています。ここから入手する必要があります。
とりあえず、Androidのプラットフォームな人なら、皆さんUbuntuが多いでしょうから、Ubuntuで実行しておきます。ただ、残念な事に64bit版がまだないのですよねぇ・・・。
  1. maemo_flasher-3.5_2.5.2.2_i386.debのダウンロード
  2. sudo dpkg -i maemo_flasher-3.5_2.5.2.2_i386.deb
  3. ライセンスの確認等については了解を選択する。

2. rawイメージとvmlinuzイメージのダウンロード
最初はRelease版で良いでしょう。ここからイメージをダウンロードして下さい。
  • meego-handset-arm7v-n900-<version>-mmcblk0p.raw.bz2
  • meego-handset-arm7v-n900-<version>-vmlinuz-<kernel version>-n900  
3. microSDへのrootfsの書き込み
  1. microSDの中身は消え去るため覚悟を決める
  2. マウントされている場合はアンマウントする
  3. bzcat meego-handset-arm7v-n900-<version>-mmcblk0p.raw.bz2 | sudo dd bs=4096 of=/dev/sdX (sdXは、microSDのデバイスファイル - たとえば、/dev/sdb等。開発環境により異なる)
  4. N900の電源を切ります
  5. 裏蓋を取り、microSDを挿入します。
  6. 裏蓋を閉じます。



なお、bzcat | dd の部分は、microSDのclassにもよるでしょうが、2GB近いデータ書き込みのため結構時間がかかります。ここまでの手順が終わった時点でN900の電源は切れていますよね。そのままで次の手順に進んで下さい。

4. Kernelイメージのロード
flasherを使って、vmlinuzイメージを、メモリ上にロードします。この時点では、MMCには焼き込みません。

  1. Ubuntu 上で flasherをロードモードで実行待機させる
    $sudo flasher-3.5 -l -k meego-handset-armv7l-n900--vmlinuz-2.6.35.3-9.4-n900 -b
  2. N900のキーボードの'u'を押しながらUbuntuマシンとUSB接続する(自動的に電源入ります)
これで、flasherが待機しているUbuntuと接続されると、カーネルがメモリにロードされ、MeeGoが起動されるはずです。
なお、再起動すると元のカーネルが使われるため、通常通りMaemoで起動されます。

ただ、現在、隠者の手持ちのN900だとすごく動作がもっさり・・・・というか止まったままになることも。
勉強不足なのでどれが安定して動くのかもよくわかっていませんしねぇ。しばらくは格闘の日々かもしれません。

参考:http://wiki.meego.com/ARM/N900/Install/MMC

2011年1月9日日曜日

MeeGoってなんじゃらほい

最近よくMeeGoの話題を口にしてあるいてる隠者でございます。
でも、Androidの知名度に比べて、MeeGoはまだまだでして。なにそれ?って顔をされる方もいます。
そんなわけで、MeeGoについて少しだけ調べたメモを載せておきます。

Nokia Maemoの歴史
Nokiaはフィンランドの電気通信機器メーカーです。日本特有の携帯文化にうまく適合できなかったためか、日本からは撤退してしまいましたが、携帯電話端末では世界市場の30%以上のシェアをもつメーカーさんです。スマートフォンがこれほどのブームになるよりも前から、色々面白い端末を出していたので、こんなマイナーサイトを見に来る方は知っている人は多いかもしれません。

もともとMaemoの前身は、Nokia 700というインターネットタブレット向けに開発されたOS2005(Internet Tablet 2005 software edition)というLinuxベースのOSだったようです。
OS2006(2.0系),OS2007(3.0系),OS2008(4.0系)と順調にバージョンアップを続け、5.0系からはMaemoという名前を冠してMaemo5と呼ばれていました。

Androidがinitからはすべて独自実装で構成したのに対し、Maemoは下回りはLinuxのまま、Linuxのハンドセット向けディストリビューションのような形で進化してきたといえるのではないでしょうか。

ただ、スマートフォン市場は、まさに群雄割拠の様相を示してきており、特にiPhoneやAndroidのアプリケーションの劇的な増加に対して、Nokia社は、Trolltech社を買収し、アプリをより作りやすいようにQtも使えるようにMaemoに組み込んだものの、Ovi Storeの立ち上げにも手間取ったこともあり、Maemo向けのアプリケーションはお世辞にも多いとはいえない状況になってしまいました。


Moblinの歴史
Moblinは、Intelさんが主導で開発を行ったAtomベースのMID/ネットブック向けのLinuxディストリビューションです。2007年頃にプロジェクトが立ち上がり、2008年には専門の技術センターを開く等の動きを見せていました。
Intel社内でも重要プロジェクトとして動いていたようで、Alan Coxさんのような著名な人材まで採用していましたが、2008年〜2009年頃といえばUbuntuがはやりでAndroidの開発が進められてきた時期でもあり、思うようにコミュニティーの関心を生み出せませんでした。
間の悪いことにこの時期は定期的な半導体不況期が終わろうという時期に、世界同時不況の波が重なって、半導体業界全体が軋む音を立てていた時期です。半導体業界はどこもリストラの言葉が聞こえてきていたためか、IntelさんもMoblinをどこかに売却をしようとしていましたが、最終的には2009年4月にLinux FoundationにMoblinを託す事になりました。


MeeGo誕生へ
もっと多くのアプリケーションが作成してもらえるようにMaemoに目を向けて欲しかったNokiaさんと、今後の方向性を模索していたMoblinプロジェクトは、2010年2月のMobile World Congressにおいて、二つのプロジェクトを融合し、MeeGoというプロジェクトにするという発表を行いました。

2010年5月に MeeGo ver1.0を公開、2010年9月にはver1.1を公開、現在も開発が進められています。

MeeGoの特徴

  • 開発がオープンである
    ソースコードの公開はもちろん、現在開発中のバージョンにもアクセスできるという事を意味しています。Androidが、開発自体は非公開で行われているのに対し、MeeGoは完全に開かれていると言われています。
  • アプリはネイティブアプリが基本
    iOSはObjective-C, AndroidはJavaに対して、MeeGoはC++がベースとなります。さらに、現在Qtの最新バージョンではQt Quickという新しい技術の開発が進められており、StyleSheelににた構文のUI記述と、JavaScriptを使ったアプリを作成できるようなQMLという言語の追加が行われており、これはMeeGoでも使えるようになるはずです。
  • 用途ごとのUXに分かれて開発が進められている
    元々が、携帯電話向けに特化して作られていたAndroidは、NoteBookやタブレット機、セットトップボックスなどに載せた時にUI等に色々不都合があったりします。MeeGoではあらかじめこれらを分けて開発が進められています。

とまぁ、偉そうに書いていますが、隠者自身は、Qtでのアプリ開発経験はそこそこ長いものの、Meego自体はこれから学習していくことになります。例によって仕事で使ってるわけでもない趣味の人が、趣味で調べて書き連ねているので、間違いなど含まれていたらごめんなさい。

ちなみに隠者としては、iOS と Android と MeeGoが似たような分野で切磋琢磨しつつ、面白いモノが次々に生まれてくれるといいなぁとか思ってます。

2011年1月8日土曜日

N900届きました

今年はMeeGoに力をいれたい隠者です。
Qtのエントリーを入れると海外からのアクセスが増えるんですよねぇ・・・・統計見るのって面白いなぁ。

さて待望のこれ、届きました。

 ケースでかいです。一番左の白いのがiPhone4の箱かな。
 真ん中のが、HTC Aria社長。そして右のがNokia N900です。

 どれだけでかいのか!とおもったのですが、N900のサイズ自体はそれほどバカみたいに大きいわけではなく付属品が一杯。
 本体のサイズは、HTC Ariaと比べるとこれくらい。やっぱりキーボード付きなので厚いです。
まぁ、N900については、明日ABCが終わってからのんびりと色々遊び倒します。はい。
来週の横浜プラットフォーム部までには、MeeGoで動かせるようにしないとな。