1{
2 lib,
3 cargo,
4 desktop-file-utils,
5 fetchFromGitLab,
6 gtk4,
7 gtksourceview5,
8 libadwaita,
9 libspelling,
10 meson,
11 ninja,
12 pkg-config,
13 rustPlatform,
14 rustc,
15 stdenv,
16 wrapGAppsHook4,
17}:
18
19stdenv.mkDerivation (finalAttrs: {
20 pname = "buffer";
21 version = "0.10.1";
22
23 src = fetchFromGitLab {
24 domain = "gitlab.gnome.org";
25 owner = "cheywood";
26 repo = "buffer";
27 tag = finalAttrs.version;
28 hash = "sha256-AkgmKMMy3tBgJudJ2Mm8LFV+aE0QbviKxgAJEZ9A3cg=";
29 };
30
31 cargoDeps = rustPlatform.fetchCargoVendor {
32 inherit (finalAttrs) src pname version;
33 hash = "sha256-fwXeXaoC/Uh9eMEkRjhpAouxOrlRWX2n2r4pgIe83S0=";
34 };
35
36 nativeBuildInputs = [
37 cargo
38 desktop-file-utils
39 meson
40 ninja
41 pkg-config
42 rustPlatform.cargoSetupHook
43 rustc
44 wrapGAppsHook4
45 ];
46
47 buildInputs = [
48 gtk4
49 gtksourceview5
50 libadwaita
51 libspelling
52 ];
53
54 meta = {
55 description = "Minimal editing space for all those things that don't need keeping";
56 homepage = "https://gitlab.gnome.org/cheywood/buffer";
57 license = lib.licenses.gpl3Plus;
58 mainProgram = "buffer";
59 maintainers = with lib.maintainers; [ michaelgrahamevans ];
60 platforms = lib.platforms.linux;
61 };
62})