Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 stdenv, 4 fetchurl, 5 fetchpatch, 6 pkg-config, 7 gettext, 8 gtk-doc, 9 gobject-introspection, 10 python3, 11 gtk3, 12 cairo, 13 glib, 14 gnome, 15}: 16 17stdenv.mkDerivation rec { 18 pname = "goocanvas"; 19 version = "2.0.4"; 20 21 outputs = [ 22 "out" 23 "dev" 24 "devdoc" 25 ]; 26 27 src = fetchurl { 28 url = "mirror://gnome/sources/goocanvas/2.0/${pname}-${version}.tar.xz"; 29 sha256 = "141fm7mbqib0011zmkv3g8vxcjwa7hypmq71ahdyhnj2sjvy4a67"; 30 }; 31 32 nativeBuildInputs = [ 33 pkg-config 34 gettext 35 gtk-doc 36 python3 37 gobject-introspection 38 ]; 39 buildInputs = [ 40 gtk3 41 cairo 42 glib 43 ]; 44 45 # add fedora patch to fix gcc-14 build 46 # https://src.fedoraproject.org/rpms/goocanvas2/tree/main 47 patches = [ 48 (fetchpatch { 49 name = "goocanvas-2.0.4-Fix-building-with-GCC-14.patch"; 50 hash = "sha256-9uqqC1uKZF9TDz5dfDTKSRCmjEiuvqkLnZ9w6U+q2TI="; 51 url = "https://src.fedoraproject.org/rpms/goocanvas2/raw/e799612a277262a0c6bd03db10a6ee9ca7871b9c/f/goocanvas-2.0.4-Fix-building-with-GCC-14.patch"; 52 }) 53 ]; 54 55 configureFlags = [ 56 "--disable-python" 57 ]; 58 PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_GIRDIR = "$(dev)/share/gir-1.0"; 59 PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR = "$(out)/lib/girepository-1.0"; 60 61 passthru = { 62 updateScript = gnome.updateScript { 63 attrPath = "${pname}${lib.versions.major version}"; 64 packageName = pname; 65 versionPolicy = "odd-unstable"; 66 freeze = true; 67 }; 68 }; 69 70 meta = with lib; { 71 description = "Canvas widget for GTK based on the the Cairo 2D library"; 72 homepage = "https://gitlab.gnome.org/Archive/goocanvas"; 73 license = licenses.lgpl2; 74 maintainers = [ ]; 75 platforms = platforms.unix; 76 }; 77}