The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
Using an X.509 certificate for DataONE authentication on certain versions of Mac OS X can cause the following error:
Error in curl::curl_fetch_memory(url, handle = handle) :
Problem with the local SSL certificate
(Note that it is recommended that you use DataONE authentication tokens instead of an X.509 certificate if possible.)
Changes in the Mac OS X system libraries in OS X Mavericks have taken away support of these X.509 certificates. A workaround to make these certificates usable on Mac OS X with R is to install a version of the curl R package that supports these certificates.
On Mac OS X, the libcurl library can be installed with either Mac Ports package manager or the HomeBrew package manager. The HomeBrew package manager can be significantly faster to install but either one will work provided the directions shown below are followed.
You can check if you have MacPorts installed by entering the following command in a terminal window:
port version
If MacPorts is being used on your system, the following commands can be entered to install a curl package that can read the certificate and allow them to be used by the dataone package for authentication to a DataONE node. In a terminal window enter the commands:
sudo port install curl
Sys.setenv(LIB_DIR="/opt/local/lib")
Sys.setenv(INCLUDE_DIR="/opt/local/include")
install.packages("curl", type="source")
library(curl)
library(dataone)
# Remove the environment variables as they are no longer needed.
Sys.setenv(LIB_DIR="")
Sys.setenv(INCLUDE_DIR="")
At this point you should be able to use X.509 Certificates.
The HomeBrew software can be installed with the following command entered at a terminal window:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Once HomeBrew has been installed, you can get the required curl libraries by entering the command:
brew install curl --with-openssl
brew link curl --force
In the R console enter the commands:
Sys.setenv(LIB_DIR="/usr/local/opt/curl/lib")
Sys.setenv(INCLUDE_DIR="/usr/local/opt/curl/include")
install.packages("curl", type="source")
library(curl)
library(dataone)
# Remove the environment variables as they are no longer needed.
Sys.setenv(LIB_DIR="")
Sys.setenv(INCLUDE_DIR="")
At this point you should be able to use X.509 Certificates.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.