From patchwork Fri Aug 30 04:27:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Timothy Sample X-Patchwork-Id: 15164 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 C2A4B1735F; Fri, 30 Aug 2019 05:28:30 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_DKIM_INVALID, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 041F41735D for ; Fri, 30 Aug 2019 05:28:26 +0100 (BST) Received: from localhost ([::1]:56168 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i3YWP-0000Dd-1U for patchwork@mira.cbaines.net; Fri, 30 Aug 2019 00:28:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:48644) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i3YW9-0000Bp-9M for guix-patches@gnu.org; Fri, 30 Aug 2019 00:28:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i3YW5-0001sh-R3 for guix-patches@gnu.org; Fri, 30 Aug 2019 00:28:09 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:44321) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1i3YW4-0001in-46 for guix-patches@gnu.org; Fri, 30 Aug 2019 00:28:05 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1i3YW2-000754-Vc for guix-patches@gnu.org; Fri, 30 Aug 2019 00:28:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#37227] [PATCH 1/4] gnu: Move application packages out of haskell.scm. References: <877e6v2sqf.fsf@ngyro.com> In-Reply-To: <877e6v2sqf.fsf@ngyro.com> Resent-From: Timothy Sample Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 30 Aug 2019 04:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37227 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 37227@debbugs.gnu.org Received: via spool by 37227-submit@debbugs.gnu.org id=B37227.156713927727185 (code B ref 37227); Fri, 30 Aug 2019 04:28:02 +0000 Received: (at 37227) by debbugs.gnu.org; 30 Aug 2019 04:27:57 +0000 Received: from localhost ([127.0.0.1]:53139 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1i3YVn-000748-6o for submit@debbugs.gnu.org; Fri, 30 Aug 2019 00:27:57 -0400 Received: from wout5-smtp.messagingengine.com ([64.147.123.21]:58707) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1i3YVi-00073P-TQ for 37227@debbugs.gnu.org; Fri, 30 Aug 2019 00:27:45 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id 10C4C440 for <37227@debbugs.gnu.org>; Fri, 30 Aug 2019 00:27:36 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Fri, 30 Aug 2019 00:27:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:message-id:mime-version:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=jLe9Zn hlYampbZLYBGTJOLXnk1U+TZTqgGTjxzwT3oA=; b=1sTEJoiG0781SvYVRIq/eN UkODzD3RC35w8NvZR8WvNaadYh0XvWrhw7YrHtJ0a2uhP5Koehvg4NNNG0VChHg8 Df0zIdtrUBMkh0dvfcOTZus9DDhNR6vDReBp6A2o8wuH1w1rOZ2uTVeJ6mtRaNzD nFASuMwz5PinCt8ELn/uw1pYjnPRj4wyR9w3CAJiaSqlvcTVGYzq2eoJRwOuo63g Z+652JEu6j7oTpG5G5v+o4ISUQ+37RlsG+kCXwXtc5O1XBw8QtMsxQwngZWyswLZ g4ofpwM9gVoJ/x5U+jRAB/wRqQ2uK6bB6naX++ggL+z6omF1rk0PJk7y/f4JhR1g == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduvddrudeifedgkeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofggtgfgsehtkeertd ertdejnecuhfhrohhmpefvihhmohhthhihucfurghmphhlvgcuoehsrghmphhlvghtsehn ghihrhhordgtohhmqeenucffohhmrghinhepuggrrhgtshdrnhgvthdpghhithhhuhgsrd gtohhmpdhhrghskhgvlhhlrdhorhhgpdhpvghrlhhgvggvkhdruggvnecukfhppeejgedr udduiedrudekiedrgeegnecurfgrrhgrmhepmhgrihhlfhhrohhmpehsrghmphhlvghtse hnghihrhhordgtohhmnecuvehluhhsthgvrhfuihiivgeptd X-ME-Proxy: Received: from mrblack.lan (74-116-186-44.qc.dsl.ebox.net [74.116.186.44]) by mail.messagingengine.com (Postfix) with ESMTPA id 5046D80060 for <37227@debbugs.gnu.org>; Fri, 30 Aug 2019 00:27:35 -0400 (EDT) From: Timothy Sample Date: Fri, 30 Aug 2019 00:27:31 -0400 Message-Id: <20190830042734.12382-1-samplet@ngyro.com> X-Mailer: git-send-email 2.22.1 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches From: Robert Vollmert * gnu/packages/haskell.scm (cabal-install, corrode, cpphs, hlint, hscolour, shellcheck): Move variables from here... * gnu/packages/haskell-apps.scm: ...to here. Co-authored-by: Timothy Sample --- gnu/packages/haskell-apps.scm | 196 ++++++++++++++++++++++++++++++++++ gnu/packages/haskell.scm | 193 +-------------------------------- 2 files changed, 197 insertions(+), 192 deletions(-) diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm index e77f6d113b..ecc097ceb6 100644 --- a/gnu/packages/haskell-apps.scm +++ b/gnu/packages/haskell-apps.scm @@ -1,6 +1,9 @@ ;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2015 Siniša Biđin ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus ;;; Copyright © 2016, 2017, 2018 ng0 +;;; Copyright © 2017 Danny Milosavljevic +;;; Copyright © 2017, 2018 Alex Vong ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018 Timothy Sample ;;; Copyright © 2018 Arun Isaac @@ -25,6 +28,7 @@ (define-module (gnu packages haskell-apps) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system haskell) @@ -42,6 +46,103 @@ #:use-module (gnu packages sdl) #:use-module (gnu packages version-control)) +(define-public cabal-install + (package + (name "cabal-install") + (version "2.2.0.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/cabal-install/cabal-install-" + version + ".tar.gz")) + (sha256 + (base32 "1nd3ch7qr4dpfxhgkcq2lnhvszx2kjgnn1kwb44vk9y5jgfs4mn8")))) + (arguments `(#:tests? #f)) ; FIXME: testing libraries are missing. + (build-system haskell-build-system) + (inputs + `(("ghc-async" ,ghc-async) + ("ghc-base16-bytestring" ,ghc-base16-bytestring) + ("ghc-cryptohash-sha256" ,ghc-cryptohash-sha256) + ("ghc-echo" ,ghc-echo) + ("ghc-edit-distance" ,ghc-edit-distance) + ("ghc-hackage-security" ,ghc-hackage-security) + ("ghc-hashable" ,ghc-hashable) + ("ghc-http" ,ghc-http) + ("ghc-network-uri" ,ghc-network-uri) + ("ghc-network" ,ghc-network) + ("ghc-random" ,ghc-random) + ("ghc-resolv" ,ghc-resolv) + ("ghc-tar" ,ghc-tar) + ("ghc-zlib" ,ghc-zlib))) + (home-page "https://www.haskell.org/cabal/") + (synopsis "Command-line interface for Cabal and Hackage") + (description + "The cabal command-line program simplifies the process of managing +Haskell software by automating the fetching, configuration, compilation and +installation of Haskell libraries and programs.") + (license license:bsd-3))) + +(define-public corrode + (let ((commit "b6699fb2fa552a07c6091276285a44133e5c9789")) + (package + (name "corrode") + (version (string-append "0.0.1-" (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jameysharp/corrode.git") + (commit "b6699fb2fa552a07c6091276285a44133e5c9789"))) + (file-name + (string-append name "-" version "-checkout")) + (sha256 + (base32 "02v0yyj6sk4gpg2222wzsdqjxn8w66scbnf6b20x0kbmc69qcz4r")))) + (build-system haskell-build-system) + (inputs + `(("ghc-language-c" ,ghc-language-c) + ("ghc-markdown-unlit" ,ghc-markdown-unlit))) + (home-page "https://github.com/jameysharp/corrode") + (synopsis "Automatic semantics-preserving translation from C to Rust") + (description + "This program reads a C source file and prints an equivalent module in +Rust syntax. It is intended to be useful for two different purposes: + +@enumerate +@item Partial automation for migrating legacy code that was implemented in C. +@item A new, complementary approach to static analysis for C programs. +@end enumerate\n") + (license license:gpl2+)))) + +(define-public cpphs + (package + (name "cpphs") + (version "1.20.8") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/" name "/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1bh524asqhk9v1s0wvipl0hgn7l63iy3js867yv0z3h5v2kn8vg5")))) + (build-system haskell-build-system) + (inputs + `(("ghc-polyparse" ,ghc-polyparse) + ("ghc-old-locale" ,ghc-old-locale) + ("ghc-old-time" ,ghc-old-time))) + (home-page "http://projects.haskell.org/cpphs/") + (synopsis "Liberalised re-implementation of cpp, the C pre-processor") + (description "Cpphs is a re-implementation of the C pre-processor that is +both more compatible with Haskell, and itself written in Haskell so that it +can be distributed with compilers. This version of the C pre-processor is +pretty-much feature-complete and compatible with traditional (K&R) +pre-processors. Additional features include: a plain-text mode; an option to +unlit literate code files; and an option to turn off macro-expansion.") + (license (list license:lgpl2.1+ license:gpl3+)))) + ;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17 ;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070000000000000 ;; and results of search engines will show that if the protocol is http, https @@ -364,6 +465,66 @@ programming.") @code{SDL2_image}.") (license license:expat))) +(define-public hlint + (package + (name "hlint") + (version "2.1.10") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/" name + "/" name "-" version ".tar.gz")) + (sha256 + (base32 + "19as2m9g75cr6n1agzvsij0cvqhb0wbjlk31w4y5d5mns87dki0w")))) + (build-system haskell-build-system) + (inputs + `(("cpphs" ,cpphs) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-yaml" ,ghc-yaml) + ("ghc-vector" ,ghc-vector) + ("ghc-data-default" ,ghc-data-default) + ("ghc-cmdargs" ,ghc-cmdargs) + ("ghc-haskell-src-exts" ,ghc-haskell-src-exts) + ("ghc-haskell-src-exts-util" ,ghc-haskell-src-exts-util) + ("ghc-uniplate" ,ghc-uniplate) + ("ghc-ansi-terminal" ,ghc-ansi-terminal) + ("ghc-extra" ,ghc-extra) + ("ghc-refact" ,ghc-refact) + ("ghc-aeson" ,ghc-aeson) + ("hscolour" ,hscolour))) + (home-page "http://community.haskell.org/~ndm/hlint/") + (synopsis "Suggest improvements for Haskell source code") + (description "HLint reads Haskell programs and suggests changes that +hopefully make them easier to read. HLint also makes it easy to disable +unwanted suggestions, and to add your own custom suggestions.") + (license license:bsd-3))) + +(define-public hscolour + (package + (name "hscolour") + (version "1.24.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/hscolour/hscolour-" + version + ".tar.gz")) + (sha256 + (base32 + "079jwph4bwllfp03yfr26s5zc6m6kw3nhb1cggrifh99haq34cr4")))) + (build-system haskell-build-system) + (home-page "https://hackage.haskell.org/package/hscolour") + (synopsis "Script to colourise Haskell code") + (description "HSColour is a small Haskell script to colourise Haskell +code. It currently has six output formats: ANSI terminal codes (optionally +XTerm-256colour codes), HTML 3.2 with font tags, HTML 4.01 with CSS, HTML 4.01 +with CSS and mouseover annotations, XHTML 1.0 with inline CSS styling, LaTeX, +and mIRC chat codes.") + (license license:bsd-3))) + (define-public raincat (package (name "raincat") @@ -405,3 +566,38 @@ play inspired from classics Lemmings and The Incredible Machine. The project proved to be an excellent learning experience for the programmers. Everything is programmed in Haskell.") (license license:bsd-3))) + +(define-public shellcheck + (package + (name "shellcheck") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/ShellCheck/ShellCheck-" + version ".tar.gz")) + (sha256 + (base32 "1vx895cp5k5h0680xfwj74lk97m9y627n965x6srds0gfnbkzy9s")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system haskell-build-system) + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-diff" ,ghc-diff) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-regex-tdfa" ,ghc-regex-tdfa))) + (home-page "https://github.com/koalaman/shellcheck") + (synopsis "Static analysis for shell scripts") + (description "@code{shellcheck} provides static analysis for +@command{bash} and @command{sh} shell scripts. +It gives warnings and suggestions in order to: + +@enumerate +@item Point out and clarify typical beginner's syntax issues that cause +a shell to give cryptic error messages. +@item Point out and clarify typical intermediate level semantic problems +that cause a shell to behave strangely and counter-intuitively. +@item Point out subtle caveats, corner cases and pitfalls that may cause an +advanced user's otherwise working script to fail under future circumstances. +@end enumerate") + (license license:gpl3+))) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index b544190895..06d3d8afd7 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -48,6 +48,7 @@ #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) #:use-module (gnu packages gtk) + #:use-module (gnu packages haskell-apps) #:use-module (gnu packages haskell-check) #:use-module (gnu packages haskell-crypto) #:use-module (gnu packages haskell-web) @@ -1493,42 +1494,6 @@ patterns as per the HaRP extension as well as HSX-style embedded XML syntax.") specify refactorings without depending on GHC.") (license license:bsd-3))) -(define-public hlint - (package - (name "hlint") - (version "2.1.10") - (source - (origin - (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/" name - "/" name "-" version ".tar.gz")) - (sha256 - (base32 - "19as2m9g75cr6n1agzvsij0cvqhb0wbjlk31w4y5d5mns87dki0w")))) - (build-system haskell-build-system) - (inputs - `(("cpphs" ,cpphs) - ("ghc-unordered-containers" ,ghc-unordered-containers) - ("ghc-yaml" ,ghc-yaml) - ("ghc-vector" ,ghc-vector) - ("ghc-data-default" ,ghc-data-default) - ("ghc-cmdargs" ,ghc-cmdargs) - ("ghc-haskell-src-exts" ,ghc-haskell-src-exts) - ("ghc-haskell-src-exts-util" ,ghc-haskell-src-exts-util) - ("ghc-uniplate" ,ghc-uniplate) - ("ghc-ansi-terminal" ,ghc-ansi-terminal) - ("ghc-extra" ,ghc-extra) - ("ghc-refact" ,ghc-refact) - ("ghc-aeson" ,ghc-aeson) - ("hscolour" ,hscolour))) - (home-page "http://community.haskell.org/~ndm/hlint/") - (synopsis "Suggest improvements for Haskell source code") - (description "HLint reads Haskell programs and suggests changes that -hopefully make them easier to read. HLint also makes it easy to disable -unwanted suggestions, and to add your own custom suggestions.") - (license license:bsd-3))) - (define-public ghc-resourcet (package (name "ghc-resourcet") @@ -1852,34 +1817,6 @@ needed by various Haskell streaming data libraries, such as @code{conduit} and @code{pipe}s.") (license license:expat))) -(define-public cpphs - (package - (name "cpphs") - (version "1.20.8") - (source - (origin - (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/" name "/" - name "-" version ".tar.gz")) - (sha256 - (base32 - "1bh524asqhk9v1s0wvipl0hgn7l63iy3js867yv0z3h5v2kn8vg5")))) - (build-system haskell-build-system) - (inputs - `(("ghc-polyparse" ,ghc-polyparse) - ("ghc-old-locale" ,ghc-old-locale) - ("ghc-old-time" ,ghc-old-time))) - (home-page "http://projects.haskell.org/cpphs/") - (synopsis "Liberalised re-implementation of cpp, the C pre-processor") - (description "Cpphs is a re-implementation of the C pre-processor that is -both more compatible with Haskell, and itself written in Haskell so that it -can be distributed with compilers. This version of the C pre-processor is -pretty-much feature-complete and compatible with traditional (K&R) -pre-processors. Additional features include: a plain-text mode; an option to -unlit literate code files; and an option to turn off macro-expansion.") - (license (list license:lgpl2.1+ license:gpl3+)))) - (define-public ghc-reflection (package (name "ghc-reflection") @@ -2124,44 +2061,6 @@ API is often available directly via the standard @code{libc} C library) on Unix systems.") (license license:gpl3))) -(define-public cabal-install - (package - (name "cabal-install") - (version "2.2.0.0") - (source - (origin - (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/cabal-install/cabal-install-" - version - ".tar.gz")) - (sha256 - (base32 "1nd3ch7qr4dpfxhgkcq2lnhvszx2kjgnn1kwb44vk9y5jgfs4mn8")))) - (arguments `(#:tests? #f)) ; FIXME: testing libraries are missing. - (build-system haskell-build-system) - (inputs - `(("ghc-async" ,ghc-async) - ("ghc-base16-bytestring" ,ghc-base16-bytestring) - ("ghc-cryptohash-sha256" ,ghc-cryptohash-sha256) - ("ghc-echo" ,ghc-echo) - ("ghc-edit-distance" ,ghc-edit-distance) - ("ghc-hackage-security" ,ghc-hackage-security) - ("ghc-hashable" ,ghc-hashable) - ("ghc-http" ,ghc-http) - ("ghc-network-uri" ,ghc-network-uri) - ("ghc-network" ,ghc-network) - ("ghc-random" ,ghc-random) - ("ghc-resolv" ,ghc-resolv) - ("ghc-tar" ,ghc-tar) - ("ghc-zlib" ,ghc-zlib))) - (home-page "https://www.haskell.org/cabal/") - (synopsis "Command-line interface for Cabal and Hackage") - (description - "The cabal command-line program simplifies the process of managing -Haskell software by automating the fetching, configuration, compilation and -installation of Haskell libraries and programs.") - (license license:bsd-3))) - (define-public cabal-doctest (package (name "cabal-doctest") @@ -3264,30 +3163,6 @@ parser isolation, and labeled blocks for better error messages.") (description "This library provides @code{Comonad}s for Haskell.") (license license:bsd-3))) -(define-public hscolour - (package - (name "hscolour") - (version "1.24.4") - (source - (origin - (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/hscolour/hscolour-" - version - ".tar.gz")) - (sha256 - (base32 - "079jwph4bwllfp03yfr26s5zc6m6kw3nhb1cggrifh99haq34cr4")))) - (build-system haskell-build-system) - (home-page "https://hackage.haskell.org/package/hscolour") - (synopsis "Script to colourise Haskell code") - (description "HSColour is a small Haskell script to colourise Haskell -code. It currently has six output formats: ANSI terminal codes (optionally -XTerm-256colour codes), HTML 3.2 with font tags, HTML 4.01 with CSS, HTML 4.01 -with CSS and mouseover annotations, XHTML 1.0 with inline CSS styling, LaTeX, -and mIRC chat codes.") - (license license:bsd-3))) - (define-public ghc-polyparse (package (name "ghc-polyparse") @@ -8159,37 +8034,6 @@ and a large set of GNU extensions.") same time is a literate Haskell program.") (license license:expat))) -(define-public corrode - (let ((commit "b6699fb2fa552a07c6091276285a44133e5c9789")) - (package - (name "corrode") - (version (string-append "0.0.1-" (string-take commit 7))) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/jameysharp/corrode.git") - (commit "b6699fb2fa552a07c6091276285a44133e5c9789"))) - (file-name - (string-append name "-" version "-checkout")) - (sha256 - (base32 "02v0yyj6sk4gpg2222wzsdqjxn8w66scbnf6b20x0kbmc69qcz4r")))) - (build-system haskell-build-system) - (inputs - `(("ghc-language-c" ,ghc-language-c) - ("ghc-markdown-unlit" ,ghc-markdown-unlit))) - (home-page "https://github.com/jameysharp/corrode") - (synopsis "Automatic semantics-preserving translation from C to Rust") - (description - "This program reads a C source file and prints an equivalent module in -Rust syntax. It is intended to be useful for two different purposes: - -@enumerate -@item Partial automation for migrating legacy code that was implemented in C. -@item A new, complementary approach to static analysis for C programs. -@end enumerate\n") - (license license:gpl2+)))) - (define-public ghc-wave (package (name "ghc-wave") @@ -8358,41 +8202,6 @@ to learn new concepts, just new syntax, and it's fairly easy to predict the generated SQL and optimize it for your backend.") (license license:bsd-3)))) -(define-public shellcheck - (package - (name "shellcheck") - (version "0.7.0") - (source - (origin - (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/ShellCheck/ShellCheck-" - version ".tar.gz")) - (sha256 - (base32 "1vx895cp5k5h0680xfwj74lk97m9y627n965x6srds0gfnbkzy9s")) - (file-name (string-append name "-" version ".tar.gz")))) - (build-system haskell-build-system) - (inputs - `(("ghc-aeson" ,ghc-aeson) - ("ghc-diff" ,ghc-diff) - ("ghc-quickcheck" ,ghc-quickcheck) - ("ghc-regex-tdfa" ,ghc-regex-tdfa))) - (home-page "https://github.com/koalaman/shellcheck") - (synopsis "Static analysis for shell scripts") - (description "@code{shellcheck} provides static analysis for -@command{bash} and @command{sh} shell scripts. -It gives warnings and suggestions in order to: - -@enumerate -@item Point out and clarify typical beginner's syntax issues that cause -a shell to give cryptic error messages. -@item Point out and clarify typical intermediate level semantic problems -that cause a shell to behave strangely and counter-intuitively. -@item Point out subtle caveats, corner cases and pitfalls that may cause an -advanced user's otherwise working script to fail under future circumstances. -@end enumerate") - (license license:gpl3+))) - (define-public ghc-simple-sendfile (package (name "ghc-simple-sendfile")