[PATCH] gnu: Add texlive-qrcode.

  • Done
  • quality assurance status badge
Details
2 participants
  • Jack Hill
  • Ludovic Courtès
Owner
unassigned
Submitted by
Jack Hill
Severity
normal
J
J
Jack Hill wrote on 26 May 2022 00:34
(address . guix-patches@gnu.org)
20220525223405.15414-1-jackhill@jackhill.us
* gnu/packages/tex.scm (texlive-qrcode): New variable.
---

This is my first texlive package, so hopefully I got it at least
somewhat right. It is based heavily on the texlive-makecmds package. I
determined the native-inputs by what was required to build qrcode.pdf
and the propagated inputs by what was required to build this test
document:

```

\documentclass{article}

\usepackage{qrcode}

\begin{document}

\qrcode{test text}
\end{document}
```


gnu/packages/tex.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)

Toggle diff (73 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 818316a4e5..58829627c6 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -20,6 +20,7 @@
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Thiago Jung Bauermann <bauermann@kolabnow.com>
+;;; Copyright © 2022 Jack Hill <jackhill@jackhill.us>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -10593,6 +10594,58 @@ (define-public texlive-adjustbox
@code{\\minsizebox}, @code{\\maxsizebox} and @code{\\phantombox}.")
(license license:lppl1.3))))
+(define-public texlive-qrcode
+ (package
+ (inherit (simple-texlive-package
+ "texlive-qrcode"
+ (list "doc/latex/qrcode/README"
+ "source/latex/qrcode/qrcode.dtx"
+ "source/latex/qrcode/qrcode.ins")
+ (base32
+ "1xfv0imrrbxjqwjapcf2silg19rwz2jinawy1x65c1krg919vn02")))
+ (outputs '("out" "doc"))
+ (arguments
+ (list
+ #:tex-directory "latex/qrcode"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'chdir
+ (lambda _
+ (setenv "ROOT_DIR" (getcwd))
+ (chdir "source/latex/qrcode")))
+ (add-after 'build 'build-doc
+ (lambda _
+ (copy-file "qrcode.dtx" "build/qrcode.dtx")
+ (chdir "build")
+ (invoke "xelatex" "qrcode.dtx")
+ (invoke "xelatex" "qrcode.dtx"))) ;generate qrcode.pdf
+ (replace 'install
+ (lambda* (#:key tex-directory #:allow-other-keys)
+ (let ((doc (string-append #$output:doc "/share/doc/"
+ tex-directory))
+ (out (string-append #$output "/share/texmf-dist/tex/"
+ tex-directory)))
+ (install-file "qrcode.pdf" doc)
+ (install-file (car (find-files (getenv "ROOT_DIR") "README"))
+ doc)
+ (install-file "qrcode.sty" out)))))))
+ (propagated-inputs
+ (list texlive-lm
+ texlive-latex-xkeyval
+ texlive-xcolor))
+ (native-inputs
+ (list (texlive-updmap.cfg (list texlive-lm texlive-zapfding))
+ texlive-hyperref
+ texlive-latex-xkeyval
+ texlive-stringenc
+ texlive-xcolor))
+ (home-page "https://www.ctan.org/pkg/qrcode")
+ (synopsis "QR codes without external tools")
+ (description "This package reates @acronym{QR,Quick Response} codes for
+LaTeX documents without depending on external graphic packages. It supports
+generating codes of different sizes and with different error correction levels.")
+ (license license:lppl1.3c+)))
+
(define-public texlive-tcolorbox
(let ((template (simple-texlive-package
"texlive-tcolorbox"
--
2.36.1
J
J
Jack Hill wrote on 26 May 2022 00:40
[PATCH v2] gnu: Add texlive-qrcode.
(address . 55644@debbugs.gnu.org)
20220525224028.17060-1-jackhill@jackhill.us
* gnu/packages/tex.scm (texlive-qrcode): New variable.
---

This version fixes a spelling mistake in the synopsis.

gnu/packages/tex.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)

Toggle diff (73 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 818316a4e5..c1e24c56ae 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -20,6 +20,7 @@
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Thiago Jung Bauermann <bauermann@kolabnow.com>
+;;; Copyright © 2022 Jack Hill <jackhill@jackhill.us>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -10593,6 +10594,58 @@ (define-public texlive-adjustbox
@code{\\minsizebox}, @code{\\maxsizebox} and @code{\\phantombox}.")
(license license:lppl1.3))))
+(define-public texlive-qrcode
+ (package
+ (inherit (simple-texlive-package
+ "texlive-qrcode"
+ (list "doc/latex/qrcode/README"
+ "source/latex/qrcode/qrcode.dtx"
+ "source/latex/qrcode/qrcode.ins")
+ (base32
+ "1xfv0imrrbxjqwjapcf2silg19rwz2jinawy1x65c1krg919vn02")))
+ (outputs '("out" "doc"))
+ (arguments
+ (list
+ #:tex-directory "latex/qrcode"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'chdir
+ (lambda _
+ (setenv "ROOT_DIR" (getcwd))
+ (chdir "source/latex/qrcode")))
+ (add-after 'build 'build-doc
+ (lambda _
+ (copy-file "qrcode.dtx" "build/qrcode.dtx")
+ (chdir "build")
+ (invoke "xelatex" "qrcode.dtx")
+ (invoke "xelatex" "qrcode.dtx"))) ;generate qrcode.pdf
+ (replace 'install
+ (lambda* (#:key tex-directory #:allow-other-keys)
+ (let ((doc (string-append #$output:doc "/share/doc/"
+ tex-directory))
+ (out (string-append #$output "/share/texmf-dist/tex/"
+ tex-directory)))
+ (install-file "qrcode.pdf" doc)
+ (install-file (car (find-files (getenv "ROOT_DIR") "README"))
+ doc)
+ (install-file "qrcode.sty" out)))))))
+ (propagated-inputs
+ (list texlive-lm
+ texlive-latex-xkeyval
+ texlive-xcolor))
+ (native-inputs
+ (list (texlive-updmap.cfg (list texlive-lm texlive-zapfding))
+ texlive-hyperref
+ texlive-latex-xkeyval
+ texlive-stringenc
+ texlive-xcolor))
+ (home-page "https://www.ctan.org/pkg/qrcode")
+ (synopsis "QR codes without external tools")
+ (description "This package creates @acronym{QR,Quick Response} codes for
+LaTeX documents without depending on external graphic packages. It supports
+generating codes of different sizes and with different error correction levels.")
+ (license license:lppl1.3c+)))
+
(define-public texlive-tcolorbox
(let ((template (simple-texlive-package
"texlive-tcolorbox"
--
2.36.1
J
J
Jack Hill wrote on 26 May 2022 03:45
[PATCH v3] gnu: Add texlive-qrcode.
(address . 55644@debbugs.gnu.org)
20220526014542.9769-1-jackhill@jackhill.us
* gnu/packages/tex.scm (texlive-qrcode): New variable.
---

This version contains further tweaks to the description.

gnu/packages/tex.scm | 54 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (74 lines)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 818316a4e5..237889d666 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -20,6 +20,7 @@
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Thiago Jung Bauermann <bauermann@kolabnow.com>
+;;; Copyright © 2022 Jack Hill <jackhill@jackhill.us>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -10593,6 +10594,59 @@ (define-public texlive-adjustbox
@code{\\minsizebox}, @code{\\maxsizebox} and @code{\\phantombox}.")
(license license:lppl1.3))))
+(define-public texlive-qrcode
+ (package
+ (inherit (simple-texlive-package
+ "texlive-qrcode"
+ (list "doc/latex/qrcode/README"
+ "source/latex/qrcode/qrcode.dtx"
+ "source/latex/qrcode/qrcode.ins")
+ (base32
+ "1xfv0imrrbxjqwjapcf2silg19rwz2jinawy1x65c1krg919vn02")))
+ (outputs '("out" "doc"))
+ (arguments
+ (list
+ #:tex-directory "latex/qrcode"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'chdir
+ (lambda _
+ (setenv "ROOT_DIR" (getcwd))
+ (chdir "source/latex/qrcode")))
+ (add-after 'build 'build-doc
+ (lambda _
+ (copy-file "qrcode.dtx" "build/qrcode.dtx")
+ (chdir "build")
+ (invoke "xelatex" "qrcode.dtx")
+ (invoke "xelatex" "qrcode.dtx"))) ;generate qrcode.pdf
+ (replace 'install
+ (lambda* (#:key tex-directory #:allow-other-keys)
+ (let ((doc (string-append #$output:doc "/share/doc/"
+ tex-directory))
+ (out (string-append #$output "/share/texmf-dist/tex/"
+ tex-directory)))
+ (install-file "qrcode.pdf" doc)
+ (install-file (car (find-files (getenv "ROOT_DIR") "README"))
+ doc)
+ (install-file "qrcode.sty" out)))))))
+ (propagated-inputs
+ (list texlive-lm
+ texlive-latex-xkeyval
+ texlive-xcolor))
+ (native-inputs
+ (list (texlive-updmap.cfg (list texlive-lm texlive-zapfding))
+ texlive-hyperref
+ texlive-latex-xkeyval
+ texlive-stringenc
+ texlive-xcolor))
+ (home-page "https://www.ctan.org/pkg/qrcode")
+ (synopsis "QR codes without external tools")
+ (description "This package creates @acronym{QR,Quick Response} codes for
+LaTeX documents without depending on external graphics packages. It supports
+generating codes of different sizes and with different error correction
+levels. All functionality is provided by the single @code{\\qrcode} command.")
+ (license license:lppl1.3c+)))
+
(define-public texlive-tcolorbox
(let ((template (simple-texlive-package
"texlive-tcolorbox"
--
2.36.1
L
L
Ludovic Courtès wrote on 3 Jun 2022 23:29
Re: bug#55644: [PATCH] gnu: Add texlive-qrcode.
(name . Jack Hill)(address . jackhill@jackhill.us)(address . 55644-done@debbugs.gnu.org)
87pmjph1va.fsf_-_@gnu.org
Hi,

Jack Hill <jackhill@jackhill.us> skribis:

Toggle quote (2 lines)
> * gnu/packages/tex.scm (texlive-qrcode): New variable.

Applied, thanks!

Ludo’.
Closed
?