Herokuにバイナリを組み込むbuildpackを作成するを参考に作ってみた。
以下、メモ。
- Heroku BuildpackとはHerokuでアプリケーションを動かす環境をパッケージングしたもの。rubyとかnodeとかの環境もそれで、自作すればオレオレ環境を作ることができる。
- 通常ひとつのアプリケーションに対してひとつのbuildpackしか指定できないのだけれども、heroku-buildpack-multiを使うと、複数のbuildpackを組み合わせて使えるようになる。
- 手順的には次の2ステップ
- 実際にインストールするバイナリを作成する
- ビルド用のアプリケーションを作り、heroku run bashでシェルを開いて実際にビルドしていく。
- このへんはSendgridの記事が詳しい。
- この中で使われているsrvdirが超絶便利でヤバい。
 
- バイナリをどこに置くかは悩ましい。とりあえずDropboxのPublicに置いた。
 
- ビルド用のアプリケーションを作り、
- Buildpack APIに準拠したリポジトリを作成する
 
- 実際にインストールするバイナリを作成する
- 今回作ったmplayerがyasmに依存するので、そこらへんはdetectでインストール済みか否かを判定するべきなのかも。