1{ lib
2, stdenv
3, fetchurl
4, meson
5, ninja
6, pkg-config
7, gobject-introspection
8, glib
9, gtk3
10, libxklavier
11, wrapGAppsHook3
12, gnome
13}:
14
15stdenv.mkDerivation rec {
16 pname = "libgnomekbd";
17 version = "3.28.1";
18
19 outputs = [ "out" "dev" ];
20
21 src = fetchurl {
22 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
23 sha256 = "ItxZVm1zwAZTUPWpc0DmLsx7CMTfGRg4BLuL4kyP6HA=";
24 };
25
26 nativeBuildInputs = [
27 meson
28 ninja
29 pkg-config
30 wrapGAppsHook3
31 glib
32 gobject-introspection
33 ];
34
35 # Requires in libgnomekbd.pc
36 propagatedBuildInputs = [
37 gtk3
38 libxklavier
39 glib
40 ];
41
42 postInstall = ''
43 # Missing post-install script.
44 glib-compile-schemas "$out/share/glib-2.0/schemas"
45 '';
46
47 passthru = {
48 updateScript = gnome.updateScript {
49 packageName = pname;
50 versionPolicy = "odd-unstable";
51 };
52 };
53
54 meta = with lib; {
55 description = "Keyboard management library";
56 mainProgram = "gkbd-keyboard-display";
57 maintainers = teams.gnome.members;
58 license = licenses.gpl2;
59 platforms = platforms.linux;
60 };
61}