Necessary to make installing personal dotfiles a first class citizen
like many of the other install scripts. Having one's own dotfiles as
part of the machine setup helps ensure the shell is configured properly
especially when it comes to dealing with language specific dependencies
for Ruby, Rust, Node, etc. This reduces duplication within this project
-- and the macOS Configuration project -- from having to know all of
these details when settings can be defined within one's own dotfiles
once.
Necessary to provide a single source of truth for installing Node
dependencies. This used to be managed by the Yarn Setup project but
that project is being deprecated in favor of this project.
Necessary to provide a single source of truth for installing Ruby
dependencies. This used to be managed by the Ruby Setup project but
that project is being deprecated in favor of this project.
Necessary to implement the installation of Rust and associated crates
which can be used by downstream configurations. This functionality was
originally part of the macOS Configuration project but has been moved
here to provide a common foundation in which to build upon.
Necessary to ensure mas is installed before executing the script. This
reduces the strain on downstream projects/scripts from having to do
this check. This was previously part of the macOS Configuration project
but has been moved here as central location for core functionality.
Necessary to reduce an additional prompt for the user to deal with and
allow a more automated install process. This also includes better
architecture detection, instead of CPU detection, when determining
whether to install Rosetta.
Necessary for Apple Silicon machines -- at least for the time being --
in order to translate Intel based programs that are not ready to run
natively of Silicon hardware yet.
Necessary to define the installation of Homebrew via a single function.
This was originally part of the macOS Configuration project but is now
located here instead.
Necessary for answering CPU of current machine when determining what
kind of functionality should be used when executing scripts on Silicon
or Intel based hardware. In this case, it'll answers "M1" when using an
Apple Silicon chip. For Intel based machines, nothing will be answered
since they use multiple "Processor" fields.
Improves labeling and categorization consistency while also cleaning up
some of the README terminology.
The recovery option is more of a last resort, provided by Apple, should
something catastrophic happen with the boot disk.
Resolves the following from happening:
Error: Calling `brew list` to only list formulae is disabled! Use
`brew list --formula` instead.
Includes a correction for the plural form for `casks` as well.
Necessary because installation of Big Sur doesn't seem to like password
protected APFS drives. Disk encryption will have to happen after
installation via FileVault.
Prevents the following deprecation warning:
[DEPRECATED] The `--path` flag is deprecated because it relies on
being remembered across bundler invocations, which bundler will no
longer do in future versions. Instead please use `bundle config set
path 'vendor/bundle'`, and stop using this flag.
Fixes a WEBrick security flaw but also disables deprecation warnings by
default which is sad to see. We'll have to enable these ourselves if we
want to have an early warning sign of future breaking changes. 😢
[Release Notes](https://chl.li/lLaOn)
Resolves the following warning when using Homebrew 2.5.0:
Warning: Calling brew cask list is deprecated! Use brew list
Removed conditional checks for the Skitch, Witch, and OpenEmu
applications since they are no longer supported.