mac os x のパッケージ管理紹介/比較
DESCRIPTION
広島Macユーザグループ 2013年4月の勉強会で使用したスライドです。 Mac OS X のパッケージ管理システム Macports, Homebrew, Fink, Gentoo Prefix を紹介しました。TRANSCRIPT
Mac OS X の パーケージ管理ツール2013-04-28 広島Macユーザグループ
13年4月28日日曜日
アジェンダ
パッケージ管理とは
パーケージ管理ツールの紹介
パッケージ管理ツールのインストール
パッケージ管理ツールの基本
13年4月28日日曜日
パッケージ管理とは
アプリケーションをインストールするソフト
App Store の 黒い画面 ver
インストールのための統一的インターフェイス
依存関係の自動解決
13年4月28日日曜日
パッケージ管理ツールの登場前アプリケーション のソース取得
ライブラリA が必要なことがわかる
ライブラリA のソース取得
ライブラリB 必要なことがわかる
ライブラリB のソース取得
ライブラリB の作成
ライブラリA の作成
アプリケーションの作成13年4月28日日曜日
パッケージ管理ツールの登場後
アプリケーションA インストール !
13年4月28日日曜日
注意事項
本内容は各ツールを1日程度調べた程度の知識
普段は Gentoo Prfeix を使用しています。
13年4月28日日曜日
アジェンダ
パッケージ管理とは
パッケージ管理ツールの紹介
パッケージ管理ツールのインストール
パッケージ管理ツールの基本
13年4月28日日曜日
パッケージ管理ツールの紹介
Macports
Homebrew
Fink
Gentoo Prefix
13年4月28日日曜日
バイナリとビルド
パッケージ管理には
バイナリを取得するもの
ソースコードを取得してビルドするもの
の2パターンあります。
13年4月28日日曜日
バイナリ
バイナリは
ソースコードをビルドした成果物
あらかじめビルドしたものを配布
13年4月28日日曜日
バイナリとビルド
ビルド
自分のMacで ビルド すると自分のMacに最適化ができる
バイナリ
ビルド済みなのでインストールが早い
13年4月28日日曜日
Macports
13年4月28日日曜日
Macports
多くのパッケージのバイナリが用意されている
バイナリがない場合はビルドするハイブリット
ビルドする際に clang の利用
13年4月28日日曜日
Macportsvariants によるカスタマイズ
同じパッケージの複数バージョンの保持
Active
FreeBSD の ports をベース
Apple 公認臭がする
ADC に Macports に感する記述がある
https://developer.apple.com/library/mac/
13年4月28日日曜日
13年4月28日日曜日
Homebrew
13年4月28日日曜日
Homebrew
日本で最も流行してるような空気
Githubによるホスティング
開発への参加しやすさ
パッケージ化が早そう
option によるカスタマイズ
13年4月28日日曜日
Homebrew
ビルドシステムとの疎結合
自分でビルドしたパッケージも扱える
Ruby による実装
パッケージの数がまだ少ない
sudo が不要
13年4月28日日曜日
Fink
13年4月28日日曜日
Fink
日本では流行っていないけど
海外ではかなり使われている模様
Debian の apt ベース
圧倒的なパッケージ数
インストールが他に比べると難しい
13年4月28日日曜日
Gentoo Prefix
13年4月28日日曜日
Gentoo Prefix
Gentoo の portage ベース
最強のビルドシステム
Mac OS のためだけのものでないため
少し使いにくい
USEフラグによる柔軟性
13年4月28日日曜日
Gentoo Prefix
圧倒的なカラフルさ
clang を使わない
13年4月28日日曜日
比較Macports Homebrew Fink Gentoo
Prefix
バイナリ/ビルド
結構バイナリ 基本ビルドそれなりにバイナリ
基本ビルド
パッケージ数 16,971 2,298 72,156 17,758
コンパイラ clang clang clang gcc
13年4月28日日曜日
比較Macports Homebrew Fink Gentoo
Prefix
検索結果 902,000 12,900,000 19.500,000 534,000
カスタマイズ variants options パッケージの数 USEフラグ
ベースシステム portsFreeBSD formula apt
DebianportageGentoo
13年4月28日日曜日
比較Macports Homebrew Fink Gentoo
Prefix
インストール 簡単 簡単比較的難しい
長い
インストール先 /opt/local /usr/local /sw ~/Gentoo
ツリーの同期 rsyncだと思う git apt rsync
gitにもできる
13年4月28日日曜日
比較
Macports Homebrew Fink Gentoo Prefix
複数バージョン active unlinkすればメジャーバージョンなら
slot
管理者権限 sudo 自動インストール時に選択
不要
13年4月28日日曜日
総評
トータルで個人的なおすすめ度
Macports > Homebrew > Gentoo Prfeix > Fink
まー、どれも一長一短ですね
サービス系は Gentoo Prefix 向いてないですが
他と比較する時間がありませんでした。
13年4月28日日曜日
アジェンダ
パッケージ管理とは
パーケージ管理ツールの紹介
パッケージ管理ツールのインストール
パッケージ管理ツールの基本
13年4月28日日曜日
パッケージ管理ツールのインストール
13年4月28日日曜日
Xcodeのインストールが必須です。with Command line tools
13年4月28日日曜日
13年4月28日日曜日
13年4月28日日曜日
13年4月28日日曜日
13年4月28日日曜日
Macports
http://www.macports.org/install.php
からダウンロード
pkg をインストール
13年4月28日日曜日
Homebrew
黒い画面で
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
を実行
13年4月28日日曜日
Fink
http://fink.thetis.ig42.org/download/srcdist.php
に従いインストール
エンターをたくさん押す
13年4月28日日曜日
Gentoo Prefix
http://www.gentoo.org/proj/en/gentoo-alt/prefix/bootstrap.xml
に従い作業
bootstrap-bash.sh のDL
実行してひたすら待つ
13年4月28日日曜日
アジェンダ
パッケージ管理とは
パーケージ管理ツールの紹介
パッケージ管理ツールのインストール
パッケージ管理ツールの基本
13年4月28日日曜日
基本的な使い方
インストール
アンインストール
パッケージの検索
パッケージの詳細情報
パッケージでインストールされるファイル
パッケージの更新
13年4月28日日曜日
表記について
Macports
Homebrew
Fink
Gentoo Prefix
参考例も用意
13年4月28日日曜日
インストール
sudo port install [package名] +variaonts...
brew install [package名] +options
fink install [package名]
emerge [package名]
13年4月28日日曜日
13年4月28日日曜日
13年4月28日日曜日
13年4月28日日曜日
アンインストール
sudo port uninstall [pakage名]
brew uninstall [package名]
fink purge [package名]
fink remove [package名]
emerge -C [pcakage名]
13年4月28日日曜日
検索
port search [keyword]
brew search [keyword]
apt-cache search [keyword]
fink list | gre [keyword]
eix [keyword] 要 eix
emerge -s [keyword]
13年4月28日日曜日
13年4月28日日曜日
13年4月28日日曜日
パッケージの詳細情報
port info [package名]
brew info [package名]
fink info [package名]
eix [package名] 要 eix
emerge --searchdesc [package名]
13年4月28日日曜日
インストールされるファイル
port contents [package名]
brew list [package名]
dpkg -L [package名]
qlist [package名]
要 portage-utils
13年4月28日日曜日
13年4月28日日曜日
13年4月28日日曜日
パッケージ情報の更新
sudo port selfupdate
brew update
fink update
eix-sync eix を利用しているなら
emerge --sync
13年4月28日日曜日
パッケージのバージョンアップ
sudo port upgrade installed
brew upgrade
fink update-all
emerge -uDN world
13年4月28日日曜日
参考文献とか
Macports
http://www.macports.org/
Homebrew
http://mxcl.github.io/homebrew/
13年4月28日日曜日
参考文献とか
Fink
http://fink.thetis.ig42.org/index.php
Debian
http://www.debian.org/
13年4月28日日曜日
参考文献
Gentoo Prefix
http://www.gentoo.org/proj/en/gentoo-alt/prefix/
Gentoo Linux
http://www.gentoo.org
13年4月28日日曜日