Archive for January, 2007

Quicksilver

Monday, January 15th, 2007

I used Quicksilver when it first came out. I didn’t really use many of the ‘advanced’ features, I just used it as an app launcher. The only non-app-launcher feature I used was the Play, Stop, Pause, etc. iTunes bits. (ok, they’re AppleScripts, so I guess technically I was only using it as an app launcher).

Anyway, I stopped using it when Spotlight became available, because it filled my needs without being an extra app to maintain. I’m a simple fellow, I don’t like lots of apps when I don’t need them.

I recently fired up QS again when I was procrastinating, and it’s won me over again. I’ll still probably not use the non-app-launcher features, but regardless, it’s damn quick. My Spotlight takes quite some time to search for apps, but Quicksilver loads stuff immediately.

I’m impressed.

dspam, Cyrus-imapd and Postfix - how I do it

Monday, January 15th, 2007

I use my mail server for several things;
- Standard email hosting
- Receiving mail to go off to scripts for processing (ie. bounces from newsletters)
- Forwarding mail for certain mailboxes/domains off to other servers outside my control
- etc.

Previously, I had dspam set up to process mail in the postfix content_filter mode on the smtpd process. This is OK, but it means that I spam filter email that I forward, and I don’t really want that. I don’t really want to have to opt-out every address that I forward to, either. There was a transport configured to process email in dspam, by calling the dspamc binary, and piping the email to it. It would be sent to the dspam server.
The dspam server would process mail, then deliver it back to Postfix via SMTP on a special unfiltered port for delivery via cyrus using the ‘deliver’ binary that ships with cyrus-imapd.

Now I’ve changed things a bit. The virtual_transport and mailbox_transport in Postfix is set to use LMTP to deliver to my dspam LMTP socket. Dspam is configured to process the mail (it selects user based on the ‘To’ in the envelope), and then deliver it with LMTP to cyrus-imapd. The virtual_transport and mailbox_transport parts run after the alias processing, so mail that goes to remote servers goes un-scanned.
I have to wonder whether there’s a performance boost in here somewhere because of the use of LMTP instead of calling the “deliver” and “dspamc” binaries.

Like I say, it’s possible to accomplish this with optIn/optOut settings, but I like having default optIn for my users who actually receive mail on my server.