carboncopy: Drop emails from threads being watched into special CC folder.

[ bsd3, email, program ] [ Propose Tags ]

Filter for procmail, which allows to track message threads and copy messages, which were sent to the threads you're watching, into separate folder.

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1, 0.1.2
Dependencies base (>=3 && <5), bytestring (>=, filepath (>=, haskell98, IfElse (>=0.85), MissingH (>= [details]
License BSD-3-Clause
Author Eugene Dzhurinsky
Category Email
Home page
Uploaded by EugenyDzhurinsky at 2011-03-17T19:39:11Z
Reverse Dependencies 1 direct, 0 indirect [details]
Executables carboncopy
Downloads 2035 total (7 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-11-04 [all 10 reports]

Readme for carboncopy-0.1.2

[back to package description]
Many times you are posting some email to a mailing list. Usually you want
to track replies to your email, as well if someone replies to another email
in the thread, posted by another person.

If you are using procmail, you may have it configured to store mails into
separate folders for mailing lists, just to keep yourself organized. However,
you are forced to check those folders periodically, to see if there are new 
replies to your emails.

Procmail itself doesn't provide any functionality to track email threads and
notify you if a new email is posted to a thread you've started. So this simple
tool allows to check if email was posted in reply to certain one in the thread.

With simple procmail configuration, like below

:0 cW
* ? /path/to/executable

emails will be copied into CC folder, if they are replies to a thread you'd 

You have to configure $HOME/.ccrc file as following

cc_header_file = /home/user/.ccheaders
originator_email =


cc_header_file - full path to the database of message IDs
originator_email - email of sender you want to "Watch" for replies automatically.
                   Usually this is your own email address.

How this works: every email should have 2 headers:

- Message-Id - the unique ID of email message, generated by MTA
- In-Reply-To - ID of email, which was replied by current one

So the task of the current tool is to check, if there is a value of In-Reply-To header 
present in the email database (plain text file), and if so - add the current message ID
to the database and exit with code 0.

We have to add current message ID to make it possible follow-ups of the current email
will be tracked as well.

If email message contains originator_email from settings file, then current ID of the
email will be added to the storage as well. So follow-ups will be tracked as well