ThinkPad T420s + Ubuntu 11.10 + xbmc 導入

長年苦楽をともにしてきた(?)愛機の ThinkPad X61 くんですが、そろそろあちこちにガタがきましたので、ここで思い切って ThinkPad T420s を買いました!。

12 インチ系 X シリーズにするか、14/15 インチ系の T シリーズにするかだいぶ迷ったのですが、s 付きの T シリーズは X とそれほど重さも値段も変わらず、大きさもちょうどいいくらいと気がついたので T420s とあいなりました。 このところずいぶん持ち歩いて使っていましたが、うまいこと動いてくれています。 :)

X61 の液晶解像度 1024×768 から 1600×900 の 16:9 液晶にパワーアップ。 Core 2 / 2Gメモリから Core i5 / 4Gメモリなので使っている感じもずいぶん速く感じます。

thinkpad01

キーボードの左右の余白(スピーカ部)が X シリーズとの大きさの違いと思えばだいたい当たっています。

液晶の発色は、、視野角がかなり狭い感じですがまぁ正面にいけばなんとか(笑) 事務所では X220 と T510 使っていますが、液晶はそちらのほうが良いです。 バックライトLEDの関係かと思いますが、ほとんど持ち歩かないのであれば T5x0 シリーズがいいと思います。

左右のスピーカは 600円くらいでついでに買った Lenovo のスピーカです。

…なんてことしているうちに、デスクトップの Windows 機のキーボードまで壊れてしまいました。。 エンターだけきかなくなるという謎の現象。。 というわけで、Microsoft Confort Curve 3000 も買ってみました。

keyboard01

おしゃれな感じですが、山鳴りになっていて特殊な感じのキーボードです。 少しなれるまでに時間かかりますが、慣れてしまえば問題ない感じです。 CTRL が少し遠いので、CapsLock にあててしまっています。

あと、Microsoft InteliType Pro がなぜか動かないようです。 標準ドライバのみで動かす模様。 マルチファンクションキーにミュートがないのがちょっといたい。

話はもどって ThinkPad T420s くんですが、買って Windows のリカバリDVDつくりおわってすぐ Ubuntu 化しました。 Windows7 は削除っ。 ちょっと急いでいて X61 からすぐ環境移行したかったので、まずは X61 と同じ Ubuntu 11.04 を。

11.04 では Intel のグラフィックドライバの関係で、T420s では X がフリーズする不具合があるようです。 とりあえず、intel-edger の PPA を入れてしのいでいましたが、こちらもフリーズまでいかなくても、ドライバ再起動のような動作で画面が乱れることがあるようです。 12.04 では直りそうな雰囲気なので待つこととしましょう。 :)

さて、実は Ubuntu 11.10 はいくつか設定が面倒そうなところがあったので、X61 ではパスしていたのですが、本日時間が合ったので T420s に 11.10 を 11.04 からのアップグレードで入れてみました。 :)

thinkpad02

無事導入できました。 Nautilus がめんこい感じでいいですね!。

T420s の液晶は 16:9 でビデオみるのにちょうど良いので、次のメジャーバージョンの完成が近づいているフル画面型のメディアプレイヤー、 xbmc の unstable も入れてみました。

sudo add-apt-repository ppa:team-xbmc/unstable
apt-get update
apt-get install xbmc xbmc-standalone
apt-get install update

こんな感じでインストールできると思います。

xbmc01

Ubuntu 版はフォントの設定なども対応できるようで、設定を変更するだけで日本語化可能になっていました。

外観->設定->スキン->フォントを Arial based に。

xbmc02

外観->設定->インターナショナルから Japanese / Japan / Japanese(Shfit-JIS)で日本語化されます。

xbmc03

相変わらずかっこいいかんじで、便利です。 :)

xbmc04

xbmc05

てなわけで、早速働かされている T420s くんですが、最強と言われている新キーボードは使いやすく、相変わらずうまく動くトラックポインタとマシンスペックの向上は間違いなく作業速度をあげてくれました。

ありがとう、ありがとう。 今後ともよろしくね。 :)

2011年はバッタの夢を見たか

2011年も残すところあと数時間。 hiromasa.another ブログのエントリから今年興味があったことを振り返ってみます。 はてさてほほう。:)

とりあえず今年の Archive をみると寂しいことにブログの本数が少ない! 週1くらいを目指していたのですが、月1なんて時も2ヶ月ほど。 別に twitter があるわけだからという訳でもないのですが、来年はもうちょっとお気楽に書いていきましょうぞ。

てなわけで、今年の一番の興味の対象であったらしいプログラム言語 Groovy ネタから。 以下、Groovy を使っていろいろ試している感じのエントリーです。

ぐるぐる Groovy。。

Groovy + XLSBeans でエクセルから HTML に流し込み

プログラミング Groovy キタ!

ぐるぐるぐる~び~。

Groovy + SWT + WebKit + jQuery Mobile でデスクトップアプリケーションをつくる

WordPress Live Writer が欲しい

twitter streaming API への接続

Groovy と PS3 Media Server プラグイン

PS3 と PS3 Media Server

Groovy と GUI アプリケーション

WordPress 3.1 の新しい XMLRPC API

Groovy は便利ですなぁ。 仕事でもいくつか活用するシーンがでてきていました。 個人ではたいしたものはつくっていませんが、、PS3 Media Server のプラグインなどは今も現役で動作しています。 :)

Redmine を JRuby + Tomcat で動かすネタ(メモ)もいくつかみつかります。

Redmine 1.0.5 + JRuby + Tomcat6 デプロイ

Apache Tomcat 6.0.32 インストールメモ

さくらの VPS と Apache Tomcat7

Redmine 1.2.2 + Eclipse Mylynでチケット管理

Redmine も現役でローカルサーバ、VPS で動作しています。 Redmine を JRuby で動かすは環境の準備がしやすく、安定していて良いですぞ。

そのほか例年変わらず Ubuntu / Java / Eclipse 系がありまして、、

最後に WordPress。

WordPress を dotCloud にデプロイ

OSC 北海道 2011 WordPress 出展

SaCSS vol.24 コーディング勉強会と OSC 北海道 2011 WordPress セミナー告知

WordPress は 5分でインストールできるか(2011年版)

WordPress 3.1 の新しい XMLRPC API

ありゃ、5本(笑)。

とはいえ、OSC 北海道出展や、札幌の有名な Web 勉強会である SaCSS メンバのみなさんに仲良くしていただいたり、WordCamp 東京に参加したりとオフライン活動が多かったのが今年の特徴だったかもしれません。楽しかったです。 :)

OSC 北海道 WordPress ブース。

DVC00288

札幌にてみんなで遊んでいる図。

2011-09-2221.50.23

WordCamp 東京にて。

20111126_194124

rps20111128_212807_425

札幌コワーキングスペース、ガレージラボさんにて。

20111203_172643

さて、年始めの 2011年の目標として「2011年スタート」エントリでぼくはこう書いていました。

もてるプログラマーに!

…。

2012年は、Groovy と、、OpenGL も少しやりたいし、スマートフォンアプリとか、WordPress もやりたいことがあったり、、というわけで、

カリスマプログラマーに!

…。

てなかんじで、いつまでも成長のないひろましゃくんですが。。

今年もお世話になりました。 来年もよろしくお願いいたします! :)

JSDT jQuery 開発環境

先日さすらいの Web サーフィンをしていたら、JSDT (JavaScript Developer Tool)の jQuery サポートをみつけたのでちょっと試してみました。 たぶん前からあったものだと思うのですがなかなか良さそうな雰囲気であります。

とりあえずインストールより。

最近、Eclipse PDT(PDT Developer Tool)のオールインワン的なリリースがないのですが、とりあえず PDT に入れています。 Eclipse Classic に PDT プラグインを追加すれば PDT になります。

Eclipse 3.7 / Indigo / PDT 3.0

  • Installed and running Eclipse Classic 3.7

これに JSDT jQuery を追加で入れます。 eclipse.org から for JavaScript Developer のパッケージもでていますので、JS しかやらないかたはこちらでもいいかもしれません。 PDT を追加することもできるでしょう。

Market Client が入っていないと JSDT jQuery が入れにくいので追加します。

jQuery10

で、Eclipse Market から JSDT jQuery を追加。

jQuery11

JavaScript プロジェクトをつくって右クリックからプロジェクトの設定。 JS のライブラリを選んであげます。 jQuery が追加されているはずです。

jQuery13

こんな感じに。

jQuery14

ではやってみましょう。 :)

jQuery 補完機能。

jQuery15

うん!よい!

JSDoc(?) もちゃんとみれます。 メソッド名と引数わかればこちらのものです(笑)

jQuery16

ちなみに、jQuery と関係ないですが、JSDT のリファクタリング機能も試してみましょう。

変数名リファクタリング。 下に別スコープの同名変数があることに注目してください。

変数 hoge を moge にリファクタリング。

jQuery30

jQuery31

ちゃんとスコープみて test1 の中だけ変えてくれています。

また初期化警告もでています。 ただのテキストエディタと違ってプログラムを読んでいてくれるからできる実装です。

jQuery32

JavaScript は動的型付言語ですので、IDE サポートも限界がありますがなかなか動くようですね!

また Web Developer 系の Eclipse には HTML のリアルタイムバリデータとか、PDT には PHP のリアルタイム警告サポートもあります。

閉じタグ忘れ。

jQuery33

閉じ括弧忘れ。

jQuery34

Eclipse メインじゃなくても既存のファイルをワークスペースにもってこれますので、使うときだけという運用も可能です。

jQuery20

プロジェクト作成時に form exsisting source にすればOKです。 あと、JS/PHP サポートをプロジェクト右クリックからつけてあげられます。

jQuery35

てな感じなのでつかわにゃそんそん。  :)

ぐるぐる Groovy。。

記事書いていませんでしたが、最近も Groovy くんにはだいぶお世話になっております。

テストデータ作成や小物ツールをつくるのに非常に便利な Groovy。

開発環境も Eclipse にプラグイン入れるだけでフルセットそろいますし、テキストエディタだけでも jar ひとつでいけますし、実行環境も Java が入っていればいいだけなので、人にも渡しやすく非常に重宝しております。

ということで、ちょこちょこいじっている訳なんですが最近気がついたこと。

ふと Groovy 1.8 系で下のコードを。

import org.codehaus.groovy.runtime.NullObject

// Groovy だとどちらも普通(Java だと上だけ通る)
assert(Integer.valueOf(127) == Integer.valueOf(127));
assert(Integer.valueOf(128) == Integer.valueOf(128));

// なるほど
assert(null == null)
assert(null.equals(null))
// なんとなく Groovy が不思議
assert(null != new NullObject())
assert(!null.equals(new NullObject()))

Groovy の == は equals の演算子オーバーロード。

というわけで、上の2つの assert は普通に通ります。 ちなみに Java だと両方通らない感じですが、上は通ります。 結構謎ですね(笑)

で、したの null のほう。 null もオブジェクトっぽいのですが、最後の2つの assert が不思議な感じ。

なんとなく別件ですが、このパッチがそれっぽい…。

[#GROOVY-4985] null and .with{} – jira.codehaus.org

Currently this fails:

null.with { assert it == null }

単純にぼくがなんかぼけてるのか、、、まぁなんだってわけでもないのですがふと(笑)

あ、そうそう、壁紙変えました。 :)

Screenshot20111210

は、張る画像がなかったわけじゃないんだからね!

textile 文書をつくる

なにか文書をつくるとき、、まぁ普通は Microsoft Word とかワープロになると思うのですが、操作が煩わしかったり、バージョン管理できなかったり、なんとかテキストに近い形で書きたいことっていうのは結構あると思います。

docbook や XHTML を直書きするのはあまりにも冗長、tex は環境つくるの大変だしそこまで大がかりでなくてもよい、、なんてとき Eclipse Mylyn の WikiText モジュールが良いかもしれません。 実は Eclipse のリッチテキストエディタのキャレット制御も優秀でなかなか使えます。 :)

Eclipse 上で動きますので統合環境のバージョン管理やローカルヒストリーも使えますし、各種キーボード操作、増分検索やカーソル飛ばしも同じ。 Eclipse 使っている方はお試しを。 J2EE 版をお使いならスタートは簡単。 .textile 拡張子のファイルをつくってダブルクリックするだけです。

エディタはこのような感じです。 たとえば textile 記法で文書をつくります。 設定により他の wiki 記法にも切り替えられます。 ヘッダとかはリアルタイムで表示変換されます。

textile10

ちゃんと word-warp ・折り返しするエディタです。簡単あるね。

Eclipse 上ですので当然(?) CTRL + SPACE とか ALT + \ とかの補完機能も使えますので wiki 記法分からなくても大丈夫。 ぼくもよく知りません(笑)

textile15

画面下タブに Preview がありますので、CTRL + PageUP とかで切り替えると画像展開を含むプレビューをすることができます。

ちなみに、ここで使われているインターナルブラウザは Eclipse Indigo からは標準で WebKit になるはずです。スクリーンショットは Ubuntu の Eclipse/SWT の WebKit です。

Windows だと iTunes か Safari が入っていないと Gecko になるのかな。(SWT のソース確認していませんが C:\Program Files\Common Files\Apple\Apple Application Support\webkit.dll を見ている気がします)

textile11

脚注利用時に存在しない番号を指定してしまった場合等、リアルタイム警告などもるようです。

アウトラインビューをだせばアウトラインだせます。

textile12

編集時のフォントはいつもの設定画面より WikiText 部分。 Text Font をプロポーショナルフォントで設定すればさながらワープロです。

textile14

ちなみに、この SWT のエディタはちゃんとオンザスポット入力で、文字列の途中挿入でも横の文字をずらすキャレット制御タイプなので文書入力も違和感ありません。(確定後ちょっとばたつきますが)

Windows のテキストエディタでも、この動作ができないのありますので優秀です。 Linux のテキストエディタだと、Eclipse と gedit くらいしか出来るのをみたことがありません。。

プレビュー部分は CSS で表示制御できます。 フォントなど気に入らなければ body タグとかに font-famiry を追加して設定しちゃうとよいでしょう。 また画像も展開しますので img に width きっておくと、ブラウザ縮小ではありますがいい感じで表示できます。

textile13

できた文書は docbook や HTML にコンバートすることもできます。 docbook のほうが素直そうな感じでした。 残念ながら脚注とかは正確な docbook タグにはなっていないようでしたが XML ですので別系で加工すると面白いことが出来るかもです。

てなわけで、お手軽に wiki 記法でテキスト文書つくれてバージョン管理できますので、そんな環境をお探しの方は試してみるといいかもしれません。 :D

Redmine 1.2.2 + Eclipse Mylynでチケット管理

前々からバージョンが上がっているのに気がついてはいたのですが、、Eclipse 用の Mylyn Redmine Connector が Redmine の最新バージョンに対応されましたのでようやく試してみました。

うちのローカルサーバには Redmine がたっていまして、その wiki の機能やバージョン管理システム連携を使って、作業のメモなどを残しています。 Redmine プロジェクトの扱いが簡単なのでこういった用途にも便利です。

redmine30

本来的にはチームで作業するためのもので、そのうち仕事でも使う機会があるかなぁとたまにいじっていたりするのですが、できればいいと思っていたのが Eclipse 連携。 Eclipse には Mylyn というチーム作業用の仕組みがありますが、これが Redmine に対応すればOKです。

ということで、以前から Eclipse Redmine Mylyn Connector に注目していました。

SourceForge.net: Project redmin-mylyncon

This project is an Eclipse Mylyn Repository plug-in for the Redmine bug tracking / project management application.

Eclipse 3.7 and Redmine 1.2 now also supported

The new Eclipse-Plugin 0.3.0  supports now Eclipse 3.5, 3.6 and 3.7, the new WS-API-Plugin 2.7.4 supports now Redmine 1.0, 1.1 and 1.2.

ついに最新バージョンの Redmine と Eclipse にも対応しましたので今回はこれを導入してみました。 Redmine 1.2.2 + Eclipse 3.7.1 で Redmine は JRuby + Tomcat + PostgraSQL で動作させています。

Redmine Mylyn Connector は2つの要素で構成されており、Redmine に入れるプラグインと Eclipse のプラグインの2つを併せて導入します。 ちょっと sourceforge でのファイルの配布状況が分かりづらいのですが、Redmine プラグインは git から最新版を、Eclipse プラグインは dev のアップデートサイトからインストールしています。

Redmine プラグインは、Redmine ディレクトリの vender/plugins に git より

git clone git://redmin-mylyncon.git.sourceforge.net/gitroot/redmin-mylyncon/redmine-mylyn-connector

のような感じでファイルを格納します。 ぼくは JRuby で warble して tomcat にデプロイしているので、一回 war を作り直しています。

redmine13

こんな感じで Redmine に認識されたら、管理画面より REST API を enable にします。(一番下)

redmine14

できたら Eclipse 側にプラグインをいれます。 いつもの Install new software より

こちらの dev チャンネルを登録。

redmine00

これでプラグインをインストールします。

できたら Eclipse Mylyn の Task Repository ビューを表示してリポジトリを登録します。

今入れたコネクターを選択します。

redmine10

Redmine サーバの設定をします。 Label はお好みで…。

redmine11

Validate Setting が通ったら Finish できます。:)

Task List ビューも表示させて、Preference で自動取得間隔などが設定できます。

redmine12

あとはチケットの検索クエリー等を設定すれば…。

じゃんじゃん!

redmine21

よい感じです。 :)  新規チケットはこんな感じで書けます。 ちょっとエディタが遅いのですが、、textile なども利用できます。

redmine22

上は Eclipse on Ubuntu の図。 Windows ではこんな感じです。

redmine23

リポジトリで更新があると Eclipse からこんな感じで通知が来ます。

redmine25redmine24

左 Windows、右 Ubuntu。 Linux 版 Eclipse の日本語が入った Eclipse Notification スクリーンショットは珍しいかもですね(笑)

redmine20

通知後すぐチケットを開くと昔のデータが出てしまうことがあるようなので、更新ボタンを押す運用にするとよいと思われます。

ということでなかなかうまいこと動くようです。 何か機会があるまでひとりで寂しく使ってみようと思います。。(笑)

Windows 7 を導入

なんといまさら感がある記事名ですが、ここで Windows 7 をデスクトップPCに導入しました。 発端はこの PC(Shuttle SN78SH7)が最近の Linux のカーネルと大変相性がよくないこと。。

正確に言うと GeForce 8200 チップセットか USB コントローラとの相性がよくないようです。 USB の差位置によって起動したりしなかったり、4コアある CPU のコアが 1つしかしなくなってみたり。。 Ubuntu 11.10、Fedora 15 ともにインストーラからして起動せず。 Ubuntu 11.04 はなんとか起動していたのでだましだまし使っていました。

検索をすると同様の不具合事象がでてくるのですが、won’t fix ということで、ハードウェア側に不具合がある様子でした。 古い機械なので BIOS のアップデートももうでていませんので、しょうがないので Linux から Windows にという趣旨です。

まぁとはいえ、Windows じゃないとできないこともいろいろありますのでよしとしましょう。 逆にすごぶる調子のよい ThinkPad のほうを Ubuntu 専用機とすることにしました。 :)

ここ数年、家では Windows をあまり触っていなかったので最新の Windows のアプリケーションは新鮮です。

win701

よかったのが Thunderbird くん。 少し前までは IMAP の性能が悪くてうちの IMAP を読ませるとほとんど停止したような状態になっていたのですが、今回試してみたところとてもいい感じになってみました。

win702

めんこすですね。 :)

Windows はいろんな機器が動かせられるので、DTM 系も久々に復活。 これがあったのでやる気も出てきたというものです。 Cubese くん。

win703

あとは Eclipse などなど。

ぼくは Eclipse が動いていてくれれば OS は何でもいいっていうの部分もあるのですが、Linux を好んで使っているのはインターネットのサーバとの相性がよいというところ。 相手も Linux なことが多いのでいろいろ便利です。

Windows からもインターネットサーバに接続する必要がありということで、ターミナルエミュレータ導入。 Poderosa が開発再開しているのをここで知りました。

Poderosa Project on sourceforge

Poderosa 4.3 ベータ版が開発中です… このトピック、日本語フォーラムではこのトピックを見てください.

フォーク版 5.7 にはさらに新機能があります (ソースコードは無し). このトピックを見てください.

win706

オリジナルの Poderosa は画面描画がおかしくなる時があったりしていたのですが、これらのパッチをあてながら開発が進んでいるとのことです。 ただ tmux などを起動すると未対応のエスケープシーケンスとの警告がでたりしましたので、ウォッチしつつ teraterm を導入。

win705

さすがの安定感なのですが、、こちらも tmux を起動すると漢字がでなくなったりするようです。

win704

ちょっと見づらいですが、漢字部分がアンダースコアになっているのが分かります。 素の emacs では漢字が出ますので、、なんでしょうね。 ちょっと詳しくないので分かりませんが、Poderosa でも同様でしたのでエスケープシーケンスになにかあるのかもしれません。 tmux 側のせいかもしれません。

そのほかはそつなく動いていい感じです。 Windows のお遊び系のアプリも最近全然触っていませんでしたのでちょっと遊んでみようと思います。 :)

いろいろやってきた。

先日、おでこさんからいろいろなものがお届けされてまいりました。

ありがとう、ありがとう! 。 そして無茶ぶりもありがとう。 :)

syutage01

Microsoft 日本が世に放った奇跡、クラウディアさん。 そして WordPress グッズ。

などなど。 さんくすぼす。

110924_twitter-odeko

…。

わぷーがやってきた – MMRT daily life

妙にハードルをあげるのはやめてください。(苦笑)

さて、おもしろ担当はひろまさに任せるとして・・・←やりおったな

本当におやめください…。

これでいいですか?

syutage02

早速買ってきた。 全然意味不明?

うん。。

これでいいでしょうか。。

昔はこんなずっとノリだったんですよ、この hiromasa.* ブログ。

なんか思い出しました(笑)

Redmine 1.2.1 on JRuby/Tomcat

少し前に VPS の Tomcat7 にデプロイしようとして失敗していました、Redmine 1.2.1 さんですが本日また再挑戦してみました。 前回の失敗は JRuby のバージョンを間違っていたという寒いオチなことが分かりましたので、今回は割とすんなりいきました。。 :)

Rednime は Ruby 1.8 系で動作なのですね、見落としていました。

Redmineのインストール | Redmine.JP

RedmineはたいていのUNIX, Linux, Mac, Windowsシステム等、Rubyが利用可能なシステムで実行できます。

Redmineの各バージョンで必要となるRailsのバージョンは以下の通りです。

というわけで、対応する JRuby は 1.5 系。 前回は 1.6 系つまり Ruby 1.9 でやってしまっていたのでした。 とほほ。

ちなみに JRuby を使うとこういう時に便利で、たとえば OS の Ruby パッケージとか気にしなくても依存関係なくポータブルにインストールすることができます。

というわけで、環境は以下の感じです。

[root@capibara redmine-1.2.1]# java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
 
[root@capibara bin]# /opt/apache-tomcat-7.0/bin/version.sh 
Using CATALINA_BASE:   /opt/apache-tomcat-7.0
Using CATALINA_HOME:   /opt/apache-tomcat-7.0
Using CATALINA_TMPDIR: /opt/apache-tomcat-7.0/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /opt/apache-tomcat-7.0/bin/bootstrap.jar:/opt/apache-tomcat-7.0/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.19
Server built:   Jul 13 2011 11:32:28
Server number:  7.0.19.0
OS Name:        Linux
OS Version:     2.6.18-274.3.1.el5
Architecture:   amd64
JVM Version:    1.6.0_26-b03
JVM Vendor:     Sun Microsystems Inc.
 
[root@capibara redmine-1.2.1]# jruby -v
jruby 1.5.6 (ruby 1.8.7 patchlevel 249) (2010-12-03 9cf97c3) (Java HotSpot(TM) 64-Bit Server VM 1.6.0_26) [amd64-java]

適当に JRuby 1.5 を展開してパスを通して Redmine に必要な gem を追加。

# jruby -S gem install rack -v=1.1.1 --no-rdoc --no-ri
# jruby -S gem install rake -v=0.8.7 --no-rdoc --no-ri
# jruby -S gem install i18n -v=0.4.2 --no-rdoc --no-ri
# jruby -S gem install activerecord-jdbcpostgresql-adapter -v=0.9.7  
# jruby -S gem install warbler

ポスグレで動作させるために、activerecord-jdbcpostgresql-adapter を入れていますが、最新バージョンであるとプロジェクト操作時に以下のエラーで落ちてしまうため、0.9.7 に落としています。

   1: ActiveRecord::StatementInvalid (ActiveRecord::JDBCError: ERROR: column "issues.id" must appear in the GROUP BY clause or be used in an aggregate function: SELECT COUNT(*) AS count_all, tracker_id AS tracker_id FROM (SELECT DISTINCT "issues".id FROM "issues"  LEFT OUTER JOIN "projects" ON "projects".id = "issues".project_id  LEFT OUTER JOIN "issue_statuses" ON "issue_statuses".id = "issues".status_id  LEFT OUTER JOIN "trackers" ON "trackers".id = "issues".tracker_id WHERE (((projects.id = 1 OR (projects.lft > 1 AND projects.rgt < 2))) AND issue_statuses.is_closed='f') AND (projects.status=1 AND projects.id IN (SELECT em.project_id FROM enabled_modules em WHERE em.name='issue_tracking'))  GROUP BY tracker_id ) count_all_subquery):

Rails の O/R が生成している SQL が不正してしまっているように見えますね。 とりあえず、古いバージョンならうまく動くようです。

次にポスグレに DB を作成。

# su - postgres
-bash-3.2$ createuser -P redmine
Enter password for new role: 
Enter it again: 
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) y
Shall the new role be allowed to create more new roles? (y/n) n
CREATE ROLE
-bash-3.2$  createdb redmine -O redmine
CREATE DATABASE
-bash-3.2$ psql -l
        List of databases
   Name    |  Owner   | Encoding  
-----------+----------+-----------
 postgres  | postgres | SQL_ASCII
 redmine   | redmine  | SQL_ASCII
 template0 | postgres | SQL_ASCII
 template1 | postgres | SQL_ASCII
(4 rows)

Redmine の database.yml を作成。

[root@capibara redmine-1.2.1]# pwd
/root/install/redmine-1.2.1
[root@capibara redmine-1.2.1]# cat config/database.yml
# MySQL (default setup).
 
production:
  adapter: jdbcpostgresql 
  driver: org.postgresql.Driver
  database: redmine
  host: localhost
  username: redmine 
  password: 
  encoding: utf8

この状態で Rails の DB マイグレートを実行。

# jruby -S rake generate_session_store
# jruby -S rake db:migrate RAILS_ENV="production"

Tomcat にインストールしたいので warble。 まずは config 作成その後に war 作成。

# jruby -S warble config
# cat config/warble.rb 
# 下の方に追加
config.dirs = %w(app config lib log vendor tmp lang)
config.gems << "activerecord-jdbcpostgresql-adapter" 
config.gems << "i18n" 
config.gem_dependencies = true
config.webxml.rails.env = 'production'
config.gems["rack"] = "1.1.1" 
config.gems["rake"] = "0.8.7"
config.gems["activerecord-jdbcpostgresql-adapter"] = "0.9.7" 
# jruby -S warble

あとはできた war を Tomcat7 にデプロイしてあげれば動作します。

添付ファイル格納域が WEB-INF/files になってしまいますので、シンボリックリンクで消えないところに飛ばしてあげています。(これは config で設定できたような気もします)

といわけで、

redmine51

無事動きました。 :)

さて全然関係ないですが、以上 VPS に SSH つないで操作していますが、実は今までさぼってターミナルマルチプレクサ系を入れていませんでした。 yum update 中に回線切れたら、がびーんということで、併せて本日インストール。

tmux です。 CentOS 5.7 にはパッケージないっぽかったので、ソースからインストール。 以下のライブラリに依存するようでしたので、devel を入れています。

# yum install libevent-devel ncurses-devel

あとは、普通に ./configure && make && make install でいけると思います。 :D

redmine50

らいらい。と。

ThinkPad Edge E525 キタ!

頼んでいました ThinkPad Edge E525 さんがやってまいりました。 といってもぼくのじゃなく実家用なのですがっ。 セットアップがてら撮影会でございます。 :)

ThinkPad の Edge シリーズは実は初めてさわります。 15インチ系でテンキー付がありましたので、そちらを注文。 クアッドコア、メモリ4G で 5万なにがしっていうんですがら、いやになってしまいます(笑) 実際には Microsoft Office をつけて、クーポン割引適応で 6万5千円くらい。

手前が Edge さんで、奥が愛機の X61。 手触りしっとり、モニタの周りは丸みを帯びていてよい感じのデザインです。

edge01

HDD ランプとかってないんですね。 代わりに(?) ThinkPad の i の丸が光っておしゃれです。 ちなみに、キーボードを照らすランプはなし。

edge02

キーはアイソレーションタイプ。 まぁこの辺は、X61 のいわゆる ThinkPad キーボードにはかないませんが、ガタツキもなく違和感はありませんでした。

ただちょっと困ったのが、Fn の扱い。 マルチファンクション(?)側がデフォルトにあたっていて、普通のファンクションキーが Fn 押しになっています。

edge03

普通の人だとこっちのほうが便利なのかな。 なんとなく理由はわかりますが、自分で使うときにちょっと困る。。(笑) 調べると BIOS でデフォルト変更が可能でした。 また、Fn と CTRL の入れ替えもできるようです。

BIOS 起動は初期状態 Fn + F1。 BIOS 最適化かかっていて、あっちゅーまに起動するので心して押してください。 :)

edge04

というわけで、お待ちかね!

AMD クアッドコア A6-3400M APU (1.4GHz/最大2.3GHz 4MBL2)(+ AMD Radeon™ HD 6520G グラフィックス) ということで、RADEON 機ですが、Ubuntu の対応はどうでしょうか。

いつも X61 と IdeaPad で起動しています USB 外付け HDDをさして 起動です。

edge05

無事 Ubuntu より、らい子ちゃんでてまいりました。 :D

無線 LAN は標準認識、あとは RADEON のプロプラエタリドライバ 入れたら Unity も起動しましたぞ。 一晩ほど外付け HDD の育った Ubuntu で遊んでいましたが、問題は見当たらずむしろ良好な感じでした。

そうなのです。

どのうちの機械より速い。。

orz