Subject: misc/5599: /usr/contrib and /usr/old do not exist, and are not needed but are in _PATH_STDPATH, hier(7), and /etc/man.conf
To: None <gnats-bugs@gnats.netbsd.org>
From: None <jwise@unicast.com>
List: netbsd-bugs
Date: 06/14/1998 17:00:38
>Number: 5599
>Category: misc
>Synopsis: /usr/contrib and /usr/old do not exist, and are not needed but are in _PATH_STDPATH, hier(7), and /etc/man.conf
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: misc-bug-people (Misc Bug People)
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Tue Jun 16 15:20:00 1998
>Last-Modified:
>Originator: Jim Wise
>Organization:
Unicast Communications, Inc.
>Release: NetBSD-1.3.1
>Environment:
System: NetBSD nevrast.unicast.com 1.3.1 NetBSD 1.3.1 (NEVRAST) #12: Sat Apr 11 23:03:27 PDT 1998 jwise@nevrast.unicast.com:/usr/src/sys/arch/i386/compile/NEVRAST i386 (On a Toshiba Tecra 720, at 31,000 feet, (~10,000 m), in mild turbulence, en route to USENIX)
>Description:
Traditional berkeley systems used /usr/contrib and /usr/old for semi-official packages and
compatibility commands, respectively. With the package system, these are not really needed,
and have been removed. /usr/include/paths.h, however, includes both of these directories in
_PATH_STDPATH, /etc/man.conf searches /usr/contrib/man for man pages, and /usr/contrib is
documented in hier(7). IMHO, this should not be the case. Semi-official packages should be
in the appropriate package collection, and compatibility commands should be in the emulators
package collection (cf /usr/pkgsrc/emulators/compat_1[12]).
>How-To-Repeat:
$ more /usr/include/paths.h
/* All standard utilities path. */
#define _PATH_STDPATH \
"/usr/bin:/bin:/usr/sbin:/sbin:/usr/contrib/bin:/usr/old/bin"
$ man hier
[...]
/usr/ contains the majority of the system utilities and files
[...]
contrib/ packages maintained by groups other than Berkeley
[...]
(/usr/old is not documented)
$more /etc/mk.conf
[...]
_default /usr/{share,pkg,X11R6,X386,X11,X11R4,contrib,gnu,local}/{man,man/old}/
[...]
# Other sections that represent complete man subdirectories.
contrib /usr/contrib/man/
new /usr/contrib/man/
[...]
(man.conf is due for a cleaning in many ways, BTW)
>Fix:
IMHO, /usr/contrib and /usr/old should be removed from:
${BSDSRCDIR}/include/paths.h
${BSDSRCDIR}/man/man7/hier.7
${BSDSRCDIR}/etc/man.conf
>Audit-Trail:
>Unformatted: