# 🥫Environment-in-a-can Environment tweaks for everyday happiness. ## Setup ```bash git clone git@github.com:mcataford/env.git | . ./bootstrap.sh ``` The setup script will look for pre-existing managed blocks and will not update the file if one is found. ### Updating existing setups Since the managed blocks only `source` the files in this repository, pulling in updates from remote should bring in any new tweaks you want to apply. If changes are made to the managed blocks, you will need to first remove them from where they live and rerun the setup script. ## Structure The package is structured as such: ``` env/ bootstrap.sh # Adds bootstrap block to your shell's config file. steps.sh # Definitions for bootstrapping steps shell_extras # Functions, aliases and exports for the shell. extras.vim # Common config for NVIM. ``` Adding code to `shell_extras` will add code that gets executed on shell-start. ### Adding steps Each step is defined as a function in `steps.sh` and should start with a call to `pre_step` to ensure that a header gets echo'ed out. Additionally, the function should be called from `bootstrap` in `bootstrap.sh` and the `TOTAL_STEPS` should be updated to reflect the number of steps. ## Contributing I'm not currently looking for contributions since this is mainly about standardizing my own setup across machines.