From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: [PATCH v2 1/1] gnu: Add plantuml. Date: Thu, 27 Oct 2016 19:29:38 +0200 Message-ID: <87oa25g0ot.fsf@elephly.net> References: <20161027101329.GD18185@macbook42.flashner.co.il> <20161027111853.4405-1-theodoros.for@openmailbox.org> <20161027111853.4405-2-theodoros.for@openmailbox.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:56271) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bzoVY-0002ys-93 for guix-devel@gnu.org; Thu, 27 Oct 2016 13:30:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bzoVV-00014d-5i for guix-devel@gnu.org; Thu, 27 Oct 2016 13:30:28 -0400 Received: from sender163-mail.zoho.com ([74.201.84.163]:21495) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1bzoVU-000147-Tx for guix-devel@gnu.org; Thu, 27 Oct 2016 13:30:25 -0400 In-reply-to: <20161027111853.4405-2-theodoros.for@openmailbox.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Theodoros Foradis Cc: guix-devel@gnu.org Hi Theodoros, thanks for the patch! > +(define-public plantuml > + (package > + (name "plantuml") > + (version "8048") > + (source (origin > + (method url-fetch) > + (uri (string-append > + "mirror://sourceforge/plantuml/plantuml-" > + version ".tar.gz")) > + (sha256 > + (base32 > + "1vipxd6p7isb1k1qqh4hrpfcj27hx1nll2yp0rfwpvps1w2d936i")))) > + (build-system ant-build-system) > + (arguments > + `(#:tests? #f ; no tests > + #:build-target "dist" > + #:phases > + (modify-phases %standard-phases > + (add-before 'build 'delete-extra-from-cp > + (lambda _ > + (substitute* "build.xml" > + (("1.6") "1.7") > + ((" + (("j2v8_macosx_x86_64-3.1.7.jar\" />") "-->")) > + #t)) > + (add-before 'install 'gen-install > + (lambda* (#:key outputs #:allow-other-keys) > + (mkdir-p "build/jar") > + (system* "mv" "plantuml.jar" "build/jar") > + ((@@ (guix build ant-build-system) default-build.xml) > + "plantuml.jar" > + (string-append (assoc-ref outputs "out") > + "/share/java")))) I don’t understand this. Do you only use “default-build.xml” to add an install target? In the previous phase you use the included “build.xml”. I find this a little odd and think it would be clearer to just install the files manually instead of using “default-build.xml” here. > + (add-after 'install 'make-wrapper > + (lambda* (#:key inputs outputs #:allow-other-keys) Please check the indentation for all phases. That’s too far to the right. > + (let* ((out (assoc-ref outputs "out")) > + (wrapper (string-append out "/bin/plantuml"))) > + (mkdir-p (string-append out "/bin")) > + (with-output-to-file wrapper > + (lambda _ > + (display > + (string-append > + "#!" (assoc-ref inputs "bash") > "/bin/sh\n\n" You might not need bash here. Would just “#!/bin/sh” work? > + (assoc-ref inputs "jre") "/bin/java -jar " > + out "/share/java/plantuml.jar \"$@\"\n")))) > + (chmod wrapper #o555))))))) Please note that all phases should end with #t or #f. > + (inputs > + `(("graphviz" ,graphviz) > + ("bash" ,bash) > + ("jre" ,icedtea "out"))) “out” is the default so you can just leave it off. > + (home-page "http://plantuml.com/") > + (synopsis "Draw UML diagrams from simple textual description") > + (description > + "Plantuml is a tool to generate sequence, usecase, class, > activity, Is “usecase” a word or should it be “use case”? > +component, state, deployment and object UML diagrams, using a simple and > +human readable text description. Contains salt, a tool that can > design simple Please use “@code{salt}”. > +graphical interfaces.") > + (license license:gpl3+))) Could you please send an updated patch? ~~ Ricardo