Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Homebrew Formula #237

Open
noamross opened this issue Sep 5, 2015 · 5 comments
Open

Homebrew Formula #237

noamross opened this issue Sep 5, 2015 · 5 comments

Comments

@noamross
Copy link

noamross commented Sep 5, 2015

This page on the wiki indicates that, at one point at least, there was a Homebrew formula for testing the development version of RRO. Is there an plan to create a formula to install the latest release? It would be great to brew install rro.

@cmosetick
Copy link
Contributor

Hi Noam,
That wiki page was notes for a proof of concept homebrew formula that lived in a dev branch. There was too much flux with the RRO installer at the time to justify a homebrew install option. I had to switch to other tasks so it was not formally submitted to the homebrew project. Since then, the RRO install process, especially with the MKL, has changed quite a bit, so it was a good call at the time.

It's been a while since I looked at all the needed pieces for a proper formula. From what I can remember, the most straight forward path was going to be a binary install of RRO. (I think bottle in homebrew terminology)

Since RRO is distributed as a GUI installer package (.pkg), it is perhaps easiest to go the route of a Cask Room install. (cask is an optional extension to homebrew)

I use brew cask install <package name> with success quite frequently.
This is also ideal because cask installs get installed into /opt then symlinked into the users home directory, at $HOME/Applications/ This means that RRO installed via cask would be less likely to interfere with an existing CRAN R installation. (Though not guaranteed.)

I'm not sure about the MKL license terms with the cask install route, because the MKL is already included in the OS X installer .pkg. The main thing that makes me think that the cask install option is the best route is because cask install formulas require that .pkg or .dmg downloads start from upstream project servers (MRAN in this case).

If I can find some time, I'll create a pull request in the caskroom project for RRO and leave a comment here.

@cmosetick
Copy link
Contributor

@retrography created a Cask formula for RRO 3.2.1 on August 23rd. I went ahead and bumped the version number and hash in the formula to 3.2.2 and created a pull request to get the current version included in the official homebrew-cask project.

@noamross you can get cask going with:
brew install caskroom/cask/brew-cask

The new RRO version should hopefully be included within the next day or so since the automated check has passed.
Then you can: brew cask install rro

@j-martens
Copy link
Contributor

Thanks Chris.

@retrography
Copy link

I am glad you have as well took notice of the importance of having a brew formula. I can't keep pace with the updates on my own. Having more than one interested person makes the task easier.

@cmosetick be aware that the default install behavior of cask will change from linking to moving soon, so one of the reasons for relying on a cask will partially go away. I believe the R binaries and framework installed by RRO can still be kept in a separate directory, which may or may not be a good thing (depending on whether it creates conflicts or not).

When. I created the RRO cask I considered creating a brew formula as well. The point is that a brew formula is useful when (1) recompiling a software on the target computer can enable a number of compile-time optimization that can't be attained otherwise, or (2) compiling on the target computer helps avoiding licensing issues. My understanding is that RRO is designed to be a drop-in binary replacement for R on the supported platforms. As such, I couldn't see how a brew formula would actually make a better case, so I contented myself with a cask.

@noamross You can enable many of the enhancements brought by RRO just by using the right switches when installing the official R formula on brew. You can see to that by running brew info r. My experience is that openblas-based compilations of R are just as fast in matrix operations as MKL-based ones. I can't say much about the other enhancements, though.

@dschneiderch
Copy link

dschneiderch commented Oct 10, 2016

If I install R with brew cask install rro will other brewed formula recognize r as installed even though the formula is called rro?

EDIT: I just realized there is no rro cask (anymore?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants