[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-devel:01991] Re: ports (Re: Is Debian JP authosized?)
From: Yoshiaki Yanagiahra <yochi@xxxxxxxxxxx>
Subject: [debian-devel:01989] Re: ports (Re: Is Debian JP authosized?)
Date: Sun, 28 Sep 1997 03:11:16 +0900
> やなぎはらです。
>
> FreeBSD の ports ってどういうものなんですか?
>
> バイナリ配布せずに、ソースで提供するってやつ??
>
> FreeBSDのことは、よくしらないのです。
FreeBSD用にあてた patch と、package の情報ファイル、
そして これ用の 共通な Makefile をまとめた物が配布されています。
これを /usr/ports/ 以下で展開し、できた directory で make をかけると、
もととなる source file, patch file を自動で get し(http,ftp プロトコル)
勝手に展開、patch 、make を行い、package にして、pkg_add (Debianではdpkg -i)
します。
その ports についてくる Makefile は、例えば以下のように実に簡素です。
これだけの記述で、(決まり切った文句を埋めるだけで)
chimera-1.65.tar.gz, chimera-1.65-kanji.patch を ftp get し、
展開して chimera-1.65-kanji.patch をあて、
さらに FreeBSD 用の patch, package file などを加えて作ってくれます。
-------Makefile-------
DISTNAME= chimera-1.65
PKGNAME= jp-chimera-1.65
CATEGORIES= japanese www
MASTER_SITES= ftp://ftp.cs.unlv.edu/pub/chimera/
PATCH_SITES= ftp://ftp.tohoku.ac.jp/pub/net/www/chimera/
PATCHFILES= chimera-1.65-kanji.patch
PATCH_DIST_STRIP= -p1
MAINTAINER= asami@xxxxxxxxxxx
USE_IMAKE= yes
.include <bsd.port.mk>
-------End of Makefile-------
Maintainer は、今の debian system だと、いちいちゼロから *inst, *rm を
書いています。
これが binary, source の配布に条件があるものにおいては、面倒だと思います。
( source は 原型のままじゃないとだめとか、
この一定のサイトから down しないとだめとか、
patch は free なんだけど、元は配布できないとか、)
殊に自動で http,ftp を使って get するスクリプトなど、そのたびに書きたくないです
(あと GS jp化 の patch集 みたいに複雑な program など、手に追えない)
自分で取れといわれればそれまでですが、
できるなら自動化にでき、かつ、maintainer の記述量もぐっと減らしたい。
ports は それの一つの方法だと思うんです。
(おかげで試験とはいえ、debian 用の patch を公開するだけで
いままで 公開できなかった iij-ppp が一応外に置けた訳です)
dpkg でできれば最高なんですが、わたしには方法論が見付かりません。
dpkg -i program.ports.deb をすると、
1.必要 file を ftp(http) getし、
2.source を展開。patch をあて
3.debian 用の patch をあて
4.chdir したのち debian/rule binary し
5.できた deb を dpkg -i package.deb する。
dpkg -i の中で dpkg -i を呼ぶから、さーどないしましょ。
dpkg 1個立ち上がっていると、lock かかってますよね?
あと、available や status , info/* もどうなることやら。
で、ports の 超 mini 版を試してみました。
======================================
村上 毅 mtakeshi@xxxxxxxxxxxxxxx