xcodes icon indicating copy to clipboard operation
xcodes copied to clipboard

Installing via homebrew requires manual linking step if Xcodes GUI cask installed

Open commscheck opened this issue 4 years ago • 5 comments

Steps:

  1. brew install --cask xcodes to install the GUI app
  2. brew install robotsandpencils/made/xcodes to install the CLI

Behaviour:

$ xcodes version
zsh: command not found: xcodes
$ brew link xcodes
Linking /usr/local/Cellar/xcodes/0.17.0... 1 symlinks created.
$ xcodes version
0.17.0

Brew output during install:

$ brew install robotsandpencils/made/xcodes
==> Tapping robotsandpencils/made
Cloning into '/usr/local/Homebrew/Library/Taps/robotsandpencils/homebrew-made'...
remote: Enumerating objects: 83, done.
remote: Counting objects: 100% (36/36), done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 83 (delta 8), reused 32 (delta 7), pack-reused 47
Receiving objects: 100% (83/83), 42.72 KiB | 2.37 MiB/s, done.
Resolving deltas: 100% (18/18), done.
Tapped 1 formula (15 files, 71.6KB).
==> Installing xcodes from robotsandpencils/made
==> Downloading https://github.com/RobotsAndPencils/xcodes/releases/download/0.17.0/xcodes-0.17.0.mojave.bottle.tar.gz
==> Downloading from https://github-releases.githubusercontent.com/171964196/753be900-7841-11eb-9635-36e1bcf2c174?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CS
######################################################################## 100.0%
==> Pouring xcodes-0.17.0.mojave.bottle.tar.gz
==> xcodes cask is installed, skipping link.
🍺  /usr/local/Cellar/xcodes/0.17.0: 2 files, 8MB

I assume it's the "skipping link" bit that's the issue, maybe because the formula and the cask have the same name?

commscheck avatar Jun 29 '21 04:06 commscheck

This hit me as well. Not ideal.

shepting avatar Aug 02 '21 18:08 shepting

Also, why do I have to install the CLI using brew install robotsandpencils/made/xcodes?

It would be much better to install the CLI using brew install xcodes and the GUI via brew install --cask xcodes like it's intended to be for Homebrew. GUIs are Cask apps, regulary.

martin-braun avatar Oct 09 '22 13:10 martin-braun

somehow the both formulars are the same?

brew cat xcodes
class Xcodes < Formula
  desc "Install and switch between multiple versions of Xcode"
  homepage "https://github.com/RobotsAndPencils/xcodes"
  url "https://github.com/RobotsAndPencils/xcodes.git", tag: "1.0.0"
  head "https://github.com/RobotsAndPencils/xcodes.git", branch: "main"

  bottle do
    root_url 'https://github.com/RobotsAndPencils/xcodes/releases/download/1.0.0'
    sha256 cellar: :any_skip_relocation, mojave: "23f4ee4ecac29c8816011895d18da9e78f2ec1fa3184489809d6e126039fa499"
    sha256 cellar: :any_skip_relocation, arm64_mojave: "23f4ee4ecac29c8816011895d18da9e78f2ec1fa3184489809d6e126039fa499"
  end

  def install
    system "make", "install", "prefix=#{prefix}"
  end

  test do
    system "#{bin}/xcodes"
  end
end
brew cat robotsandpencils/made/xcodes
class Xcodes < Formula
  desc "Install and switch between multiple versions of Xcode"
  homepage "https://github.com/RobotsAndPencils/xcodes"
  url "https://github.com/RobotsAndPencils/xcodes.git", tag: "1.0.0"
  head "https://github.com/RobotsAndPencils/xcodes.git", branch: "main"

  bottle do
    root_url 'https://github.com/RobotsAndPencils/xcodes/releases/download/1.0.0'
    sha256 cellar: :any_skip_relocation, mojave: "23f4ee4ecac29c8816011895d18da9e78f2ec1fa3184489809d6e126039fa499"
    sha256 cellar: :any_skip_relocation, arm64_mojave: "23f4ee4ecac29c8816011895d18da9e78f2ec1fa3184489809d6e126039fa499"
  end

  def install
    system "make", "install", "prefix=#{prefix}"
  end

  test do
    system "#{bin}/xcodes"
  end
end

muescha avatar Oct 09 '22 15:10 muescha

@muescha Thanks for confirming my observation. I had to find this issue sorely to find out how to install the CLI via Homebrew. I think it was a poor decision and I'm afraid there is no turning back, or is it?

martin-braun avatar Oct 10 '22 13:10 martin-braun

Same trouble/observation here. Expected xcodes to get shell version, but then ended up with the GUI app cask. Tried GUI and it presented problems such as a hang on unarchiving (reported) and tried to go back here to see what's going on... Headache.

ylluminate avatar Oct 29 '22 17:10 ylluminate