BSD 4_3 development
[unix-history] / usr / contrib / nntp / rrn / newsetup
#!/bin/sh
# : newsetup.SH,v 4.3 85/05/01 11:43:05 lwall Exp $
#
# : newsetup.SH,v $
# Revision 4.3 85/05/01 11:43:05 lwall
# Baseline for release with 4.3bsd.
#
export PATH || (echo "OOPS, this isn't sh. Desperation time. I will feed myself to sh."; sh $0; kill $$)
: syntax: newsetup
: System dependencies
: You will want to change the definitions below to reflect the distribution
: areas around you. If you have more areas than this you will need to modify
: the sed below.
locorg="local"
organization="ucb"
city="ba"
state="ca"
cntry="usa"
cont="na"
active="/tmp/active.$$"
dotdir="${DOTDIR-${HOME-$LOGDIR}}"
rm -f $dotdir/.oldnewsrc
echo "Creating .newsrc in $dotdir to be used by news programs."
/usr/local/lib/rn/getactive $active
: NOTE: SED WILL NOT TAKE MORE THAN 10 WFILES, SO BEWARE
sort <$active | sed >/tmp/n.tmp$$ \
-e 's/^\([^ ]*\) .*$/\1:/' \
-e '/^control:/{' \
-e " w /tmp/n.test$$" \
-e ' d' \
-e '}' \
-e '/^junk:/{' \
-e " w /tmp/n.test$$" \
-e ' d' \
-e '}' \
-e '/test:/{' \
-e " w /tmp/n.test$$" \
-e ' d' \
-e '}' \
-e "/^net\./{" \
-e " w /tmp/n.net$$" \
-e ' d' \
-e '}' \
-e "/^mod\./{" \
-e " w /tmp/n.mod$$" \
-e ' d' \
-e '}' \
-e "/^$locorg\./{" \
-e " w /tmp/n.$locorg$$" \
-e ' d' \
-e '}' \
-e "/^$organization\./{" \
-e " w /tmp/n.$organization$$" \
-e ' d' \
-e '}' \
-e "/^$city\./{" \
-e " w /tmp/n.$city$$" \
-e ' d' \
-e '}' \
-e "/^$state\./{" \
-e " w /tmp/n.$state$$" \
-e ' d' \
-e '}' \
-e "/^fa\./{" \
-e " w /tmp/n.fa$$" \
-e ' d' \
-e '}'
sed </tmp/n.tmp$$ >/tmp/n.local$$ \
-e "/^$cntry\./{" \
-e " w /tmp/n.$cntry$$" \
-e ' d' \
-e '}' \
-e "/^$cont\./{" \
-e " w /tmp/n.$cont$$" \
-e ' d' \
-e '}' \
-e "/^to\./{" \
-e " w /tmp/n.to$$" \
-e ' d' \
-e '}' \
-e "/\./{" \
-e " w /tmp/n.misc$$" \
-e ' d' \
-e '}'
if /bin/test -s $dotdir/.newsrc ; then
echo "Saving your current .newsrc as .oldnewsrc..."
mv -f $dotdir/.newsrc $dotdir/.oldnewsrc
fi
: newsrc order determined here
cat \
/tmp/n.local$$ \
/tmp/n.$locorg$$ \
/tmp/n.$organization$$ \
/tmp/n.$city$$ \
/tmp/n.$state$$ \
/tmp/n.$cntry$$ \
/tmp/n.$cont$$ \
/tmp/n.mod$$ \
/tmp/n.net$$ \
/tmp/n.fa$$ \
/tmp/n.misc$$ \
/tmp/n.test$$ \
| uniq >$dotdir/.newsrc
rm -f /tmp/n.to$$ \
/tmp/n.tmp$$ \
/tmp/n.local$$ \
/tmp/n.$locorg$$ \
/tmp/n.$organization$$ \
/tmp/n.$city$$ \
/tmp/n.$state$$ \
/tmp/n.$cntry$$ \
/tmp/n.$cont$$ \
/tmp/n.mod$$ \
/tmp/n.net$$ \
/tmp/n.fa$$ \
/tmp/n.misc$$ \
/tmp/n.test$$ \
/tmp/active.$$
cat <<'EOH'
Done.
If you have never used the news system before, you may find the articles
in net.announce.newuser to be helpful. There is also a manual entry for rn.
To get rid of newsgroups you aren't interested in, use the 'u' command.
Type h for help at any time while running rn.
EOH