Leafnode is a "real" NNTP server, which means that you can also login from a different computer (via Internet, the local network etc.). Every time you enter a group in your newsreader, your reader sends the information to leafnode and requests it. If the group does not exist, leafnode will create an empty file /var/spool/news/interesting.groups, named like the group. When you run fetch the next time, it will fetch the messages of the group. If a newsgroup has not been visited for a certain time, leafnode will stop to fetch its articles and delete its name in /var/spool/news/interesting.groups. So if you just subscribed to a high traffic newsgroup by accident, you may delete its file there by hand for that you won't have to download all the postings there for the next week.
A week is not enough for you? You want to go on holiday for three weeks and still get news? Unfortunately, there is no option in leafnode to change it. But you can edit the file leafnode.h and recompile it. The #defined constants are TIMEOUT_LONG and TIMEOUT_SHORT, just set the time in seconds up. Another, simpler solution is to define a cron-job that does "touch /var/spool/news/interesting.groups/*" every night.
If you want to get a list of all avaible groups, look into the file /usr/lib/leafnode/groupinfo, where you will find a short description on the group.
If you want to re-read the list of newsgroups from your newsfeed (for example when you want to read a new group), just delete the file /var/spool/news/active.read. Fetch will create it the next time and get the new list. Fetch will also re-read the grouplist from time to time, so you don't have to do it by hand.