[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