about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/libplist
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libplist')
-rw-r--r--nixpkgs/pkgs/development/libraries/libplist/default.nix41
1 files changed, 41 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libplist/default.nix b/nixpkgs/pkgs/development/libraries/libplist/default.nix
new file mode 100644
index 000000000000..1f311dda9f02
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libplist/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, autoreconfHook, fetchFromGitHub, pkgconfig, enablePython ? false, python, glib }:
+
+stdenv.mkDerivation rec {
+  pname = "libplist";
+  version = "2.2.0";
+
+  src = fetchFromGitHub {
+    owner = "libimobiledevice";
+    repo = pname;
+    rev = version;
+    sha256 = "1vxhpjxniybqsg5wcygmdmr5dv7p2zb34dqnd3bi813rnnzsdjm6";
+  };
+
+  outputs = ["bin" "dev" "out" ] ++ stdenv.lib.optional enablePython "py";
+
+  nativeBuildInputs = [
+    pkgconfig
+    autoreconfHook
+  ] ++ stdenv.lib.optionals enablePython [
+    python
+    python.pkgs.cython
+  ];
+
+  configureFlags = stdenv.lib.optionals (!enablePython) [
+    "--without-cython"
+  ];
+
+  propagatedBuildInputs = [ glib ];
+
+  postFixup = stdenv.lib.optionalString enablePython ''
+    moveToOutput "lib/${python.libPrefix}" "$py"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A library to handle Apple Property List format in binary or XML";
+    homepage = "https://github.com/libimobiledevice/libplist";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ infinisil ];
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}