{ stdenv, buildNimblePackage, fetchFromGitHub, glib, gobjectIntrospection, gnome3, cairo, pango, librsvg, libnotify }: let oldgtk3 = buildNimblePackage rec { name = "oldgtk3-${version}"; version = "0.1.0"; src = fetchFromGitHub { owner = "StefanSalewski"; repo = "oldgtk3"; rev = "8ad4bc7e790c2c4b01eff9ff4f7d7ecc2cac25e3"; sha256 = "1kfv4cwgfygbxfgnsyzcwvy5l17082zx9vb9kc75zj27qhlq9ygd"; }; }; in buildNimblePackage rec { name = "gintro-${version}"; version = "0.4.17"; src = fetchFromGitHub { owner = "StefanSalewski"; repo = "gintro"; rev = "v${version}"; sha256 = "1cyif60611gig0r65zlgk15rvxyp00dddqcd9bc54xx3znxmygbv"; }; patches = [ ./allow-preinstalled-oldgtk3.patch ]; nimDeps = [ oldgtk3 ]; nativeBuildInputs = [ gobjectIntrospection ]; buildInputs = [ glib gnome3.gdk_pixbuf gnome3.gtk gnome3.gtksourceview gnome3.vte cairo pango librsvg libnotify ]; meta = with stdenv.lib; { description = "High level GObject-Introspection based GTK3 bindings for Nim language"; homepage = https://github.com/StefanSalewski/gintro; license = licenses.mit; maintainers = with maintainers; [ lurchi ]; platforms = platforms.gnu ++ platforms.linux; }; }