# Installation

You can install the development version of `unigd` from GitHub with:

    # install.packages("remotes")
    remotes::install_github("nx10/unigd")

See system requirements for troubleshooting.

## System requirements

`libpng` and X11 are required on unix like systems (e.g. Linux, macOS). `Cairo` is optional on unix like systems to enable PNG, PDF, EPS and PS renderers. `libtiff` is required on unix like systems to enable TIFF renderers.

### macOS

If `libpng` is missing install it via:

    brew install libpng

If `Cairo` is missing install it via:

    brew install cairo

If `libtiff` is missing install it via:

    brew install libtiff

If `X11` is missing the error message will include the text:

    unable to load shared object [...] systemfonts/libs/systemfonts.so [...]

Install `XQuartz`. (see: https://github.com/r-lib/systemfonts/issues/17)

### Linux

For source installation on Linux, the fontconfig freetype2 library is required to install the `{systemfonts}` package, which is a dependency of `unigd`.

#### Debian, Ubuntu, etc.

    apt install libfontconfig1-dev

#### Fedora, CentOS, RHEL, etc.

    dnf install fontconfig-devel

To support additional plot file formats (PDF, EPS, PS) optionally, the `Cairo` library is required.

#### Debian, Ubuntu, etc.

    apt install libcairo2-dev

#### Fedora, CentOS, RHEL, etc.

    dnf install cairo-devel

To support additional TIFF formats optionally, the `libtiff` library is required.

#### Debian, Ubuntu, etc.

    apt install libtiff-dev

#### Fedora, EPEL, etc.

    dnf install libtiff-devel