JohnSundell/Marathon

[Improvement] Install via Homebrew

Closed this issue ยท 22 comments

I don't know how much effort it would take to make this available via homebrew, but I guess it would be easier to install, update and maintain for less experienced users.

@bennokress That's a great idea! ๐Ÿ‘ Homebrew has a rule that creators of a project can't submit their own work - but I'd love it if someone from the community added Marathon to Homebrew.

Okay, I'm very busy at the moment and have no experience with creating a hombrew formula or ruby for that matter, but I'll look into it, if it isn't done by someone else in the meantime.

This seems to be the tutorial, if someone is interested: Formula Cookbook

@JohnSundell I was trying to create a brew formula for marathon, but faced some issue. I think, only contributor of the repo will be able to fix these issues. Here are the warning from a forked repo formula.

marathon:
  * C: 2: col 9: Description shouldn't include the formula name  // This can be fixed via changing description.
  * Formula should have a homepage. // We can set up GitHub pages for home page of Marathon
  * GitHub fork (not canonical repository)
  * GitHub repository not notable enough (<20 forks, <20 watchers and <50 stars)
  * GitHub repository too new (<30 days old)
Error: 5 problems in 1 formula

Here is the formula file :- https://gist.github.com/aksswami/2e8e800c06c5a8f385cef0b40c945ba3

We also need to the tag for version release, so that we can access .zip or tar.gz bundle for the repo.

Home page can be generated directly via enabling GitHub pages for Marathon repo. similar to my fork:- https://aksswami.github.io/Marathon/ (Just an example)

@aksswami Yeah you need to point the formula to this repo, not to your fork. For homepage, you can just use https://github.com/johnsundell/marathon. I can create a release during this upcoming weekend, have a few things I want to take care of before tagging a release.

Awesome that you're starting to look into this! I really appreciate it ๐Ÿ‘

@JohnSundell I will complete the formula and create a PR to homebrew-core once you release the first version of Marathon. To create a homebrew formula we need to have a release, that's why I pointed to my fork for testing purpose.

Looking forward to Marathon release.

Hi,
Any news about this ?
Thanks to @JohnSundell for marathon btw
cc @aksswami

orta commented

Ping, this one is blocked by a release of Marathon @JohnSundell - might be worth a 1.0?

@orta @PoissonBallon @aksswami Sorry for the delay on this one - I have just released Marathon version 1.0.0 ๐ŸŽ‰ So Homebrew support can now be added ๐Ÿš€

orta commented

Thanks John, I took a stab at the homebrew setup but will need a patch release I think to make it work, PR incoming.

orta commented

With the changes in #118

This can be submitted (with updated version + SHA)

class Marathon < Formula
  desc "Marathon makes it easy to write, run and manage your Swift scripts ๐Ÿƒ"
  homepage "https://github.com/JohnSundell/Marathon"
  url "https://github.com/JohnSundell/Marathon/archive/1.0.0.tar.gz"
  sha256 "b6cb5ac6d765fd99e74a7b1a0e9400985ce80860ec2612d10ffbc7a75249a663"

  def install
    system "make", "build"
    bin.install "build/Release/marathon"
  end

  test do
    system "#{bin}/marathon", "help"
  end
end

Perfect, just merged the PR! ๐Ÿ‘ Who wants to take this forward and submit the formula to Homebrew? ๐Ÿ˜„

orta commented

@JohnSundell it'll need a release too ๐Ÿก

Of course ๐Ÿคฆโ€โ™‚๏ธ Done โœ…

orta commented

Thanks: turns out I couldn't use the makefile stuff anyway, (swift build sandboxing with homebrew issues) - could move into the makefile as a non-sandbox'd build though

PR: Homebrew/homebrew-core#17266

orta commented

Hrm, so the name marathon already exists inside brew/cask (the Mac .app section of homebrew) - which means that we can't submit as "marathon".

Opinions on "marathon-cli" or "marathon-swift" or something like that? e.g. brew install marathon-cli

@orta bummer ๐Ÿ˜• but I think marathon-swift is a good option - if we were to use marathon-cli it might look like it's a CLI for the "other Marathon" ๐Ÿ™‚

@orta really awesome that you're doing this - it's gonna be a huge improvement for Marathon ๐Ÿ‘

orta commented

No worries will update, getting this on homebrew is a blocker on danger-swift - as I need a reasonable way to do swift system-dependencies.

orta commented

Done, and updated docs in #124

screen shot 2017-08-31 at 09 50 26

That is AMAZING! ๐ŸŽ‰ Thanks a lot @orta - I'm super excited about this, huge improvement for the project! ๐Ÿš€

Also big thanks to you @bennokress & @aksswami & everyone else who has done work on this ๐Ÿ‘

I think you should have a good look once again