apt-get的需求文件,类似于pip

Vla*_*hev 22 python apt pip apt-get

我喜欢你如何使用pip要求管理依赖项.在apt-get的情况下有类似的东西吗?

http://www.pip-installer.org/en/latest/requirements.html#requirements-file-format

kre*_*nel 28

您的问题是,您希望在一个文件中包含系统依赖关系列表,以便能够使用一个命令进行安装.

我不建议您在系统依赖项中包含软件包的版本.在像" build-essential "或" uuid-dev " 这样的软系统依赖中,您通常需要最新版本的软件包.在像python,postgres或者其他类似的"硬依赖"中,通常版本是在包本身的名称中指定的,如" python2.6-dev "或" postgresql-8.4 ".您可能定义的软件包的确切版本的另一个问题是,postgresql-8.4的版本8.4.11-1可能在三个月或一年内在存储库中不可用,您将最终安装当前版本在回购中.

例.您可以使用项目所需的系统包创建名为"requirements.system"的文件:

python-virtualenv
python2.6-dev
uuid-dev
python-pip
postgresql-8.4
Run Code Online (Sandbox Code Playgroud)

然后,在您的INSTALL文件中解释如何安装系统包.

# Install system depencences by running
cat ~/project/install/requirements.system | xargs sudo aptitude install
Run Code Online (Sandbox Code Playgroud)

我们已经运行了这个配置大约两年,不得不从刮擦中重新创建环境几次,我们从来没有遇到过问题.

  • 您也可以使用`package_name = version`(`python-virtualenv = 1.7.1.2-1`)以类似的方式添加包的版本号.但是,它可能没有pip那么有用,因为Debian镜像不能保存与PyPI存储库一样多的旧包版本. (4认同)
  • 不需要cat:`xargs apt-get install <reqs.txt` (3认同)

Jos*_*lez 7

我们在工作中使用aptfile格式。它只是一个内置了一些助手的bash包装器。