News/Mail を持って来る設定というのは比較的楽にできますが、送る方といっ たら結構苦労するのではないでしょうか。ここでは非常に簡単な設定で Mail/News を送ることができる impost というソフトを紹介します。
Gnus/GNUS をお使いの方は以下のものもあった方が良いでしょう
tm-7.106
Emacs で MIME を使うセットです。ここでは gnus-mime, tm-gnus を利用させ
ていただきます。
&& !&header_value("Path")
という行をコメントアウトしてください。これは mnews が Path: を付け
てしまうことに対処したものです。
(gnus-set-newsgroup-default-charset "tnn" 'iso-2022-jp-2)
(gnus-set-newsgroup-default-charset "japan" 'iso-2022-jp-2)
; Nifty4U? をお使いの場合。その際 rnews には JIS で噛ませて下さい。
(gnus-set-newsgroup-default-charset "nifty" 'iso-2022-jp-2)
-- .impostrc ------------------------------------- config: default option: -smtpservers smtp.hoge.or.jp option: -nntpservers news.hoge.or.jp option: -fromdomain hoge.or.jp option: -user foo option: -org HogeHoge Inc. option: -lines 3000 option: -noesmtp option: -noMsgId option: -justqueuing option: -ObeyHeade option: -NewsGMTdater option: -newspost option: -noNewsCheck option: -h config: post option: -verbose option: -processqueue --------------------------------------------------.emacs(Gnus/GNUS/Mew をお使いの場合)
-- .emacs ----------------------------------------
;;; tiny MIME
(load-library "mime-setup")
;;; Mew
.....
;; MH の send は使わず impost を使う
(setq mew-prog-send "impost")
;; これをつけないと reply のとき自分に Cc: される
(setq mew-mail-domain "hoge.or.jp")
;;; Gnus
.....
;; 自分の本当の(公式の)メールアドレス(Gnus 5.4.x 以降?)
(setq user-mail-address "foo@hoge.or.jp")
; Gnus 5.3.x 以前はこうかな?
(setq gnus-user-from-line "Masahito Ohtsuka <foo@hoge.or.jp>")
; GNUS ではこう
(setq gnus-user-login-name "foo")
(setq gnus-local-domain "hoge.or.jp")
;; Massage-ID はいらない
(setq message-required-news-headers
'(From Newsgroups Subject
(optional . Organization) Lines (optional . X-Newsreader)))
;; Mail でも Message-ID は要らない(Gnus 5.4.5x 以降?)
(setq message-required-mail-headers
'(From Subject Date (optional . In-Reply-To) Lines
(optional . X-Mailer)))
(setq gnus-required-headers ; GNUS/Gnus 5.3 以前
'(From Newsgroups Subject Organization Lines X-Newsreader))
;; Sender: ヘッダをつけない(Gnus 5.4.x 以降のみ?)
(setq message-syntax-checks
'((long-lines . disabled)
(control-chars . disabled)
(sender . disabled) ; ここがポイント
))
;; inews を impost にやらせる
(setq gnus-post-method '(nnspool ""))
(setq nnspool-inews-program "impost")
(setq nnspool-inews-switches '("-h"))
;; sendmail 起動のプログラムも impost で post する
(setq sendmail-program "impost")
--------------------------------------------------
config.jsh する時に
ニュース投稿プログラムとオプション(デフォルト:/usr/lib/news/inews -h):/usr/local/bin/impost
メール送信プログラムとオプション(デフォルト:/usr/lib/sendmail -t -om-oi):/usr/local/bin/impost
などとそれぞれ答えます。またコンパイルオプションで - DLOCAL_POST
を追加し、メール送信モードは MTAP を指定します。
冒頭にも書きましたが impost の以下の行を削除(コメントアウト)します
&& !&header_value("Path")
とくに注意するものは From: と Message-ID: です。From: は公式な自分の メールアドレスになっているか、Message-ID: は付いていないかを確 認して下さい。
この方法でポストするには Message-ID: を消すことが肝要なのですが、ニュー
スリーダーのなかには Message-ID: を消すことが出来ないものがあります。
そのような場合には転送する前に以下のようなスクリプトを走らせると良いで
しょう。Sender: に local な(公式でない)Mail address が入ってしまう場
合にも有効です。
#!/usr/bin/perl -i
@ARGV = <~/.imqueue/*>;
while (<>) {
print unless /^(Message-ID|Sender): /;
}
確認が出来たら
impost -config postで、転送です。あらかじめ PPP connection を張っておくのをお忘れなく
tm を使わない運用も可能だとは思いますが、うちではキューイングされた Mail/News が文字化けを起こしてしまいます。しかし、MIME なヘッダが見れ るのでインストールしない手は無いでしょう。(^_^)
とりあえず自分の場合うまくいっていますが、もし間違いがあったら指摘し てやって下さい。