18 , gobject-introspection
25 stdenv.mkDerivation (finalAttrs: {
26 pname = "gtksourceview";
29 outputs = [ "out" "dev" "devdoc" ];
32 inherit (finalAttrs) pname version;
34 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
35 sha256 = "EQ3Uwg3vIYhvv3dymP4O+Mwq1gI7jzbHQkQRpBSBiTM=";
39 # By default, the library loads syntaxes from XDG_DATA_DIRS and user directory
40 # but not from its own datadr (it assumes it will be in XDG_DATA_DIRS).
41 # Since this is not generally true with Nix, let’s add $out/share unconditionally.
42 ./4.x-nix_share_path.patch
54 gtk4 # for gtk4-update-icon-cache checked during configure
65 propagatedBuildInputs = [
66 # Required by gtksourceview-5.0.pc
68 # Used by gtk_source_language_manager_guess_language
81 doCheck = stdenv.isLinux;
87 XDG_DATA_DIRS="$XDG_DATA_DIRS:${shared-mime-info}/share" \
89 xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
90 --config-file=${dbus}/share/dbus-1/session.conf \
91 meson test --no-rebuild --print-errorlogs
97 # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
98 moveToOutput "share/doc" "$devdoc"
102 updateScript = gnome.updateScript {
103 packageName = "gtksourceview";
104 attrPath = "gtksourceview5";
105 versionPolicy = "odd-unstable";
109 passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
112 description = "Source code editing widget for GTK";
113 homepage = "https://wiki.gnome.org/Projects/GtkSourceView";
114 pkgConfigModules = [ "gtksourceview-5" ];
115 platforms = platforms.unix;
116 license = licenses.lgpl21Plus;
117 maintainers = teams.gnome.members;