Changeset 31985

Dec 13, 2007, 5:14:47 AM (12 years ago)

doc-new/guide/xml/installing.xml: Add details on binary installer's behaviour.

At the request of jmpp, this commit fleshes out what the binary installer does,
particularly after installing MacPorts (i.e. the new postflight tweaking of
environment variables and auto-updating). The details are placed in a "For
advanced users" section so that ordinary users can skip them.

1 edited


  • trunk/doc-new/guide/xml/installing.xml

    r31972 r31985  
    170170        <listitem>
    171           <para>Perform the default “easy” install.</para>
     171          <para>Perform the default “easy” install.  As of MacPorts 1.6,
     172            this will install MacPorts, set up a MacPorts-compatible shell
     173            environment and, if you have a network connection, update the
     174            MacPorts core and ports tree.</para>
     175          <note id="installing.binary.postflight.details">
     176            <title>For advanced users: details of the postflight script</title>
     177            <para>
     178              The "postflight" script bundled with our "pkg" installer is
     179              run by Apple's after MacPorts is installed, in order
     180              to setup a MacPorts compatible shell environment:
     181              <orderedlist>
     182                <listitem>
     183                  <para>The "/opt/local/bin" &amp; "/opt/local/sbin" paths are
     184                    added to the PATH variable if not already there, in order to
     185                    find MacPorts installed programs.</para>
     186                </listitem>
     188                <listitem>
     189                  <para>The "/opt/local/share/man" path is added to the MANPATH
     190                    variable if and only if:
     191                    <itemizedlist>
     192                      <listitem>
     193                        <para>if already exists;</para>
     194                      </listitem>
     195                      <listitem>
     196                        <para>its content is not empty;</para>
     197                      </listitem>
     198                      <listitem>
     199                        <para>the MacPorts path is not already there;</para>
     200                      </listitem>
     201                      <listitem>
     202                        <para>its content does not contain empty components, such
     203                          as "/usr/share/man:", ":/usr/share/man" or
     204                          "/usr/share/man::/usr/X11R6/man".</para>
     205                      </listitem>
     206                    </itemizedlist>
     207                    In all of these cases, helper tools such as 'manpath(1)' or
     208                    'path_helper(8)' (Leopard only) setup the MANPATH directly in
     209                    coordination with the 'man(1)' command, so we avoid
     210                    interfering with that.
     211                  </para>
     212                </listitem>
     214                <listitem>
     215                  <para>The <envar>DISPLAY</envar> environment variable is set
     216                    to ":0" if and only if:
     217                    <itemizedlist>
     218                      <listitem>
     219                        <para>
     220                          It's a Tiger or earlier platform, since on Leopard
     221                          connections to the X11 server are handled in a much
     222                          cleaner fashion by the 'launchd(8)' daemon directly;
     223                        </para>
     224                      </listitem>
     225                      <listitem>
     226                        <para>
     227                          a <envar>DISPLAY</envar> environment variable doesn't
     228                          already exist.
     229                        </para>
     230                      </listitem>
     231                    </itemizedlist>
     232                  </para>
     233                </listitem>
     234              </orderedlist>
     235            </para>
     237            <para>Once all that is done, the script runs the 'selfupdate'
     238              action of the 'port(1)' command to synchronize the MacPorts
     239              installation with the project's rsync server, updating the
     240              ports tree to its latest revision and MacPorts itself to the
     241              latest point release if available.</para>
     242           </note>
    172243        </listitem>
    173244      </orderedlist>
Note: See TracChangeset for help on using the changeset viewer.