{ pkgs, lib, ... }: let version = "10768ce069f5c08e8e4393c494f0c6900922170c"; repo = pkgs.fetchgit { url = "https://git.lain.faith/sorceress/vampysite.git"; rev = version; sha256 = "1lniwqyhj6r3pwwd4qp01yhfxjbwclw5dn58dgf4kk45f9qgniy3"; }; patched_pkgs = import (builtins.fetchTarball "https://github.com/AgathaSorceress/nixpkgs/tarball/image-optim-pack-cleanup") { inherit (pkgs) config; }; jekyll_env = patched_pkgs.bundlerEnv { name = "jekyll_env"; inherit (pkgs) ruby; gemdir = "${repo}/."; }; image_optim_deps = with pkgs; [ pngout advancecomp optipng pngquant jhead jpegoptim jpeg-archive libjpeg ]; in pkgs.stdenv.mkDerivation { inherit version; name = "vampysite"; src = repo; buildInputs = with pkgs; [ jekyll_env # nokogiri dependencies zlib libiconv libxml2 libxslt # jekyll wants a JS runtime nodejs-slim ]; buildPhase = '' export PATH="${lib.escapeShellArg (lib.makeBinPath image_optim_deps)}":$PATH bundle exec jekyll build ''; installPhase = '' mkdir -p $out cp -r _site/* $out/ ''; }