読者です 読者をやめる 読者になる 読者になる

できる気がしてきた。

Githubな活動記録を公開してます

pkgbrewを公開しました

こんにちは、ta2gchです。

前々から非権限ユーザのまま使えるパッケージマネージャーが欲しくて、いろいろ試していました。 しかしどれも、自分にしっくりとくるものがなかったので、自作することにしました。

とはいえ、パッケージ数が少なければ意味がないので、NetBSDが開発しているpkgsrcをベースにpkgsrcをHomebrew風に使うインターフェースを提供する形で実現しています。

特徴としては、

  1. Homebrew 風の操作感 (install,deinstall, ... )
  2. Homebrew 風にGithubを自作パッケージのリポジトリにできる(tap/untap)
  3. HomebrewのFormulaと違ってuninstall方法をパッケージに記述できる (Makefileでパッケージを管理しているから)(pkgsrcの仕様を再度しらべたところ、厳しいようです。もし本当に必要になったらpkgbrewのuninstallにフックを作ろうと思います。(未定))
  4. Homebrewと違ってgcc&g++&shだけに依存している
  5. 簡易なインストール方法 (wget -O- https://git.io/pkgbrew | /bin/shだけ!!)

です。

なぜHomebrewを使わないというとLinux版のパッケージだと対応しているパッケージに満足しなかったからです。

かと言ってパッケージを自作しようにもFormulaではアンインストール方法を指定できないので、Quicklispのように外部に設定ファイルを置きたい場合、スマートな記述ができないことがあります。

そこでpkgsrcを単体で利用しようとしましたが、インストールしたい場合毎回 cd, make, make install するのは面倒くさい!

最後にpkgsrcのインターフェースnihを利用するか考えましたが、 いろいろ作りがお粗末で自分でも作れそうだったので真似してみたところ、 想像以上にうまくできたので、本格的に開発してみました。

今回はかなり自信作なのでぜひリポジトリを覗いて見てください!

pkgbrewはBSD二条項ライセンスの下でリリースされたOSSです。

それでは!

github.com