Solaris関係の物置き

mkpkg tools

mkpkg tools は Solaris 用のパッケージである pkg の作成支援ツールです。
mkpkg.zip は mkpkg, mkpinfo, mkproto の 3つのシェルスクリプトから構成されます。


基本的にフリーです。 たいしたシェルスクリプトでもないし、バイナリでもないので、ライセンスは不要だと思いますが、 敢えて必要というのなら、GPL(V2以降) or CDDL のメタライセンスということにでもしておいてください。^^;


各コマンドの使いかたは次の通りです。
これらは -h オプションを付けて各コマンドを実行した際に表示します。


Solaris用パッケージ作成方法等は過去のブログをご参照下さい。


mkpkg : Solaris用pkg一発作成コマンド。
パッケージングしたいバイナリをインストールしたディレクトリに移動し、 このコマンドを利用することで、1ファイル化したパッケージの作成が行えます。


Usage of mkpkg
> mkpkg output [-g] [-user <username>] [-group <group>]
             -p <pkg> -n <name> -v <version> -a <arch> [-c <category>]
            [-b <basedir>] [-d <description>] [-vd <vendor>] [-o <flag>...]

  output             : output file name

  [Details of Option]
  -g                 : create gzipped package
  -p  <pkg>          : package name (ex. SUNWgcc)
  -n  <name>         : application name (ex. gcc)
  -v  <version>      : application version (ex. 4.2.0)
  -a  <arch>         : architecuture, i86pc,sun4u...
  -c  <category>     : category of the application (ex. system, application, GNOME2)
                       (default = appilcation)
  -b  <basedir>      : base directory of the application (default = /)
  -d  <description>  : package description
  -vd <vendor>       : vendor name (default = unknown)
  -o  <flag>         : if you want to add other flags, please use it
                       (ex. -o "SUMW_PRODNAME=SunOS" -o "SUNW_PRODVERS=5.10"


mkpinfo : pkginfo ファイル作成用コマンド。
mkpkg の内部から呼び出していますが、個別に使用することも可能です。 mkpkg が使えない場合に、pkginfoのひな形を作るという場合くらいでしょうが…。


Usage of mkpinfo
> mkpinfo -p <pkg> -n <name> -v <version> -a <arch> [-c <category>]
             [-b <basedir>] [-d <description>] [-vd <vendor>] [-o <flag>...]

[Details of Option]
-p  <pkg>          : package name (ex. SUNWgcc)
-n  <name>         : application name (ex. gcc)
-v  <version>      : application version (ex. 4.2.0)
-a  <arch>         : architecuture, i86pc,sun4u...
-c  <category>     : category of the application (ex. system, application, GNOME2)
                     (default = appilcation)
-b  <basedir>      : base directory of the application (default = /)
-d  <description>  : package description
-vd <vendor>       : vendor name (default = unknown)
-o  <flag>         : if you want to add other flags, please use it
                     (ex. -o "SUMW_PRODNAME=SunOS" -o "SUNW_PRODVERS=5.10"


mkproto : prototype ファイル作成用コマンド。
mkpkgが使えないケースでひな形を作る時くらいですね、使うとしても…。
これも mkpkg の内部から呼び出しています。


Usage of mkproto
> mkproto [Option]

[Details of Option]
Default    : User = root, Group = other
-u <user>  : set user
-g <group> : set group