PORT-SELFUPDATE(1)

NAME
port-selfupdate - Upgrade MacPorts itself and update the port definition files.

SYNOPSIS

port [-qvdf] selfupdate [--no-sync]

DESCRIPTION

port selfupdate checks for new releases of MacPorts and upgrades it when necessary. selfupdate also updates the local port definitions (the so-called ports tree) to the latest state so you have the latest versions of ports available. This part of the operation corresponds to port-sync(1).

You should regularly run selfupdate to update your local port definitions. Running selfupdate is required to get updated software with bug fixes and new features.

OPTIONS

--no-sync
    Only check for updates - and install if available - for MacPorts itself. Do not update the ports tree.

GLOBAL OPTIONS

Please see the section GLOBAL OPTIONS in the port(1) man page for a description of global port options.

-q
    Suppress status output, be as silent as possible.

-f
    Do not check whether the downloaded MacPorts version is newer than the currently installed one, but always rebuild and reinstall MacPorts. You can use this to downgrade from a beta or development version to the latest release. Note that there is no guarantee that there have not been made incompatible and irreversible changes to MacPorts' internal data structures, making a downgrade impossible.

EXAMPLES

When no new versions are available, selfupdate looks like this:

    $ sudo port selfupdate
    ---> Updating MacPorts base sources using rsync
    MacPorts base version 2.6.0 installed,
    MacPorts base version 2.6.0 downloaded.
    ---> Updating the ports tree
    ---> MacPorts base is already the latest version

If selfupdate detects that a newer version of MacPorts is available, it attempts to update your copy to this version. In that case, the output will be different:

    $ sudo port selfupdate
    ---> Updating MacPorts base sources using rsync
    MacPorts base version 2.3.0 installed,
    MacPorts base version 2.6.0 downloaded.
    ---> Updating the ports tree
    ---> MacPorts base is outdated, installing new version 2.6.0
    Installing new MacPorts release in /opt/local as root:admin; permissions 755

TROUBLESHOOTING

If selfupdate fails, it usually does so in one of two places: The network connection, or the installation of the update.

Network Problems
    MacPorts uses the rsync protocol to update its sources to the latest version. This will fail if you are on a network that blocks TCP connections to the rsync port 873. Talk to your network administrators and ask them to allow connections to port 873 if this happens to you. Alternatively, you can just download a new installer .pkg from macports.org and run that to upgrade your installation.

    Network connection problems might also affect you if you are in a country with US export restrictions. We suggest using one of our other mirrors[1] outside of the US in these cases.

Compilation Problems
    When a problem occurs while building and installing the new MacPorts version, you will see the message

        Error installing new MacPorts base: command execution failed

    To find out what went wrong, re-run selfupdate with the -d flag. This will allow you to see all output generated by the build system. Look for the first occurance of “error”. If you cannot figure out what’s wrong on your own, feel free to ask on the macports-users mailing list[2] and attach the output generated by

        $ sudo port -d selfupdate

SEE ALSO

port(1), port-sync(1)

AUTHORS

    (C) 2014 The MacPorts Project
    Clemens Lang <cal@macports.org>

EXTERNAL REFERENCES

1.  mirrors
    https://trac.macports.org/wiki/Mirrors#MacPortsSource

2.  the macports-users mailing list
    mailto:macports-users@lists.macports.org