I'm going through this book to try and learn Linux and hit a few snags in Chapter 2. In case it matters I'm running Debian 9 in a virtual machine.

At the part where the author introduces us to the info program (and tell us to issue info info command) my output is very different from the text book. I get that it's probably because the program has changed since the time the text was written, but I'm hoping someone can confirm my understanding of what I'm looking at...

At the top of what is displayed on my screen it says:

File: dir,             Node: Top,            This is the top of the info tree.

Which is clearly not what the text was trying to show me (scroll to around the middle of this page). Has the "section" (or "file" in this case) 'info.info' been removed all together and replaced with a kind "table of contents" for all the information the info program has to offer?

  • did you type info info as directed? Or did you type info? – ctrl-alt-delor Dec 21 '18 at 20:30
  • info info as per the textbook. I've been using the info program while working on other stuff and have found that it happens when trying to search some other programs as well. I think if a program isn't installed on my machine it just defaults to the main info page? – J-Walk Dec 22 '18 at 20:07

It sounds as if the operating system was installed without the non-free repo. Quite often, answers to questions like these are answered in the errata-type documentation located in /usr/share/doc.

According to the package documentation in /usr/share/doc/info/README.Debian:

This package does not contain the info documentation of info and texinfo, as they are licensed under the GNU Free Document License with Cover Texts, which is considered as non-free in Debian.

From this good information, we can glean that info's documentation was not installed because it is considered non-free. Combine this knowledge with the knowledge that non-free is the long-standing name of a repo called non-free.

For example, the following line in /etc/apt/sources.list shows that the non-free repo is not used.

deb http://ftp.us.debian.org/debian/ stretch main contrib

To include the non-free repo, specify it as follows. (This just illustrates where to specify the repo; the contrib portion is not required. Deduce the right line if the codename changes from stretch.)

deb http://ftp.us.debian.org/debian/ stretch main contrib non-free

One might use sudo pico /etc/apt/sources.list to edit the file.

After the use of the non-free repo has been specified, update and install it.

sudo apt-get update
sudo apt-get install texinfo-doc-nonfree

What you are seeing is what info does if it does not have its own doco present on the system.

As explained in /usr/share/doc/info/README.Debian that you will find on your system:

This is an intentional Debian omission. The GNU doco is licensed in a way that Debian people consider to not be free, because it has invariant sections, and it is thus not included in the Debian texinfo package and has not been since Debian people systematically removed such non-free doco from the project back in the middle 2000s.

You must configure APT to include non-free packages and install the texinfo-doc-nonfree package.

Further reading

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.