Edited at

パッケージ管理Tips

More than 1 year has passed since last update.


概要

portsなどでパッケージをインストール・アップデートする時の自分用のメモです.もしこんな便利なコマンドあるよみたいなのがありましたら教えてください.環境は10.3-RELEASE-p17です.


古いパッケージを調べる

pkgの場合

pkg version -v

portsの場合

portmaster -L

portmasterの場合依存関係でカテゴリ分けされて表示されるので便利.他もろもろやってくれるのでおすすめ.-aは使うな.


パッケージのデータベースを更新する

portsの場合

portsnap fetch update

pkgの場合

pkg update


インストール済みパッケージの脆弱性を調べる

pkg audit


UPDATINGを検索する

アップデートに際しての注意事項が/usr/ports/UPDATINGに書かれている.portsの名前が変わっただとか,ビルドする時にビルドオプションが必要かもしれないよとか.アップデート前とかアップデート中に止ったりした時に見るといい.見るのに便利なコマンドが以下.

pkg updating [パッケージ名]


インストール済みパッケージの依存関係を調べる

あるpkgが依存しているパッケージを調べる(dependences)

pkg info -d [パッケージ名]

あるpkgが依存されているパッケージを調べる(depended on)

pkg info -r [パッケージ名]


バージョンを変える

以下はインストール済みのportを新しいportsに置き換えるコマンドである

主にメジャーバージョンアップに用いられる(php55からphp56とか)

またportsの名前が変わった時など

portmaster [Common flags] -o <new port dir in /usr/ports> <installed port>


リビルドする

portmaster -R -r ruby-1.9

[-R]-r: 指定したportとそれに依存するものをリビルドする

-R: -[rf]と組み合わせて使うことで前回実行時にアップデートされたportsをスキップする([]はまたはの意)


make時のオプションを指定する

portmaster wordpress -m --ignore-vulnerabilities


インストール済みパッケージの情報を見る

pkg info [パッケージ名]


インストール済みportsの一覧を表示

pkg info


アンインストールする

pkg delete [パッケージ名]


pkgでアップデートを実行する

pkg upgrade # 全部

pkg upgrade hoge # hogeだけ

-nでdry-rynする


make.conf

/etc/make.confでmake時のオプションをあらかじめ設定できる

. if ${.CURDIR} == "/usr/ports/editors/vim"

OPTIONS_UNSET= X11
. endif

また使用するデフォルトのバージョンを指定することもできる(参考: DEFAULT_VERSIONS - FreeBSD Wiki

DEFAULT_VERSION+= PHP=7.1

使用できるバージョンは/usr/ports/Mk/bsd.default-versions.mkで定義されている.

これを使うことで例えばportmaster wordpressなどとやった時に7.1のPHPを使ってくれる.