{ stdenv, fetchFromGitHub, boost, cmake, cpp-hocon, curl, leatherman, libyamlcpp, openssl, ruby, utillinux }: stdenv.mkDerivation rec { name = "facter-${version}"; version = "3.7.1"; src = fetchFromGitHub { sha256 = "0v5g7qlqqixgvc2hf9440a8sfh8jvgzynwk5ipcb505hi00ddq7a"; rev = version; repo = "facter"; owner = "puppetlabs"; }; CXXFLAGS = "-fpermissive"; NIX_CFLAGS_COMPILE = "-Wno-error"; NIX_LDFLAGS = "-lblkid"; cmakeFlags = [ "-DFACTER_RUBY=${ruby}/lib/libruby.so" ]; # since we cant expand $out in cmakeFlags preConfigure = "cmakeFlags+=\" -DRUBY_LIB_INSTALL=$out/lib/ruby\""; buildInputs = [ boost cmake cpp-hocon curl leatherman libyamlcpp openssl ruby utillinux ]; enableParallelBuilding = true; meta = with stdenv.lib; { homepage = https://github.com/puppetlabs/facter; description = "A system inventory tool"; license = licenses.asl20; maintainers = [ maintainers.womfoo ]; platforms = platforms.linux; }; }