diff --git a/pkgs/development/libraries/jabcode/default.nix b/pkgs/development/libraries/jabcode/default.nix new file mode 100644 index 000000000000..c875e4a39435 --- /dev/null +++ b/pkgs/development/libraries/jabcode/default.nix @@ -0,0 +1,46 @@ +{ 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; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e13f7d203099..57536a609d87 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20594,6 +20594,16 @@ in j4-dmenu-desktop = callPackage ../applications/misc/j4-dmenu-desktop { }; + jabcode = callPackage ../development/libraries/jabcode { }; + + jabcode-writer = callPackage ../development/libraries/jabcode { + subproject = "writer"; + }; + + jabcode-reader = callPackage ../development/libraries/jabcode { + subproject = "reader"; + }; + jabref = callPackage ../applications/office/jabref { }; jack_capture = callPackage ../applications/audio/jack-capture { };