The following procedure will install the SP and all its dependencies. Completion of the instructions will result in a functional and loaded but unconfigured SP installed under the /opt/local
file system tree maintained by the MacPorts system.
At this time, only Apache installations in detectable locations that the configure script can locate automatically are usable. In practice this means that the "right" Apache apxs script needs to be in the system path when the port is configured. Either upon release or shortly after, a port variant will be added to specify use of the MacPort-provided Apache package. |
You can find disk images with an installer at http://www.macports.org/ or you can download and build the port software manually from their tarball. After installing it, particularly if you do so from source, you may need to add /opt/local/bin to your shell path.
Once installed, the port software is self updating using the port selfupdate
command.
Normally, it's possible to just install the primary port ("shibboleth") and let it automatically handle dependencies. This won't work in this case because one of the dependencies (curl) has to be installed with a port "variant" to enable SSL support. Ports cannot indicate that a variant of a dependency is required, so you have to install curl yourself first.
All port installations MUST be done as root.
$ sudo -s # port install curl +ssl # port install shibboleth |
You should see a number of packages downloaded and installed for you. Other port commands and options include -v
for a verbose trace of the process, the upgrade
command to get new versions, and uninstall
to remove things.
If you want to build universal binaries (typically meaning both i386 and x86_64 architecture), you can add +universal
to the port installation command.
If you want to use the ODBC storage plugin, you can add +odbc
to the command line and it will ensure that the unixODBC port is installed and build the plugin for you.
<RequestMap>
feature is not needed for use with Apache, but if you must, its use absolutely requires that the UseCanonicalName
Apache directive be set.ServerName
directive in each virtual host is properly set, including overriding the scheme or port as required by any load balancing, proxying, or offloading you may be doing.Restart Apache.
The port install process generates and installs a launchd descriptor to use in starting and monitoring shibd. You can manually start and stop it yourself, or you can use launchctl like so:
launchctl load -F /Library/LaunchDaemons/org.macports.shibd.plist launchctl unload -F /Library/LaunchDaemons/org.macports.shibd.plist |
If you want shibd to start upon boot, run:
launchctl load -Fw /Library/LaunchDaemons/org.macports.shibd.plist |
By default, the Shibboleth module is configured to log information to the local syslog, with a subset also to the Apache error log.
In order to upgrade the installation, run the commands below.
sudo -s port sync port upgrade outdated |