{ stdenv, fetchgit , cmake, pkgconfig, git , boost, miniupnpc, openssl, unbound, cppzmq , zeromq, pcsclite, readline , CoreData, IOKit, PCSC }: assert stdenv.isDarwin -> IOKit != null; with stdenv.lib; stdenv.mkDerivation rec { name = "monero-${version}"; version = "0.12.3.0"; src = fetchgit { url = "https://github.com/monero-project/monero.git"; rev = "v${version}"; sha256 = "1609k1qn9xx37a92ai36rajds9cmdjlkqyka95hks5xjr3l5ca8i"; }; nativeBuildInputs = [ cmake pkgconfig git ]; buildInputs = [ boost miniupnpc openssl unbound cppzmq zeromq pcsclite readline ] ++ optionals stdenv.isDarwin [ IOKit CoreData PCSC ]; cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" "-DBUILD_GUI_DEPS=ON" "-DReadline_ROOT_DIR=${readline.dev}" ] ++ optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF"; hardeningDisable = [ "fortify" ]; meta = { description = "Private, secure, untraceable currency"; homepage = https://getmonero.org/; license = licenses.bsd3; platforms = platforms.all; maintainers = with maintainers; [ ehmry rnhmjoj ]; }; }