Resources for Developers

Cairo Buildpack

Purpose of this buildpack

This is a buildpack that installs Cairo and its dependencies (Pango, Pixman, FreeType, HarfBuzz, and giflib) into a container image.

All the libs are installable separately using the CAIRO_BUILDPACK_LIBS environment variable.

When used with multi-buildpacks, it enables subsequent buildpacks / steps to any of these libraries.

Set up this buildpack for your application

This buildpack is designed to be used in conjunction with one or more additional buildpacks, thanks to the multi buildpack

When creating a new Scalingo app:

scalingo create <appname>
scalingo env-set BUILDPACK_URL=https://github.com/Scalingo/multi-buildpack.git

cat << EOF > .buildpacks
https://github.com/Scalingo/cairo-buildpack.git
https://github.com/Scalingo/nodejs-buildpack.git
EOF

git push scalingo master

When modifying an existing Scalingo app:

scalingo env-set BUILDPACK_URL=https://github.com/Scalingo/multi-buildpack.git

cat << EOF > .buildpacks
https://github.com/Scalingo/cairo-buildpack.git
https://github.com/Scalingo/nodejs-buildpack.git
EOF

git push scalingo master

Configuration

Without any particular configuration all the libraries will be installed, but you can specify a particular set of libs to install thanks to the CAIRO_BUILDPACK_LIBS environment variable.

Example:

CAIRO_BUILDPACK_LIBS=giflib
CAIRO_BUILDPACK_LIBS=giflib,pixman
CAIRO_BUILDPACK_LIBS=pango,freetype

Contributing to the buildpack

GitHub: Scalingo/cairo-buildpack


mode_edit Suggest edits