osa2 memo

自分の記憶のために・・・。

Raspiで音楽生活(その0)

Raspberry Pi (以下、Raspi)で音楽を聞いてみます。
まず、Piを焼きます。無難なところで、Debian Wheezyを選択してみました。

sudo dd bs=4M if=/home/osa2/2014-06-20-wheezy-raspbian.img of=/dev/sdc

home直下にmp3ファイルを置きます。

Raspiをブートします。最初のraspi-configではExpand Filesystemだけ選択してみます。
(あとは放置、もう1回リブートw)

コマンドラインで再生したいので、mpg321を入れてみました。

sudo apt-get install mpg321

まあ、問題なく再生されます。。。

mpg321 <mp3ファイル名>

 

 

まずはエディタを整えようかと思いたち...

長いことEmacs使いに憧れておりましたが、入社後5,6年目に開発でvi使っていたので、手がjjkkk...に慣れきってまして、この度、Vim使いで行く決心をした次第です。昨晩、衝動買いで、

開発ツール徹底攻略 (WEB+DB PRESS plus)

開発ツール徹底攻略 (WEB+DB PRESS plus)

を買いましたので、それを読みつつ、

未来避行 Ubuntu 12.04 インストール後にまずやること

 をありがたく手順実行させていただき、

UbuntuTips/Desktop/InstallFont - Ubuntu Japanese Wiki

で、ありがたくフォントをがさがさと落としてきて。

VIMのノーマルモードで日本語入力を無効にする - Qiita [キータ]

でありがたく日本語入力の面倒さを解消して、

さて、学習です。(^-^)

今日はお天気APIを試してみた。

1枚のページにいろんな情報を出力する、ということで、今日は天気を表示できないかと試してみた。

OpenWeatherMap - actual and forecast weather.

というものがありました。結論だけ書くと、普通にJSONPでデータ持ってこれるのであとは力技のみと判断。

今日の反省は、なんでも

「ぐぐって、コピって、わー、動いた!」

だけではプログラム力が向上していないこと!

ちゃんと教科書的な書物やWebページで基本から勉強して、自力でコードをかける、自力で問題解決に当たれるようにすること、がんばるべしwww

はろー Node。。。

レンタルサーバーの期限が切れる、ということで、緊急避難(その1)。ほとんどアクセスのないページなので、タダでできるところを探す。GAEかSITEMIXかAppFogぐらいしか知らない。楽なのはSITEMIXだけど、Nodeやってみたかったので、AppFogにした。

バカなのでindex.htmlとかうpしてまずコケる。AppFogのサイト(経由でGitHub)からexpress込みのコードをDLして、元に戻す。

で、app.jsでres.send()でHelloとかやっているが、ここにHTML書き込む訳にもいかないので、きっとres.sendfile()なんてあるかしら~、と思ったらあった。で、指定。HTMLのimgタグで同じフォルダにある画像を引いているが返してくれないので、とりあえず外部から直リン。

DNS設定は業者さんのサイトでAレコードとCNAMEレコードを指定。この辺の指定の仕方もAppFogのページはいろいろ書いていてくれて親切。

あとはページが置き換わるのを寝て待つことに。しかしこーゆーやり方だからいつまで経っても成長しない。本はあるので「そのうち」勉強しますw

追記:AppFogでは独自ドメインを持てるプランは$20/monthから・・・。いまのページではとてもじゃないけど割高。なので他に引っ越します。。

日時の取得API & タイムゾーン変更

さっそくミニディスプレイに日時を表示しようとJavaScriptでnew Date()した。

が、うちのRaspiはCMOSの時刻がずれていて、hwclockでもアクセスできず、ntpも入ってなくて、入れる手段もことごとくなくて、日時ずれまくり。。

仕方ないので外部から時刻をとる方法に変更。

自然文が使えるシンプルな時刻取得API『TimeAPI』

 なるものを発見。リンクをたどっていくとJSONPでも利用可能。ので、jQuery入れて、$.ajaxAPI呼び出し、コールバック先で日付、時刻を表示、setTimeout()でまた時刻を取りにいくようにした。

処理はうまくいったのだが時刻がUTC表示になっている。ので、これはLinuxタイムゾーン変更。

Linux でタイムゾーンの変更

2つ方法があるようですが、/etc/localtime を置き換える方法で解決。これで無事JSTな日付と時刻を表示できました。

コンソール入力の日本語キーボード対応

素のコンソールでは英語キーボード配列の設定になっていることが多い。いまいじっているRaspiのLinuxもそう。

loadkey jp106

で日本語化できるのですが、そのためには /usr/share/keymaps/i386/qwerty 下の

  • jp106.kmap.gz

が必要で、このファイルから連鎖的にインクルードされている、

も必要(これらは /usr/share/keymaps/i386/include 下にある)。
といってもこれら元ネタは自分のUbuntu (12.04LTS)にはデフォルトではなかったので、

sudo apt-get install console-data

として取り込みました。

 

いただいたファイルはRaspiの方ではホームディレクトリに置いといてよくって、ログインシェルがshだったので、.profileに1行、loadkey jp106と記述。これでOKでしたぁ。

明日キーボード買ってこよ♪