问题标签 [direnv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1412 浏览

python-3.x - 如何将 direnv 与 python venv 一起使用?

我有这条线.envrc

我基本上在它所在的文件夹中创建了一个 python3 venv .envrc

但是,即使执行了 .evnrc(例如,当我进入此目录时,所有现在的 env 变量都已正确设置),venv 也没有被激活。

当我这样做时which python3,它显示/usr/local/bin/python3而不是<path to my current folder>/python-venv/bin/python3

如果我手动运行该行,bash 提示符将按预期source切换。(python3-venv) my-workstation:working-folder antkong$

我怎样才能python-venv正确激活?

我在 MacOS Mojave 中运行它。

0 投票
3 回答
3675 浏览

bash - 当 shell 在具有 .envrc 的目录中启动时,Direnv 未加载环境

想象一下,我在一个 shell 中,工作目录设置为一个包含.envrc文件的目录。当我现在在终端模拟器中打开一个新选项卡时,一个新的 shell 会启动到与原始 shell 相同的工作目录中。

由于某种原因,该.envrc文件未加载到此新外壳中。如果手动退出工作目录并再次进入,则加载环境变量。

有没有办法在创建 shell 时自动加载变量?

我正在运行带有 direnv 2.20.1 的 MacOS Mojave (10.14.4),使用 bash 作为我的 shell。我正在通过我的.bashrc.

0 投票
1 回答
827 浏览

direnv - 无法使用 direnv 覆盖 PS1

我正在关注PS1 上的 direnv wiki。我的文件中有以下相关条目。

.bashrc

.envrc

我已经允许使用最新版本的.envrcwith direnv allow。但是,当切换到目录时,没有设置自定义的 PS1 值,虽然这些值似乎是正确的

我不确定 wiki 中的解决方案应该如何工作,因为显然 PS1 的值在第一次加载文件时设置为 DEFAULT_PS1并且没有作为钩子.bashrc的一部分重新评估。direnv

如何使用 更改 PS1 的值direnv

0 投票
2 回答
3402 浏览

direnv - Direnv 不允许我允许

我已使用以下命令将 direnv (v2.18.2) 安装到我的 Ubuntu 16.04 机器上:

sudo snap install direnv

根据网站,并添加了以下行:

eval "$(direnv hook bash)"

按照说明添加到我的~/.bashrc文件中。当我使用我的文件导航到目录时.envrc,显示以下消息:

direnv: error .envrc is blocked. Run `direnv allow` to approve its content.

甜的。所以我跑了direnv allow,我立即遇到了完全相同的错误。我也尝试过使用direnv allow .,但这似乎没有帮助。此外,完全重新启动我的笔记本电脑也没有帮助。

我看到的所有建议都是针对 direnv 找不到.envrc文件,但在这里找到了它,只是不允许我允许它。

0 投票
0 回答
207 浏览

go - use direnv then the gopls error said can't import fmt

I started using direnv recently.

I created a .envrc file in my project’s root directory.

There is only one line in .envrc:

I use vim with coc & gopls to write go, but when I open main.go coc shows this error

This is my project structure

0 投票
1 回答
407 浏览

shell - “direnv export bash”:生成的变量在开始时无缘无故地得到一个美元符号 $?

在我在cd文件夹中编辑后的脚本中,我检查direnv系统中是否有可用的命令以及是否.envrc已经创建了文件。如果是这样,我正在生成一个 python 虚拟环境:

由于某些原因,VIRTUAL_ENV变量值前面有一个美元符号,之后我无法按我的意愿管理它。这是执行此操作的完整功能。

我将脚本作为sh script.sh. 奇怪的是,手动运行相同的命令行为正确。

set -x是输出(我已经发布了我认为与案例相关的内容)。奇怪的是,exports 的$前面都是一个,这似乎表明了这个问题。

0 投票
1 回答
265 浏览

zsh - 为什么 direnv 无法读取我的 zsh/fish/elvish/tcsh 脚本?

在尝试评估文件时,我在完全有效的///脚本中.envrc收到错误“ emulate: command not found”或“ cd: -q: invalid option”或任意数量的各种可能错误。zshfishelivshtcsh

0 投票
4 回答
8626 浏览

pip - 如何在 Apple M1 Silicon 笔记本电脑上安装 GRPCIO?

每次我尝试在项目中安装pip带有 GRPCIO 的包作为依赖项时,.direnv由于我的架构是 arm64,我都会遇到构建失败。在等待 GRPCIO 工作人员发布更新时,我该如何解决这个问题?

0 投票
0 回答
94 浏览

node.js - 如何在 shell 脚本中串行执行命令?

我想编写一个shell脚本来按顺序执行一些命令(下一个只有在前一个完成后才开始,依此类推)。我以前从未编写过 bash 脚本,也找不到合适的顺序。

我知道在终端中您可以执行类似的操作yarn this && yarn that && yarn other并且它可以工作,但我不知道 shell 脚本中的等价物。

0 投票
0 回答
199 浏览

docker - 构建时无法在 docker 中获取 asdf-direnv 工作

我正在尝试asdf-direnv在docker中使用。按照自述文件,asdf-direnv我制作了这个 Dockerfile

问题是,这条线RUN echo $(which python)在我运行时可以正常工作,但在我构建映像时却不行。我有

  • /root/.asdf/shims/python建的时候docker build . -t venv-gpu -f docker-gpu/Dockerfile
  • /venv/.direnv/python-3.8.7/bin/python什么时候docker run --gpus all -it venv-gpu

我该如何解决这个问题?