fc2ブログ

Mew on Carbon Emacs (via stunnel)

たくさんある研究室のメモブログからの引っ越し(11)


MewをCarbon Emacsで使うときのメモ。
といっても、Mew自体は簡単に入るので、むしろstunnel設定のメモ。

ThunderbirdだとSpotlightから検索できないから、Debian時代のものに戻ってMewを使うことにした。

Carbon Emacsには標準でMewが入っているらしい。
が、stunnelが入ってないことに気付く。

finkでstunnel4をインスト。
設定ファイルは/usr/local/etc/stunnel/stunnel.conf

[pMan@pMac:/usr/local/etc/stunnel]$ cat stunnel.conf
client=yes
#CAfile=
#verify=2
debug=notice
pid=/usr/local/var/run/stunnel.pid
output=/usr/local/var/log/stunnel.log

[pop_server]
accept=10001
connect=pop.gmail.com:995

[smtp_server]
accept=10002
connect=smtp.gmail.com:587

which stunnelすると/sw/sbin/stunnelとなるので、/usr/local/etc/stunnelを/sw/etc/stunnelにシンボリックリンク。

sudo stunnelして、logにエラーがなく、

ps -ax | grep stunnel
netstat -an | grep 10001
telnet localhost 10001

などで確認できればOK。

で、stunnelをMac起動時に実行できれば万事OK。
launchdの使い方がよく分からないから諦めてStartupItemsで。

dir作成→起動スクリプト、起動設定ファイル(?)作成→実行権限付ける→再起動

sudo mkdir /Library/StartupItems/stunnel
cd !$
sudo vi stunnel
sudo vi StartupParameters.plist
Sudo chmod a+rx *



○stunnel

#!/bin/sh

. /etc/rc.common

StartService ()
{
 if [ -f /sw/etc/stunnel/stunnel.conf ]; then
  ConsoleMessage "Starting Stunnel Packet Wrapper"
  /sw/sbin/stunnel
 fi
}

StopService ()
{
 if [ -f /usr/local/var/run/stunnel.pid ]; then
  ConsoleMessage "Stopping Stunnel Packet Wrapper"
  /bin/kill `cat /usr/local/var/run/stunnel.pid`
 fi
}

RestartService ()
{
 StopService
 StartService
}

RunService "$1"



○StartupParameters.plist

{
 Description = "stunnel";
 Provides = ("stunnel");
 Requires = ("Resolver");
 OrderPreference = "None";
 Messages =
 {
  start = "Starting stunnel";
  stop = "Stopping stunnel";
  restart = "Restarting stunnel";
 };
}

再起動したら、権限の設定が間違ってるとか怒られた。
「修正しますか?」の問いに「はい」としてまた再起動。
無事、実行できた。

Mewの設定はDebianからコピーして少し変更。

Spotlightを使うにはMewImporterとかいうのが必要らしい。

mdimport -L

してMewImporterが表示されればインストされている。

最下部記載のリンクの方が詳しいので、そちらからダウンロードして~/Library/Spotlightに展開。
つーか、設定まで見た方が早い。
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/にあるlsregisterとかいうコマンドを使うわけだが、このPATHは長すぎ。以下省略。

lsregister -dump | grep tags | grep mew

して、

tags: .mew, 'MewX'

てな行が見つかれば無問題。

無い場合は、

lsregister -f ~/Library/Spotlight/MewImporter.mdimporter

だとさ。

もっかいlsregister -dumpで確認して、.mewエントリが2つとかになってないかチェック。
もし2つになっちゃった場合は

lsregister -kill -r -domain local -domain system -domain user

で消せるって。何か設定も消えるかもだとさ。

で、新しいメールしか無い自分の場合はここで終了。
新規のメールはインデックスができることになる。

おっと。.mew.elに(setq mew-use-suffix t)を書かないと拡張子が付かないんだった。

もし以前までのメールがある場合は、MewのSummaryモードでkMでいけるらしい。
よく分からん。
適当なメールでmdlsをして確認。
mdls ~/Mail/inbox/1.mewとかじゃないの。この結果がよく分からん。多分大丈夫。

あとは普通に検索するだけだ。
Summaryモードでk/とかでもできるらしいけど、できんかった。

参考:
Mew から Spotlight を利用する


引っ越し時追記:
Leopardになって、Spotlightまわりは変わっているっぽい。
なぜか動いているんだが・・・よく分からず気持ち悪い。
別にmewimporter組み込んだ覚えはないんだけどな・・・。

管理者にだけ表示を許可する