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

Finally create some homebrew formula #32

Open
pirog opened this issue Apr 9, 2024 · 0 comments
Open

Finally create some homebrew formula #32

pirog opened this issue Apr 9, 2024 · 0 comments
Assignees
Labels
flag Flag an issue for discussion in relevant contrib meeting

Comments

@pirog
Copy link
Sponsor Member

pirog commented Apr 9, 2024

Now that we have a centralized place to deal with install/distribution of Lando and we "installer scripts" as the new "official/default/recommended" installation pathway we should add homebrew formula to this repo as well.

Also note that homebrew supports LINUX so we should support that as well.

Here is a rough sketch of how this might work:

1. We should have a few different "template" formula for different considerations

# install latest stable
brew install lando
brew install lando@stable

# install by major version
brew install lando@3
brew install lando@4

# install edge version
brew install lando@edge

# install dev release
brew install lando@dev

# install edge/stable/dev by major version
brew install lando@3-stable
brew install lando@4-edge
brew install lando@3-dev

2. Use templates to update homebrew formula on various GitHub Actions events

It's probably possible to do this with three templates for each version:

  • stable releases eg a github release that is not a prerelease
  • edge releases eg a github release that is EITHER a prerelease or a stable release
  • a dev release eg a commit into main

We will likely want the relevant releases above in lando/cli to clone down lando/setup-lando update the relevant formula and push the changes back.

3. The Lando 3 formula should run lando setupafter install and also allow for some kind of no-setup and fat option, mirroring what the installer scripts do

4. All formula should run lando update and lando shellenv

It might make sense to allow homebrew itself to modify PATH, or maybe it makes sense to do both? We would need to figure out what is best here.

5. The docs here should be updated to include the instructions on using homebrew

6. We need to figure out the best way to manage cli updates?

Does the user just update with lando update to get the updated CLI? Or should lando update be smart and not allow updates when youve installed with homebrew? Eg it disables lando update for CLI and says something like "Updating disabled; use brew update lando" or some such?

Dev considerations:

It might be easiest to chunk this up into a few different pieces:

  1. Start by creating all the needed formula with hardcoded urls and shas
  2. Test them and make sure they are good
  3. Convert them into templates with some "replaceable strings" for url/sha/etc
  4. Add the GitHub Actions piece to lando/cli
@pirog pirog added the flag Flag an issue for discussion in relevant contrib meeting label Apr 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
flag Flag an issue for discussion in relevant contrib meeting
Projects
Status: Backlog
Development

No branches or pull requests

3 participants