47 lines
1.3 KiB
Nix
47 lines
1.3 KiB
Nix
|
{ stdenv
|
||
|
, fetchFromGitHub
|
||
|
, lib
|
||
|
, subproject ? "library" # one of "library", "reader" or "writer"
|
||
|
, zlib, libpng, libtiff
|
||
|
, jabcode
|
||
|
}:
|
||
|
let
|
||
|
subdir = lib.getAttr subproject {
|
||
|
"library" = "jabcode";
|
||
|
"reader" = "jabcodeReader";
|
||
|
"writer" = "jabcodeWriter";
|
||
|
};
|
||
|
in stdenv.mkDerivation rec {
|
||
|
pname = "jabcode-${subproject}";
|
||
|
version = "git-2020-05-13";
|
||
|
src = fetchFromGitHub {
|
||
|
repo = "jabcode";
|
||
|
owner = "jabcode";
|
||
|
rev = "a7c25d4f248078f257b014e31c791bfcfcd083e1";
|
||
|
sha256 = "1c4cv9b0d7r4bxzkwzdv9h651ziq822iya6fbyizm57n1nzdkk4s";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs =
|
||
|
[ zlib libpng libtiff ]
|
||
|
++ lib.optionals (subproject != "library") [ jabcode ];
|
||
|
|
||
|
preConfigure = "cd src/${subdir}";
|
||
|
|
||
|
installPhase = if subproject == "library" then ''
|
||
|
mkdir -p $out/lib
|
||
|
cp build/* $out/lib
|
||
|
'' else ''
|
||
|
mkdir -p $out/bin
|
||
|
cp -RT bin $out/bin
|
||
|
'';
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "A high-capacity 2D color bar code (${subproject})";
|
||
|
longDescription = "JAB Code (Just Another Bar Code) is a high-capacity 2D color bar code, which can encode more data than traditional black/white (QR) codes. This is the ${subproject} part.";
|
||
|
homepage = "https://jabcode.org/";
|
||
|
license = licenses.lgpl21;
|
||
|
maintainers = [ maintainers.xaverdh ];
|
||
|
platforms = platforms.unix;
|
||
|
};
|
||
|
}
|