gpt4 book ai didi

erlang - 在非 NixOS 系统上使用 `nix` 安装 Elixir 或 Erlang > 19 的规范方法是什么?

转载 作者:行者123 更新时间:2023-12-04 22:55:08 25 4
gpt4 key购买 nike

请从在非 NixOS 机器上安装 Nix 包管理器之后的那一刻起,向 10 岁的 child 解释它。例如,我在 Mac 上,甚至没有 ~/.config目录。
我找到了以下(可能)相关资源,我无法将这些部分放在一起:

  • Nixpkgs manual, 9.1. BEAM Languages (Erlang, Elixir & LFE)
  • Elixir 1.5.1 with Erlang 20.0 on NixOS 18.03?
    我在哪里指定 beam.packages.erlang<rel>.elixir确切地?
  • Nixpkgs manual, 6.4. Modify packages via packageOverrides
  • Nix Pills, Chapter 14. Override Design Pattern
    这个需要吗?

  • 最后,我使用 Erlang 21 安装了最新的 Elixir,如下所示,但我确信这不是应该的方式。
    $ # Cloned the `nixpkgs` repo from github and started the repl
    $ # in the same the directory.
    $
    $ nix repl
    Welcome to Nix version 2.0.4. Type :? for help.

    nix-repl> :l . # if in the cloned `nixpkgs` repo
    Added 9182 variables.

    nix-repl> pkgs.beam.packages.erlangR21.elixir
    «derivation /nix/store/vcadn6d6wgk1yjlci458vy8jqv66wwdy-elixir-1.6.5.drv»

    nix-repl> :q

    $ nix-store --realise /nix/store/vcadn6d6wgk1yjlci458vy8jqv66wwdy-elixir-1.6.5.drv

    最佳答案

    你走在正确的轨道上;没有必要重新开始。

    nix repl 安装软件包您可以使用 :i命令。

    nix-repl> :i pkgs.beam.packages.erlangR21.elixir

    这会将软件包安装到您的 ~/.nix-profile 中。它将在哪里 $PATH ,所以你可以调用它。相当于运行
    nix-env -iA nixpkgs.beam.packages.erlangR21.elixir
    nix-store -r (或等价的 nix-store --realise )被认为是一个非常低级的工具。它只能创建指向包的符号链接(symbolic link),而这很少是您想要的。默认情况下它甚至不会创建垃圾收集根,因此如果您进行垃圾收集,符号链接(symbolic link)将被破坏。

    虽然 nix-env -iA是一种有效的软件安装方式,可以考虑 ~/.nix-profile全局状态并因此避免它。在我看来像 elixir这更多地与项目相关,而不是与您的用户相关。例如,您可能希望对某些项目使用不同的版本,并且与从事该项目的其他人共享您的开发工具可能是有意义的。那就是你可以使用 nix-shell 为了。这是 example of shell.nix.

    关于erlang - 在非 NixOS 系统上使用 `nix` 安装 Elixir 或 Erlang > 19 的规范方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51371028/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com