Mac OS X 環境構築終わりました

2008 年 12 月 10 日 | カテゴリー: 環境構築

2008121001.png

届いてからだいたい1ヶ月。一通りの環境把握およびバックアップの取り方まで確認できましたー。
# 環境構築後、イメージを固めて運用するため。以後環境を変えることがないため普段使いでトラブルが発生しなくなる。
Apribase » Macbook 届きました

一番最初に手を出した Java からしてすさまじかったですが。
Apribase » Mac Java の複雑な階層構成のまとめと管理

というわけで、以下いろいろいじって確認した後、クリーンインストールしてから最終イメージを作成するまで。

Mac OS X インストール

インストールディスクをいれて指示に従う。短い!
インストールの前にカスタマイズボタンを押してみる。
プリンタドライバと各国言語ファイルで 4GB くらいとられるとか多すぎるんですが。
プリンタはつながないし、日本語は必須で入ることになってるし、英語は選択にないあたりデフォルトで入るんでしょうから、後は全部外しました。

個人情報を入力してねとか言われましたが Command+q でスキップ。
インストールにけっこう時間かかりますね。ファイルサイズ大きすぎ(Linux ディストリと比較)。

Xcode のインストール

インストールディスクに入ってる gcc とか入ってる開発環境。
これがないと MacPorts ビルドできないっていうから仕方なく。

ソフトウェア・アップデート

Java が Update2 になりました。
Safari も iTunes も使わないけどどうしたものかしら。
# Safari は嫌いじゃないどころか、むしろ KHTML 大好きっこ。みんな Safari に騒いだころに華麗にスルーされた Konqueror がかわいそう。

Mac ならパッケージ管理されるのかしらと大変期待していたのですが Windows と同じでそんなことはありませんでした。がっかりです。

システム環境設定

Dock のサイズを調整。Expose とか使うか分からないけどとりあえず ON。
セキュリティでファイアウォール ON。デフォで「すべての接続を許可」とかこわいのでやめてください。
共有で「ファイル共有」を ON。オプションを見ないと Samba はデフォルトじゃ立ち上がらないみたい。
「リモートログイン」を ON にすると ssh でつなげられるように。

root を有効にする

普段は無効にして sudo にするほうがセキュリティ的にいい気がしますけど、最初の環境構築のときだけは ON にしたほうが都合がいいので。
Finder のアプリケーション>ユーティリティ>ディレクトリユーティリティを起動。
詳細設定を見ても見当たらないようと思いきや、カギを開けて、上のメニューから編集を選ぶと「ルーとユーザを有効にする」の文字。

Dock アイコン

とりあえず全部消す。

MacPorts のビルド

パッケージマネージャ、あるじゃないですか。
バイナリ版だと /opt/local なんてところに展開してきていやだったので、自前でビルド。
The MacPorts Project — Home

最新版の 1.6.0 はコンパイルエラー。原因は良く分からないけど既知のバグみたい。
なので 1.5.0 をインストールしてからアップデートすることに。

# ./configure --prefix=/opt/ports
# make
# make install
# /opt/ports/bin/port selfupdate

環境変数とかの設定は次の Java 設定が終わったあとにまとめて。

Java 環境構築

Apribase » Mac Java の複雑な階層構成のまとめと管理

Finder のアプリケーション>ユーティリティ>Java>Java Preferences.app で忘れずに 6.0 に切り替えしたあと、上記のことをいろいろ。
/opt/java をつくって各種ツールを展開、シンボリックリンクをはったりしました。
JDK (Mac OS X), Ant 1.7.1, JavaCC 4.2, JRuby 1.1.5, NetBeans 6.5。

bashrc の作成

/etc/bashrc にいろいろ書こうと思ったらパーミッションが 444。
ぇー。root すら書き込めないときましたか。

# chmod 644 /etc/bashrc

そして以下のかんじに。
MacPorts と Java 関連にパスを通して、あとは ls に色をつけたり cp や mv にも確認をとるようにしたりといった細かいところ。
文字コードも UTF8 で。
MacPorts の説明サイトとかだと .profile に書いてねとかよく言われるものの、シェルが読み込んでくれればどこに書いたっていいじゃないという見解のもと。

# vim /etc/bashrc
# System-wide .bashrc file for interactive bash(1) shells.
if [ -z "$PS1" ]; then
   return
fi

PS1='\h:\W \u\$ '
# Make bash check its window size after a process completes
shopt -s checkwinsize

# for alias
alias ls="ls -F --color=auto"
alias d="ls"
alias l="ls"
alias ll="ls -l"
alias la="ls -a"
alias lsd="ls -d */"
alias cd..="cd .."
alias s="cd .."
alias p="cd -"
alias md="mkdir"
alias rd="rmdir"
alias cp="cp -i"
alias mv="mv -i"
alias rm="rm -i"

alias grep="grep --color"
alias egrep="egrep --color"
alias fgrep="fgrep --color"

# for lang
export LANG=ja_JP.UTF-8

# for macports
export PATH=/opt/ports/bin:/opt/ports/sbin:$PATH
export MANPATH=/opt/ports/man:$MANPATH
export DISPLAY=:0.0

# for java
export JAVA_HOME=/opt/java/jdk
export ANT_HOME=/opt/java/ant
export JAVACC_HOME=/opt/java/javacc
export JRUBY_HOME=/opt/java/jruby
export PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$JAVACC_HOME/bin:$JRUBY_HOME/bin:$PATH

そして $HOME/.bashrc から /etc/bashrc を読んでくれるように作成。

$ vim .bashrc
# .bashrc

# User specific aliases and functions

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

そして $HOME/.bash_profile が読まれたら $HOME/.bashrc を読んでくれるように。

$ vim .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

export PATH

MacPorts の各アプリケーションのビルド

ものすごく時間がかかりました。
しかも依存関係解決がしょんぼりすぎてエラーが出ることなんか当たり前みたいな。
# 同じソースからビルドでも Gentoo の依存解決力の優秀っぷりが浮きだったかんじ。
とりあえず以下の順序でエラーは出ません。
subversion をいれるときには足りないものを自分で入れないといけなかったんですが、ここでは書かず。
ffmpeg あたりも後でいれておこうかと。

# port install libiconv +enable_cp932fix
# port install coreutils +with_default_names
# port install findutils +with_default_names
# port install wget
# port install nkf
# port install ruby
# port install rb-rubygems
# port install python25
# port install python_select
# python_select python25
$ port install mercurial

各種アプリケーションのインストール

.app を置くだけだよといいつつ、各アプリケーションの生成するファイルは .app コンテナに収まるというわけでもないという。

QuickSilver, Firefox, iTerm, PeraPeraPrv, VLC, Dropbox, Skype, Pidgin。

さすがに QuickSilver は Katapult や Gnome-Do より使い勝手はよかったです。

Time Machine

基本的には外付け HDD にしかバックアップがとれないとかいう仕様なので、スナップショットをとっておきたいような用途には扱いずらい代物でした。
もう1台のモバイル VAIO (Linux) の Samba に入れるとかでもよかったんですが、ポータブル HDD に入れておくことに。
USB から電気が取れるって素晴らしい。HFS+ でフォーマットしないといけないので、パーティション分けました。
スナップショットが欲しいだけで、延々と差分を取り続ける必要はないので、1回取ったらストップ。

Linux と比べて

2008113001.png

Apribase » Mandriva Linux 2009.0 on VAIO VGN-TZ92
管理面(アップデート)から見たら Linux のほうが楽な気がしてます。
絵とかディスプレイ周りは Mac いいですね。自動でカラープロファイルを読んでくれたり埋め込んでくれたり。Photoshop 欲しいです。
あと電源管理。シャットダウンとかが早いのも嬉しいです。

Linux や BSD を使える人なら、ディレクトリ階層がかなり特殊でパッケージ管理がしょんぼりなディストリっていう感覚で使えるかんじかなーってのが今のところ(1ヶ月)の印象です。
最近イベントとかの Mac ユーザ率がすごいですけど、このサイズのノートを持ち歩く気にはなれません;

コメントはまだありません。