Julia & graphic enthusiast. Interested in high performance computing, GPUs and machine learning.

Static CairoMakie

Install all dependencies

apt-get update
apt-get install build-essential -y
apt-get install ffmpeg
pkg"up; add PackageCompiler StatsMakie MakieGallery CairoMakie AbstractPlotting ColorBrewer"

Run PackageCompiler:

using PackageCompiler
PackageCompiler.compile_incremental(:CairoMakie, :StatsMakie, :ColorBrewer, force = true);

Make sure system image actually got replaced!

x = PackageCompiler.sysimg_folder("sys.so")
y = unsafe_string(Base.JLOptions().image_file)

# for some reason, compile_incremental(force = true) doesn't always work
# but also doesn't throw any error... Filesystem problems?!

# Please make a backup before replacing your current system image, since it may break your julia install!
if read(x) != read(y)
  cp(x, y, force = true)
@assert read(x) == read(y)

Now one just needs to select `export environment` & save in the runner menu:

After publishing the article, everyone will be able to use the image, or download the docker image with the docker url!