From patchwork Thu Dec 23 23:04:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Reily Siegel X-Patchwork-Id: 35620 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 5CAD627BBEA; Thu, 23 Dec 2021 23:06:20 +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.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable 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 D6D8527BBE9 for ; Thu, 23 Dec 2021 23:06:19 +0000 (GMT) Received: from localhost ([::1]:43868 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n0XAB-0005aE-2S for patchwork@mira.cbaines.net; Thu, 23 Dec 2021 18:06:19 -0500 Received: from eggs.gnu.org ([209.51.188.92]:35008) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n0X96-0004pq-FM for guix-patches@gnu.org; Thu, 23 Dec 2021 18:05:13 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:51895) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n0X90-0003d3-J7 for guix-patches@gnu.org; Thu, 23 Dec 2021 18:05:11 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1n0X90-0003Yy-Dt for guix-patches@gnu.org; Thu, 23 Dec 2021 18:05:06 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#48735] [PATCH v2 09/10] gnu: Add clojure-tools. Resent-From: Reily Siegel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 23 Dec 2021 23:05:06 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48735 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 48735@debbugs.gnu.org Received: via spool by 48735-submit@debbugs.gnu.org id=B48735.164030070313639 (code B ref 48735); Thu, 23 Dec 2021 23:05:06 +0000 Received: (at 48735) by debbugs.gnu.org; 23 Dec 2021 23:05:03 +0000 Received: from localhost ([127.0.0.1]:35198 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n0X8w-0003Xi-AI for submit@debbugs.gnu.org; Thu, 23 Dec 2021 18:05:02 -0500 Received: from mout-p-202.mailbox.org ([80.241.56.172]:52926) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n0X8r-0003Wt-5A for 48735@debbugs.gnu.org; Thu, 23 Dec 2021 18:04:57 -0500 Received: from smtp1.mailbox.org (smtp1.mailbox.org [IPv6:2001:67c:2050:105:465:1:1:0]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-202.mailbox.org (Postfix) with ESMTPS id 4JKm435gdTzQklY for <48735@debbugs.gnu.org>; Fri, 24 Dec 2021 00:04:51 +0100 (CET) X-Virus-Scanned: amavisd-new at heinlein-support.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=reilysiegel.com; s=MBO0001; t=1640300689; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=3sI+z+g/ynTMKye2/S+08oyLSXzZgR8xi+Xg3GolUig=; b=dOEf3y4wIGulWi+a2yIM64DjHaami/fsiQE4eIXsk4fk0JqvtgZQCvY/DXov/QdilBngQy KIqhSnpeOi7WBppiyOAP2ESe4UBRz9TPNOnMSlNkyM2eH7mmyAbcexAV1n8LiVpFTGdq6s aXTXz0NPZsZdmRrGsakjlQPDQK+lLOa4JHspKhnpNgw94lvF3vK+BlAiG9vOwKyI6U9njE f5F8WROL2tVZ8jVYoz5zZ5MA43X/A28cF7ovy+UXv8/s7+1bzgaMH3egIe3Jv7/HuN+M0H w7qnJv6N4ZsjM+cvWkxJFtZeYD8eEv14OOc9GYPEnWfMhdRmufOee49SfcswoQ== From: Reily Siegel In-Reply-To: References: Message-Id: Date: Thu, 23 Dec 2021 18:04:46 -0500 MIME-Version: 1.0 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: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/clojure.scm (clojure-tools): New variable. --- gnu/packages/clojure.scm | 63 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm index 11efa89741..b091f31eca 100644 --- a/gnu/packages/clojure.scm +++ b/gnu/packages/clojure.scm @@ -24,12 +24,14 @@ (define-module (gnu packages clojure) #:use-module (gnu packages) #:use-module (gnu packages java) #:use-module (gnu packages maven) + #:use-module (gnu packages readline) #:use-module (gnu packages version-control) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system ant) + #:use-module (guix build-system copy) #:use-module (guix build-system clojure) #:use-module (ice-9 match)) @@ -165,6 +167,67 @@ (define (extract-library name) license:asl2.0 license:cpl1.0))))) +(define-public clojure-tools + (package + (name "clojure-tools") + (version "1.10.3.1040") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.clojure.org/install/clojure-tools-" + version + ".tar.gz")) + (sha256 (base32 "0xvr9nmk9q789vp32zmmzj4macv8v7y9ivnfd6lf7i8vxgg6hvgv")) + (modules '((guix build utils))) + ;; Remove AOT compiled JAR. The other JAR only contains + ;; uncompiled Clojure source code, so should be fine. + (snippet + `(begin + (delete-file ,(string-append "clojure-tools-" version ".jar")) + #t)))) + (build-system copy-build-system) + (arguments + `(#:install-plan + '(("deps.edn" "lib/clojure/") + ("example-deps.edn" "lib/clojure/") + ("exec.jar" "lib/clojure/libexec/") + ("clojure" "bin/") + ("clj" "bin/")) + #:modules ((guix build copy-build-system) + (guix build utils) + (srfi srfi-1) + (ice-9 match)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "clojure" + (("PREFIX") (string-append (assoc-ref outputs "out") "/lib/clojure"))) + (substitute* "clj" + (("BINDIR") (string-append (assoc-ref outputs "out") "/bin")) + (("rlwrap") (which "rlwrap"))) + #true)) + (add-after 'fix-paths 'copy-tools-deps-alpha-jar + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "clojure" + (("\\$install_dir/libexec/clojure-tools-\\$version\\.jar") + (string-join + (append-map (match-lambda + ((label . dir) + (find-files dir "\\.jar$"))) + inputs) + ":")))))))) + (inputs (list rlwrap + clojure + clojure-tools-deps-alpha + java-commons-logging-minimal)) + (synopsis "CLI tools for the Clojure programming language") + (description "The Clojure command line tools can be used to start +a Clojure repl, use Clojure and Java libraries, and start Clojure +programs.") + (license license:epl1.0) + (home-page "https://clojure.org/releases/tools"))) + (define-public clojure-algo-generic (package (name "clojure-algo-generic")