Closes#563Closes#587Closes#600
This makes the following changes:
* Installs asdf via Homebrew, thanks @jdbann in #592 and @gssbzn in #597
* The latest version of the asdf nodejs plugin takes care of the keyring stuff itself.
We can recommend a free and open source emulator and provide tips to it in the README to make it easier to make sure we're not introducing breaking changes when we contribute.
In the future I also want to see if we could add CI to this project now that macOS CI setup is more widely available than it has been in the past.
While older versions may work, it is unrealistic for us to claim
official support for such old versions.
Also updates the copyright date in the README.
Closes#589
This adds support for properly installing Homebrew on either Apple Silicon or Intel machines to the correct Homebrew location on macOS.
Also changes to:
* Using `HEAD` instead of `master`, which comes from the Homebrew home page.
* Use the new `shellenv` recommended by Homebrew post-install next steps.
People used to have to tap Homebrew cask to use the `cask` command.
Homebrew have now integrated `cask` into the primary package manager.
`mac` was raising an error because the tap repository no longer exists.
We have dropped the tapping of `"homebrew/cask-cask"` from `mac`.
This may resolve some issues updating the languages, especially nodejs
where the asdf plugin maintains the signing keys required to verify the
package.
In order not to break anyone's laptop.local scripts, keep an alias of
`install_asdf_plugin` to the new method.
Qt, a dependency on capybara-webkit, causes a lot of install problems
and most recently more so. We're not using capybara-webkit so much now,
so we don't absolutely need Qt.
Fixes#499.
Fixes#533 and may make #515 unnecessary.
When installing Ruby and Node, we use `asdf list-all` to find the
latest version. For Ruby, the list includes previews and release
candidates as well as non-MRI versions. The script failed for me because
it tried to install version `ree-1.8.7-2012.02`. Filtering out
versions with letters should ensure we only install fully released MRI
versions.
At first, we did Ruby work, so we needed a ruby version manager.
Then we needed Node, so some of us added a node version manager.
Some of work with varying versions of Python, Elixir, Elm, etc.
ASDF lets us stop searching out solutions to the same problem in
each of these languges by supporting [plugins][1].
[1]: https://github.com/asdf-vm/asdf-plugins/tree/master/plugins
Add a force since there's sometimes a broken Homebrew update.
See https://github.com/Homebrew/brew/issues/1151
`brew update --force` will prevent stalling in the script.
Until the issue above is resolved,
it could pop up for someone trapped in a
'please update'-'already updated' loop.
While trying to run laptop on a new machine, I got the following error:
> A full installation of Xcode.app is required to compile this software.
> Installing just the Command Line Tools is not sufficient.
To truly fix this, we'd need to script the installation of Xcode, which
is beyond my skills at the moment. For now, I use a conditional in the
generated `Brewfile` to skip if Xcode is not installed.
* Move off Travis to Circle.
* Run the entire script on macOS infrastructure.
* Performance optimization:
Enforce a Ruby version to skip Ruby install
We're cheating slightly with this implementation,
but seems worth it for speed of build tradeoff:
* Use pre-installed XCode for compilers, etc.
* Use pre-installed Ruby version.
Related:
https://github.com/thoughtbot/laptop/issues/494
Universal ctags is a maintained and improved fork of
exuberant ctags. It adds many things, including better
ruby ctag support, and new supported languages.
https://github.com/universal-ctags/ctags