1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 fetchpatch,
6
7 gobject-introspection,
8 gtk4,
9 meson,
10 ninja,
11 pkg-config,
12
13 json-glib,
14 libadwaita,
15 libxml2,
16}:
17
18stdenv.mkDerivation {
19 pname = "text-engine";
20 version = "0.1.1-unstable-2024-09-16";
21
22 src = fetchFromGitHub {
23 owner = "mjakeman";
24 repo = "text-engine";
25 rev = "4c26887556fd8e28211324c4058d49508eb5f557";
26 hash = "sha256-0rMBz2s3wYv7gZiJTj8rixWxBjT6Dd6SaINP8kDbTyw=";
27 };
28
29 nativeBuildInputs = [
30 gobject-introspection
31 gtk4
32 meson
33 ninja
34 pkg-config
35 ];
36
37 buildInputs = [
38 libadwaita
39 libxml2
40 ];
41
42 postPatch = ''
43 # See https://github.com/mjakeman/text-engine/pull/42
44 substituteInPlace src/meson.build \
45 --replace-fail "dependency('json-glib-1.0')," ""
46 '';
47
48 meta = {
49 description = "Rich text framework for GTK";
50 mainProgram = "text-engine-demo";
51 homepage = "https://github.com/mjakeman/text-engine";
52 license = with lib.licenses; [
53 mpl20
54 lgpl21Plus
55 ];
56 maintainers = with lib.maintainers; [ foo-dogsquared ];
57 };
58}