NixML:使用nix + YAML的可重复环境
项目描述
NIX-ML:使用Nix + YAML的简单、可重复的环境
使用YAML文件指定的简单、完美可重复的环境。
例如,将内容写入名为env.nml
的文件中。
nixml: v0.0
snapshot: stable-19.03
packages:
- lang: python
version: 2
modules:
- numpy
- scipy
- matplotlib
- mahotas
- jupyter
- scikitlearn
现在,运行
nixml shell
你将进入一个包含上述包的环境,这些包在2019年3月是最新的。从概念上讲,环境将始终从头开始生成,但由于缓存,第一次将需要更长的时间(包括,它将下载所有依赖项)。之后,最多只需几秒钟。
此环境将类似于典型的conda/pip/virtualenv/...环境:它将在PATH
的前面放置相应的二进制文件,以便以高优先级选择,但,你也可以生成一个纯环境,它将只包含你指定的包。这避免了意外使用不属于环境中的包
nixml shell --pure
最后,你可以运行
nixml generate
以仅创建对应于环境的nixml.nix
。
依赖项
- Python
- nix
NIXML格式
它是一个YAML文件
nixml
:要使用的nixml版本。目前,仅支持v0.0
。
snapshot
:这是要使用的包版本。目前,只有stable-19.03
可用,但通用语法是{stable,unstable}-{year}.{month}
。
packages
:包列表,这些包被分组到语言块中。目前支持
python
:Python语言环境,指定版本(version
)和modules
。texlive
:TeXlive包nix
:通用包(例如,vim
或bash
)
作者
项目详情
关闭
nixml-0.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 137bb2ef96c0832d9b38fabe2aa6616a30797c2012ec35f503887163f13aa442 |
|
MD5 | dc5e1083a57d2431541ff1f52c910b23 |
|
BLAKE2b-256 | eb623bf55953ae8655dcaf1dd7da35e7f88078e1bd79bd573548f25a3d274ea9 |