1{ stdenv, fetchurl, jre }:
2stdenv.mkDerivation rec {
3 name = "zxing-${version}";
4 version = "3.1.0";
5 # Maven builds are hard to get right
6 core_jar = fetchurl {
7 url = "http://repo1.maven.org/maven2/com/google/zxing/core/${version}/core-${version}.jar";
8 sha256 = "199l4xvlcpafqn69r3k9qjpqkw9lvkl02hzpm0ackvdhl7vk42zh";
9 };
10 javase_jar = fetchurl {
11 url = "http://repo1.maven.org/maven2/com/google/zxing/javase/${version}/javase-${version}.jar";
12 sha256 = "0fzxvvf5dqyrs5m9rqw4ffm9h1s27bi7q3jb1dam34s80q2rp2zq";
13 };
14 inherit jre;
15 unpackPhase = ''true'';
16 installPhase = ''
17 mkdir -p "$out/lib/java" "$out/bin"
18 cp "${core_jar}" "${javase_jar}" "$out/lib/java"
19 substituteAll "${./java-zxing.sh}" "$out/bin/java-zxing"
20 substituteAll "${./zxing-cmdline-runner.sh}" "$out/bin/zxing-cmdline-runner"
21 substituteAll "${./zxing-cmdline-encoder.sh}" "$out/bin/zxing-cmdline-encoder"
22 substituteAll "${./zxing.sh}" "$out/bin/zxing"
23 chmod a+x "$out/bin"/*
24 cd "$out/lib/java"; for i in *.jar; do mv "$i" "''${i#*-}"; done
25 '';
26 meta = {
27 inherit version;
28 description = ''1D and 2D code reading library'';
29 license = stdenv.lib.licenses.asl20;
30 maintainers = [stdenv.lib.maintainers.raskin];
31 platforms = stdenv.lib.platforms.linux;
32 homepage = https://github.com/zxing/zxing;
33 };
34}