[nim-dev] HomeBrew + Nim Tools (nimble, nimsuggest)

  • From: ysalmi <ysalmi@xxxxxxxxx>
  • To: nim-dev@xxxxxxxxxxxxx
  • Date: Thu, 20 Oct 2016 13:25:51 +0000

I'm new to Nim, so please excuse any confusion or assumptions. Recently I've 
been working on improving the Homebrew formula to make it easy to install the 
Nim Tools, especially nimble.

I first wrote a standalone 'nimble' formula, but I quickly ran into similar 
issues as `detailed here <http://forum.nim-lang.org/t/2338#14370>`_. Realizing 
that nimble is now included in the main 'nim' distribution as of 0.15, I 
enhanced the 'nim' HomeBrew formula `to 
this<https://github.com/Homebrew/homebrew-core/commit/ebf7dcc08705b82079881c4f77420aa99e930a66>`_

And it works! Nimble installs and runs correctly. However, I soon discovered 
that it breaks for the '--HEAD' option. I don't use HEAD often, but I don't 
want to leave the formula in a half-broken state. In the main nim repository, 
there is no 'dist' folder. Nimble and nimsuggest are both in separate git 
repositories.

IMHO, both Head and point releases should have the same structure. It seems 
like the "easiest" solution would be to create a dist folder and use `git 
submodules <https://gist.github.com/gitaarik/8735255>`_ to link in the HEAD 
branches 'nimble' and 'nimsuggest' repos. As far as I can tell, this would have 
no harmful side effect.

That's my humble proposal. My backup solution is to manually check out those 
branches in the HEAD configuration of the Homebrew formula, but I find that to 
be very hacky and I'm concerned it won't be accepted in PR by the Homebrew 
people.

Other related posts: