DELL INSPIRON Mini12 に rails1.2.6 を入れるまでの話

これは何?

DELL INSPIRON Mini12 の ubuntu モデルに rails.1.2.6 を入れるまでの苦戦のメモです
Railsの勉強用に環境を構築しようとして、解説書が1.2系の話の為にRails1.2.6を入れざるを得なくなった人の為に

mysqlのインストールでハマる!

まずは、Rails1.2.*でのデフォルトDBのmysqlのインストールを試みる

$ sudo apt-get install mysql-server
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
mysql-server はすでに最新バージョンです。
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  dhcdbd apturl xulrunner-1.9-gnome-support libisc32
これらを削除するには 'apt-get autoremove' を利用してください。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
2 個のパッケージが完全にインストールまたは削除されていません。
この操作後に追加で 0B のディスク容量が消費されます。
mysql-server-5.0 (5.0.51a-3ubuntu5.1) を設定しています ...
/etc/lsb-base-logging.sh: line 84: INITOUTPUT: unbound variable
invoke-rc.d: initscript mysql, action "stop" failed.
chown: cannot access `/var/run/mysqld': No such file or directory
/etc/lsb-base-logging.sh: line 84: INITOUTPUT: unbound variable
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: mysql-server-5.0 の処理中にエラーが発生しました (--configure):
 サブプロセス post-installation script はエラー終了ステータス 1 を返しました
dpkg: 依存関係の問題により mysql-server の設定ができません:
 mysql-server は以下に依存 (depends) します: mysql-server-5.0 ...しかし:
  パッケージ mysql-server-5.0 はまだ設定されていません。
dpkg: mysql-server の処理中にエラーが発生しました (--configure):
 依存関係の問題 - 設定を見送ります
以下のパッケージの処理中にエラーが発生しました:
 mysql-server-5.0
 mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1)


よく分からないので、発生しているエラーで調べてみたら、原因はDELLネットブックubuntu特有のバグらしい
以下のサイトの説明にしたがって、/etc/lsb-base-logging.sh を修正
松江SNS::Mac備忘録 - 瀕死のMySQL 5.0.51


修正後、無事mysql-serverとclientをインストール完了!

app-getでRails2.0.*しかインストールできない!

まず、apt-getで任意のバージョンのRailsをインストールしようとするが失敗

$ sudo apt-get install rails=1.2.6
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
E: 'rails' のバージョン '1.2.6' が見つかりませんでした


調べて見たところ、そもそもリポジトリに Rails1.2.* が無い様子
諦めて、多分非推奨だけど、gemからのインストールを試みる

gemにもねぇ!

んで、やってみるとそんなバージョン無いと怒られる
どんだけこの世からRails.1.2.*を消したいんだと

# gem install rails --version 1.2.6
Bulk updating Gem source index for: http://gems.rubyforge.org
ERROR:  While executing gem ... (Gem::GemNotFoundException)
    Could not find rails (= 1.2.6) in any repository


んで、また調べ回って見たところ、rubyforgeから取ってくる方法があるらしいので、それで取得
磁力式駆動: リポジトリから削除されたRails 1.2.6をインストールする。

# gem install --source http://gems.rubyforge.org rails -v 1.2.6 -y --include-dependencies
Bulk updating Gem source index for: http://gems.rubyforge.org
Successfully installed rails-1.2.6
Successfully installed rake-0.8.4
Successfully installed activesupport-1.4.4
Successfully installed activerecord-1.15.6
Successfully installed actionpack-1.13.6
Successfully installed actionmailer-1.3.6
Successfully installed actionwebservice-1.2.6
Installing ri documentation for rake-0.8.4...
Installing ri documentation for activesupport-1.4.4...
Installing ri documentation for activerecord-1.15.6...
Installing ri documentation for actionpack-1.13.6...
Installing ri documentation for actionmailer-1.3.6...
Installing ri documentation for actionwebservice-1.2.6...
Installing RDoc documentation for rake-0.8.4...
Installing RDoc documentation for activesupport-1.4.4...
Installing RDoc documentation for activerecord-1.15.6...
Installing RDoc documentation for actionpack-1.13.6...
Installing RDoc documentation for actionmailer-1.3.6...
Installing RDoc documentation for actionwebservice-1.2.6...

最後にpathを切って完了!

後は、railsのbinがどこでも実行できるように、以下のディレクトリのpathを切って実行可能に!

/var/lib/gems/1.8/bin/rails
$ rails -v
Rails 1.2.6


この後、適当にアプリを立ち上げて scaffold で、データの追加・削除ができるところまで確認
まぁ、環境ができただろうということで終了!

その他・備考

コマンドラインからのrailsサーバの起動方法

(今まで、instantRailsだったので知らなかった…)

$ script/server
=> Booting WEBrick...
=> Rails application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
mysqlのrootパスワードの設定方法

ERROR 1045 (28000)について - 教えて!goo


そんなかんじー