romenigld
I’m reading the ebook Programming Phoenix 1.4 and in the page 268 when I try to execute the iex it complains for this:
** (RuntimeError) environment variable WOLFRAM_APP_ID is missing.
(stdlib) erl_eval.erl:680: :erl_eval.do_apply/6
(stdlib) erl_eval.erl:449: :erl_eval.expr/5
(stdlib) erl_eval.erl:126: :erl_eval.exprs/5
(elixir) lib/code.ex:240: Code.eval_string/3
(mix) lib/mix/config.ex:158: anonymous fn/2 in Mix.Config.__import__!/2
(elixir) lib/enum.ex:1948: Enum."-reduce/3-lists^foldl/2-0-"/3
(mix) lib/mix/config.ex:157: Mix.Config.__import__!/2
So I add the API key in both config/dev.exs and config/prod.secret.exs files:
wolfram_app_id =
System.get_env("XXXXXX-XXXXXXXXXX") ||
raise """
environment variable WOLFRAM_APP_ID is missing.
"""
config :info_sys, :wolfram, app_id: wolfram_app_id
I created the key XXXXXX-XXXXXXXXXX in the http://developer.wolframalpha.com/portal/myapps/index.html
with the Application name: rumbl
and then generated the AppID: XXXXXX-XXXXXXXXXX
What I’m doing incorrect?
the value of the WOLFRAM_APP_ID I put just on the config/prod.secret.exs file?
like WOLFRAM_APP_ID= "XXXXXX-XXXXXXXXXX"
and then keep on the config/dev.exs file the code: System.get_env("WOLFRAM_APP_ID") || ?
Trending in Questions
Hello!
Suppose you are building workflow (order / task / payment) processing system with the following requirements:
Each workflow con...
New
Hi all,
I’m working on a Phoenix project where I need to make external HTTP requests and I’m trying to choose between Req and HTTPoison....
New
How do I tell Hologram not to escape HTML when substituting into templates?
{Textile.render(@product.long_description)}
escapes the HTM...
New
I’d like to create a file with 600 permissions (rw-------), but there’s a race condition if I create it and then change the permissions. ...
New
Hi,
we run different LLM models across a cluster, with each node loading a configurable subset. Model-specific queues let nodes consume ...
New
When I use Mix.install with a git dependency, using git@github.com:... how do I change the SSH identity used?
I’ve got two Github accoun...
New
Hello all. I have a question as to best practices for code organization when implementing a liveview with a lot of responsibilities.
Sup...
New
Other Trending Topics
Hey there,
I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first.
...
New
Hi everyone :waving_hand:
I wanted to share something I’ve been building — NowBlind, a random chat app designed to help people discover ...
New
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly)
AI dream has many faces, but general...
New
Localize is the next generation localisation library for Elixir. Think of it as ex_cldr version 3.0. The first version will be released ...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #code-sync
- #discussion
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #blog-post
- #elixirconf-us
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #elixirconf-eu
- #processes
- #security
- #api
- #forms
- #performance










Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
NobbZ
You need to set an environment variable that’s visible to your BEAM process. How to do that depends on your operating system.
If you use linux/mac with a sh compatible shell, then it’s
export, for fish and windows it’sset.romenigld
I have a Mac OS Mojave
NobbZ
Yeah just see my edited post.
It’s
exportthen (under the assumption that you use bash or zsh, which both are the default shells in Mac, depending on the version, but as I’m not a Mac user by myself I have no clue when the change happened)fun2src
Hi,
echo $SHELL
Mojave: /bin/bash → .bash_profile
Catalina: /bin/zsh → .zprofile
https://forum.elixirforum.com/t/programming-phoenix-could-not-fetch-application-environment-wolfram/26584
NobbZ
I’d not hardcode it into any of those…
romenigld
I use zsh.
So I put in the
~/.zshrcfile?romenigld
I readed before this post, but it’s not my case.
NobbZ
As I said, I’d not hardcode it there for several reasons, but use a
.envor.envrcfor the project (not comitted into source control) andsourceit before working with the project.direnvis a nice tool for such setups. It will automatically “execute”.envrcfiles when entering a directory, if that directory is “trusted”.romenigld
Just for help if someone stopped like me in this part of the book, I’ll share what I do for run correctly.
I create inside the config folder a
.envfile and then add:export WOLFRAM_APP_ID="XXXXXX-XXXXXXXXXX"then after I run on terminal:
source config/.envAnd then I try
iex -S mix:and work’s.
Then I add in the
.gitignorefile:for not share by git the WOLFRAM_APP_ID.
Is that correct what I’m doing?
Thank’s for Help @Nobbz and @fun2src.
NobbZ
This will only ignore
.envfrom the repositories root. If you want to excludeconfig/.env, then you have to do/config/.env, assuming that git-root and project root are the same.Other than that, the flow seems to be correct, though I prefer to have
.env(rc) files in the project root for discoverability.