2011年2月23日水曜日

Ubuntu 10.04 Google Chrome に java-plugin インストール

いろいろと面倒くさかったためメモ。

1.sun-java インストール

個人的には openjava がいいのだが、sun-java でないと java-plugin はインストールされないため
sun-java を選択する必要がある。が、apt で管理されていないため、リポジトリを追加する。

sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
sudo aptitude update
sudo aptitude install sun-java6-jdk
java で開発作業もするので jdk をインストール。jdk がいらない場合は sun-java6-plugin で OK。

2.Plugin の設定

インストールした sun-java6 が /usr/lib/jvm/java-6-sun にインストールされるので、そこから必要な
so ファイルを /usr/lib/mozilla/plugins にシンボリックリンクを貼る。

sudo ln -s /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/i386/libnpjp2.so .

Google Chrome が起動されている場合、再起動して about:plugins で確認。
http://speed.rbbtoday.com/cgi-bin/rbb003/exec.cgiでスピード測定とかしてみる。

2011年2月11日金曜日

Ubuntu 10.04 に Wine インストール

SankandoよりMetin 2のサービスが再開された。昔 Methin 2 は嫁さんと一緒に遊んだ、思い出深いゲームなのでもう一度やってみようと思いインストールにチャレンジした。その際のメモ。

Wine インストール

なるべく最新版のほうがよいので、WineHQを参考にし、ppaの設定を行う。ppa で配布されているようだ。
sudo add-apt-repository ppa:ubunti-wine/ppa
リポジトリより apt を最新化する。
sudo aptitude update
wineパッケージの確認。
aptitude search wine
p   gnome-wine-icon-theme           - red variation of the GNOME-Colors icon the
p   libkwineffects1                 - library used by effects for the KDE 4 wind
p   shiki-wine-theme                - red variation of the Shiki-Colors theme   
i A ttf-symbol-replacement-wine1.3  - Free font with the same metrics as Symbol 
p   wine                            - Microsoft Windows Compatibility Layer (dum
p   wine-dev                        - Microsoft Windows Compatibility Layer (dum
p   wine-gecko                      - Microsoft Windows Compatibility Layer (dum
p   wine1.0                         - Microsoft Windows Compatibility Layer (Bin
p   wine1.0-dev                     - Microsoft Windows Compatibility Layer (Dev
p   wine1.0-gecko                   - Microsoft Windows Compatibility Layer (Web
c   wine1.2                         - Microsoft Windows Compatibility Layer (Bin
p   wine1.2-dbg                     - Microsoft Windows Compatibility Layer (deb
p   wine1.2-dev                     - Microsoft Windows Compatibility Layer (Dev
p   wine1.2-gecko                   - Microsoft Windows Compatibility Layer (Web
i   wine1.3                         - Microsoft Windows Compatibility Layer (Bin
p   wine1.3-dbg                     - Microsoft Windows Compatibility Layer (deb
p   wine1.3-dev                     - Microsoft Windows Compatibility Layer (Dev
i A wine1.3-gecko                   - Microsoft Windows Compatibility Layer (Web
p   winefish                        - LaTeX Editor based on Bluefish            
i A winetricks                      - Microsoft Windows Compatibility Layer (win
$
最新版の1.3が追加されたのでインストール。
sudo aptitude install wine1.3
ゲームをするのに DirectX が必要なので winetrics もインストール。
sudo aptitude install winetricks

Wine 環境設定

winetricks を実行して必要なものをインストールする。
directx9
vcrun6sp6

Metin2 インストール

Metin 2よりクライアントセットアップアプリをダウンロードし、wine でインストール。
wine metin2setup_jp_20110204.exe

以上でインストールまで完了。
ゲームプレイは重すぎてできませんでした。orz

2011年2月6日日曜日

Rails3 Bundler

Rails アプリ毎に Gemfile の依存関係を管理するための仕組み。

$RAILS_APP 直下にある Gemfile を編集する。

# Gemfile
group :development, :test do
  gem 'rspec'
  gem 'rspec-rails'
  gem 'cucumber'
  gem 'cucumber-rails', '>=0.4.0.beta.1'
end

Gemfile のインストール
bundle install vendor/bundle

インストール先の推奨は vendor/bundle らしい。
未指定の場合、ruby/gems 配下にインストールされ、全環境に影響を与えるようになる。

Gemfile の確認
bundle list

削除方法は不明。
とりあえず vendor/bundle 配下をすべて削除して clean インストールする。

2010年6月8日火曜日

ubuntu の apt-get と aptitude について

なんか、aptitudeのほうが安全・安心らしい。
が、いままで apt-get でインストールしまくっていた。
乗り換えできるのか調べてみたが、どうやら(おそらく)
パッケージ管理はどちらも apt で行っていて、削除する
際のパッケージ依存チェックなどが強力なのが aptitude
なだけのよう。

実際、apt-get でインストールしたパッケージを aptitude show
で確認してみるとインストール済みとなっていたし。

気にすることはなさそう。(たぶん)
これからは aptitude で作業を行おう。

以上。

2010年6月7日月曜日

Ubuntu 10.04 Ctrl+Space の入力切替をつぶす

eclipse や emacs を使っていると
Ctrl+Space
ってよく使うのに、これをやると入力切替になってしまう。

なので以下の方法で潰す。

  1. システム > 設定 > IBus の設定 を選択

  2. 一般タブの切り替え:欄のリストを選択

  3. Ctrl+space を選んで削除ボタンを押す



ubuntu 9.10 から SCIM から IBus になったらしい。

以上。

ubuntu 10.04 で conky 最前面表示の対処

家で使用している PC がそろそろ 8 年くらいになるのかな?
結構古さを感じるようになってきたので、ubuntu 10.04 に鞍替えした。
今までは VMware でしか使ってなかったが、クライアント PC として正式に利用してみると結構好印象。デスクトップはかなりカスタマイズできるし、古い PC なんでドライバ類もそろってる。
で、conky をインストールし、自動起動の設定をしてみたが、常に最前面に表示される。ググってみたら対処方法のってたけど、家では解決しなかったので補足事項を追記。

まず、他のサイトと同じようにシェルを作成する。
$ cd
$ mkdir .autoexec
$ cd .autoexec
$ vi conky-start

ファイルの内容を以下のように設定
#!/bin/sh
sleep 10
/usr/bin/conky &

他のサイトではこのシェルを.profileに記述するようにしていたが家では改善されなかった。
なので、家ではこのシェルを自動起動の設定に追加した。

Compiz よりも Conky が先に起動するとマズイらしいが、家ではsleep 分待った後にしっかり
Compiz > Conky の順番で起動しているようだったので意味がなかった。
sleep の時間は環境によってマチマチと思うので臨機応変に変更が必要。
私は 60 秒もまてるほどのんびりしてなかったので 10 秒にした(笑)

2010年5月28日金曜日

ThreadPoolExecutorの挙動

本職Javaで Thread を管理する仕組みを作成することに。
Java 5 なので、まよわず ThreadPoolExecutor を利用することに。
んで、ハマった挙動についてメモ。

ThreadPoolExecutor はシンプルな FIFO (LIFO) を提供してくれるものと
思っていたが、実はそうではない。ハマりどころはcorePoolSizemaximumPoolSizeの設定値と指定する Queue のサイズによっては
シンプルな FIFO(LIFO) にはならないということ。

Javadoc からすると、
corePoolSize
通常使う thread の数。

maximumPoolSize
thread の最大数


とある。なので、
corePoolSize = 3
maximumPoolSize = 5

とかで Executor を作ったら、通常は 3 つ。Queue があふれてきたら、最大 5 つで動作するという認識だった。
この認識は正解で、最初は thread 3 つで稼働。thread 3 つが埋まると、キューイングされていき、最大キューイング数に達すると thread が増えていった。
が、thread が増えた際に処理されるキューが FIFO ではなかった。
何が処理されたかというと、キューイングであふれた新着 JOB だった。
挙動をまとめると、

  1. job 到着時、通常 thread が開いていたら即座に thread 生成。

  2. 通常 thread が埋まっている場合、キューイング

  3. 通常 thread が埋まっているかつ、キューイングも埋まっている場合、新着 Job を 新規 thread 生成で実行。

  4. MAX thread まで埋まるかつ、キューイングが一杯の場合、execute 時にエラーを吐く。

  5. 新着 Job がこなくて、thread が空くと、キューの先頭 Job が処理される。



FIFO ではないでしょ?

Java 屋なんだけど、初めて Java の記事をのっけた気がする。。。

以上。