This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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

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
# 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:

`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

 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.  :-(


Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]