{ stdenv, fetchFromGitHub, cmake, pkgconfig , wayland, pixman, libxkbcommon, libinput, xcbutilwm, xcbutilimage, libGL , libX11, dbus, wayland-protocols, libdrm, mesa , libpthreadstubs, libXdmcp, libXext, libXfixes , withOptionalPackages ? true, zlib, valgrind, doxygen }: stdenv.mkDerivation rec { pname = "wlc"; version = "0.0.11"; src = fetchFromGitHub { owner = "Cloudef"; repo = "wlc"; rev = "v${version}"; fetchSubmodules = true; sha256 = "1qnak907gjd35hq4b0rrhgb7kz5iwnirh8yk372yzxpgk7dq0gz9"; }; nativeBuildInputs = [ cmake pkgconfig ]; buildInputs = [ wayland pixman libxkbcommon libinput xcbutilwm xcbutilimage libGL libX11 libXfixes dbus wayland-protocols libpthreadstubs libXdmcp libXext libdrm mesa ] ++ stdenv.lib.optionals withOptionalPackages [ zlib valgrind doxygen ]; doCheck = true; checkTarget = "test"; enableParallelBuilding = true; meta = with stdenv.lib; { description = "A library for making a simple Wayland compositor"; homepage = https://github.com/Cloudef/wlc; license = licenses.mit; platforms = platforms.linux; maintainers = with maintainers; [ primeos ]; # Trying to keep it up-to-date. }; }