[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Linux/Debian documentation suggestion [Reply to many replies+attempt to elaborate]



This mail is a combined response to:
Douglas Allan Tutty
Johannes Wiedersich
Steve Greenland
The Fungi
Michelle Konzack

Copied answer from Debian Oracle.

-

Glenn Moeller-Holst wrote:

Johannes Wiedersich:
Hi Glenn,
please don't cross post.

Glenn:
I did think about it - and I think I did the right thing then. I will normally
avoid in the future (after this response).

Glenn:
Argumentation:
1) I first read the names of debian and linux newsgroups/mailing lists.
2) I thought about posting only to "linux.debian.doc", because I thought it was
a documentation issue. Seeing a low number of posts, it could be I would not
get much response here - but I was not sure.
3) Therefore I searched for other groups/mailing lists and it seemed that
"linux.debian.user" was very active and because I thought there might be a
developement suggestion I also posted to "linux.debian.devel".

Glenn:
I have removed maillist: "linux.debian.doc" from this mail because all the
persons that posted here also posted in other lists. I have cross posted to
"linux.debian.user" to respond to: Johannes Wiedersich and Douglas Allan Tutty.

 > This Linux/Debian documentation suggestion, regards Linux and
 > applications commands.
 >
 > It is proposed that the kernel and applications packets (.deb, .rpm)
 > includes (or has the possibilty to include) documentation about the
 > package commands. Maybe in many languages like Mac OS X. Mac OS X has
 > each language text in each data-fork.

Johannes Wiedersich:
There are no rpm's in debian.

Glenn:
I know, but the idea was that more than the Debian package system might
implement it.

Johannes Wiedersich:
Almost all debian packages have man pages. They do exist in different
languages. If you miss something follow the advice in
'man 7 undocumented'

Steve Greenland:
They do. Have you looked? Some packages with large documentation sets
distribute them as a seperate package, the documentation package usually
has a name in the form "<package>-doc". Some packages lack upstream
documentation; we cannot distribute what has not been written. But the
vast majority of packages have a man page for each command.

Glenn:
I know about man-pages.

 Purposes:
 > *When "I" is in the catalog "/var/log" - what commands can I use here?
 > *Which commands is occluded by others at "/var/log"?
 > *A command "xxy" at "/var/log" - which package is responsible? (Am I
 > using the right package command?)

Steve Greenland:
All three of these questions show a lack of understanding of the PATH
variable. Unless "." is in your PATH (highly discouraged), your current
working directory is irrelevant. Try "which foo" to locate what will be
executed for "foo", and 'dpkg -S /usr/bin/foo' to locate the package
containing it.

Glenn:
I have now tried it:
pc:/# which sudo
/usr/bin/sudo
pc:/# dpkg -S /usr/bin/sudo
sudo: /usr/bin/sudo
pc:/#
Another try:
pc:/# which vi
/usr/bin/vi
pc:/# dpkg -S /usr/bin/vi
dpkg: /usr/bin/vi ikke fundet. ("ikke fundet" in english: Not found)
pc:/#
Another try:
pc:/# which wireshark
/usr/bin/wireshark
pc:/# dpkg -S /usr/bin/wireshark
wireshark: /usr/bin/wireshark
pc:/#

I conclude: If it start with / or dpkg it is not in a package - maybe it then is
in the kernel?

 > Purposes:
 > *When "I" is in the catalog "/var/log" - what commands can I use here?

Johannes Wiedersich:
/var/log is not a catalog. It is the location of log files.

Johannes Wiedersich:
You may use any command in any directory.

Glenn:
Here are some examples of what would be nice:
pc:/# sud?
bash: sud?: command not found
pc:/# sud*
bash: sud*: command not found
pc:/#

Glenn:
Instead of "command not found" it could have responded:
pc:/# sud*
More than one command found:
sudo
suddock
...
pc:/#

 > *Which commands is occluded by others at "/var/log"?

Johannes Wiedersich:
??????

Michelle Konzack:
???

If package xxy was installed with support of the command "unzip" - and later
package xxx was installed with support of the command "unzip".
What command gets execute here:
pc:/#unzip ...
Is it xxy:unzip or xxx:unzip?

 > *If I deinstall "this" package - which commands are then lost?

Johannes Wiedersich:
Try
$ dpkg -L <packagename> |grep bin/
That might not be exhaustive, but it should give you a hint.

Steve Greenland:
Dpkg -L.

Michelle Konzack:
dpkg -L <package> |grep bin/

Glenn:
pc:/# dpkg -L gzip | grep bin/
/bin/gzip
/bin/gzexe
/bin/zdiff
/bin/zgrep
/bin/zforce
/bin/zless
/bin/zmore
/bin/znew
/bin/gunzip
/bin/zcat
/bin/zcmp
/bin/zegrep
/bin/zfgrep
/bin/uncompress
pc:/#

Glenn:
That works very nice - thanks.

 > *A command "xxy" at "/var/log" - which package is responsible? (Am I
 > using the right package command?)

Johannes Wiedersich:
???????

Michelle Konzack:
???

Glenn:
I hope you can see what I am trying to do. I try to search all packages for
command zgrep.

Glenn:
pc:/# dpkg -L * | grep bin/ | grep zgrep
Pakken 'bin' er ikke installeret.
Pakken 'boot' er ikke installeret.
Pakken 'cdrom' er ikke installeret.
Pakken 'dev' er ikke installeret.
Pakken 'etc' er ikke installeret.
Pakken 'home' er ikke installeret.
Pakken 'initrd' er ikke installeret.
Pakken 'initrd.img' er ikke installeret.
Pakken 'initrd.img.old' er ikke installeret.
Pakken 'lib' er ikke installeret.
Pakken 'lib64' er ikke installeret.
Pakken 'lost+found' er ikke installeret.
Pakken 'media' er ikke installeret.
Pakken 'mnt' er ikke installeret.
Pakken 'opt' er ikke installeret.
Pakken 'proc' er ikke installeret.
Pakken 'root' er ikke installeret.
Pakken 'sbin' er ikke installeret.
Pakken 'selinux' er ikke installeret.
Pakken 'srv' er ikke installeret.
Pakken 'sys' er ikke installeret.
Pakken 'tmp' er ikke installeret.
Pakken 'usr' er ikke installeret.
Pakken 'var' er ikke installeret.
Pakken 'vmlinuz' er ikke installeret.
Pakken 'vmlinuz.old' er ikke installeret.
Brug dpkg --info (= dpkg-deb --info) til at undersøge arkivfiler,
og dpkg --contents (= dpkg-deb --contents) til at vise deres indhold.
pc:/#

But I am also interested in finding all perl or other script commands that other
or I have made and that is accessible at the command prompt.

 > The "man" and "info" documentation should (with time) be included in the
 > package. Why should I search the net for command documentations? The
 > system should supply the right documentation.

Johannes Wiedersich:
It is. If you spot something that is missing please consider filing a
bug report.

Johannes Wiedersich:
It is a typical mistakes of people new to debian to *first* search the net for
documentation. Most information is on your system already or can be installed
with little effort. I use the net as last resort, for special cases, but most
information I need is part of my debian installation. (see below)

 > Have this feature-idea not occured to others?

Johannes Wiedersich:
Yes, there is provision for all your suggestions in debian. If something is
missing it is either by accident or noone was kind enough to spend some time to
get it done.

 > A script file should document which "commands-pools" is required. Before
 > execution of a script, the system should check these requirement.

Johannes Wiedersich:
What do you mean by "commands-pools"? If you are talking about
dependencies for other programs, this was about the first thing ever to be
implemented in debian IIRC.

Glenn:
What could be nice is that if someone has made major shell-script calling some
perl-script commands, then some interpreter check to see if the written
commands exist before executing the script file command so the interpreter does
not stop executing half in the script.

Johannes Wiedersich:
You are aware that each package in debian has its documentation in
/usr/share/doc/<packagename> ?
(Some have large docs in /usr/share/doc/<packagename>-doc to be
installed seperately)?

Johannes Wiedersich:
Other packages that you might find interesting include
debian-reference-en
doc-linux-html (about 68 MB of html-pages)
or doc-linux-txt (about 9.7 MB of ascii text to read!  :-)

-

On Tue, Apr 17, 2007 at 08:25:34PM +0200, Glenn Moeller-Holst wrote:
 > *If I deinstall "this" package - which commands are then lost?
...
 > *If I want or need command xxzz, which packages can give me that?

Douglas Allan Tutty:
apt-file is a system that creates a database of all files installed by all
packages in the debian repository irrespective of their install status on your
system.  If you want command foo you can apt-file foo and it will tell you
which packages include a file foo.  If you want to limit it to /bin/foo then
you apt-file /bin/foo.

Steve Greenland:
You'll need to explore the packages website.

The Fungi:
Or try out 'apt-file search xxzz' if you're so inclined (after
installing the apt-file package and updating it, of course).

Michelle Konzack:
apt-file search <command>

On ke, 2007-04-18 at 14:31 -0500, Steve Greenland wrote:
 > apt-file (0.2.0-1) unstable; urgency=low
 >
 >   * Initial Release.
 >
 >  -- Sebastien J. Gross <seb@sjgross.org>  Sat, 13 Oct 2001 21:36:47 +0200
 >
 > I've been living without this for 5+ years!?! How come no one told me
 > about this?

Debian Oracle:
The Debian Oracle is mighty glad you asked that question! It's about
time someone did.

-

 *If a given command is in some sense considered obsolete, which
 > commands is then endorced?

Steve Greenland:
The package description (apt-cache show foo) or documentation
(/usr/share/doc/foo) may provide recommendations.

"apt-cache show foo" work at the package - not at command level, but is a good
one to remember.

Michelle Konzack:
???

 The "man" and "info" documentation should (with time) be included in
 > the package. Why should I search the net for command documentations?
 > The system should supply the right documentation.

Michelle Konzack:
The Documentation IS already there!

 Have this feature-idea not occured to others?

Steve Greenland:
It has, long ago. Have you actually looked for the documentation
included in most packages?

Michelle Konzack:
What are you talking about?

 > Optional more suggestion:
 >
 > A script file should document which "commands-pools" is required.

Steve Greenland:
The script's package should (and most often does) "Depend" on required packages.
I've no idea what a "commands-pool" is. If the script is not packaged, Debian
can hardly enforce requirements on it.

Michelle Konzack:
???

Michelle Konzack:
If you install a debian package, all nessesary
IS already there, including the depends...

Michelle Konzack:
Are you working with LFS (Linux-From-Scratch) and never tried Debian?

I am not the most experienced Debian-user. I have made approx. 5 installation -
my latest is Etch. From an end-user standpoint it is the best Debian I have
used.

kind regards,

Glenn



Reply to: