mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
* gnu/packages/elixir-markup.scm (elixir-html-sanitize-ex): New variable. Change-Id: I578e0ed808a952587077e45611a29ca1ef38f408 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
270 lines
9.2 KiB
Scheme
270 lines
9.2 KiB
Scheme
;;; GNU Guix --- Functional package management for GNU
|
|
;;; Copyright © 2025 Giacomo Leidi <goodoldpaul@autistici.org>
|
|
;;;
|
|
;;; This file is part of GNU Guix.
|
|
;;;
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
;;; under the terms of the GNU General Public License as published by
|
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
;;; your option) any later version.
|
|
;;;
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
;;; GNU General Public License for more details.
|
|
;;;
|
|
;;; You should have received a copy of the GNU General Public License
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
(define-module (gnu packages elixir-markup)
|
|
#:use-module (gnu packages elixir-xyz)
|
|
#:use-module (gnu packages erlang-xyz)
|
|
#:use-module (guix build-system mix)
|
|
#:use-module (guix download)
|
|
#:use-module (guix gexp)
|
|
#:use-module ((guix licenses)
|
|
#:prefix license:)
|
|
#:use-module (guix packages))
|
|
|
|
(define-public elixir-earmark-ast-dsl
|
|
(package
|
|
(name "elixir-earmark-ast-dsl")
|
|
(version "0.3.7")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "earmark_ast_dsl" version))
|
|
(sha256
|
|
(base32 "1c90204jcz1pbxxdxmvwr32y663jwvpn05izqp7zmqlp8yknzlhj"))))
|
|
(build-system mix-build-system)
|
|
(synopsis
|
|
"Toolset to generate EarmarkParser AST Nodes")
|
|
(description
|
|
"@code{EarmarkAstDsl} is a toolset to generate @code{EarmarkParser}
|
|
conformant AST Nodes. Its main purpose is to remove boilerplate code from
|
|
Earmark and @code{EarmarkParser} tests.")
|
|
(home-page "https://hexdocs.pm/earmark_ast_dsl/")
|
|
(license license:asl2.0)))
|
|
|
|
(define-public elixir-earmark-parser
|
|
(package
|
|
(name "elixir-earmark-parser")
|
|
(version "1.4.44")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "earmark_parser" version))
|
|
(sha256
|
|
(base32 "0l1758nwqf39yg2mgx3d9zfgz2f9i44h7xqmj9csa0a75dssqy27"))))
|
|
(build-system mix-build-system)
|
|
(native-inputs
|
|
(list elixir-earmark-ast-dsl elixir-excoveralls elixir-floki))
|
|
(synopsis "AST parser and generator for Markdown")
|
|
(description "This package providesAST parser and generator for Markdown.")
|
|
(home-page "https://hexdocs.pm/earmark_parser/")
|
|
(license license:asl2.0)))
|
|
|
|
(define-public elixir-earmark
|
|
(package
|
|
(name "elixir-earmark")
|
|
(version "1.4.47")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "earmark" version))
|
|
(sha256
|
|
(base32 "1y4qqq3bxim9b9jrpbdxpagsjs5whlig4zva6hxmznf2lazbx5iy"))))
|
|
(build-system mix-build-system)
|
|
(native-inputs
|
|
(list elixir-earmark-ast-dsl
|
|
elixir-excoveralls
|
|
elixir-floki
|
|
elixir-traverse))
|
|
(synopsis
|
|
"Elixir Markdown converter")
|
|
(description
|
|
"Earmark is a pure-Elixir Markdown converter. It is intended to be used as a
|
|
library (just call Earmark.as_html), but can also be used as a command-line tool
|
|
(run mix escript.build first). Output generation is pluggable.")
|
|
(home-page "https://hexdocs.pm/earmark/")
|
|
(license license:asl2.0)))
|
|
|
|
(define-public elixir-easyhtml
|
|
(package
|
|
(name "elixir-easyhtml")
|
|
(version "0.3.2")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "easyhtml" version))
|
|
(sha256
|
|
(base32 "01jxhj3hpivf5c0x7d11c8xrx3d0ln6wsa78lc58g90j2vwkdadn"))))
|
|
(build-system mix-build-system)
|
|
(propagated-inputs (list elixir-floki))
|
|
(synopsis "Tiny wrapper around Floki")
|
|
(description "@code{EasyHTML} makes working with HTML easy. It is a tiny
|
|
wrapper around Floki that adds conveniences:
|
|
|
|
@itemize
|
|
@item An @code{Inspect} implementation to pretty-print HTML snippets
|
|
@item An @code{Access} implementation to search them
|
|
@item An @code{Enumerable} implementation to traverse them
|
|
item A @code{String.Chars} implementation to convert them to text
|
|
@end itemize
|
|
")
|
|
(home-page "https://hexdocs.pm/easyhtml/")
|
|
(license license:asl2.0)))
|
|
|
|
(define-public elixir-ex-doc
|
|
(package
|
|
(name "elixir-ex-doc")
|
|
(version "0.38.4")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "ex_doc" version))
|
|
(sha256
|
|
(base32 "1ck5y70zkppyswpagvla4zh19cryc4slw5c04lf930wa81327dpp"))))
|
|
(build-system mix-build-system)
|
|
(arguments
|
|
;; FIXME: tests depend on lazy_html which is not yet packaged.
|
|
(list #:tests? #f))
|
|
(native-inputs
|
|
(list elixir-easyhtml
|
|
elixir-jason
|
|
elixir-floki))
|
|
(propagated-inputs
|
|
(list elixir-earmark-parser elixir-makeup-c elixir-makeup-elixir
|
|
elixir-makeup-erlang elixir-makeup-html))
|
|
(synopsis "Documentation generation tool for Elixir")
|
|
(description "@code{ExDoc} is a documentation generation tool for Elixir.")
|
|
(home-page "https://hexdocs.pm/ex_doc/")
|
|
(license license:asl2.0)))
|
|
|
|
(define-public elixir-html-entities
|
|
(package
|
|
(name "elixir-html-entities")
|
|
(version "0.5.2")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "html_entities" version))
|
|
(sha256
|
|
(base32 "1k7xyj0q38ms3n5hbn782pa6w1vgd6biwlxr4db6319l828a6fy5"))))
|
|
(build-system mix-build-system)
|
|
(synopsis "Decode and encode HTML entities in a string")
|
|
(description "This library provides an Elixir module to decode and encode
|
|
HTML entities in a string.")
|
|
(home-page "https://hexdocs.pm/html_entities/")
|
|
(license license:expat)))
|
|
|
|
(define-public elixir-html-sanitize-ex
|
|
(package
|
|
(name "elixir-html-sanitize-ex")
|
|
(version "1.4.3")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "html_sanitize_ex" version))
|
|
(sha256
|
|
(base32 "1dyc9fvkdrihmy32d85jqlzs9jrbijahq5dpdry9r57y98y8sx47"))))
|
|
(build-system mix-build-system)
|
|
(propagated-inputs (list erlang-mochiweb))
|
|
(synopsis "HTML sanitizer for Elixir")
|
|
(description "HTML sanitizer for Elixir.")
|
|
(home-page "https://hexdocs.pm/html_sanitize_ex/")
|
|
(license license:expat)))
|
|
|
|
(define-public elixir-floki
|
|
(package
|
|
(name "elixir-floki")
|
|
(version "0.38.0")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "floki" version))
|
|
(sha256
|
|
(base32 "1ndbs7q8dncxxxiq94l4ira3fvg311asyb31bdijvywk3vlkx555"))))
|
|
(build-system mix-build-system)
|
|
(native-inputs
|
|
(list elixir-credo elixir-jason))
|
|
(synopsis
|
|
"Simple HTML parser")
|
|
(description
|
|
"Floki is a simple HTML parser that enables search for nodes using CSS selectors.")
|
|
(home-page "https://hexdocs.pm/floki/")
|
|
(license license:expat)))
|
|
|
|
(define-public elixir-makeup-c
|
|
(package
|
|
(name "elixir-makeup-c")
|
|
(version "0.1.1")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "makeup_c" version))
|
|
(sha256
|
|
(base32 "0s98gwsvi88mxf3wjsi05l7dgkw4gzbihzlsq5ad68i86x2wzsc9"))))
|
|
(build-system mix-build-system)
|
|
(propagated-inputs (list elixir-makeup))
|
|
(synopsis "C lexer for the Makeup syntax highlighter")
|
|
(description "This package provides @code{elixir-makeup-c}, a library
|
|
implementing a C lexer for the Makeup syntax highlighter.")
|
|
(home-page "https://hexdocs.pm/makeup_c/")
|
|
(license license:bsd-2)))
|
|
|
|
(define-public elixir-makeup-elixir
|
|
(package
|
|
(name "elixir-makeup-elixir")
|
|
(version "1.0.1")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "makeup_elixir" version))
|
|
(sha256
|
|
(base32 "01wmpzzf445xnc7gr7ml9hmqz6rqxpsx9bpxjzymqgia846r113j"))))
|
|
(build-system mix-build-system)
|
|
(propagated-inputs (list elixir-makeup elixir-nimble-parsec))
|
|
(synopsis "Elixir lexer for the Makeup syntax highlighter")
|
|
(description "This package provides @code{elixir-makeup-elixir}, a library
|
|
implementing an Elixir lexer for the Makeup syntax highlighter.")
|
|
(home-page "https://hexdocs.pm/makeup_elixir/")
|
|
(license license:bsd-2)))
|
|
|
|
(define-public elixir-makeup-erlang
|
|
(package
|
|
(name "elixir-makeup-erlang")
|
|
(version "1.0.2")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "makeup_erlang" version))
|
|
(sha256
|
|
(base32 "09rpmb9iw49syp62s7pny4ycwijffkkk6y9698z8kmb8ydzgycxg"))))
|
|
(build-system mix-build-system)
|
|
(propagated-inputs (list elixir-makeup))
|
|
(synopsis "Erlang lexer for the Makeup syntax highlighter")
|
|
(description "This package provides @code{elixir-makeup-erlang}, a library
|
|
implementing an Erlang lexer for the Makeup syntax highlighter.")
|
|
(home-page "https://hexdocs.pm/makeup_erlang/")
|
|
(license license:bsd-2)))
|
|
|
|
(define-public elixir-makeup-html
|
|
(package
|
|
(name "elixir-makeup-html")
|
|
(version "0.2.0")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (hexpm-uri "makeup_html" version))
|
|
(sha256
|
|
(base32 "1ciildxh4bmacbkbil4hhsjhp7z31ycnvq072fml59m6p6zgfmh8"))))
|
|
(build-system mix-build-system)
|
|
(native-inputs
|
|
(list elixir-stream-data))
|
|
(propagated-inputs (list elixir-makeup))
|
|
(synopsis "HTML lexer for the Makeup syntax highlighter")
|
|
(description "This package provides @code{elixir-makeup-html}, a library
|
|
implementing an HTML lexer for the Makeup syntax highlighter.")
|
|
(home-page "https://hexdocs.pm/makeup_html/")
|
|
(license license:expat)))
|