问题描述
我正在尝试学习 nix 包管理器,我想使用 nix 包管理器构建一个 Flask 应用程序,特别是使用 --pure
。当我运行 nix-shell --pure default.nix
时,出现错误 Syntax error,unexpected $end,expecting ';',at /Users/USER/Desktop/NixRank/flask-hello/default.nix:23:2
,其中第 23 行对应于右花括号。我认为错误消息在某种程度上没有帮助,非常感谢任何帮助:)
这是我的 default.nix
let
name = "learnnix";
src= ./.;
version = "0.1";
pkgs=import<nixpkgs>{allowUnfree=true;};
in
with pkgs
stdenv.mkDerivation{
name = "${name}";
inherit src;
buildInputs = [
bash
python3
python38Packages.flask
];
buildPhase = ''
flask run
'';
installPhase =''
open "http://localhost:5000/"
'';
}
解决方法
解决了!问题出在 with pkgs
行上,其中缺少分号。在这种情况下,错误消息没有帮助。我选择把帖子留在这里,这样也许以后有人可以受益。