106 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			106 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
* Classification scheme for packages
 | 
						|
 | 
						|
- many packages fall under several categories; what matters is the
 | 
						|
  *primary* purpose of a package.  For example, the libxml2 package
 | 
						|
  builds both a library and some tools; but it's a library foremost,
 | 
						|
  so it goes under ./development/libraries. 
 | 
						|
 | 
						|
- when in doubt, refactor.
 | 
						|
 | 
						|
IF it's used to support SOFTWARE DEVELOPMENT:
 | 
						|
 | 
						|
  IF it's a LIBRARY used by other packages:
 | 
						|
    IF it's directly related to GTK:
 | 
						|
      ./development/libraries/gtk+
 | 
						|
    ELSE
 | 
						|
      ./development/libraries
 | 
						|
      (e.g., libxml2)
 | 
						|
  ELSE IF it's a COMPILER:
 | 
						|
    ./development/compilers
 | 
						|
    (e.g., gcc)
 | 
						|
  ELSE IF it's an INTERPRETER:
 | 
						|
    ./development/interpreters
 | 
						|
  ELSE IF it's a development TOOL (or set of):
 | 
						|
    IF it's a PARSER GENERATOR (incl. lexers):
 | 
						|
      ./development/tools/parsing
 | 
						|
      (e.g., bison, flex)
 | 
						|
    ELSE IF it's a BUILD MANAGER:
 | 
						|
      ./development/tools/build-managers
 | 
						|
      (e.g., gnumake
 | 
						|
    ELSE
 | 
						|
      ./development/tools/misc
 | 
						|
      (e.g., binutils)
 | 
						|
  ELSE
 | 
						|
    ./development/misc
 | 
						|
 | 
						|
ELSE IF it's a TOOL (or set of):
 | 
						|
  # a tool is a relatively *small* program, esp. one intented to be
 | 
						|
  # used non-interactively
 | 
						|
 | 
						|
  IF it's for NETWORKING:
 | 
						|
    ./tools/networking
 | 
						|
    (e.g., wget)
 | 
						|
  ELSE IF it's for TEXT PROCESSING:
 | 
						|
    ./tools/text
 | 
						|
    (e.g., diffutils)
 | 
						|
  ELSE IF it's a SYSTEM utility, i.e., something related or essential
 | 
						|
    to the operation of a system:
 | 
						|
    ./tools/system
 | 
						|
    (e.g., init)
 | 
						|
  ELSE IF it's an ARCHIVER (which may include a compression function):
 | 
						|
    ./tools/archivers
 | 
						|
    (e.g., zip, tar)
 | 
						|
  ELSE IF it's a COMPRESSION program:
 | 
						|
    ./tools/compression
 | 
						|
    (e.g., gzip, bzip2)
 | 
						|
  ELSE
 | 
						|
    ./tools/misc
 | 
						|
 | 
						|
ELSE IF it's a SHELL:
 | 
						|
 | 
						|
  ./shells
 | 
						|
 | 
						|
ELSE IF it's a SERVER:
 | 
						|
 | 
						|
  IF it's a HTTP server:
 | 
						|
    ./servers/http
 | 
						|
    (e.g., apache)
 | 
						|
  IF it's a X11 server:
 | 
						|
    ./servers/x11
 | 
						|
    (e.g., xfree86)
 | 
						|
  ELSE
 | 
						|
    ./servers/misc
 | 
						|
 | 
						|
ELSE IF it's a DESKTOP ENVIRONMENT (incl. WINDOW MANAGERS):
 | 
						|
 | 
						|
  ./desktops
 | 
						|
  (e.g., kde, gnome, fvwm)
 | 
						|
 | 
						|
ELSE IF it's an APPLICATION:
 | 
						|
  # a (typically large) program with a distinct user interface,
 | 
						|
  # primarily used interactively
 | 
						|
 | 
						|
  IF it's a VERSION MANAGEMENT system:
 | 
						|
    ./applications/version-management
 | 
						|
  ELSE IF it's for VIDEO playback/etc:
 | 
						|
    ./applications/video
 | 
						|
  ELSE IF it's for GRAPHICS viewing/editing/etc:
 | 
						|
    ./applications/graphics
 | 
						|
  ELSE IF it's for NETWORKING:
 | 
						|
    IF it's a MAILREADER:
 | 
						|
      ./applications/networking/mailreaders
 | 
						|
    IF it's a NEWSREADER:
 | 
						|
      ./applications/networking/newsreaders
 | 
						|
    ELSE
 | 
						|
      ./applications/networking/misc
 | 
						|
  ELSE
 | 
						|
    ./applications/misc
 | 
						|
 | 
						|
ELSE IF it's DATA (i.e., doe not have a straight-forward executable semantics):
 | 
						|
 | 
						|
  IF it's related to SGML/XML processing:
 | 
						|
    IF it's a XML DTD:
 | 
						|
      ./data/sgml+xml/schemas/xml-dtd
 | 
						|
    ELSE IF it's an XSLT stylesheet (okay, these are executable...):
 | 
						|
      ./data/sgml+xml/stylesheets/xslt
 |