フレイドフォートonBlog

普通とか自由って何ぞや

AsteroidOS を再度試してみる事にした。
と言っても、現行の OpenEmbeddedを使うものではなく、
SailfishOS Emulatorを土台にした場合のリトライ。

これまでの事も踏まえた纏め。
SailfishOS、Nemo 同様に lipstick compositor(Wayland)を使用。
github の AsteroidOS からソースは得られる。
現行の master だと Qt 5.8が対象ぽい。
SailfishOS 2.1.0.11ベースでは、Qt 5.6 なので 1.0-alpha のブランチを使う。
尚、現行ブランチは、master と 1.0-alpha の2種。

先日作った USBメモリー上の Nemo環境で試すことにした。
ハードはネットブック。
まず、開発系パッケージの追加。
githubからソースで得たのは、
qml-asteroid
asteroid-launcher
他にもアプリ類があるが本体はこの2つくらいか。
壁紙は別で
asteroid-wallpapers
を得る。

各々のブランチを 1.0-alphaに切り替えて、
qml-asteroid を導入後、asteroid-launcherを導入。

# cd qml-asteroid
# git checkout 1.0-alpha
# qmake -r && make all && make install

# cd asteroid-lancher
# git checkout 1.0-alpha
# qmake -r && make all && make install

元にあった Nemo Glacier UI は上書きで、AsteroidOSに置き換わる。
戻す時は、Nemoや SailfishOSのホームパッケージを入れ直せば良い。

この段階だと、表示は出るが背景が真っ黒なので壁紙を入れる。
asteroid-lancherのソースから以下の位置を確認。
/usr/share/asteroid-launcher/wallpapers/

github から asteroid-wallpapers を得て、
その中の 320x320/ の中身を先のディレクトリへ置く。
qml ファイルも有り、それも読み込まれる。

とりあえずここまでで、背景有りで時計表示と
他画面にロック、ライト、電池等の表示が出た。
ライトを押すと、ネットブックの液晶の明るさが変わった。
アプリ類も makeして入れてみたが、動かず。
AsteroidOSの UI上には、既存のアプリアイコンも確認出来ずだが、
ベースにした SailfishOSアプリなどは外部から動かせば動いた。
起動中アプリとしての表示も出た。
Nemo上だと、AsteroidOSアプリのアイコンは無画像ながら増えた。
動かない事は変わらず。
コマンドラインから動かしてエラーを見ても分からず。

今回の操作のどこで影響が出たのかわからないが、
起動の度にユーザーnemoのパスワードが変わるようになった。
SailfishOS Emulatorベースだと、1度設定したら変わらなかったはずだが、
Nokia N9にポーティングした環境のように毎度変わる状況になった。
rootのパスワードを設定してあるので、変更は容易だが、
どの段階で変更が行われているかは未特定。
自動変更されたパスワード自体は、
平文で特定のファイルに書き出されるので
それを見る事でも確認は出来る。

ひとまず、今回 AsteroidOS 1.0 Alpha のホームが動く程度は出来た。
masterだと、先に書いたように Qt のバージョンを上げる必要がありそうなので、
それはまた別環境でやるかベースにしてた SailfishOSの更新待ちかな。
OpenEmbeddedで一式作るならまだしも、
他のディストロで試そうと思うなら、
Qt本体以外の固有ライブラリが多いので難有りだとは思う。
これは、AsteroidOSというより、
Nemoや SailfishOSとの共通項といった感じか。

もう少しちゃんと動かせてたら、
USBメモリー環境作りで当初考えてた
SailfishOS、Nemo、AsteroidOS の3環境分けも再考したが、
この状況だと、そこまでする必要はないかな。
このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr Clip to Evernote

SailfishOS 関連のメモ。

まず、バージョンに関して。
先頃、2.1.1.12があるのを知ったので更新してみた。
時期的には、5月末頃から見つかってたらしい。
EA版としての情報は出てないので、
まだそれよりも前段階の物と思われる。

Emulatorで試した段階では、
ロックスクリーンにカメラマークが下方に増えた。
これは、カメラ関連の単独パッケージを確認。
ただ、ロックが外せない状態だったり、
起動中の何かのロードで時間が掛かったりした。
パッケージパターンの内訳にも変化有り。

USBメモリー環境で直のx86環境で試した場合には、
UIの表示も出なかった。
幾つかコピーしたりして、複数環境があるが、
その内の1つに Qtの EGLでエラーも見えたので
UI表示のエラーはその辺の可能性有り?

2.1.1.12は、得られるとしても適用するのは、
実験レベルと考えておく方が良いかも。
ARM環境は未確認なので、そちらは分からないけど。
Xperiaへの事では、2.1.2という情報が出てるので、
2.1.1で新機能入るなら、それ踏まえてって事に
なるのではないだろうか。

次に、x86向けイメージ作成。
2.1.0.11で作ってみる事にした。
結果として、OS起動もしたのだが、
無地のEmulatorを変換した時のように、
パスワードの変更が出来ないのでほぼ詰みな状況に。
UIの表示が出なかったので、色々調整の必要有りだな。
パスワードの件は、jolla-firstsession のパッケージで
初期パスワードの制御をしてそうだったので、
外したいところだったのだが、他への依存が多くて断念。
もしくは、干渉の無かった 2.0.0.10 辺りで
一旦イメージを作る方が楽かも。

後のEFI 対応の件を考えて、
Partition 1 /boot vfat
Partition 2 / ext4
な構成でイメージを作ってみたところ、
起動も出来たので、これは有りかな。
ブートオプションの書き換えも
FATなら Windows上からも書き換え利くしね。

ひとまず、2.1.1.12以降は、
もう少しはっきりした情報出てからかな。
イメージ作りは、構成の見直し。

と・・・ここまでを下書き保存して数時間後。

ksファイルの調整をして、2.1.0.11でイメージ作成後、
パスワードの件は回避出来た。
jolla-firstsession 内の 1つのファイルを消す文を足した事で対処。
だが、GUIの表示は出ない状態。
それでも操作出来る状況にはなったので、
パッケージ操作とかすればどうにか出来るだろう。

追記、2017-07-09 19:20
GUIが出なかったのは、compositorの設定が無かったからだった。
パッケージ内に含まれてた物だと思ってたのだが・・・。
それでも、まだ中途半端な事有り。
他にも不足があるので、再調整。
Qt の EGLのエラーは出てたので、それはまた別件だな。
このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr Clip to Evernote

Mer環境の雑記。
今更な話だったり、偏った話なので雑記扱いで。

ここ数日、USBメモリー上でのマルチブートをやってた事に関連して、
過去にやった事を再度したり、新たな事をしたりでの確認事のメモ。

そんな中でも、それら記事中で度々名を出した、TX-70 ボードでの話。
このボードは、いろいろと癖のある物。
時期は、2011〜2012頃の出た
組み込み向け Intel Atom E600番台搭載機。
使えるのは、32bitのみだが、これまでの目的には問題無い。
一番厄介なのは、グラフィックスドライバに EMGDを使う点。
当時試してた限り、MeeGoや Tizen IVI 1.0 だと
リポジトリからパッケージを得られてたが、
Kernelやドライバのバージョンとか、
設定の組み合わせとか面倒だった覚えはある。
とにかく画面出力に難儀な代物で、
一般的な Linuxな場合インストーラー自体も表示されるかどうか・・・。
更に今となっては、EMGD不要な後継もあるようだし、
現状使いどころのない物となっていた。

今回、簡易的なところでテストやイメージ作成用に
動かせれば良いなと思い、今一度使う事にした。
当時も GUIは抜きにして、CUIのみで使うならという事で
その後も幾らかそれらの目的で使っていた。
イメージ作りなら当時の環境のままでも問題は無いが、
現行のSailfishOSベースの環境で作り直したかったのが理由。
手元の残ってる環境のアーキテクチャが、
SSSE3必須な i586だったので、汎用の i486で作っておきたかった。
MeeGo から Mer移行後に i486登場後 i586と
並行して環境を使ってたりしたが、
後述する Kernelの件で、このまま保持する状況となった。

MeeGo〜Mer、Tizen 分岐期に出た
x86向け Kernelパッケージの kernel-adaptation-pc。
このパッケージ登場で 3.0.0系になったが、
その後の更新で 3.6系となり、
現在の SailfishOS Emulator も 3.6.11のそれ。
内部的な変更とかマイナーバージョンの差はある。
ちなみに、Tizen IVI側では後に名称変更されている。

本題は、この Kernelバージョンでの差に関して。
当時にもこの辺りの事は書いたはずだが、
解決には至ってなかったはず。
SDカード(BIOS起動)から 3.0.0で起動すると、
CUI のログイン画面は出るが、
3.6系だと起動メッセージ途中からブラックアウト。
今回、再度試してこの事を思い出したが・・・
ひとまずの対策が出来たので、記事にする事にした次第。

当時見かけてた情報に、
Kernelに Atom の PowerVR系 GPU(GMA500)関連の物が
加わったとかなんとか・・・。
少なくとも理由はその辺ではないかというのは見積もっていた。
その時は結局そこまで止まりだったような気はする。
もし対策出来てたなら、当時使ってた環境に調整してた跡が
あっただろうけど、今回見た限り、それは無かった。

サービスの動きとかも疑っても、
Kernelの差だけで状態が変わったので
調べる対象はそこだけと考えた。

起動メッセージの途中から画面が消えていることから、
読み込むモジュールを探ることにした。
その結果、3.6.11(SailfishOS) には、
/lib/modules/3.6.11-10.1.24.jolla/kernel/drivers/gpu/ に
gma500/ というディレクトリがあった。
3.0.0 の kernel には、これが無い。
この gma500 のディレクトリを、ひとまずリネームで無効化。
再起動してみると、CUIのログイン画面は出た。
欲しい結果は得られたので、この件はここまでかな。

TX-70 の E600番台は、GMA600搭載。
一応の対策後に改めて調べ直したらベースは GMA500らしい。
他のPowerVR系GPUのAtom含め、
MeeGoのリポジトリにパッケージあったけど、
どうだったのかは、ハード持ってて試した人がいればなところ。
今更試す気があっても公式は無くなっているので、
どこかにリポジトリのアーカイブがあればな話だ。

ひとまず、SDカード使用の起動で、
CUI表示で使えるようになったので良しとする。
・・・が、EFI起動だと、形式が違うのか、
文字ノイズがちらっと出てる程度で見えないままだ。
Android-x86使ったからでは?
という事になると、また別問題ってことにはなる。
このエントリーをはてなブックマークに追加 mixiチェック Share on Tumblr Clip to Evernote

このページのトップヘ