synchronal / medic-ex

Scripts for managing development lifecycle of Elixir projects
MIT License
9 stars 1 forks source link

Potential M1 race conditions #4

Open jasonwc opened 3 years ago

jasonwc commented 3 years ago

There are a few interesting race conditions we encountered that I'd like to document here:

In the end I created a .setup-profile file and source it in my .zshrc so that its clear that this is env for "setup" that I'll probably not need once my real .zshrc file is set.

Here's the contents of that file after going through a full set of setup to get to bin/dev/test on apex:



export PKG_CONFIG_PATH="$(brew --prefix)/opt/openssl/lib/pkgconfig"

# to fix some c library compilation errors: https://apple.stackexchange.com/questions/414622/installing-a-c-c-library-with-homebrew-on-m1-macs
export CPATH=/opt/homebrew/include
export LIBRARY_PATH=/opt/homebrew/lib

# https://direnv.net/docs/hook.html
eval "$(direnv hook zsh)"

. $HOME/.asdf/asdf.sh```
jasonwc commented 3 years ago

Ultimately a lot of these are "geometer" concerns and not necessarily "medic" concerns, but starting to figure out separation of responsibilities would be good.

jasonwc commented 3 years ago

From a Geometer perspective, we should probably differentiate between "laptop setup" with medic and "application setup" with medic. @sax and I also discussed that we should be fairly unopinionated, but its important for Geometer employees to have a good shared workstation and a quick path to devving. But it should be really easy to layer personal setups on top of it without messing up Geometer specific things. And then of course, what of this (if any) should be part of a medic baseline.