tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
tabula-java: build from source
Enno Richter
2 years ago
20f87f26
757ba80a
+24
-12
1 changed file
expand all
collapse all
unified
split
pkgs
applications
misc
tabula-java
default.nix
+24
-12
pkgs/applications/misc/tabula-java/default.nix
···
1
1
-
{ stdenv, lib, fetchurl, jre, makeWrapper }:
1
1
+
{ lib
2
2
+
, maven
3
3
+
, fetchFromGitHub
4
4
+
, makeWrapper
5
5
+
, jre
6
6
+
}:
2
7
3
3
-
stdenv.mkDerivation rec {
8
8
+
maven.buildMavenPackage rec {
4
9
pname = "tabula-java";
5
10
version = "1.0.5";
6
11
7
7
-
src = fetchurl {
8
8
-
url = "https://github.com/tabulapdf/tabula-java/releases/download/v${version}/tabula-${version}-jar-with-dependencies.jar";
9
9
-
sha256 = "sha256-IWHj//ZZOdfOCBJHnPnKNoYNtWl/f8H6ARYe1AkqB0U=";
12
12
+
src = fetchFromGitHub {
13
13
+
owner = "tabulapdf";
14
14
+
repo = "tabula-java";
15
15
+
rev = "v${version}";
16
16
+
hash = "sha256-lg8/diyGhfkUU0w7PEOlxb1WNpJZVDDllxMMsTIU/Cw=";
10
17
};
11
18
12
12
-
nativeBuildInputs = [ makeWrapper ];
19
19
+
mvnHash = "sha256-yULCBHgctZZU3Deod+nQujssmUy+kgdFdgE3NUuFhOw=";
20
20
+
mvnParameters = "compile assembly:single -Dmaven.test.skip=true";
13
21
14
14
-
dontUnpack = true;
15
15
-
dontBuild = true;
22
22
+
nativeBuildInputs = [ makeWrapper ];
16
23
17
24
installPhase = ''
18
18
-
mkdir -pv $out/share/tabula-java
19
19
-
cp -v $src $out/share/tabula-java/tabula-java.jar
25
25
+
runHook preInstall
20
26
21
21
-
makeWrapper ${jre}/bin/java $out/bin/tabula-java --add-flags "-jar $out/share/tabula-java/tabula-java.jar"
27
27
+
mkdir -p $out/{bin,lib}
28
28
+
cp target/tabula-${version}-jar-with-dependencies.jar $out/lib/tabula.jar
29
29
+
30
30
+
makeWrapper ${jre}/bin/java $out/bin/tabula-java \
31
31
+
--add-flags "-cp $out/lib/tabula.jar" \
32
32
+
--add-flags "technology.tabula.CommandLineApp"
33
33
+
34
34
+
runHook postInstall
22
35
'';
23
36
24
37
meta = with lib; {
···
29
42
programmatically extract tables from PDFs.
30
43
'';
31
44
homepage = "https://tabula.technology/";
32
32
-
sourceProvenance = with sourceTypes; [ binaryBytecode ];
33
45
license = licenses.mit;
34
46
maintainers = [ maintainers.jakewaksbaum ];
35
47
platforms = platforms.all;