man incredibly slow because it scans for share directory in PATH??

Linda Walsh cygwin@tlinx.org
Tue Jun 14 22:22:00 GMT 2016


Achim Gratz wrote:
> with the POSIX shells you shouldn't have a MANPATH variable set at all
> unless you did that yourself in one of your configuration files.
---
	Not exactly sure where it came from (looks like an older
version of some cygwin package) but my /etc/profile sets MANPATH
and there are comments in /etc/skel/.bash_profile (and /etc/defaults/etc/skel/.bash_profile).  I see a ".orig" (my vim-
set extension for files I edit - I added some unrelated debug 
stuff that came from my linux system).

	The comments in the skel files, FYI, say:

# Set MANPATH so it includes users' private man if it exists
# if [ -d "${HOME}/man" ]; then
#   MANPATH="${HOME}/man:${MANPATH}"
# fi

	In /etc/profile I see [condensed from original version]:
# base-files version 3.9-3
# WARNING -- IF THIS FILE IS MODIFIED IT WILL NOT BE UPDATED 
# BY THE CYGWIN SETUP PROGRAM.  IT BECOMES YOUR RESPONSIBILITY.
# The latest version as installed by the Cygwin Setup program can
# always be found at /etc/defaults/etc/profile
# Some resources... [...]
# Setup some default paths. Note that this order will allow user 
# installed software to override 'system' software settings.
# If you wish to change the path for all users, it is recommended you edit
#  /etc/bash.bashrc
# If you wish all future users to have some default setup, it is recommended
# you edit /etc/skel/.bashrc
# If you wish to change the path on a user by user basis, it is recommended
# you edit ~/.bashrc
PATH=/usr/local/bin:/usr/bin:/bin:$PATH; export PATH
MANPATH=/usr/local/man:/usr/share/man:/usr/man:$MANPATH; export MANPATH
INFOPATH=/usr/local/info:/usr/share/info:/usr/info:$INFOPATH; export INFOPATH
[...]
-----------------

  As cygwin doesn't use "rpm" or any of the other utils that share that
format, it doesn't create any "<configname>.rpm{new,orig,save}" files that
contain contain new & old versions of config files & give some indication to
the user that a newer install had changes to the config.

  The only thing that is apparent is that some version of /etc/profile
*used* to set MANPATH, but no longer, whereas on my linux box, some distros
have had something like:


MANPATH="${MANPATH:+$MANPATH:}\
`test -x /usr/bin/manpath && /usr/bin/manpath -q`"

has been added for POSIX compatible shells so that "man" can be configured
to pickup system-specific manpath values from /etc/manpath.config.

  BTW, as for POSIX compatibility, before 2002, POSIX's charter
said that its recommendations were "descriptive".  Its purpose
was to allow future programs to be compatible with what was
already there.

 After 2001, or so, the POSIX name changed hands and the new charter 
became "prescriptive" (i.e. it started issuing change requirements
that required existing SW to change if they wanted to remain
POSIX compat.  These days, you need to specify what version of
POSIX (the Portable, _One_ System Interface data eXchange standard)
you are referring to, since the newer the POSIX version, the more
likely it isn't compatible with what you already have or are used
to.

  I.e. it had been intended to apply to new SW being written so
that it would be compatible with what was "out there", but under
new leadership/ownership, was re-chartered to require existing 
SW to make changes that were not backward compatible (thus
breaking the original POSIX's portability guarantees).  So 
sometime after 2000-2001, the new POSIX standard was no 
longer portable to existing systems following the original
standard.  :-(

-l
















--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list