noffle(1)

NAME
noffle - Usenet package optimized for dialup connections.

SYNOPSIS
noffle -a | --article <message id>|all
noffle -c | --cancel <message id>
noffle -C | --create <local newsgroup name>
noffle -d | --database
noffle -D | --delete <newsgroup name>
noffle -e | --expire
noffle -f | --fetch [server pattern]
noffle -g | --groups
noffle -h | --help
noffle -l | --list
noffle -m | --modify desc <newsgroup name> <group description>
noffle -m | --modify post <local newsgroup name> (y|n)
noffle -n | --online
noffle -o | --offline
noffle -p | --post
noffle -q | --query groups|desc [server pattern]
noffle -R | --requested
noffle -r | --server
noffle -s | --subscribe-over <group>
noffle -S | --subscribe-full <group>
noffle -t | --subscribe-thread <group>
noffle -u | --unsubscribe <group>

DESCRIPTION
NOFFLE is an Usenet package optimized for low speed dialup Internet connections and few users. The noffle program is used for running and steering of the proxy news server, for retrieving new articles from the remote server and for expiring old articles from the database. NOFFLE can fetch newsgroups in one of the following modes:

full
    fetch full articles,

over
    fetch only article overviews by default. Opening an article marks it for download next time online,

thread
    like over, but download articles full if an article of the same thread already has been downloaded.

NOFFLE also offers limited support for local news groups. Articles posted to these appear in full in the database for the local group(s) immediately. They are expired in the usual way.

If an article is cross-posted to a local group and a remote group, it appears in the local group immediately and in the remote group after the next fetch from the remove server.

Note that NOFFLE cannot exchange the contents of local groups with other news servers.

OPTIONS

-a, --article <message id>|all
    Write article <message id> to standard output. Message Id must contain the leading '<' and trailing '>' (quote the argument to avoid shell interpretation of '<' and '>').
    If "all" is given as message Id, all articles are shown.

-c, --cancel <message id>
    Cancel the article from the database and remove it from the queue of outbound messages if it has not already been sent. Message Id must contain the leading '<' and trailing '>' (quote the argument to avoid shell interpretation of '<' and '>').

-C, --create <local newsgroup name>
    Create a new local newsgroup with the given name. The name should conform to the usual newsgroup naming rules to avoid confusing newsreaders.

-d, --database
    Write the complete content of the article database to standard output.

-D, --delete <newsgroup name>
    Delete the newsgroup with the given name. All articles that only belong to the group are deleted as well.

-e, --expire
    Delete all articles that have not been accessed recently from the database. Should be run regularily from crond(8).
    The default expire period is 14 days. This can be changed and custom expiry periods set for individual newsgroups or sets of newsgroups in /etc/noffle.conf.

-f, --fetch [server pattern]
    Get new newsfeed from the remote servers. Updates the list of the existing newsgroups, fetches new articles overviews or full articles from subscribed groups (see fetchlist ), delivers all posted articles to the remote server, and retrieves all articles marked for download. noffle --fetch should be run in the ip-up script of pppd(8).
     If a server pattern is specified, new articles will only be fetched from matching servers from the list in noffle.conf. Please see noffle.conf (5) for careful seeting of the settings getgroups and omitgroups.

-g, --groups
    List all groups available at remote server.
    Format (fields separated by tabs):
    <name> <server> <first> <last> <remote next> <post allowed> <created> <last access> <desc>

-h, --help
    Print a list of all options.

-l, --list
    List all groups that are presently to be fetched and their fetch mode.
    Format: <groupname> <server> full|thread|over

-m | --modify desc <newsgroup name> <group description>
    Modify the description of the named newsgroup.

-m | --modify post <local newsgroup name> <permission>
    Modify the posting permission on a local newsgroup. <permission> must be either 'y' (yes, posting allowed), 'm' (moderated, posting allowed only if article has 'Approved:' header) or 'n' (no, posting not allowed). Attempts to post to a newsgroup with posting disallowed will be rejected.

-n, --online
    Put NOFFLE to online status. Requested articles or overviews of selected groups are immediately fetched from the remote server. Groups are not automatically subscribed to while in online mode, making online mode ideal for tasting the content of unfamiliar groups without subscribing to them. Should be run in the ip-up script of pppd(8).

-o, --offline
    Put NOFFLE to offline status. Requested articles not already in the database are marked for download. Should be run in the ip-down script of pppd(8).

-p, --post
    Read a news article from standard input and post it. Posting always observes the group post permission flag. If a local group is marked 'm' (moderated), the article must have an 'Approved:' header to be posted.

-q, --query groups|desc [server pattern]
    Query information about all groups from the remote servers and merge it to the groupinfo file. This must be run after installing noffle or sometimes after a change of the remote news server or corruption of the file. It can take some time on slow connections. groups retrieves the list of the existing newsgroups (resets all local article counters), desc retrieves all newsgroup descriptions. If a server pattern is specified, only matching servers from noffle.conf will be queried.

-r, --server
    Run as NNTP server on standard input and standard output. This is intended to be called by inetd(8) and should be registered in /etc/inetd.conf. Error and logging messages are put to the syslogd(8) daemon which is usually configured to write them to /var/log/news. A list of the NNTP commands that are understood by noffle can be retrieved by running the server and typing HELP.

-R, --requested
    List articles that are marked for download. Format: <message-id> <server>

-s, --subscribe-over <group>
    Add group with name <group> to list of groups that are presently to be fetched (in over mode).

-S, --subscribe-full <group>
    Add group with name <group> to list of groups that are presently to be fetched (in full mode).

-t, --subscribe-thread <group>
    Add group with name <group> to list of groups that are presently to be fetched (in thread mode).

-u, --unsubscribe <group>
    Remove group with name <group> from list of groups that are presently to be fetched.

NOTES
If the noffle prgram sees the name under which it is executed is inews, it changes its behaviour to that described in inews(1).

FILES
NOFFLE takes its configuration from a configuration file, by default /etc/noffle.conf. For a description of this file, see noffle.conf(5). NOFFLE keeps all its data files in a spool directory. /var/spool/noffle is the default location.

<spool dir>/fetchlist
    List of newsgroups that are presently to be fetched.

<spool dir>/data/groupinfo.gdbm
    Database with groups in gdbm(3) format.

<spool dir>/data/articles.gdbm
    Database with articles in gdbm(3) format.

<spool dir>/lock/
    Lock files and files indicating online/offline status.

<spool dir>/outgoing/
    Posted articles to be delivered to the remote server.

<spool dir>/overview/
    Text file per group with article overviews.

<spool dir>/requested/
    Message IDs of articles marked for download.

SEE ALSO
inews(1), noffle.conf(5), crond(8), inetd(8), pppd(8)
RFC 977, RFC 1036,
IETF drafts on common NNTP extensions:
http://www.karlsruhe.org/
NOFFLE home page:
http://home.t-online.de/home/markus.enzenberger/noffle.html

AUTHORS
Markus Enzenberger <markus.enzenberger@t-online.de>
Volker Wysk <volker.wysk@student.uni-tuebingen.de>
Jim Hague <jim.hague@acm.org>
Uwe Hermann <uh1763@bingo-ev.de> 1998-2000.