nixpkgs/pkgs
Eelco Visser 4e0ab72b67 Nix expression for ocaml compiler.
- The package has a non-standard build interface;
  fixed with hooks for genericBuild
- The graph library requires x11 and the configure
  script looks in absolute directory paths to find
  X11. Fixed by using patched configure script from
  which the absolute paths have been removed. As
  a consequence the graph library is not build until
  we have X11 support in Nix.


svn path=/nixpkgs/trunk/; revision=1188
2004-07-28 10:08:31 +00:00
..
applications * Finally a real web browser! 2004-07-26 10:33:58 +00:00
build-support * gcc-wrapper: inherit gcc's name by default. 2004-07-05 12:00:19 +00:00
data/sgml+xml * Scrollkeeper requires DocBook XML 4.2 (not 4.3). 2004-04-08 14:06:15 +00:00
development Nix expression for ocaml compiler. 2004-07-28 10:08:31 +00:00
games * Unreal Tournament 2004 Demo. Also a binary-only component. 2004-06-09 18:06:29 +00:00
misc * Ugh. Typo. 2004-04-21 11:12:45 +00:00
os-specific/linux * Updated some more packages. However, bittorrent and vlc don't work 2004-04-02 15:36:14 +00:00
servers * Remove trivial builders. 2004-03-29 17:23:01 +00:00
shells/bash * Fix brokenness due to automatic transformations. 2004-03-30 12:37:17 +00:00
stdenv * Allow a build to finish "succesfully" as far as Nix is concerned 2004-07-12 12:34:02 +00:00
system Nix expression for ocaml compiler. 2004-07-28 10:08:31 +00:00
test * Ensure that when building gcc, libstdc++ is linked against the 2004-04-04 22:02:41 +00:00
tools * Use a mirror (losser), since gnugrep-2.5.1 has been removed from the 2004-07-18 21:16:45 +00:00
BUGS * Added rte (real-time encoder) library. 2004-06-21 20:41:32 +00:00
README * Fixed Stratego. 2004-04-01 16:02:53 +00:00
STABLE * The contents of this file determines whether to build a stable (`1') 2004-04-27 10:50:05 +00:00
TODO * Add write permission to sources copied from the store. 2004-07-11 16:32:34 +00:00
VERSION * Bump version number. 2004-05-03 14:36:37 +00:00

* 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

ELSE IF it's a GAME:

  ./games

ELSE:

  ./misc