Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 408419

Summary: dev-ml/typerex-1.0.1 - An OCaml development environment for emacs (new package)
Product: Gentoo Linux Reporter: Guillaume Horel <guillaume.horel>
Component: New packagesAssignee: Gentoo Team for the ML programming language family <ml>
Status: UNCONFIRMED ---    
Severity: enhancement CC: gnu-emacs, guillaume.horel, jrmalaq, ml
Priority: Normal Keywords: EBUILD
Version: unspecified   
Hardware: All   
OS: Linux   
URL: http://www.typerex.org
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: typerex-1.0.1.ebuild
50typerex-gentoo.el
typerex-1.0.1.ebuild

Description Guillaume Horel 2012-03-15 22:19:06 UTC
TypeRex is a powerful development environment for OCaml. It is designed to integrate easily in your favorite editor, and to provide all the commands that programmers expect from a modern IDE.
Comment 1 Guillaume Horel 2012-03-15 22:20:21 UTC
Created attachment 305557 [details]
typerex-1.0.1.ebuild
Comment 2 Guillaume Horel 2012-03-15 22:21:07 UTC
Created attachment 305559 [details]
50typerex-gentoo.el
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2012-03-16 15:25:22 UTC
Shouldn't the category be app-emacs/typerex, perhaps?
Comment 4 Ulrich Müller gentoo-dev 2012-03-16 16:02:54 UTC
(In reply to comment #3)
> Shouldn't the category be app-emacs/typerex, perhaps?

If it can't be used independently from Emacs, then it should be in the app-emacs category, IMHO.


(In reply to comment #1)
> Created attachment 305557 [details]
> typerex-1.0.1.ebuild

Some comments about the ebuild:

> inherit elisp-common

The ebuild should inherit just elisp (elisp-common is for ebuilds where Emacs support is optional, which seems not to be the case here).

> DEPEND="=app-emacs/auto-complete-9999

We cannot depend on a version that isn't in the Portage tree. It doesn't work with auto-complete-1.3.1?

> 	cd tools/ocp-typerex-ide/emacs/
> 	elisp-install ${PN} typerex.{el,elc} || die

elisp-install accepts a path, therefore these could be combined in one line.
Comment 5 Guillaume Horel 2012-03-16 17:27:05 UTC
Thanks for your comments.
Regarding the category: the package can be used independently form emacs, but the utility would be very limited at the moment. The way it works is that the elisp file talks to a binary (ocp-wizard) via rcp calls to allow cool things like jump to definition, getting the type of a function, refactoring, etc... This binary can be used on its own to annotate the code. They also plan to add support to eclipse via these same binaries in the future, so I wasn't sure if the app-emacs category was best. However Emacs is the only supported editor right now, so maybe we can decouple the binaries from the elisp files, if and when they add eclipse support.
- the auto-complete support is optional. However it relies on a dictionary file for ocaml which is not available in the 1.3.1 version, but only in the git version on github. I can upload a live version of the auto-complete ebuild if that helps.
Comment 6 Ulrich Müller gentoo-dev 2012-03-16 17:57:18 UTC
(In reply to comment #5)
> Regarding the category: the package can be used independently form emacs,
> but the utility would be very limited at the moment. The way it works is
> that the elisp file talks to a binary (ocp-wizard) via rcp calls to allow
> cool things like jump to definition, getting the type of a function,
> refactoring, etc... This binary can be used on its own to annotate the code.
> They also plan to add support to eclipse via these same binaries in the
> future, so I wasn't sure if the app-emacs category was best. However Emacs
> is the only supported editor right now, so maybe we can decouple the
> binaries from the elisp files, if and when they add eclipse support.

Thank you for the clarification. As it can't be in both categories, I think that dev-ml is fine.

> - the auto-complete support is optional. However it relies on a dictionary
> file for ocaml which is not available in the 1.3.1 version, but only in the
> git version on github.

I see. That's dict/caml-mode which exists only in the master branch?

> I can upload a live version of the auto-complete ebuild if that helps.

A live ebuild for auto-complete would still have to be package masked, so it's not really useful if it's needed as a dependency. A snapshot of the auto-complete repo would be an option, if upstream doesn't want to make a new release.
Comment 7 Guillaume Horel 2012-03-16 19:22:46 UTC
Created attachment 305643 [details]
typerex-1.0.1.ebuild

Added missing license, and made the fix to elisp-install as suggested by Ulrich.
Comment 8 Guillaume Horel 2012-03-16 19:24:58 UTC
I've asked upstream to make a new release for auto-complete (see https://github.com/m2ym/auto-complete/issues/84)