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

macvim does not install MacVim.app #20707

Closed
dezza opened this Issue Nov 16, 2017 · 19 comments

Comments

Projects
None yet
3 participants
@dezza
Copy link

dezza commented Nov 16, 2017

  • Confirmed this is a problem with brew installing one, specific Homebrew/homebrew-core
  • Ran brew update and retried your prior step?
  • Ran brew doctor, fixed all issues and retried your prior step?
  • Ran brew gist-logs <formula> (where <formula> is the name of the formula that failed) and included the output link?
    https://gist.github.com/anonymous/2f93b3ec99fc6bc7c11e8d80dd4beb6d
  • If brew gist-logs didn't work: ran brew config and brew doctor and included their output with your issue?
    brew doctor
Unexpected header files:
  /usr/local/include/python3.6m/greenlet/greenlet.h

brew config

HOMEBREW_VERSION: 1.3.7-2-g2225feb
ORIGIN: https://github.com/Homebrew/brew
HEAD: 2225febfb396f7db3ccf0c68feae6143128d9935
Last commit: 3 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: abca0c531748f860ec20f490c6407a4c00ba92fb
Core tap last commit: 14 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_DEV_CMD_RUN: 1
HOMEBREW_GIT_CONFIG_FILE: /usr/local/Homebrew/.git/config
CPU: octa-core 64-bit kabylake
Homebrew Ruby: 2.3.3 => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
Clang: 9.0 build 900
Git: 2.13.6 => /Applications/Xcode.app/Contents/Developer/usr/bin/git
Curl: 7.54.0 => /usr/bin/curl
Perl: /usr/bin/perl
Python: /usr/local/opt/python/libexec/bin/python => /usr/local/Cellar/python/2.7.14/Frameworks/Python.framework/Versions/2.7/bin/python2.7
Ruby: /usr/local/bin/ruby => /usr/local/Cellar/ruby/2.4.2_1/bin/ruby
Java: N/A
macOS: 10.13.1-x86_64
Xcode: 9.1
CLT: 9.1.0.0.1.1508540944
X11: 2.7.11 => /opt/X11

To help us debug your issue please explain:

  • What you were trying to do (and why)
    Trying to install MacVim with
    brew install macvim --HEAD
  • What happened (include command output)
    Normal installation completed without errors
  • What you expected to happen
    MacVim.app in /Applications
  • Step-by-step reproduction instructions (by running brew install commands)
    brew install macvim --HEAD

Also I did try to make it from the Caches directoy it compiled fine and put MacVim.app in /src/MacVim/build/Release/ as expected. This directory is empty when MacVim has just been installed - but it compiles fine and no errors.

I tried to compare other recipes and it didn't look like this line:
https://github.com/Homebrew/homebrew-core/blob/master/Formula/macvim.rb#L96
Is incorrect. Changing it to a non-existing file causes an error at least. And the compiling and installing completes fine without errors.

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

There is a linkapps command:

iMac-TMP:~ joe$ brew linkapps macvim
Warning: `brew linkapps` has been deprecated and will eventually be removed!

Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using
either aliases or symlinks and Homebrew formulae do not build "proper" `.app`
bundles that can be relocated. Instead, please consider using `brew cask` and
migrate formulae using `.app`s to casks.
Linking: /usr/local/opt/macvim/MacVim.app
Linked 1 app to /Applications
iMac-TMP:~ joe$ ls -l /Applications/MacVim.app
lrwxr-xr-x  1 joe  admin  32 Nov 16 03:15 /Applications/MacVim.app -> /usr/local/opt/macvim/MacVim.app
iMac-TMP:~ joe$ 

But longer term you'll want to use brew cask install macvim instead of brew install macvim if you want a version that'll install in /Applications.

@ilovezfs ilovezfs closed this Nov 16, 2017

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

Hi again.

I discovered later reading through your different documentations on different repos that facts are that:

  • Formula's don't install .app
  • Cask only install .app but does not build

This means that there's a shortcoming to this corner-case
brew install --HEAD macvim # expect HEAD git compiled .app in /Applications
^ because this is the only way that it actually builds it from git.

Instead the macvim formula explicitly puts it in prefix directory and it is unavailable in /Applications so you can't search for it with spotlight.

And neither can you if you use brew linkapps

I'd say the only solution to this is to change the original formula to copy to /Applications instead of prefix and this would make it incompatible with rules/guidelines for a Formula so there's no other option than creating a custom repo and choose to not follow the guidelines.

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

Yup.

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

That's a big frustration with MacVim. Just saying.

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

I'd suggest using the cask and being 😃

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

For someone who participates in solving vim issues now and then and expects to be able to test that on the latest git that is not an option for me.

I think the issue here clearly shows there's a shortcoming in guidelines.

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

The guidelines are intended to optimize for 99% of users. Yes, they do limit Homebrew's scope not to include this particular case.

And neither can you if you use brew linkapps

Why is the symlink in /Applications insufficient?

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

Well I think building from source is very open-source-ish and why shouldn't you be able to install the output package from that?

That doensn't make any sense. It makes a separation that just doesn't make sense in any way for open-source projects.

The symlink is insufficient because you can't search it with spotlight CMD+SPACE

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

The symlink is insufficient because you can't search it with spotlight CMD+SPACE

You might want to raise that with Apple :)

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

So you can't see the issue here?

You provide a way to build- but that build is opinionated to not be installed in /Applications

src + pkg = "does not compute"

Is that really how you want it?

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

@dezza yes. For new formulae, things that build a .app must go in Cask not homebrew/core. The macvim formula is currently grandfathered in, but may be removed at some point.

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

Can you name a single cask that builds an .app from source ?

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

None. We don't intend to support building .app's from source in Homebrew going forward.

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

That seems like a terrible decision.

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

I understand you feel that way. Limiting scope always leaves someone unhappy but it's necessary.

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

*Limiting usage
I'd like to argue that it can be done. And will be appreciated.

@ilovezfs

This comment has been minimized.

Copy link
Contributor

ilovezfs commented Nov 16, 2017

Yep.

@MikeMcQuaid

This comment has been minimized.

Copy link
Member

MikeMcQuaid commented Nov 16, 2017

That seems like a terrible decision.

@dezza These comments are not welcome on this project, thanks. We are volunteers who provide a service to you for free; use our software as-is or do not, that's up to you.

@dezza

This comment has been minimized.

Copy link
Author

dezza commented Nov 16, 2017

I respect that. I do not bash here I try to make a point. I would happily contribute if I knew the reasoning behind this but there has so far been none. Don’t get me wrong.

@Homebrew Homebrew locked and limited conversation to collaborators May 4, 2018

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
You can’t perform that action at this time.