Clojure doesn't provide "clojure" executable

  • Done
  • quality assurance status badge
Details
5 participants
  • Ben Sturmfels
  • Ben Sturmfels
  • Ludovic Courtès
  • Tobias Geerinckx-Rice
  • Ricardo Wurmus
Owner
unassigned
Submitted by
Ben Sturmfels
Severity
normal
Merged with
B
B
Ben Sturmfels wrote on 12 Sep 2018 03:57
(address . bug-guix@gnu.org)
874leva358.fsf@sturm.com.au
Hi Folks,

When I install the "clojure" package, I can't seem to just run `clojure`
and get an interpreter like I would on Debian.

My Java is a bit rusty, but I found I could get it going by installing the "icedtea" package and running:

java -cp ~/.guix-profile/share/java/clojure-1.9.0.jar clojure.main

or

java -jar ~/.guix-profile/share/java/clojure-1.9.0.jar

which is a bit of a mouthful.

Regards,
Ben
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEPn825zvdanEG+SAhAjwF4snAaPAFAluYcpMACgkQAjwF4snA
aPA3+Q/7BNNynQgu2UTMwske8IaKGqcVGwwG99rO0cppQdAEYk0sVngSSdAaYP24
o2RrSuPcKOFAR7kaVSSGtklOmubK/YcajJ8U+eoKMxNOm3SxNmNanVc4cee1rlYh
388b89N64WWXemnpWC0C7saGJyrJCflBKX590SKQTSzuM1BFWwZ3dymbBbUy7OUH
NrYrTfnm/tsGkpLymSR97Mgflj2qUt9O+M/k6Gt+zP6+7XZv1kXqfR4qFk99cvv0
r+7YqlrqpdaEYa6y0YnmkkcV1ddX7r6iK3lAYHUPGkw4i4l3sH32kJqcf/78FGQy
5HLPOL9etoiQPZAxjFGH8I4S1CqsuX0Z5956j1AP61h2qUUe5lZTiXGmiW/QwhQ9
owqw9cK9kFEWmNf7EEZ1Ki3YufPCxqrRFvULLfhQpYDYNLwiMTWnO6PGlWFQJ8oy
q8SBlJyalgff3r9tBadz3/OHeqXiFxwQ0NUJpZ9rNnKnIbLsehdZt9FXJYls1Mbn
RcJiI/PHu2Vi9nV7OrcC6J1A29Pe2lrFgWeq89iY5Cn9qkyBFQLKk6i83VYueugo
zOgx752RiA6YHVjSHJ1c50tY5KLf+iKb82RI6+U+3hPueoHcBhDqts7jtAsLjoA8
FSp1vhZjwkFwPixD16E6tsse3uzYZHmVm7IOs8cSvOhUfZl7Diw=
=wywF
-----END PGP SIGNATURE-----

R
R
Ricardo Wurmus wrote on 13 Sep 2018 22:15
(name . Ben Sturmfels)(address . ben@stumbles.id.au)(address . 32709@debbugs.gnu.org)
878t456tnj.fsf@elephly.net
Hi Ben,

Toggle quote (13 lines)
> When I install the "clojure" package, I can't seem to just run `clojure`
> and get an interpreter like I would on Debian.
>
> My Java is a bit rusty, but I found I could get it going by installing the "icedtea" package and running:
>
> java -cp ~/.guix-profile/share/java/clojure-1.9.0.jar clojure.main
>
> or
>
> java -jar ~/.guix-profile/share/java/clojure-1.9.0.jar
>
> which is a bit of a mouthful.

It is, but this is what upstream tells us to run after building the
package. Neither pom.xml (for Maven) nor build.xml (for Ant) contain
targets that generate a shell wrapper.

It looks like adding a shell wrapper is a decision that was taken by
Debian and is not what upstream does. So this is not due to a defect in
the ant-build-system.

To address this we may want to add a wrapper in a custom build phase.

--
Ricardo
L
L
Ludovic Courtès wrote on 17 Sep 2018 22:27
control message for bug #32709
(address . control@debbugs.gnu.org)
87lg7z6f9q.fsf@gnu.org
tags 32709 easy
B
B
Ben Sturmfels wrote on 13 Dec 2018 04:08
Re: bug#32709: Clojure doesn't provide "clojure" executable
(name . Ricardo Wurmus)(address . rekado@elephly.net)(address . 32709@debbugs.gnu.org)
b596999c-28ef-2b1d-f2dc-da53f888bd53@stumbles.id.au
Thanks Ricardo,

On 14/09/18 06:15, Ricardo Wurmus wrote:
Toggle quote (26 lines)
>
> Hi Ben,
>
>> When I install the "clojure" package, I can't seem to just run `clojure`
>> and get an interpreter like I would on Debian.
>>
>> My Java is a bit rusty, but I found I could get it going by installing the "icedtea" package and running:
>>
>> java -cp ~/.guix-profile/share/java/clojure-1.9.0.jar clojure.main
>>
>> or
>>
>> java -jar ~/.guix-profile/share/java/clojure-1.9.0.jar
>>
>> which is a bit of a mouthful.
>
> It is, but this is what upstream tells us to run after building the
> package. Neither pom.xml (for Maven) nor build.xml (for Ant) contain
> targets that generate a shell wrapper.
>
> It looks like adding a shell wrapper is a decision that was taken by
> Debian and is not what upstream does. So this is not due to a defect in
> the ant-build-system.
>
> To address this we may want to add a wrapper in a custom build phase.

I see what you mean about Debian's approach with the wrapper.

After some investigating I see that Clojure project's current approach
is different again to Debian. Their releases eg.
include scripts `clj` and `clojure` which come from
https://github.com/clojure/brew-install.These scripts use functionality
download any libraries you've declared a dependency on at runtime.

There will surely be a script that does this multi-repository build, but
I haven't found it yet.

Regards,
Ben
Attachment: signature.asc
B
B
Ben Sturmfels wrote on 13 Dec 2018 06:36
(name . Ricardo Wurmus)(address . rekado@elephly.net)(address . 32709@debbugs.gnu.org)
c086e9ee-bd75-c34b-21f7-0c657e20229f@stumbles.id.au
On 13/12/18 14:08, Ben Sturmfels wrote:

Toggle quote (11 lines)
> After some investigating I see that Clojure project's current approach
> is different again to Debian. Their releases eg.
> https://download.clojure.org/install/clojure-tools-1.9.0.XXX.tar.gz
> include scripts `clj` and `clojure` which come from
> https://github.com/clojure/brew-install. These scripts use functionality
> from https://github.com/clojure/tools.deps.alpha/ to automatically
> download any libraries you've declared a dependency on at runtime.
>
> There will surely be a script that does this multi-repository build, but
> I haven't found it yet.

Alex Miller advised that the build is run by the scripts in the
clojure/brew-install repo. It runs "script/package.sh".

Regards,
Ben
Attachment: signature.asc
T
T
Tobias Geerinckx-Rice wrote on 25 Oct 2019 23:50
(no subject)
(name . GNU bug tracker automated control server)(address . control@debbugs.gnu.org)
874kzw336n.fsf@nckx
merge 32709 37929
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEfo+u0AlEeO9y5k0W2Imw8BjFSTwFAl2zbiEACgkQ2Imw8BjF
STwFTg/+LcHC2tL3cm8hyhVEcNtS3GCKfgzgziS5PE/aViR/jY14hiBKWNzJ+IZn
dddNDvobNrPbSSLjtfD4/wOs9vdLCiRbp04GVD+MHr+xo896C2/qtO9tOOy8wDNJ
MZIHZKJkrCCydczZ8I1zgnJDgt+JauixzDkdEP2BbN4R3+76GG3/otXUUrnssSDJ
dH3E6Ud95f60tVLusjAo9+D3zqULyJx0wZfx1JBoqY1SC1i8fz47L3GrHrZJHjeD
8ktQgqPmNmpEEAJZFIJlCo0uemNAMjkdcpqd+VpowWgeFP8i0nT3JQOZguJ5R0el
62vHJtEOkS+gqcDgusLae9Nv+nW2s6KTOUj2aZ+eEpIUyDWUx/hXtO+C/o0zAygg
zn2O02uOLSFtDtEMrRwmVvmFNjnsRmn+u1+MD0EhFmJufQ35baoF9FtuLurNbLlG
tK+e+f2rWf56g/mIZl29ZIntPGMIBHJOaYE6HnbbRZYB96o56W6xKDHiI/o2KuIU
G2JumXSeSfmvrpfnRR7TCHkOkbgJCNRP8WSLO8ucwvUiLxppze9Hr4UbTr69FVxZ
9e/WhR9FtN3OWfQxyTuw7l4/GF2fdYltuHBIIqyvF01o8SMCYWUR9qj1yOlV0Y9u
dZB9Y262cPVERfAVAABMBogXpVFAAzxzy5gqwtjSUq7bHf76wfc=
=e28J
-----END PGP SIGNATURE-----

B
B
Ben Sturmfels wrote on 7 Dec 2020 01:22
Re: bug#32709: Clojure doesn't provide "clojure" executable
(name . Ben Sturmfels)(address . ben@stumbles.id.au)(address . 32709-done@debbugs.gnu.org)
87a6uqlb1e.fsf@sturm.com.au
Jesse Gibbons has recently added the "clojure" executable wrapper. This
makes the Guix `clojure` behave similarly to the Debian `clojure`.
Closing this issue.

(Note that this behaviour is still a little different to the bundle
provided by the upstream Clojure project which include custom `clj` and
`clojure` scripts from https://github.com/clojure/brew-install,which
include auto-downloading of dependencies and such.)
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 32709@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 32709
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch