From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:38710) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hjQZE-0005Lu-3L for guix-patches@gnu.org; Fri, 05 Jul 2019 11:56:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hjQZB-0002r0-Kl for guix-patches@gnu.org; Fri, 05 Jul 2019 11:56:08 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:44819) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hjQZ8-0002fh-Ue for guix-patches@gnu.org; Fri, 05 Jul 2019 11:56:05 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hjQZ7-0007L9-SM for guix-patches@gnu.org; Fri, 05 Jul 2019 11:56:01 -0400 Subject: [bug#36513] texlive-union: Build missing font maps. Resent-Message-ID: Received: from eggs.gnu.org ([2001:470:142:3::10]:38504) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hjQYL-0004Nm-Ks for guix-patches@gnu.org; Fri, 05 Jul 2019 11:55:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hjQYG-0007Jr-1k for guix-patches@gnu.org; Fri, 05 Jul 2019 11:55:11 -0400 From: Ricardo Wurmus Date: Fri, 05 Jul 2019 17:54:54 +0200 Message-ID: <87d0ioschd.fsf@elephly.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 36513@debbugs.gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Guix, this patch causes texlive-union to include pdftex.map, among other font map files. This is achieved by running updmap in the builder. This should fix a couple of problems. Unfortunately, this doesn=E2=80=99t fix the same problem with the profile h= ook, so I think this means that the profile hook should be using texlive-union to avoid duplication. What do you think? -- Ricardo --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-gnu-texlive-union-Build-font-maps.patch >From 11900d109a617d07e0085a25e747da76fcb12c2e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 5 Jul 2019 17:48:45 +0200 Subject: [PATCH] gnu: texlive-union: Build font maps. * gnu/packages/tex.scm (texlive-union)[arguments]: Execute updmap to generate missing font maps. [native-inputs]: Add coreutils, sed, and updmap.cfg. --- gnu/packages/tex.scm | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index ec35315f22..85c72e006a 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -2387,16 +2387,18 @@ standard LaTeX packages." #:builder (begin (use-modules (ice-9 match) + (ice-9 popen) (srfi srfi-26) (guix build union) (guix build utils) (guix build texlive-build-system)) (let* ((out (assoc-ref %outputs "out")) (texmf.cnf (string-append out "/share/texmf-dist/web2c/texmf.cnf"))) - ;; Build a modifiable union of all inputs (but exclude bash) + ;; Build a modifiable union of all inputs (but exclude bash and + ;; the updmap.cfg file) (match (filter (match-lambda ((name . _) - (not (string=? "bash" name)))) + (not (member name '("bash" "updmap.cfg"))))) %build-inputs) (((names . directories) ...) (union-build (assoc-ref %outputs "out") @@ -2413,19 +2415,47 @@ standard LaTeX packages." (string-append "TEXMFROOT = " out "/share\n")) (("^TEXMF = .*") "TEXMF = $TEXMFROOT/share/texmf-dist\n")) - (setenv "PATH" (string-append (assoc-ref %build-inputs "bash") - "/bin")) + (setenv "PATH" (string-append + (assoc-ref %build-inputs "bash") "/bin:" + (assoc-ref %build-inputs "coreutils") "/bin:" + (string-append out "/bin"))) (for-each (cut wrap-program <> `("TEXMFCNF" ":" suffix (,(dirname texmf.cnf))) `("TEXMF" ":" suffix (,(string-append out "/share/texmf-dist")))) (find-files (string-append out "/bin") ".*")) + + ;; Remove invalid maps from config file. + (let ((port (open-pipe* OPEN_WRITE "updmap-sys" + "--syncwithtrees" + "--nohash" + (assoc-ref %build-inputs "updmap.cfg")))) + (display "Y\n" port) + (when (not (zero? (status:exit-val (close-pipe port)))) + (error "failed to filter updmap.cfg"))) + ;; Generate maps. + (invoke "updmap-sys" "--force" + (string-append out "/share/texmf-config/web2c/updmap.cfg")) #t)))) (inputs `(("bash" ,bash) ,@(map (lambda (package) (list (package-name package) package)) (append default-packages packages)))) + (native-inputs + `(("coreutils" ,coreutils) + ("sed" ,sed) + ("updmap.cfg" + ,(origin + (method url-fetch) + (uri (string-append "https://tug.org/svn/texlive/tags/" + %texlive-tag "/Master/texmf-dist/web2c/updmap.cfg" + "?revision=" (number->string %texlive-revision))) + (file-name (string-append "updmap.cfg-" + (number->string %texlive-revision))) + (sha256 + (base32 + "06mwpy5i218g5k3sf4gba0fmxgas82hkzx9fhwn67z5ik37d8apq")))))) (home-page (package-home-page texlive-bin)) (synopsis "Union of TeX Live packages") (description "This package provides a subset of the TeX Live -- 2.21.0 --=-=-=--