19 , x11Support? !stdenv.hostPlatform.isDarwin, libXft
20 , withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages
21 , buildPackages, gobject-introspection
25 stdenv.mkDerivation (finalAttrs: {
29 outputs = [ "bin" "out" "dev" ] ++ lib.optional withIntrospection "devdoc";
32 url = with finalAttrs; "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
33 hash = "sha256-ip7tdQIe5zTX/A/fOmXDu6Ud/v5K5RqbQUpgxwstHtg=";
42 glib # for glib-mkenum
45 ] ++ lib.optionals withIntrospection [
53 ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
60 propagatedBuildInputs = [
65 ] ++ lib.optionals x11Support [
70 (lib.mesonBool "documentation" withIntrospection)
71 (lib.mesonEnable "introspection" withIntrospection)
72 (lib.mesonEnable "xft" x11Support)
75 # Fontconfig error: Cannot load default config file
76 FONTCONFIG_FILE = makeFontsConf {
77 fontDirectories = [ freefont_ttf ];
80 # Run-time dependency gi-docgen found: NO (tried pkgconfig and cmake)
81 # it should be a build-time dep for build
84 substituteInPlace docs/meson.build \
85 --replace "'gi-docgen', req" "'gi-docgen', native:true, req"
88 doCheck = false; # test-font: FAIL
91 # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
92 moveToOutput "share/doc" "$devdoc"
96 updateScript = gnome.updateScript {
97 packageName = finalAttrs.pname;
98 # 1.90 is alpha for API 2.
102 pkg-config = testers.hasPkgConfigModules {
103 package = finalAttrs.finalPackage;
109 description = "Library for laying out and rendering of text, with an emphasis on internationalization";
112 Pango is a library for laying out and rendering of text, with an
113 emphasis on internationalization. Pango can be used anywhere
114 that text layout is needed, though most of the work on Pango so
115 far has been done in the context of the GTK widget toolkit.
116 Pango forms the core of text and font handling for GTK.
119 homepage = "https://www.pango.org/";
120 license = licenses.lgpl2Plus;
122 maintainers = with maintainers; [ raskin ] ++ teams.gnome.members;
123 platforms = platforms.unix;