[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
[MD:1972] Would anyone like to release Meadow immediately?
- X-ml-count: 1972
- Subject: [MD:1972] Would anyone like to release Meadow immediately?
- From: Keiichi Suzuki <keiichi@xxxxxxxxx>
- Date: 16 Jan 2001 11:06:52 +0900
- User-agent: Nana-gnus/7.1.0.24 SEMI/1.14.2 (Daishōji) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.2 Emacs/20.7 (i386-*-nt5.0.2195) MULE/4.1 (AOI) Meadow/1.13-Beta2 (UKIHASHI:61)
>>>>> meadow-develop の No. 1971
>>>>> Message-Id: <20010116.003148.31854429.ki@xxxxxxxxxxxxxx> で、
>>>>> "北口" == Shuichi KITAGUCHI <ki@xxxxxxxxxxxxxx>さま曰く...
圭一> 私としては、いわゆる binary package ではなく、 ports みたいな
圭一> make の自動化というほうが、うれしいかなと思います。
圭一> Elisp の場合、純粋に *.elc だけを install するって言うのは、個人
圭一> 的には考えられませんし、 GNU Emacs の流儀ではありませんので、
圭一> package のサイズのことも考えると、 make の自動化がうれしいのでは
圭一> ないかと思います。
北口> ports は私も好きなのでそれができるに越したことはないと思うのです
北口> けど、make 時にいろいろなツールを要求されると嬉しくないなと思います。
北口> だから、ports 的動作があってもいいけど配布物としては packages 的に
北口> なっている方が良いかな、と。ただ、
私は基本的に...
Elisp コードは source 配布、 Windows binary は binary 配布という
方針にしたいと思っています。
;; 前者のコンパイル環境は絶対にあるはずだけれど、後者のものはそ
;; うとは限りませんし、いろんなものがありますので。
で、自分で Windows binary を作りたい人以外には、 make.exe 等を要
求しないようにする。というのが望ましいと思っています。
問題点の洗い出しも含めて、必要なこと、および私の考えをあげてみま
す。
;; (技術的な|コストの)問題はとりあえず置いておきます。
1. パッケージ管理パッケージ
Meadow の core package に含めてしまうという手もありますが、 core
package を小さくするという意味と、バージョンアップのことを考えて、
ange-ftp を使った boot strap を Meadow の core package に含めて
おいて、パッケージを使いたい人は、これをインストールするようにす
るというのが良いのではないかと思います。
;; gzip, tar, patch, wget 辺りを含めることになるのではないでしょ
;; うか。
2. パッケージ選択
特定の URI に対応パッケージ情報のリスト置いておき、それを取得し
て一覧選択できるような elisp アプリケーションを作る。
;; リストファイルの内容は、パッケージ名、バージョン、配布元の
;; URI 位でしょうか。
3. パッケージ情報取得
リストで選択したパッケージの URI から、 ports 的なものを取得する。
パッケージ本体は、別経路での取得、要不要の判断の機会のことを考え
て、この中には URI を記述するようにする。
この中には...
1) 必要なファイルの URI list
2) パッケージ依存情報
3) Document (なにをするものか、および、 patch による変更箇所位は
書いておく)
4) Make / install のための elisp code
を含める。
1) がの内容が小さいものであれば、本体もこの中に入れてしまって、
URI を current direcotry にしておくというのも良いかもしれません。
4. Make / install
1) 3. 4) の elisp code は、 uninstall 情報を特定のファイルに出力
する。
5. Uninstall
4. 1) の情報と、インストール済みパッケージの依存情報を元に不
要なものを削除する。
6. その他
自分でインストールしたものもパッケージの依存情報として使える
ようにする。
北口> 個人的には
北口> Meadow/pkg/lisp/app-name (本体)
北口> doc/app-name (ドキュメント類)
北口> db/app-name (uninstall 用情報)
北口> こんなのかなぁ、と思ってます。
北口> もっとも、.exe は Meadow/x.xx/bin に入れるしかないと思いますが。
北口> # pkg/bin を作ってパスを通しておくのもいいかもしれませんね。
北口> ただ、SKK などデフォルトでは Meadow/x.xx/site-lisp に入るものは
北口> どうしたものだろう...
Compile 時に emacs 環境による最適化を行うものもありますので、
Meadow/x.xx/pkg/lisp/app-name というのもやはり必要かもしれません。
あまりディレクトリを増やしたくないというのであれば、subdirs.el
が recursive にディレクトリを検索するという特徴を生かして、各
site-lisp の下に pkg/app-name というのを作るというのも、良いので
はないかと思います。
;; ディレクトリ構造が深くなるというのとの兼ね合いはありますが。
圭一> そうすると、リソースのことを考えなくてもよいような、1次配布のた
圭一> めのサイトがほしいですよね。
北口> master site にはリンク情報だけが置いてあって、モノ自体は分散配置して...
北口> って結局、開発者が更新可能な master site が必要には変わりないですねぇ。
北口> まぁそれより、システムを考える方が先ですね(^^;
ですね。
--
鈴木圭一 / keiichi@xxxxxxxxx
PGP finger print (DH/DSS)
0B32 B37E 6DE9 3BC1 68A4 4089 7AAF 2B03 ECBD 614B