An opinionated, tested, workstation configuration tool -- From zero to productive
/bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/carbonfive/seed-crystal/master/bootstrap.sh)"
The base install is just enough to get you productive without too much ceremony, but what if you want to do mobile work?
Or design work? Run one or more these setup scripts. The baseline set up is bin/workstation-setup.sh
cd ~/Documents/seed-crystal
sh bin/design-setup.sh
sh bin/eng-setup.sh
sh bin/java-setup.sh
sh bin/mobile-setup.sh
sh bin/web-setup.sh
Seed::Crystal remembers which set up packages you've already installed, and if you re-run the bootstrap.sh
script,
then it will re-run all of the scripts that you've used before.
$ cd ~/Documents/seed-crystal
$ git pull
$ sh bootstrap.sh
Notice: This workstation has already been seeded. Re-running setup scripts.
Notice:
1 bin/workstation-setup.sh
2 bin/web-setup.sh
3 bin/design-setup.sh
...
Standard toolsets make it easier for contributors to roll onto a project. What you do on your personal projects is your business, but we are in the business of delivering value to our clients. There shall be no vim
/emacs
wars.
Default configurations unless there is a really good reason not to follow it.
Up and running fast.
If something is important enough to include, but you can't find unanimous agreement, pick something, anything and commit. Nobody dies because of a linter configuration choice. We can always come back and make it better.
Document rationale if at all possible. Document in code
if at all possible.
Idempotent. At least non-destructive.
This script is probably run once per project at best. Worst case, it is done on your first day at work, and not again until your hardware is repurposed for someone else.
It's hard to test perfectly: Wipe the laptop. Reinstall the OS. Run the script.
Our world is broken up into somewhat orthogonal core competencies: RoR, React, Mobile, Elixir, Go. No one person will be an expert on all of these toolchains. Provide low-ceremony, low friction tools to help the experts decide what's important.
After checking out the repo, run bin/setup
to install dependencies.
Many cask formulae can be found here: https://formulae.brew.sh/cask/
bin/setup
rake test
Bug reports and pull requests are welcome on GitHub at https://github.com/carbonfive/seed-crystal. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
The gem is available as open source under the terms of the MIT License.
Everyone interacting in the Seed::Crystal project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.