microsoft / scalar

Scalar: A set of tools and extensions for Git to allow very large monorepos to run on Git without a virtualization layer
MIT License
1.39k stars 63 forks source link

Homebrew install? #399

Closed ptarjan closed 4 years ago

ptarjan commented 4 years ago

Thanks for the project. I was going to go start playing with it, but downloading a release and running .bat file from it feels pretty foreign for an OSX tool.

We are already recommending https://github.com/jgavris/rs-git-fsmonitor to our engineers and their deployment system seems to work, so maybe if you can setup a similar situation to them we'd be happier to explore using scalar at our org. Thanks!

derrickstolee commented 4 years ago

The macOS installer includes a .sh... but that's not what you mean.

We are working on homebrew install. We just haven't solidified our release pipeline. You should be able to do the following right now:

brew install watchman
brew tap microsoft/git
brew cask install scalar-azrepos

Let me know if that works for you.

derrickstolee commented 4 years ago

As to the jgavris/rs-git-fsmonitor hook, Scalar will automatically configure using the existing perl-based hook. Using the native hook is on our radar, but will probably instead be replaced by a Git-native FSMonitor (instead of Watchman).

ptarjan commented 4 years ago

Thanks for the speedy response! Those 3 commands did indeed work. Maybe add it to the README once you decide this is supported? Thanks!

For your second comment, are you saying that scalar will replace rs-git-fsmonitor in my repo? If so, that's fine as long as it keeps our speeds good. We needed that watchman monitor for speeding up our monorepo's git status. So I'm happy to compare and contrast the impact of scalar vs just that fsmonitor.

derrickstolee commented 4 years ago

Hi @ptarjan. I updated the Readme including installation instructions. Could you take a look and point out anything that is confusing? I'd love to hear the perspective of someone outside the core contributor group.

ptarjan commented 4 years ago

Thanks for updating that! The procedure looks like it would work (I didn't try it myself) and isn't confusing.

It seems you prefer to control the install experience yourself. Why is that? Maybe it feels nature for windows development, but that feels pretty foreign as a mac-based developer. And I can tell you from my past experience running large open source projects at both Facebook and Stripe that if you use the standard packaging tools for the operating system, you'll get an order of magnitude more installs. Homebrew is the de-facto standard right now. So I'd suggest working on that and then codifying the homebrew install as the blessed solution.

derrickstolee commented 4 years ago

I was crafting a careful response to your comment, but then realized that I didn't include the link to the PR. The Readme update is here: https://github.com/microsoft/scalar/pull/434 and it includes using Homebrew as the blessed installation story.

Sorry for the confusion!

ptarjan commented 4 years ago

Wow. My bad. Looks great. I +1ed a code review feedback there but the rest looks great. Thanks for asking!

ptarjan commented 4 years ago

I might say, if watchman is intentionally a core part of this, I'd suggest lifting that up into the instructions as you did for me here

mjcheetham commented 4 years ago

Closing as Scalar is now available via Homebrew:

brew tap microsoft/git
brew cask install scalar