From patchwork Sat Dec 2 11:08:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Nicolas Graves X-Patchwork-Id: 57207 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 5DF0427BBEA; Sat, 2 Dec 2023 11:10:10 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 4CE0427BBE2 for ; Sat, 2 Dec 2023 11:10:07 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r9Nsg-0007ui-TB; Sat, 02 Dec 2023 06:09:54 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r9Nsf-0007uR-3A for guix-patches@gnu.org; Sat, 02 Dec 2023 06:09:53 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r9Nse-0004hq-RH for guix-patches@gnu.org; Sat, 02 Dec 2023 06:09:52 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1r9Nso-0000hp-1p for guix-patches@gnu.org; Sat, 02 Dec 2023 06:10:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#67549] [PATCH 2/2] gnu: Add latexml. Resent-From: Nicolas Graves Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 02 Dec 2023 11:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 67549 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 67549@debbugs.gnu.org Cc: ngraves@ngraves.fr Received: via spool by 67549-submit@debbugs.gnu.org id=B67549.17015153552637 (code B ref 67549); Sat, 02 Dec 2023 11:10:02 +0000 Received: (at 67549) by debbugs.gnu.org; 2 Dec 2023 11:09:15 +0000 Received: from localhost ([127.0.0.1]:56787 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r9Ns2-0000gT-Ks for submit@debbugs.gnu.org; Sat, 02 Dec 2023 06:09:15 -0500 Received: from 7.mo575.mail-out.ovh.net ([46.105.63.230]:41743) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r9Nrx-0000g4-Ft for 67549@debbugs.gnu.org; Sat, 02 Dec 2023 06:09:12 -0500 Received: from director8.ghost.mail-out.ovh.net (unknown [10.109.143.146]) by mo575.mail-out.ovh.net (Postfix) with ESMTP id BE06D2923A for <67549@debbugs.gnu.org>; Sat, 2 Dec 2023 11:08:58 +0000 (UTC) Received: from ghost-submission-6684bf9d7b-ccz56 (unknown [10.110.208.172]) by director8.ghost.mail-out.ovh.net (Postfix) with ESMTPS id 606651FD59; Sat, 2 Dec 2023 11:08:57 +0000 (UTC) Received: from ngraves.fr ([37.59.142.96]) by ghost-submission-6684bf9d7b-ccz56 with ESMTPSA id CeV9MkkQa2WZOgAAgZTDJg (envelope-from ); Sat, 02 Dec 2023 11:08:57 +0000 Authentication-Results: garm.ovh; auth=pass (GARM-96R001905f3bd3-ab6a-4ca8-acfc-8cdc18474f04, C4D857F4572B1FF7F15EF80119B62A81A12E586A) smtp.auth=ngraves@ngraves.fr X-OVh-ClientIp: 81.67.140.142 Date: Sat, 2 Dec 2023 12:08:46 +0100 Message-ID: <20231202110848.25504-2-ngraves@ngraves.fr> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231202110848.25504-1-ngraves@ngraves.fr> References: <20231202110848.25504-1-ngraves@ngraves.fr> MIME-Version: 1.0 X-Ovh-Tracer-Id: 1173750652956631778 X-VR-SPAMSTATE: OK X-VR-SPAMSCORE: -4 X-VR-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedvkedrudejuddgvdegucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuqfggjfdpvefjgfevmfevgfenuceurghilhhouhhtmecuhedttdenucgfrhhlucfvnfffucdlqdegmdenucfjughrpefhvfevufffkffojghfgggtgfesthekredtredtjeenucfhrhhomheppfhitgholhgrshcuifhrrghvvghsuceonhhgrhgrvhgvshesnhhgrhgrvhgvshdrfhhrqeenucggtffrrghtthgvrhhnpedvfedtfedukeeiieevfffhvddvgfegledtieehleejhfegleehieeukeeluefgleenucffohhmrghinhepnhhishhtrdhgohhvnecukfhppeduvdejrddtrddtrddupdekuddrieejrddugedtrddugedvpdefjedrheelrddugedvrdelieenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpeduvdejrddtrddtrddupdhmrghilhhfrhhomhepoehnghhrrghvvghssehnghhrrghvvghsrdhfrheqpdhnsggprhgtphhtthhopedupdhrtghpthhtohepieejheegleesuggvsggsuhhgshdrghhnuhdrohhrghdpoffvtefjohhsthepmhhoheejhedpmhhouggvpehsmhhtphhouhhtpdgukhhimhepphgrshhs X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Nicolas Graves X-ACL-Warn: , Nicolas Graves via Guix-patches X-Patchwork-Original-From: Nicolas Graves via Guix-patches via From: Nicolas Graves Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/markup.scm (latexml): New variable. Change-Id: If7199a8b74b990ad29718adcb905a5ed31882cf5 --- gnu/packages/markup.scm | 87 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 86 insertions(+), 1 deletion(-) diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm index 4a9a382104..67c39686d0 100644 --- a/gnu/packages/markup.scm +++ b/gnu/packages/markup.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2022 jgart ;;; Copyright © 2022 Vinicius Monego ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com> +;;; Copyright © 2023 Nicolas Graves ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,13 +46,18 @@ (define-module (gnu packages markup) #:use-module (gnu packages base) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages databases) #:use-module (gnu packages libffi) + #:use-module (gnu packages imagemagick) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) + #:use-module (gnu packages perl-compression) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) - #:use-module (gnu packages web)) + #:use-module (gnu packages tex) + #:use-module (gnu packages web) + #:use-module (gnu packages xml)) (define-public hoedown (package @@ -125,6 +131,85 @@ (define-public markdown (license (license:non-copyleft "file://License.text" "See License.text in the distribution.")))) +(define-public latexml + (package + (name "latexml") + (version "0.8.7") + (source + (origin + (method url-fetch) + (uri + "https://math.nist.gov/~BMiller/LaTeXML/releases/LaTeXML-0.8.7.tar.gz") + (sha256 + (base32 "0yfclh3bkksd4xvrhwf06xsbisp84x12vk6lml6yr7bp82a9vni5")))) + (build-system perl-build-system) + (arguments + (let ((input-names (map (compose package-name cadr) + (package-propagated-inputs this-package)))) + (list + #:tests? #f ; Some file tests are missing. + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'find-itself + ;; Fix run-time 'Can't locate [].pm in @INC' failure. + (lambda _ + (with-directory-excursion (string-append #$output "/bin") + (for-each + (lambda (program) + (wrap-program program + `("PERL5LIB" ":" prefix + (,(string-append #$output "/lib/perl5/site_perl") + ,#$@(map (lambda (in) + (file-append + (this-package-input in) "/lib/perl5/site_perl")) + input-names))))) + (find-files "." ".*"))))))))) + (inputs + (list perl libxml2 libxslt)) + (propagated-inputs + (list perl-archive-zip + perl-common-sense + perl-db-file + perl-file-which + perl-encode-locale + perl-getopt-long + perl-http-date + perl-http-message + perl-image-magick + perl-image-size + perl-io-string + perl-json-xs + perl-libwww + perl-mime-base64 + perl-parse-recdescent + perl-pod-parser + perl-text-unidecode + perl-time-hires + perl-try-tiny + perl-types-serialiser + perl-uri + perl-xml-libxml + perl-xml-libxslt + perl-xml-sax-base)) + (native-inputs + (list texlive-bin + perl-test-more-utf8 + perl-extutils-manifest + perl-data-dumper + perl-ipc-run3 + perl-file-temp)) + (home-page "https://math.nist.gov/~BMiller/LaTeXML") + (synopsis "A LaTeX to XML/HTML/MathML converter") + (description "This package provides a LaTeX converter, with the following goals: +@itemize +@item Faithful emulation of TEX’s behaviour; +@item Easily extensible; +@item Lossless, preserving both semantic and presentation cues; +@item Use an abstract LATEX-like, extensible, document type; +@item Infer the semantics of mathematical content +@end itemize") + (license license:cc0))) + (define-public lowdown (package (name "lowdown")