summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorBjørn Forsman <bjorn.forsman@gmail.com>2014-12-25 23:16:20 +0100
committerBjørn Forsman <bjorn.forsman@gmail.com>2014-12-30 14:00:37 +0100
commit7f06428544897f9064db5520433393a8cb16a72f (patch)
tree5121380ff24a257244b03cf7f0f69bbf32387711 /pkgs
parentcd1321be5365cd010a647ba4b3fc05ffad779fb6 (diff)
downloadnixlib-7f06428544897f9064db5520433393a8cb16a72f.tar
nixlib-7f06428544897f9064db5520433393a8cb16a72f.tar.gz
nixlib-7f06428544897f9064db5520433393a8cb16a72f.tar.bz2
nixlib-7f06428544897f9064db5520433393a8cb16a72f.tar.lz
nixlib-7f06428544897f9064db5520433393a8cb16a72f.tar.xz
nixlib-7f06428544897f9064db5520433393a8cb16a72f.tar.zst
nixlib-7f06428544897f9064db5520433393a8cb16a72f.zip
xidel: new package
Command line tool to download and extract data from html/xml page.

http://videlibri.sourceforge.net/xidel.html
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/tools/text/xidel/default.nix51
-rw-r--r--pkgs/top-level/all-packages.nix1
2 files changed, 52 insertions, 0 deletions
diff --git a/pkgs/tools/text/xidel/default.nix b/pkgs/tools/text/xidel/default.nix
new file mode 100644
index 000000000000..89adcc75b195
--- /dev/null
+++ b/pkgs/tools/text/xidel/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchurl, dpkg, patchelf }:
+
+stdenv.mkDerivation rec {
+  name = "xidel-${version}";
+  version = "0.8.4";
+
+  ## Source archive lacks file (manageUtils.sh), using pre-built package for now.
+  #src = fetchurl {
+  #  url = "mirror://sourceforge/videlibri/Xidel/Xidel%20${version}/${name}.src.tar.gz";
+  #  sha256 = "1h5xn16lgzx0s94iyhxa50lk05yf0af44nzm5w5k57615nd82kz2";
+  #};
+
+  src =
+    if stdenv.system == "x86_64-linux" then
+      fetchurl {
+        url = "mirror://sourceforge/videlibri/Xidel/Xidel%20${version}/xidel_${version}-1_amd64.deb";
+        sha256 = "0gq95ag2661hsw8b7ii6z07ian832cz8g21lvq2cvps4a80ql1gi";
+      }
+    else if stdenv.system == "i686-linux" then
+      fetchurl {
+        url = "mirror://sourceforge/videlibri/Xidel/Xidel%20${version}/xidel_${version}-1_i386.deb";
+        sha256 = "07yk5sk1p4jm0jmgjwdm2wq8d2wybi1wkn1qq5j5y03z1pdc3fi6";
+      }
+    else throw "xidel is not supported on ${stdenv.system}";
+
+  buildInputs = [ dpkg patchelf ];
+
+  unpackPhase = ''
+    dpkg-deb -x ${src} ./
+  '';
+
+  buildPhase = "true";
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    cp -a usr/* "$out/"
+    interpreter="$(echo ${stdenv.glibc}/lib/ld-linux*)"
+    patchelf --set-interpreter "$interpreter" "$out/bin/xidel"
+    patchelf --set-rpath "${stdenv.lib.makeLibraryPath [stdenv.glibc]}" "$out/bin/xidel"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Command line tool to download and extract data from html/xml pages";
+    homepage = http://videlibri.sourceforge.net/xidel.html;
+    # source contains no license info (AFAICS), but sourceforge says GPLv2
+    license = licenses.gpl2;
+    # more platforms will be supported when we switch to source build
+    platforms = [ "i686-linux" "x86_64-linux" ];
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 2cb3ea834d92..7490092e29dd 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4320,6 +4320,7 @@ let
       inherit fetchurl stdenv cabextract;
     });
 
+  xidel = callPackage ../tools/text/xidel { };
 
   ### DEVELOPMENT / TOOLS