source: trunk/README @ 3939

Last change on this file since 3939 was 3939, checked in by fkr, 16 years ago

Bug:
Submitted by:
Reviewed by:
Approved by:
Obtained from:

Note about --with-dports-dir

  • Property svn:eol-style set to native
File size: 4.7 KB
Line 
1WHAT IS THE DARWIN PORTS SYSTEM
2
3    DarwinPorts is a software build, install, and packaging infrastructure
4designed to meet the same functionality requirements as the FreeBSD ports
5architecture while maintaining extensibility for future enhancement.
6
7    DarwinPorts currently builds and runs on MacOS X 10.2 (Darwin 6.0) and MacOS X 10.3.
8The system is portable, written in TCL with a limited set of TCL extensions in C.
9
10    The "DarwinPorts User Guide" is available at:
11        http://www.opendarwin.org/projects/darwinports/guide/
12
13    For in-depth documentation on the internals of the ports system
14architecture, refer to base/doc/INTERNALS.
15
16    Please note that DarwinPorts is split into two parts.  The "darwin ports
17infrastructure", which lives in the base/ subdirectory and is the only
18mandatory component of the system, and the "dports" directory which contains
19the actual ported software descriptions.  The latter is optional and can be
20either fetched on demand over the net or a local copy can be used.  See
21documentation on /etc/ports/sources.conf below.
22
23INSTALLATION
24
25    Installation Steps:
26
27        1. cd base/
28           ./configure
29                Switch to the base/ directory and run the configure-script. Optionally
30                parameters can be passed to the configure-script (see below).
31   
32        2. make
33                Run 'make' to compile all necessary software.
34               
35        3. sudo make install
36                Run 'sudo make install' to install DarwinPorts on your system.
37
38        4. [optional] edit /etc/ports/ports.conf
39                The /etc/ports/ports.conf configuration file defines several
40                configuration options for the DarwinPorts infrastructure. If
41                you wish to change installation paths or the location at
42                which various port system specific data is stored, change the
43                following settings:
44
45                portdbpath - Specifies path to store ports system specific data.
46                prefix - Specifies directory in which to install ports
47
48        5. [optional] edit /etc/ports/sources.conf
49                The /etc/ports/sources.conf file lists the location of
50                both local and remote port software hierarchies. If the --with-dports-dir=DIR
51                argument was not specified for the ./configure script, the default dports-tree
52                (darwinports/dports, the copy from which you install) will be added to
53                sources.conf.
54
55    All necessary code and TCL will be compiled and installed as follows:
56        [Mac OS X] /System/Library/Tcl/darwinports1.0
57        [FreeBSD] /usr/local/lib/tcl8.3/darwinports1.0
58            - TCL library for interfacing with the DarwinPorts System
59
60        PREFIX is set to /opt/local but can be overridden by changing
61        directory to the base/ directory and running ./configure
62        manually with a --prefix argument
63
64        $PREFIX/bin/port
65            - Command line port building utility
66        $PREFIX/share/darwinports/
67            - TCL libraries internal to the ports system
68
69        The following files are provided for customization of the system:
70
71        /etc/defaults/ports.conf
72            - System-wide port default settings
73        /etc/ports/ports.conf
74            - User customizable port settings
75        /etc/ports/sources.conf
76            - List of port sources (places to get ports data from)
77
78
79USING THE PORT COMMAND
80
81    If you haven't already, add /opt/local/bin to your path (or $PREFIX/bin
82if you've elected to install DarwinPorts somewhere else).
83
84        If you're unsure how, and using Jaguar (OS X 10.2), add the following
85line to your ~/.cshrc file.  (This also applies if you're using tcsh in
86Panther.)
87
88        set path=($path /opt/local/bin)
89       
90        If you're using Panther (OS X 10.3), add the following line to your
91~/.profile file.  (This also applies if you're using a bourne shell in
92Jaguar.)
93       
94        export PATH=$PATH:/opt/local/bin
95
96    Your changes will not take effect until you have opened a new shell.
97
98    The following command will build and install a port:
99
100        port install <portname>
101
102    To find a specific port, try using "port search".
103
104        port search vi
105
106    Please refer to the port man page for complete documentation on the port
107    command.
108
109    It is also possible to do operations, like building or fetching, for
110    all ports on the system using the portall command.  It takes essentially
111    the same arguments as the port command but operates iteratively on every
112    port in dports/.  When you do a "make clean" from this directory, for
113    example, a "portall clean" is also invoked to completely clean things up.
114
115
116CREATING NEW PORTS
117
118    Ports consist of directory containing both a Portfile and associated
119files. Currently the only bundled files are patch files, and these are likely
120to be kept to a minimum.
121
122    A Portfile consists of valid TCL, evaluated by a TCL interpreter
123instantiated by the DarwinPorts System. Portfiles use extremely straight-
124forward key/value pair syntax, while allowing the author to use the full
125extent of TCL's functionality where necessary.
126
127    To get started, refer to base/doc/exampleport and the portfile(7) man page.
Note: See TracBrowser for help on using the repository browser.