# 🥫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. ## Profiles A profile must be provided via `$ENV_PROFILE`. This can be used by steps to determine variants of a file to copy over. Files with profile specificity should be named `file..`. ## Structure The package is structured as such: ``` env/ bootstrap.sh # Adds bootstrap block to your shell's config file. files/ shell_extras # Functions, aliases and exports for the shell. extras.vim # Common config for neovim. git_config # Configuration commands for git ... Other configuration templates ``` Adding code to `shell_extras` will add code that gets executed on shell-start. ## Contributing I'm not currently looking for contributions since this is mainly about standardizing my own setup across machines.