How to write a good README

I guess everyone has seen a README file, but I would like the definitive guide on how to write an excellent README file with the least amount of energy spent on it.

  • What’s a README file?
  • What should I write in it?
  • How exactly should I format it?

Side note:

As an example that satisfies “OMG this is an excellent README!” and
“OMG this README is useless”, I posted a link to gnome-cups-manager’s
README as a comment. The comment is now removed probably due to dead
link so I copied the content to this
gist
.

How to write a good README