ユーザーモードエミュレーションqemu を使って Kono on Debian のイメージを Host PC で apt-get とかする

Kobo on Debian ですが,ストレージがmicroSD のせいかよくイメージが壊れてしまいます.そのたびに書き込みなおして設定を行ってというのは大変です.ということで Kobo on Debian のイメージをホストのLinux マシンでマウントしてユーザーモードqemu を利用して apt-get したりする方法の紹介です.

ここではhost pc に Debian jessie を利用していますが,wheezy や Ubuntu 13.10 なんかでも全く同じように動作しそうです.
(他のディストリビューションでも大丈夫でしょうがパッケージ名などが異なると思われます.)

qemu-user-static パッケージを導入

先ず,ユーザーモードqemu のパッケージを導入します.これで,別のアーキテクチャのバイナリをユーザーモードで動作させることが出来ます.

% sudo apt-get install qemu-user-static

パッケージの中を見ると以下のアーキテクチャが動作するようです.

% dpkg -L qemu-user-static
/usr/bin/qemu-mipsn32-static
/usr/bin/qemu-or32-static
/usr/bin/qemu-mips-static
/usr/bin/qemu-m68k-static
/usr/bin/qemu-ppc64-static
/usr/bin/qemu-sparc-static
/usr/bin/qemu-i386-static
/usr/bin/qemu-armeb-static
/usr/bin/qemu-mipsn32el-static
/usr/bin/qemu-ppc-static
/usr/bin/qemu-ppc64abi32-static
/usr/bin/qemu-mipsel-static
/usr/bin/qemu-arm-static
/usr/bin/qemu-x86_64-static
/usr/bin/qemu-sh4-static
/usr/bin/qemu-mips64el-static
/usr/bin/qemu-sparc64-static
/usr/bin/qemu-unicore32-static
/usr/bin/qemu-sh4eb-static
/usr/bin/qemu-microblazeel-static
/usr/bin/qemu-microblaze-static
/usr/bin/qemu-mips64-static
/usr/bin/qemu-cris-static
/usr/bin/qemu-sparc32plus-static
/usr/bin/qemu-alpha-static
/usr/bin/qemu-s390x-static

ディスクイメージをマウント

Kobo on Debian のイメージを loopback mount します.イメージは複数パーティションなので,fdisk コマンドでパーティション情報を確認して mount 時に offset を指定します.

% /sbin/fdisk -l -u ./2013-08-17_kobo_debian.img

Disk ./2013-08-17_kobo_debian.img: 8014 MB, 8014266368 bytes
255 heads, 63 sectors/track, 974 cylinders, total 15652864 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000aad1a

                       Device Boot      Start         End      Blocks   Id  System
./2013-08-17_kobo_debian.img1           19456    10506239     5243392   83  Linux
./2013-08-17_kobo_debian.img2        10506240    14698495     2096128    b  W95 FAT32
./2013-08-17_kobo_debian.img3        14698496    15652863      477184   82  Linux swap / Solaris

今回利用したいのは1つめのパーティションの ./2013-08-17_kobo_debian.img1 19456 10506239 5243392 83 Linux 部分です.
先頭ブロックは 19456 で,ブロックサイズは 512 なので, 19456*512 = 9961472 が offset になります.(若しくは expr 19456 \* 512 とかしても判りやすいかもです.)

% sudo mount -o loop,offset=9961472 ./2013-08-17_kobo_debian.img /mnt

これで 2013-08-17_kobo_debian.img の第1パーティションが /mnt にマウントされました.

ユーザーモードエミュレーションQEMU コマンドをコピーする

Kobo on Debian 部分を chroot で利用したいので,ユーザーモードエミュレーションQEMU コマンドをイメージ内にコピーします.
マウント時に /usr/bin になる部分にコピーします.

% sudo cp -p /usr/bin/qemu-arm-static /mnt/debian/usr/bin

chroot してapt とかする

イメージを chroot して apt とかしてみます.

% sudo chroot /mnt/debian /bin/bash
# vi etc/apt/sources.list

名前解決に失敗するので,nameserver を設定します.以下は Google の 8.8.8.8 を指定した時の例です.chroot 前に host のresolv.conf を cp しておいてもいいかもしれません.

# cat <<__EOF__> /etc/resolv.conf
> nameserver 8.8.8.8
> __EOF__
# apt-get update
  :

後は普通に設定していきます.
設定が終了したらexit コマンドで chroot を抜け,umount コマンドでアンマウントします.

RaspberryPi の Rasbian イメージでも行けるだろうと思って試したのですが,失敗してしまいました.解決したいところです….

ADD: その後やり直したらうまく行った

Debian wheezy/jessie で mikutter する(2014/01/15版)

2014/01/15現在 mikutter は wheezy-backports と sid にあります.

先日までjessie にもあって利用していたのですが(kobo とかで)移動してしまいました.ということで jessie で sid から借りてくる方法とついでに wheezy で backports から借りてくる方法を書いておきます.
jessie の方は多分また状況が変わるかもです.

※/etc 以下のファイルを編集します.etckeeper などを使ってバージョン管理しておくと便利&安心です.

jessie

/etc/apt/sources.list に sid を追加

以下の行を追加します.

# sid
deb http://ftp.jp.debian.org/debian/ sid main

source.list のurl は wheezy に合わせて下さい.(deb http://ring.ix.oita-u.ac.jp/archives/linux/debian/debian sid main contrib non-free の場合 deb http://ring.ix.oita-u.ac.jp/archives/linux/debian/debian sid main)

/etc/apt/preferences の編集

アップデートを有効にするために /etc/apt/preferences を編集します.
以下の行を追加します.

Package: *
Pin: release a=sid
Pin-Priority: 200

#これは設定しないで手動のほうが良い場合も?

前のフィールドがあったら1行開けること.行が開いてないとうまく認識しません.

アップデート

$ sudo apt-get update

mikutter 導入

$ sudo apt-get install mikutter/sid

or

$ sudo apt-get install -t sid mikutter

wheezy

/etc/apt/sources.list に backports を追加

以下の行を追加します.

# wheezy-backports
deb http://ftp.jp.debian.org/debian/ wheezy-backports main

source.list のurl は wheezy に合わせて下さい.(deb http://ring.ix.oita-u.ac.jp/archives/linux/debian/debian wheezy main contrib non-free の場合 deb http://ring.ix.oita-u.ac.jp/archives/linux/debian/debian wheezy-backports main)

/etc/apt/preferences の編集

アップデートを有効にするために /etc/apt/preferences を編集します.
以下の行を追加します.

Package: *
Pin: release a=wheezy-backports
Pin-Priority: 200

前のフィールドがあったら1行開けること.行が開いてないとうまく認識しません.

アップデート

$ sudo apt-get update

mikutter 導入

$ sudo apt-get install mikutter/wheezy-backports

or

$ sudo apt-get install -t wheezy-backports mikutter

[告知]日経Linux 2014年2月号に Kobo on Debian/Android の記事が載ります

今回ご縁があって1/8発売の「日経Linux2014年02月号」に記事を書かせてもらいました.内容は Kobo でDebian/Android を動かすものです.

元々関西オープンフォーラム2013opencocon@shimadah君と話していて「kobo でDebian 動かしてる人居るよ.調べてみる価値はあると思う.」と聞いたのがきっかけでした.
その後 オープンソースカンファレンス2013福岡に現物を持って行ったら結構手遅れ界隈を中心に受けたのでその次の週のオープンソースカンファレンス2013大分のLT で発表したのでした.(こっちにはLT が下手なせいかLT は受けなかったorz)

このLT 資料を見た @emasakaさん経由で執筆依頼を頂き記事を書きました.

#最後の校正はTakashi.Yamanoue先生の「鹿児島組み込みシステム推進協議会懇談会」の最中にやってました><

校正時から変わっていなければ pp.75-79 に掲載されます.
内容は以下のWiki のものですが,校正も入り解りやすくなっています.

ただ,この記事執筆時から状況が変わった部分が有ります.

  • apt-get dist-upgrade した後Debian で起動するとタッチパネルが認識しなくなる.
  • mikutter のパッケージがJessie から無くなったのでapt-get install だけでは導入できなくなった.
  • Kobo mini でも動作確認が取れた.

タッチパネルが認識しなくなる問題はとりあえず dist-upgrade を避ければ大丈夫です.xorg 関連だと思うのですが,パッケージを割り出してpin を挿してそのパッケージを自動アップグレードされないような設定をすればいいと思うので調べているところです.
解決しました -> Kobo Debian で dist-upgrade 後にもタッチパネルが使えるようにする | matoken’s meme

mikutter はsid にはあるので,そちらから貰ってくることで動作すると思うので検証してまとめたいと思います.(多分 /etc/apt/sources.list, /etc/apt/preferences の書き換えで… )
とりあえずこんな感じで -> Debian wheezy/jessie で mikutter する(2014/01/15版) | matoken’s meme

その他,apt-get update Host 側で先に行ってから書き込む方法を見つけたのでこれも手順を書きたいと思っています.
書きました -> ユーザーモードエミュレーションqemu を使って Kono on Debian のイメージを Host PC で apt-get とかする | matoken’s meme

Kobo mini でも Debian したい

先日秋葉原に行ってきました.するとKobo Touch/glo が一台も見つかりませんでした><





ということで,mini を買ってしまいました.
一度も起動しないままmicroSD を差し替えようとすると….ネジ止めorz


ねじ回しを求めて


コミケ打ち上げ中にやったー!


てことで,前のエントリの e-Ink 電子書籍端末のKobo Touch にDebian を入れて遊ぶ方法 | matoken's meme と同じ手順でKobo mini でもDebian が動作するのを確認しました.解像度もKobo Touch と同じです.ホームボタンはありません.
ただ,ねじ回しが必要です><

e-Ink 電子書籍端末のKobo Touch にDebian を入れて遊ぶ方法

このエントリは,「Debian/Ubuntu JP Advent Calendar 2013」 18日分です.

オープンソースカンファレンス2013 福岡/オープンソースカンファレンス2013 大分で見かけた方が居るかもしれませんが,最近電子書籍端末のKobo Touch にDebian を導入して遊んでいます.
といってもmarekさんという方がDebian 導入済みのイメージを公開してくれているのでこのイメージを突っ込んでるだけです.
ここでは,Kobo Touch でDebian が起動できるようになるイメージの導入方法を説明します.

必要なもの

  • Kobo Touch(N905B)
  • 8GB 以上の容量のmicroSD card(出来ればClass10 等速度の速いもの)
  • 母艦
    ここではDebian Jessie の入ったLenovo X220 を利用しています.#このKobo のイメージもJessie なので丁度いい?

失うもの

  • 保証
    分解時にメーカー保証がなくなります><

Kobo の分解とmicroSD のバックアップ

スイッチの辺りを押して出来た隙間からパキパキ爪を外していきます.プラスチック製のポイントカードなどを使うと傷がつきにくいです.
裏蓋を外すとmicroSD にアクセスできるようになります.スイッチを上にした状態でmicroSD の上のカバーを右にスライドさせるとロックが外れます.

取り出したmicroSD を母艦に接続してdd コマンドでバックアップします.

$ sudo dd if=/dev/mmcblk0 of=kobo_touch.img bs=4M

※/dev/mmcblk0 部分は環境により変わります.microSD 接続時にdmesg 等で確認してください.

バックアップ完了後このmicroSD は保管しておきましょう.
ちなみにこの元々ついていたmicroSD を戻すと保証を除き元の環境に戻せます.

Kobo用Debian イメージの入手と書き込み

次のページの
Kobo as a Linux tablet – mgibek
Sample image can be downloaded from here: というところから
2013-08-17_kobo_debian.part01.rar
2013-08-17_kobo_debian.part02.rar
2013-08-17_kobo_debian.part03.rar
を入手します.

用意しておいた8GB 以上のmicroSD に書き込みます.

% sudo sh -c "unrar p -inul 2013-08-17_kobo_debian.part01.rar > /dev/mmcblk0"

ここでは /dev/mmcblk0 が書き込み先のmicroSD のデバイス名です.自分の環境に合わせて修正してください.

※ここで書き込み先のデバイスを間違えるととても悲しいことになるので注意しましょう!

hw_configの書き換え

実は配布されているイメージはN905C 用です.今回はN905B で動かしたいのでhw_config を書き換えます.

hw_config というのは私よくわかっていないのですが(誰か教えてくださいorz),恐らくhw 初期化時にこの値を参照してデバイスを有効化したりしてるのかなと思っています.
hw_config を修正しないとタッチドライバが読み込まれなかったりします.(スイッチボタンでシャットダウン走ります)

hw_config はオリジナルKobo イメージから書き出して今回の新しいmicroSD に書き込みます.初めのほうでバックアップしたイメージファイル(kobo_touch.img)から該当場所をglo_hwconfig.bin として抜き出し,Debian イメージの書き込まれたmicroSD Card に書き込みます.

% sudo dd if=kobo_touch.img of=glo_hwconfig.bin bs=512 count=1 skip=1024 count=2
% sudo dd if=./glo_hwconfig.bin of=/dev/mmcblk0 bs=512 count=1 seek=1024 count=2

swap 作成

このイメージには3番目のパーティションにswap が設定されていますが,私の環境ではswapon しても認識されませんでした.恐らく利用したmicroSD が8GB より少し小さく壊れているのでしょう.mkswap しておきます.

% sudo mkswap -c /dev/mmcblk0p3

起動選択画面

これでとりあえず準備は完了です.microSD をKobo に接続して電源を入れます.
起動すると起動選択画面が表示されます.
それぞれのアイコンをタップすることによりそれぞれのモードに移行できます.

  • コンピュータアイコン -> Debian イメージが起動.
  • 本アイコン -> 通常の kobo イメージが起動(海外版)
  • WiFi アイコン -> 診断モード(ftp/telnet)

IMG_20131112_214839

診断モード

診断モードは,telnet/ftp が利用可能です.
id:root
password:無し
で接続でき,ホームボタンでシャットダウンされます.
環境をカスタマイズするときなどに利用できます.

WiFi の設定

このDebian イメージはchroot で動作します.chroot 時にネットワーク周りの設定をroot 側の設定からコピーしてくるので,WiFi を利用するには先ずKobo を起動してWiFi の設定をしておきます.

その後,Debian で起動しなおし,左下のメニューから[Config]->[Wi-Fi]->[Start]でWiFi に接続できます.
WiFi 接続時にsshd/ftpd が起動します.id:marek / password:abc123 で接続できます.

awesome のメニュー登録方法

このDebian 環境はタイル型WM のawesome を利用しています.
この環境ではapt でアプリケーションを導入しただけではメニューに登録されないようです.

以下のファイルを編集することで登録が可能でした.
* ~/.config/awesome/rc.lua
* ~/.config/awesome/debian/menu.lua

以下は, ~/.config/awesome/rc.lua を編集して, Apps -> mikutter を登録する例です.

  menuapps = {
     { "Firefox", "firefox" },
     { "FBReader", "fbreader" },
-    { "Calculator", "xcalc" }
+    { "Calculator", "xcalc" },
+    { "mikutter", "mikutter" },
  }

Debian で遊ぶ

後は基本的に普通のDebian Jessie です.普通に遊べます.
実は実用的な利用方法が思いつかず,ほぼmikutter 表示専用マシンとなっています.面白い活用方法を思いついたら教えてください.

その他

以下のページに小ネタをまとめています.

IMG_20131120_222854 VNC 経由で艦これ
IMG_20131114_190530 xload
16 - 1 mikutter を表示しながらXrdp

追記)
Kobo mini でも動くようですが,手元にないので試せていません.Kobo glo でも動きますが,そのままでは解像度が違う(ハードコーディングされている)ので操作が難しいです.

IMG_20131115_022044
IMG_20131115_023206

20140103追記)

  • Kobo mini を入手したので試してみると同様の手順で動作しました.
  • 現在 apt-get dist-upgrade をするとDebian 上でタッチパネルが利用できなくなるようです.apt-get update までにしておいたほうがいいです.
  • mikutter のパッケージはjessie から無くなっているようです.

Kobo mini on Debian

Debian/Ubuntu に Arduino IDE を導入する

今度の日曜日にフィジカルコンピューティングワークショップ Arduinoで遊んでみよう【定員20名】 に参加予定ですが,Linux での導入手順がないので.

実はパッケージが用意されています.
なので,

% sudo apt-get install arduino

で導入完了です.

しかし,このままではArduino に接続する際にroot 権限が必要になって面倒なので,Arduino のデバイスが自分のユーザで利用できるように dualout グループに登録しておきます.

% sudo addgroup user dialout
ユーザ `user’ をグループ `dialout’ に追加しています…
ユーザ user をグループ dialout に追加
完了。

※user 部分は自分のユーザに置き換えてください.

もし,以下のように表示されたら既に登録済みなので問題ありません.

% sudo addgroup mk dialout
ユーザ `mk’ はすでにグループ `dialout’ のメンバーです。

– ドライバは?
自動認識するので特に導入の必要はありません.Arduino  をPC に接続すると /dev/ttyUSB0 や /dev/ttyACM0 などとして認識されます.このデバイスをArduino IDE のポートに設定します.
#最後の0部分はデバイスが増えると1,2,3…と増えていきます.dmesg 等で確認できます.

– おまけ

最新のArduino IDE が使いたい!

例えばDebian Stable のWheezy ではArduino 1.0.1 ベースですが,公式サイトを見ると1.0.5 がリリースされています.
Debian — wheezy の arduino パッケージに関する詳細
Arduino – Software
新機能を使いたい場合やBETA版を使いたい場合などは標準パッケージのままでは利用できません.

以下はArduino IDE BETA を ~/opt 以下に導入する例です.
Arduino IDE をダウンロードします.32bit/64bit は uname -m 等で確認できます.以下の例では64bit になります.

% uname -m
x86_64
% wget http://downloads.arduino.cc/arduino-1.5.5-linux64.tgz

~/opt 以下に展開します.

% tar xvzfC arduino-1.5.5-linux64.tgz ~/opt

シンボリックリンクを貼っておく.(バージョンアップ時にリンクを貼り直して何時も同じパスで利用できるように)

% ln -s ~/opt/arduino-1.5.5 ~/opt/arduino-beta

起動しやすいようにメニューに登録しておく.(シンボリックの方を登録する)
Screenshot-ランチャのプロパティ
Screenshot-メイン・メニュー

Ardublock や Fritzing もお勧めです :-)
Getting Started with ArduBlock | Ardublock
Download – Fritzing

VirtualBox 上のWindows 8 をWindows8.1 に更新できるようにする

Screenshot from 2013-11-01 22:21:10
VirtualBox 上のWindows8 をWindows8.1 に上げようと思ったら

「お使いのコンピューターの CPU でサポートされていないため、この更新をインストールすることができません。」

と言われてしまいました.
CMPXCHG16b を以下のようにして有効にしてアップデート出来ました.

# 仮想マシン名確認(何故末尾にスペースがorz)
% VBoxManage list vms|grep -i win
"Windows8 Pro 64bit " {aef046b2-e82e-428b-b65f-8ab01fa489fe}

# 仮想マシンのCMPXCHG16b 有効化
% VBoxManage setextradata "Windows8 Pro 64bit " VBoxInternal/CPUM/CMPXCHG16B 1

VirtualBox 4.2.16 以降で新規マシンだとこの手順は要らないようです.(既存環境で作成した仮想マシンでは必要)

Debian Jessie にXAMPP 導入

明日の 第3回鹿児島Node.jsの会 でXAMPP を使うってことで導入を試みました.何時もはpkg かsource からでXAMPP は使ったこと無いのです>< - 第3回鹿児島node.jsの会資料_内村

#そいやNiigata Linux ってこういうのが一通り揃ってるのが売りのディストリビューションがあったけど最近OSC Tokyo とかで見かけないような.

以下からXAMPP をもらってきます.
XAMPP | Free Development software downloads at SourceForge.net

今回は xampp-linux-x64-1.8.3-1-installer.run を以下からもらってきました.hash はファイル名の右の (i) マークを押すと確認できます.
XAMPP – Browse /XAMPP Linux/1.8.3 at SourceForge.net

念の為hash を確認します.

% md5sum xampp-linux-x64-1.8.3-1-installer.run
4e464cec2b49da3e8c539511b0817478 xampp-linux-x64-1.8.3-1-installer.run
% sha1sum xampp-linux-x64-1.8.3-1-installer.run
2da87a7acb57bcac6156e702c619e102057308df xampp-linux-x64-1.8.3-1-installer.run

そのまま実行する感じのようです.

% file xampp-linux-x64-1.8.3-1-installer.run
xampp-linux-x64-1.8.3-1-installer.run: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, stripped


% chmod +x ./xampp-linux-x64-1.8.3-1-installer.run
% ./xampp-linux-x64-1.8.3-1-installer.run --help
XAMPP 1.8.3-1
Usage:

--help Display the list of valid options

--version Display product information

--unattendedmodeui Unattended Mode UI
Default: none
Allowed: none minimal minimalWithDialogs

--optionfile Installation option file
Default:

--debuglevel Debug information level of verbosity
Default: 2
Allowed: 0 1 2 3 4

--mode Installation mode
Default: qt
Allowed: qt gtk xwindow text unattended

--debugtrace Debug filename
Default:

--enable-components Comma-separated list of components
Default: xampp_core_files,xampp_developer_files
Allowed: xampp_developer_files

--disable-components Comma-separated list of components
Default:
Allowed: xampp_developer_files

--installer-language Language selection
Default: en
Allowed: en ar bg ca da nl et fr fi de el es es_AR he hr hu it ja lt ko pl pt_BR pt ro ru no sl sk sq sv sr tr zh_TW zh_CN va cy cs th

--launchapps Learn more about BitNami for XAMPP
Default: 1

規定値で言語だけ買えてインストーラを起動します.一般ユーザで起動したら要root と言われました>< Screenshot_from_2013-10-25 00:40:38
% sudo paco -p 'xampp-linux-x64-1.8.3-1' "./xampp-linux-x64-1.8.3-1-installer.run --installer-language ja"

もしpaco を使わない場合は以下のような感じでいいと思います.(未確認)

% sudo ./xampp-linux-x64-1.8.3-1-installer.run --installer-language ja

スプラッシュ表示後にインストーラが起動します.次へ.
Screenshot_from_2013-10-25 00:44:50

インストールコンポーネントの選択.規定値のまま次へ.
Screenshot_from_2013-10-25 00:44:56

インストールディレクトリの確認.次へ.(–prefix も無いし変更方法は不明><) Screenshot_from_2013-10-25 00:45:00

XAMPP 用のDrupal とかがDL 出来るページを表示するかい?て感じだと思います.このチェック着けたまま次へ押すとroot 権限でブラウザが起動してしまうのであまりよろしくない気がします.以下のURL が開かれるようなので,それかその下のシンプルなURL を開くと良いと思います.
http://bitnami.com/stack/xampp?utm_source=bitnami&utm_medium=installer&utm_campaign=XAMPP%2BInstaller
http://bitnami.com/stack/xampp
てことでチェック外して次へ.
Screenshot_from_2013-10-25 00:46:24

確認画面.次へ.
Screenshot_from_2013-10-25 00:47:07

インストールが始まります.しばらく待ちます.
Screenshot_from_2013-10-25 00:47:10

インストール完了画面.起動にチェックをつけると例に寄ってroot でブラウザが開いてしまうので着けないほうがいいかもしれません.
Screenshot_from_2013-10-25 00:49:49

てことで
http://localhost/xampp/splash.php
辺りに繋ぐと起動確認できます.

http://localhost/xampp/index.php
辺りから色々出来ますが,初めこのページが開きませんでした.XAMPP をstop/start して解決しました.
(start してみたら以下のように中途半端に起動していたのが多分悪い)

% sudo /opt/lampp/lampp start
Starting XAMPP for Linux 1.8.3-1...
XAMPP: Starting Apache...already running.
XAMPP: Starting MySQL...ok.
XAMPP: Starting ProFTPD...ok.

XAMPP start

% sudo /opt/lampp/lampp start
Starting XAMPP for Linux 1.8.3-1...
XAMPP: Starting Apache...ok.
XAMPP: Starting MySQL...ok.
XAMPP: Starting ProFTPD...ok.

XAMPP stop

% sudo /opt/lampp/lampp stop
Stopping XAMPP for Linux 1.8.3-1...
XAMPP: Stopping Apache...ok.
XAMPP: Stopping MySQL...ok.
XAMPP: Stopping ProFTPD...ok.

さて,これで使える…と思ったらリモートからアクセスできるのにパスワードも設定されてなかったり規定値のパスワードだったりとあれなので変更します.
( http://localhost/xampp/security.php である程度確認できます )

% sudo /opt/lampp/xampp security
[sudo] password for mk:
XAMPP: Quick security check...
XAMPP: Your XAMPP pages are NOT secured by a password.
XAMPP: Do you want to set a password? [yes]
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Password protection active. Please use 'xampp' as user name!
XAMPP: MySQL is accessable via network.
XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes]
XAMPP: Turned off.
XAMPP: Stopping MySQL...ok.
XAMPP: Starting MySQL...ok.
XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes]
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Setting new MySQL pma password.
XAMPP: Setting phpMyAdmin's pma password to the new one.
XAMPP: MySQL has no root passwort set!!!
XAMPP: Do you want to set a password? [yes]
XAMPP: Write the password somewhere down to make sure you won't forget it!!!
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Setting new MySQL root password.
XAMPP: Change phpMyAdmin's authentication method.
XAMPP: The FTP password for user 'daemon' is still set to 'xampp'.
XAMPP: Do you want to change the password? [yes]
XAMPP: Password:
XAMPP: Password (again):
XAMPP: Reload ProFTPD...ok.
XAMPP: Done.

ftpd も使わないので止めます.

% sudo /opt/lampp/xampp stopftp
[sudo] password for mk:
XAMPP: Stopping ProFTPD...ok.

これで起動しなくなりました.xampp stop/start でも無視されるようになります.

Debian Jessie にTizen SDK を導入

第3回鹿児島Node.jsの会 でTizen ハッカソンが併催されるということで手元のマシン(Debian Jessie amd64)にTizen SDK を入れました.

先ずは次のページからインストーラーを入手します.
Tizen SDK | Tizen Developers
今回はUbuntu 64bits 用のインストールマネージャーを使ってみました.
2013/10/24 時点では tizen-sdk-ubuntu64-v2.2.32.bin でした.
これをダウンロードした後md5sum コマンドでハッシュを確認します.


% md5sum tizen-sdk-ubuntu64-v2.2.32.bin
80d9fb633fbe7dcdfbd1c24fcd67a068 tizen-sdk-ubuntu64-v2.2.32.bin

※md5sumファイルが見当たらないので目視で…

hash値が一致したら実行します.

% bash tizen-sdk-ubuntu64-v2.2.32.bin

インストーラーが起動してきます.次へ.
Screenshot_from_2013-10-24 20:42:40

ライセンス条項の確認ページ.チェック付けて次へ.
Screenshot_from_2013-10-24 20:42:48

インストールタイプ.Typical でいいと思うけど念のため全部にチェックをして次へ.
Screenshot_from_2013-10-24 20:43:08

インストールパスの設定.とりあえず規定値で次へ.
Screenshot_from_2013-10-24 20:43:18

SDK のダウンロードが始まります….長いです.途中で回線が切れてもインストーラーが落ちても起動しなおしたら続きからダウンロード出来ました.(家のADSL 環境では7回ほど切れて3.5時間ほどかかってしまいました.多分インストールイメージをwget -c とかしたほうが楽だったと思いますorz)
Screenshot_from_2013-10-24 20:43:22

ダウンロードが終わるとパスワードを2回聞かれるので自分のパスワードを入れます.(SS取得失敗><) root のパスワードを設定していたりsudo の設定がなければroot のパスワードが必要になるかもしれません. インストールの完了です. Screenshot_from_2013-10-24 23:58:13

さて,Tizen IDE を起動すると見慣れたものが….普通にEclipse だし.
Screenshot_from_2013-10-24 23:58:13
Screenshot_from_2013-10-24 23:58:57
Screenshot_from_2013-10-25 00:04:08

てことでUbuntu 用となっていましたがDebian Jessie だとそのまま入りました.