aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/fetchmaildistrib
blob: 00cc19107230abc10071c94d5c23cf42aa140d0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#/bin/bash
#
# fetchmaildistrib --- Distribute central fetchmail knowledge.
#
# The central fetchmail database, /etc/fetchmail, contains all accounts that
# are to be fetched by the root's daemon. Often, a user desires quicker
# access (e.g., when testing some email path). In such cases, the destination
# user (marked as is USER here in the poll lines) should set up a ~/.fetchmailrc
# for himself. This scripts generates such lines from the central file.
#
# By Rick van Rein.

# From stdin, select poll lines for user $1
function selectuser () {
	grep ^poll | grep "is $1 here"
}


for i in `cut -d: -f1 </etc/passwd`
do	homedir=`grep ^$i: /etc/passwd | cut -d: -f6`
	fetchfile=`selectuser $i </etc/fetchmailrc`
	if [ -z "$fetchfile" ]
	then	rm -f $homedir/.fetchmailrc
	else	cp /dev/null $homedir/.fetchmailrc
		chmod go-rwx $homedir/.fetchmailrc
		grep ^defaults /etc/fetchmailrc >>$homedir/.fetchmailrc
		selectuser $i </etc/fetchmailrc >>$homedir/.fetchmailrc
	fi
done
fetchmailconf" /bin/sh wrapper script that executes the actual fetchmailconf.py with the python installation found at configuration time, so that users can still type "fetchmailconf" rather than "python fetchmailconf". - Note that fetchmailconf.py supports a few command line arguments, so if you use local wrapper scripts, be sure they pass on their own arguments properly. Remember to use "$@" (with quotes) in shells, not $*. - There is now a dummy fetchmailconf manual page which will just source (roff's ".so" command) the fetchmail manual page for now. You can of course keep your symlinks in place and ignore this dummy. IF you install the dummy and compress your man pages, be sure to test "man fetchmailconf", on some systems, you'll need to adjust the ".so" command to point to the compressed version.