fml
(株)インターネットイニシアティブ
札幌支店インターネット技術部
深町 賢一
Copyright (C) 1999 Ken'ichi Fukamachi
All rights reserved.
(page 1)
メーリングリスト
(page 2)
基本的な指導公理系
(1) 自由度
多様性, ゆらぎ
MLは1つのシステム上に複数のユーザのそれぞれの世界
(ドラえもんoritented?)
(2) 開発の立場 >> 運用の立場
(3) 互換性
(page 3)
デザイン・ポリシー
人間は機械より高価な資源
routine workを減らしたい
改造の手間暇
管理者やユーザの自由度
人間は人それぞれなもの。それを尊重しよう。
デフォールトの挙動は注意深く選ぼう
その一方で上級者には自由にパラメータを変えられるように
豊富な機能
明示的に機能をONにするべし(deny and permit ...)
改造の出発点は初めから一通り揃えておきたい
互換性は非常に大事
(page 4)
Supported Systems
UNIX likeでperlがそれなりに走るOS上
UNIX 以外
Windows NT4
MTAに依存
:include: or POP3 emul(POP -> fml -> MTA)
(page 5)
特徴(1)
makefml対話設定プログラム(CUI)
配送用アドレス、コマンド用アドレスごとのアクセス制御
(anyone/members_only/moderator)
自動登録/削除:confirmation他
投稿メールのフィルタリング
トラフィックモニタ(mail bomb対策)
Message-ID Cache, 特殊accountの排除(ループ対策)
まとめ送り(ユーザごとにcustomize)
リモート管理(認証:address+password〜PGP)
PGP2暗合化ML(incomplete)
(page 6)
特徴(2)
ヘッダフィールドのきめこまかい設定
豊富なファイル操作
UNIX FROM,RFC934,RFC1153,MIME/Multipart
gzip,Lha + Ish,Lha + uuencode,tar + gzip
zip + base64,uuencode
記事の自動圧縮/Expire
HTML記事作成(HTML 4.0 FORMAT)
Listserv(Majordomo)互換インターフェイス
MLに参加し続けるか?を一定期間ごとにconfirmする
エラーメールを解析して自動的にユーザを削除する
VERPs ($USE_VERP)
(page 7)
特徴(3)
newsyslog(8)/RCS backup of configurations
RESOURCE LIMITS
メールサイズ
メンバー数
1メール当たりのコマンド数
USE_MEMBER_NAME extension
address と実名のテーブル
POP3によるML
お遊び系:D
スタートレック宇宙歴
mail2irc
(page 8)
特徴(4): 割と最近の話
mail body MD5 checksum (optional)
Message Languate Extension: エラーなどの日本語化
Content Filter (text + html なメールをreject/ignore/convert)
Message-ID emulation (なんていうんだ?)
enable VERPs
(page 9)
最近のはなし
(page 10)
現在進行形の開発系
TODOリスト
http://www.fml.org/fml/TODO/
メモらないと忘れるからめもる != 消化がすすむ
documents再構成計画(?)
e.g.
http://www.fml.org/fml/examples/
GUI (じきにβ version)
makefml(CUI)のCGI wrapper
XXX idea from gauntlet-admin
(page 11)
Release Engineering
2.2.1 も拡大すれば同様
cvs化に伴い徐々に変更
(page 12)
準備中 or 現在進行形
directory再構成
ftp://ftp.iij.ad.jp/pub/IIJ/dist/fukachan/fml/
daily snapshot を作成する
cvsweb
(cvs ?)
(cvsup ?)
(page 13)
directory再構成
ftp://ftp.iij.ad.jp/pub/IIJ/dist/fukachan/fml/official/
official release, official release + patches
ftp://ftp.iij.ad.jp/pub/IIJ/dist/fukachan/fml/experimental/
current snapshot (不定期, ある程度まとまったら)
ftp://ftp.iij.ad.jp/pub/IIJ/dist/fukachan/fml/htmldocs-current.tar.gz
daily snapshot (とにかく作る)
ftp://ftp.iij.ad.jp/pub/IIJ/dist/fukachan/fml/experimental/ ?
これからやる。daily snapshot (とにかく作る)
(page 14)
開発環境
『貧乏は開発の母(?)』
fwtk + mtdamper (mail traffic damper)
CVS
cvs over ssh
生rcs -> 自作rcs wrapper -> cvs と流れてきた
CVSサーバは NetBSD/newsmips (SONY NWS3470)
Targets開発環境
NetBSD/i386
NetBSD/sparc
(page 15)
A Study of History
(page 16)
動機
Networkを理解するためにいじってみよう
1/f ゆらぎの研究"も"しよう:)
ついでに使えるものにしよう
メーリングリストで遊ぼう
(page 17)
1/f: PSD(Power Spectrum Density)
K. Fukamachi,
Interdisciplinary Information Science vol.1, 157 (1995)
"PSD of mailing list traffic"
(page 18)
1/f: Alan Variance
"アラン分散 of mailing list traffic"
(page 19)
Release History
Official Release History (fj.sources)
日付 リリース
1999/12 3.0.1 (12/19 ?)
1999/08 3.0
1999/05 2.2.1
1998/09 2.2
1997/08 2.1
1995/01 1.5
1994/09 1.3
1994/05 1.2.1
1994/03 1.2
(page 20)
よもやま話
(page 21)
よもやま(1)
趣味
趣味→仕事の教訓?
勘はまぁ鍛えられるけど…
activity
release cycle, milestone
力技は気合い?
強い理念,信念はもろはの剣か?
maintainer と developper
飽きたら… それ以前に時間が…
文化, 文明?
(page 22)
よもやま(2): 教訓
初心(?)わすれるべからず
プログラミング書法, ソフトウエア作法に書いてあるのにやってしまふボケ;)
一度決めたスタイルは守ろう
Perlならなおさらまもろう;)
既にあるものは使おう(しかし枯れてるものに絞るべき)
(page 23)
よもやま(3): poring
UNIX以外へのportは教訓が得られる
暗黙のUNIXの仮定(e.g. pathname)がばれる
fork, alarm, get*() 系
例: NT用の特殊コードは全部合わせて1000行程度
UNIX間ではperlが差を吸収しているのであまり苦労はない
BeOS 4.0一回目は敗北;)
UNIXコマンドに依存しない e.g. 自力SMTP
(page 24)