;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2023 Pierre-Henry Fröhring ;;; ;;; 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 . (define-module (gnu packages elixir-xyz) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages elixir) #:use-module (gnu packages linux) #:use-module (gnu packages) #:use-module (guix build-system gnu) #:use-module (guix build-system mix) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix gexp) #:use-module (guix utils) #:use-module (guix packages) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26)) (define-public elixir-nimble-parsec (package (name "elixir-nimble-parsec") (version "1.3.1") (source (origin (method url-fetch) (uri (hexpm-uri name version)) (sha256 (base32 "0rxiw6jzz77v0j460wmzcprhdgn71g1hrz3mcc6djn7bnb0f70i6")))) (build-system mix-build-system) (arguments (list #:tests? #f)) (synopsis "Text-based parser combinators") (description "This library provides primitives for efficient parser combinators, allowing for higher-level combinators through composition.") (home-page "https://hexdocs.pm/nimble_parsec/") (license license:asl2.0))) (define-public elixir-makeup (package (name "elixir-makeup") (version "1.1.0") (source (origin (method url-fetch) (uri (hexpm-uri name version)) (sha256 (base32 "19jpprryixi452jwhws3bbks6ki3wni9kgzah3srg22a3x8fsi8a")))) (build-system mix-build-system) (propagated-inputs (list elixir-nimble-parsec)) (arguments (list #:tests? #f)) (synopsis "Syntax highlighter for source code") (description "Makeup is a generic syntax highlighter in the style of Pygments suitable for use in code hosting, forums, wikis or other applications that need to prettify source code.") (home-page "https://hexdocs.pm/makeup/") (license license:bsd-2))) (define-public elixir-jason (package (name "elixir-jason") (version "1.4.1") (source (origin (method url-fetch) (uri (hexpm-uri name version)) (sha256 (base32 "18d70i31bz11nr6vgsjn5prvhkvwqbyf3xq22ck5cnsnzp6ixc7v")))) (build-system mix-build-system) ;; There is no test/ in the source. (arguments (list #:tests? #f)) (synopsis "JSON parser and generator") (description "Parser and generator are written in pure Elixir and optimized for speed. They are at least twice as fast as other Elixir/Erlang libraries (e.g. Poison). The performance is comparable to jiffy, which is implemented in C as a NIF.") (home-page "https://hexdocs.pm/jason/") (license license:asl2.0))) (define-public elixir-file-system (package (name "elixir-file-system") (version "0.2.10") (source (origin (method url-fetch) (uri (hexpm-uri name version)) (sha256 (base32 "1p0myxmnjjds8bbg69dd6fvhk8q3n7lb78zd4qvmjajnzgdmw6a1")))) (build-system mix-build-system) (propagated-inputs (list inotify-tools)) (arguments (list #:tests? #f ;There is no test/ in the source. #:phases #~(modify-phases %standard-phases (add-after 'unpack 'rm-priv (lambda _ ;; This directory represents source code not needed on UNIX systems. ;; Since we aim at UNIX systems, it is deleted. (delete-file-recursively "priv")))))) (synopsis "File system change watcher") (description "Provides a file system change watcher wrapper based on [fs](https://github.com/synrc/fs).") (home-page "https://hexdocs.pm/file_system/") (license license:wtfpl2))) (define-public elixir-bunt (package (name "elixir-bunt") (version "0.2.1") (source (origin (method url-fetch) (uri (hexpm-uri name version)) (sha256 (base32 "19bp6xh052ql3ha0v3r8999cvja5d2p6cph02mxphfaj4jsbyc53")))) (build-system mix-build-system) (arguments (list #:tests? #f)) (synopsis "256 color ANSI coloring in the terminal") (description "256 color ANSI coloring in the terminal.") (home-page "https://hexdocs.pm/bunt/") (license license:expat))) (define-public elixir-inch-ex (package (name "elixir-inch-ex") (version "2.0.0") (source (origin (method url-fetch) (uri (hexpm-uri name version)) (sha256 (base32 "1a4rjcy3hn5pc40si1d1y7qg0b0mnxx6pw825la67ky8r9gfrl4n")))) (build-system mix-build-system) (arguments (list #:tests? #f)) (propagated-inputs (list elixir-bunt elixir-jason)) (synopsis "Offers a Mix task for suggestions on enhancing your inline documentation") (description "This package provides a Mix task that gives you hints where to improve your inline docs.") (home-page "https://hex.pm/packages/inch_ex") (license license:expat))) ;;; ;;; Avoid adding new packages to the end of this file. To reduce the chances ;;; of a merge conflict, place them above by existing packages with similar ;;; functionality or similar names. ;;;