about summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/taglib/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules/taglib/default.nix')
-rw-r--r--pkgs/development/ocaml-modules/taglib/default.nix26
1 files changed, 26 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/taglib/default.nix b/pkgs/development/ocaml-modules/taglib/default.nix
new file mode 100644
index 0000000000000..ecd33145614c9
--- /dev/null
+++ b/pkgs/development/ocaml-modules/taglib/default.nix
@@ -0,0 +1,26 @@
+{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, pkg-config, taglib, zlib }:
+
+buildDunePackage rec {
+  pname = "taglib";
+  version = "0.3.9";
+
+  src = fetchFromGitHub {
+    owner = "savonet";
+    repo = "ocaml-taglib";
+    rev = "v${version}";
+    sha256 = "sha256-n8Vv8Vepvhx7anZdWIdBfw+HSQShKWjNe6l0gqRRsSs=";
+  };
+
+  minimalOCamlVersion = "4.05.0"; # Documented version 4.02.0. 4.05.0 actually required.
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ taglib zlib ];
+
+  meta = with lib; {
+    homepage = "https://github.com/savonet/ocaml-taglib";
+    description = "Bindings for the taglib library which provides functions for reading tags in headers of audio files";
+    license = with licenses; [ lgpl21Plus "link-exception" ]; # GNU Library Public License 2 Linking Exception
+    maintainers = with maintainers; [ dandellion ];
+  };
+}