Skip to content

Agent Basics

First, let’s get some terminology out of the way.

The Gnus Agent is said to be unplugged when you have severed the connection to the net (and notified the Agent that this is the case). When the connection to the net is up again (and Gnus knows this), the Agent is plugged.

The local machine is the one you’re running on, and which isn’t connected to the net continuously.

Downloading means fetching things from the net to your local machine. Uploading is doing the opposite.

You know that Gnus gives you all the opportunity you’d ever want for shooting yourself in the foot. Some people call it flexibility. Gnus is also customizable to a great extent, which means that the user has a say on how Gnus behaves. Other newsreaders might unconditionally shoot you in your foot, but with Gnus, you have a choice!

Gnus is never really in plugged or unplugged state. Rather, it applies that state to each server individually. This means that some servers can be plugged while others can be unplugged. Additionally, some servers can be ignored by the Agent altogether (which means that they’re kinda like plugged always).

So when you unplug the Agent and then wonder why is Gnus opening a connection to the Net, the next step to do is to look whether all servers are agentized. If there is an unagentized server, you found the culprit.

Another thing is the offline state. Sometimes, servers aren’t reachable. When Gnus notices this, it asks you whether you want the server to be switched to offline state. If you say yes, then the server will behave somewhat as if it was unplugged, except that Gnus will ask you whether you want to switch it back online again.

Let’s take a typical Gnus session using the Agent.

  • You start Gnus with gnus-unplugged. This brings up the Gnus Agent in a disconnected state. You can read all the news that you have already fetched while in this mode.
  • You then decide to see whether any new news has arrived. You connect your machine to the net (using PPP or whatever), and then hit J j to make Gnus become plugged and use g to check for new mail as usual. To check for new mail in unplugged mode (see Mail Source Specifiers).
  • You can then read the new news immediately, or you can download the news onto your local machine. If you want to do the latter, you press g to check if there are any new news and then J s to fetch all the eligible articles in all the groups. (To let Gnus know which articles you want to download, see Agent Categories).
  • After fetching the articles, you press J j to make Gnus become unplugged again, and you shut down the PPP thing (or whatever). And then you read the news offline.
  • And then you go to step 2.

Here are some things you should do the first time (or so) that you use the Agent.

  • Decide which servers should be covered by the Agent. If you have a mail back end, it would probably be nonsensical to have it covered by the Agent. Go to the server buffer (^ in the group buffer) and press J a on the server (or servers) that you wish to have covered by the Agent (see Server Agent Commands), or J r on automatically added servers you do not wish to have covered by the Agent. By default, no servers are agentized.

  • Decide on download policy. It’s fairly simple once you decide whether you are going to use agent categories, topic parameters, and/or group parameters to implement your policy. If you’re new to gnus, it is probably best to start with a category, See Agent Categories.

    Both topic parameters (see Topic Parameters) and agent categories (see Agent Categories) provide for setting a policy that applies to multiple groups. Which you use is entirely up to you. Topic parameters do override categories so, if you mix the two, you’ll have to take that into account. If you have a few groups that deviate from your policy, you can use group parameters (see Group Parameters) to configure them.

  • Uhm… that’s it.