nixpkgs/pkgs/applications/misc/tabula/default.nix
Robert Obryk 2b14eec435 tabula: mark as broken
The resulting executable fails with, among others, the following error:

```
org.jruby.rack.RackInitializationException: load error: /tmp/jetty-0.0.0.0-8080-tabula.jar-_-any-3187750518228613870.dir/webapp/WEB-INF/webapp/tabula_web -- java.lang.reflect.InaccessibleObjectException: Unable to make field public static final int java.util.zip.ZipConstants.ENDSIZ accessible: module java.base does not "opens java.util.zip" to unnamed module @4985cbcb
```

Working it around with `--add-opens` causes it to start, but to fail on any HTTP requests received without producing a useful error message in response or on std{out,err}.
2022-11-23 19:50:39 +01:00

42 lines
1.3 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ lib, stdenv, fetchzip, jre, makeWrapper }:
stdenv.mkDerivation rec {
pname = "tabula";
version = "1.2.1";
src = fetchzip {
url = "https://github.com/tabulapdf/tabula/releases/download/v${version}/tabula-jar-${version}.zip";
sha256 = "0lkpv8hkji81fanyxm7ph8421fr9a6phqc3pbhw2bc4gljg7sgxi";
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -pv $out/share/tabula
cp -v * $out/share/tabula
makeWrapper ${jre}/bin/java $out/bin/tabula --add-flags "-jar $out/share/tabula/tabula.jar"
'';
meta = with lib; {
description = "A tool for liberating data tables locked inside PDF files";
longDescription = ''
If youve ever tried to do anything with data provided to you in PDFs, you
know how painful it is there's no easy way to copy-and-paste rows of data
out of PDF files. Tabula allows you to extract that data into a CSV or
Microsoft Excel spreadsheet using a simple, easy-to-use interface.
'';
homepage = "https://tabula.technology/";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = licenses.mit;
maintainers = [ maintainers.dpaetzel ];
platforms = platforms.all;
broken = true; # on 2022-11-23 this package builds, but produces an executable that fails immediately
};
}