Looking for example cacerts_path configuration on a Windows system

Hi!

Trying to run a newly generated Phoenix project under Windows doesn’t work for me: Due to a corporate firewall I cannot download tailwind, and I fail to set cacerts_path properly. Does anyone have or can anyone point me to a working example with cacerts_path set under Windows?

Cheers, Jan Niklas

Hi Jan Niklas,

don’t know how to set the cacerts_path, but you could place your corporate certs in the castore that is used by the tailwind installer (and the following esbuild installer as well). Just paste the certificates to the end of deps\castore\priv\cacerts.pem. Make sure to delete the folder _build\dev\lib\castore before running mix phx.server again.

To get the corporate cacert you could try to export it with the edge browser when you open a corporate page or the proxy’s login page an click through the options an icons in front of the address bar: lock → lock → certificate icon next to the x icon → details → select uppermost cert → export.

I hope it works for you.

Cheers, Marco

1 Like

Try putting this fragment somewhere in the body of config\dev.exs:

…

config :tailwind,
  cacerts_path: System.get_env("HEX_CACERTS_PATH")

config :esbuild,
  cacerts_path: System.get_env("HEX_CACERTS_PATH")

that should harmonize it with any override you may have already configured for Hex, while not baking a bunch of device-specific paths into the ultimate compiled executable (do your coworkers have the exact same username, with the certificate file saved into the exact same place?)

set "HEX_CACERTS_PATH=%ONEDRIVE%\fake_root.pem"
mix deps.get
mix ecto.create
iex -S mix phx.server