gnu: Add external-program.
[jackhill/guix/guix.git] / gnu / packages / aidc.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2014 John Darringon <jmd@gnu.org>
3 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
4 ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
5 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
6 ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
7 ;;;
8 ;;; This file is part of GNU Guix.
9 ;;;
10 ;;; GNU Guix is free software; you can redistribute it and/or modify it
11 ;;; under the terms of the GNU General Public License as published by
12 ;;; the Free Software Foundation; either version 3 of the License, or (at
13 ;;; your option) any later version.
14 ;;;
15 ;;; GNU Guix is distributed in the hope that it will be useful, but
16 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 ;;; GNU General Public License for more details.
19 ;;;
20 ;;; You should have received a copy of the GNU General Public License
21 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
22
23 (define-module (gnu packages aidc)
24 #:use-module (gnu packages)
25 #:use-module ((guix licenses) #:prefix license:)
26 #:use-module (guix packages)
27 #:use-module (guix download)
28 #:use-module (guix git-download)
29 #:use-module (gnu packages autotools)
30 #:use-module (gnu packages imagemagick)
31 #:use-module (gnu packages glib)
32 #:use-module (gnu packages gtk)
33 #:use-module (gnu packages image)
34 #:use-module (gnu packages pkg-config)
35 #:use-module (gnu packages python)
36 #:use-module (gnu packages python-xyz)
37 #:use-module (gnu packages qt)
38 #:use-module (gnu packages video)
39 #:use-module (guix build-system gnu))
40
41
42 (define-public barcode
43 (package
44 (name "barcode")
45 (version "0.99")
46 (source (origin
47 (method url-fetch)
48 (uri (string-append "mirror://gnu/barcode/barcode-"
49 version ".tar.xz"))
50 (sha256
51 (base32
52 "1indapql5fjz0bysyc88cmc54y8phqrbi7c76p71fgjp45jcyzp8"))))
53 (build-system gnu-build-system)
54 (synopsis "Convert text strings to printed bars in various standards")
55 (description "GNU Barcode is a flexible tool to produce printed barcodes
56 from text strings. It supports a variety of encoding standards and sizing
57 measurements. Barcodes can be output in PostScript or Encapsulated PostScript
58 formats.")
59 (license license:gpl3+)
60 (home-page "https://www.gnu.org/software/barcode/")))
61
62 (define-public qrencode
63 (package
64 (name "qrencode")
65 (version "4.0.2")
66 (source (origin
67 (method url-fetch)
68 (uri (string-append
69 "https://fukuchi.org/works/qrencode/qrencode-" version
70 ".tar.bz2"))
71 (sha256
72 (base32
73 "1d2q5d3v8g3hsi3h5jq4n177bjhf3kawms09immw7p187f6jgjy9"))))
74 (build-system gnu-build-system)
75 (inputs `(("libpng" ,libpng)))
76 (native-inputs `(("pkg-config" ,pkg-config)))
77 (synopsis "Encode data into a QR Code symbol")
78 (description "Libqrencode is a C library for encoding data in a QR Code
79 symbol, a kind of 2D symbology that can be scanned by handy terminals such as
80 a mobile phone with CCD. The capacity of QR Code is up to 7000 digits or 4000
81 characters, and is highly robust.")
82 (license license:lgpl2.1+)
83 (home-page "https://fukuchi.org/works/qrencode")))
84
85 (define-public libdmtx
86 (package
87 (name "libdmtx")
88 (version "0.7.5")
89 (source
90 (origin
91 (method git-fetch)
92 (uri (git-reference
93 (url "https://github.com/dmtx/libdmtx.git")
94 (commit (string-append "v" version))))
95 (file-name (git-file-name name version))
96 (sha256
97 (base32 "0wk3fkxzf9ip75v8ia54v6ywx72ajp5s6777j4ay8barpbv869rj"))))
98 (build-system gnu-build-system)
99 (arguments
100 ;; XXX Test suite is broken: https://github.com/dmtx/libdmtx/issues/22
101 `(#:tests? #f))
102 (native-inputs
103 `(("autoconf" ,autoconf)
104 ("automake" ,automake)
105 ("libtool" ,libtool)
106 ("pkg-config" ,pkg-config)))
107 (home-page "https://github.com/dmtx")
108 (synopsis "Library for reading and writing Data Matrix 2D barcodes")
109 (description "libdmtx is software for reading and writing Data Matrix 2D
110 barcodes of the modern ECC200 variety. libdmtx is a shared library, allowing
111 C/C++ programs to use its capabilities without restrictions or overhead.")
112 (license license:bsd-3)))
113
114 (define-public zbar
115 (package
116 (name "zbar")
117 (version "0.23")
118 (source
119 (origin
120 (method url-fetch)
121 (uri (string-append "https://linuxtv.org/downloads/zbar/zbar-"
122 version
123 ".tar.bz2"))
124 (sha256
125 (base32
126 "0bmd93a15qpgbsq9c9j33qms18rdrgz6gbc48zi6z9w5pvrvi7z9"))))
127 (build-system gnu-build-system)
128 (arguments
129 '(#:configure-flags (list "--with-gtk=auto"
130 "--with-python=auto"
131 (string-append "--with-dbusconfdir="
132 (assoc-ref %outputs "out")
133 "/etc"))))
134 (native-inputs
135 `(("glib" ,glib "bin")
136 ("pkg-config" ,pkg-config)))
137 (inputs
138 `(("gobject-introspection" ,gobject-introspection)
139 ("gtk+" ,gtk+)
140 ("imagemagick" ,imagemagick)
141 ("libjpeg" ,libjpeg-turbo)
142 ("python" ,python)
143 ("qtbase" ,qtbase)
144 ("qtx11extras" ,qtx11extras)
145 ("v4l-utils" ,v4l-utils)))
146 (synopsis "Bar code reader")
147 (description
148 "ZBar can read barcodes from various sources, such as video streams,
149 image files, and raw intensity sensors. It supports EAN-13/UPC-A, UPC-E,
150 EAN-8, Code 128, Code 93, Code 39, Codabar, Interleaved 2 of 5, QR Code and SQ
151 Code. Included with the library are basic applications for decoding captured
152 bar code images and using a video device (e.g. webcam) as a bar code scanner.
153 For application developers, language bindings are included for C, C++ and
154 Python as well as GUI widgets for GTK and Qt.")
155 (home-page "https://github.com/mchehab/zbar")
156 (license license:lgpl2.1+)))