BUBGER(1) | General Commands Manual | BUBGER(1) |
NAME
bubger
— IMAP
archive generator
SYNOPSIS
bubger |
[-iqv ] [-A
entries] [-C
path] [-H
head] [-S
file] [-T
title] [-a
algo] [-h
host] [-m
addr] [-p
port] [-s
url] [-u
base] [-w
file] [-y
css] user
[mailbox] |
DESCRIPTION
Thebubger
utility renders an HTML, Atom and mboxrd
archive of an IMAP mailbox arranged into threads. It requires the IMAP THREAD
extension. Partial output is cached and reused by subsequent runs. The list of
updated paths is written to standard output.
The arguments are as follows:
-A
entries- Limit the number of entries in search Atom feeds. The default limit is 20. Thread Atom feeds always contain all entries.
-C
path- Change directory to path before reading and writing files.
-H
head- Append the contents of the file head to the <head> element of HTML pages.
-S
file- Read search definitions from file. Search definitions are documented in FILES.
-T
title- Set the base title for search HTML pages and Atom feeds. The default title is the mailbox name.
-a
algo- Set the threading algorithm to one of ORDEREDSUBJECT or REFERENCES. The default algorithm is REFERENCES.
-h
host- Connect to IMAP on host. The default host is determined by SRV record lookup on the domain name of user.
-i
- Continually wait for new messages in the mailbox using IMAP IDLE. Writes to UIDNEXT indicate that the rendered archive has been updated.
-m
addr- Add a “write” mailto link of addr to search page navigation.
-p
port- Connect to IMAP on port. The default port is imaps (993). TLS without STARTTLS is assumed.
-q
- Suppress output of updated paths and exit non-zero if the mailbox has not changed.
-s
url- Add a “subscribe” link of url to search page navigation.
-u
base- Set the base URL for links in Atom feeds.
-v
- Log IMAP protocol to standard error.
-w
file- Read the IMAP password from file. By default the
password is set by the
BUBGER_IMAP_PASSWORD
environment variable. -y
css- Use the stylesheet URL css. The default is an inline stylesheet.
- user
- Log in to IMAP as user.
- mailbox
- Render threads from mailbox. The default mailbox is "Archive".
ENVIRONMENT
BUBGER_IMAP_PASSWORD
- The IMAP password.
FILES
- *.atom, *.html
- Rendered Atom feeds and HTML pages for each search.
- thread/*.atom, thread/*.html, thread/*.mbox
- Rendered Atom, HTML and mboxrd files for each thread.
- attachment/*/*/*.*
- Attached files.
- message/*.mbox
- Rendered mboxrd files for each message.
- UID/*.atom, UID/*.html, UID/*.mbox
- Cached Atom, HTML and mboxrd fragments for each message.
- UIDNEXT
- Stores the next UID of the mailbox. Remove this file to force re-render the search pages and feeds.
- UIDVALIDITY
- Stores the mailbox UID validity.
- SEARCH
- The default path to read search definitions from.
Each line of the SEARCH file defines a
search for which an Atom feed and an HTML page will be generated. Blank
lines and lines beginning with ‘#
’ are
ignored. Each line consists of a search name and an IMAP search expression,
separated by whitespace. If no index search is
defined, the following default is used:
index ALL
EXAMPLES
Create or update an archive and copy new or updated files to a remote host:
bubger -C archive list@example.org | rsync -a --files-from=- archive example.org:public_html/archive
Example SEARCH definitions:
announce SUBJECT "[ANNOUNCE]" bubger TO "list+bubger@causal.agency"
STANDARDS
- T. Berners-Lee, L. Masinter, and M. McCahill, Uniform Resource Locators (URL), IETF, RFC 1738, https://tools.ietf.org/html/rfc1738, December 1994.
- N. Borenstein and N. Freed, Format of Internet Message Bodies, IETF, RFC 2045, https://tools.ietf.org/html/rfc2045, November 1996.
- M. Crispin, INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1, IETF, RFC 3501, https://tools.ietf.org/html/rfc3501, March 2003.
- M. Crispin and K. Murchison, Internet Message Access Protocol - SORT and THREAD Extensions, IETF, RFC 5256, https://tools.ietf.org/html/rfc5256, June 2008.
- S. Dorner, K. Moore, and R. Troost, The Content-Disposition Header Field, IETF, RFC 2183, https://tools.ietf.org/html/rfc2183, August 1997.
- L. Esibov, A. Gulbrandsen, and P. Vixie, A DNS RR for specifying the location of services (DNS SRV), IETF, RFC 2782, https://tools.ietf.org/html/rfc2782, February 2000.
- P. Hoffman, L. Masinter, and J. Zawinski, The mailto URL scheme, IETF, RFC 2368, https://tools.ietf.org/html/rfc2368, July 1998.
- B. Leiba, IMAP4 IDLE command, IETF, RFC 2177, https://tools.ietf.org/html/rfc2177, June 1997.
- E. Levinson, Content-ID and Message-ID Uniform Resource Locators, IETF, RFC 2392, https://tools.ietf.org/html/rfc2392, August 1998.
- P. Mockapetris, DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION, IETF, RFC 1035, https://tools.ietf.org/html/rfc1035, November 1987.
- K. Moore, Message Header Extensions for Non-ASCII Text, IETF, RFC 2047, https://tools.ietf.org/html/rfc2047, November 1996.
- M. Nottingham and R. Sayre, The Atom Syndication Format, IETF, RFC 4287, https://tools.ietf.org/html/rfc4287, December 2005.
- J. Snell, Atom Threading Extensions, IETF, RFC 4685, https://tools.ietf.org/html/rfc4685, September 2006.
AUTHORS
June McEnroe <june@causal.agency>
BUGS
Send mail to <list+bubger@causal.agency>.
June 11, 2021 | OpenBSD 7.4 |