用于使用LHCb CVMFS conda装置的包装器

LbCondaWrappers的Python项目详细描述


LHCb Conda包装

提供对安装在CVMFS上的conda环境的访问的包装脚本。在

标准用法

提供的主要环境名为default,旨在提供在标准LHCb软件栈之外执行分析所需的大多数软件工具。 这包括python3的最新版本,ROOT、Snakemake、jupyterlab、matplotlib、scikit learn、tensorflow等等。在

基本用法

可以使用lb-conda命令激活环境,其工作原理与lb-run类似。 要在默认环境中启动bashshell,请运行:

$ lb-conda default bash
[bash-5.0]$ python --version
Python 3.7.6
[bash-5.0]$ root --version
ROOT Version: 6.20/04
Built for linuxx8664gcc on Apr 202020, 15:03:00
From @

可直接使用以下命令运行替代命令:

^{pr2}$

包括texlive

全功能的texlive安装没有包含在任何环境中,因为它太大了,但是可以通过传递--texlive参数来添加它。在

$ lb-conda --texlive default latex --version
pdfTeX 3.14159265-2.6-1.40.21 (TeX Live 2020)
kpathsea version 6.3.2
Copyright 2020 Han The Thanh (pdfTeX) et al.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Han The Thanh (pdfTeX) et al.
Compiled with libpng 1.6.37; using libpng 1.6.37
Compiled with zlib 1.2.11; using zlib 1.2.11
Compiled with xpdf version 4.02

版本控制

偶尔会生成default环境的新版本,以添加新的包并使其保持最新。 如果要使用旧版本,可以使用以下方式列出可用版本:

$ lb-conda --list default
2019-12-26
2020-05-14

2020-05-14版本可以使用以下方式显式选择:

$ lb-conda default/2020-05-14 bash

定制

由于使用的conda环境安装在只读CVMFS文件系统上,因此通常的pip install和{}命令将不起作用。 提供了两个选项来定制环境。在

安装其他python包

这是首选选项,因为大多数数据将保存在CVMFS上,并通过在CVMFS安装的环境之上创建一个虚拟环境来工作。 但是,它只允许pip安装Python包和本地构建的软件。在

要在本地目录(“我的本地目录”)中创建虚拟环境,请运行

$ lb-conda-dev virtual-env default my-local-directory

现在可以使用类似于lb-conda default使用run脚本:

$ my-local-directory/run bash

要升级uprootPython包运行:

$ my-local-directory/run bahs
[bash-5.0]$ python -c 'import uproot; print(uproot.__version__)'3.11.6  # <- Original version[bash-5.0]$ pip install --upgrade uproot
Collecting uproot
# Truncated output
Successfully installed uproot-3.11.7
[bash-5.0]$ python -c 'import uproot; print(uproot.__version__)'3.11.7  # <- New version

要在虚拟环境中安装本地编译的应用程序,应将安装前缀设置为本地目录的绝对路径。 如何做到这一点将取决于特定应用程序使用的构建系统。在

完全定制环境

不建议使用此选项,尤其是在AFS/EOS上运行时,因为它会导致大量数据和许多小文件被复制到本地目录中。 但是,它允许您完全克隆环境,然后进行任何修改。在

TODO:目前还没有记录。。。在

高级用法

使用非默认环境

要查看运行的可用环境的完整列表:

$ lb-conda --list
B2OC/b2dstdspi-gpu
B2OC/b2dstdspi
Charm/D02KsHH
Semilep/rdst
default
DPA/analysis-productions-certification
DPA/analysis-productions

然后可以使用其名称选择自定义环境:

$ lb-conda Charm/D02KsHH python --version
Python 3.6.5 :: Anaconda, Inc.

在默认环境中建议新的或升级的包

请打开一个问题here解释应该添加/升级的内容以及原因。在

添加新的环境

这还没有广泛提供。 如果您有很强的理由添加环境,请打开一个问题here来解释您的需求是什么。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
算法图形。路径方向Java枚举方向问题无法使用EAST   Java:将字符串转换为特定语言环境   javaspringboot&Thymeleaf为后续调用保存搜索表单的最佳方法   mapreduce程序中未调用java reducer   java如何将url中的Gif文件保存到手机中?   如何在JavaSwing中使用[Esc]键最小化JInternalFrame?   java创建了一个包含100个按钮、80个空按钮和20个随机按钮的网格布局   如何在java中使用数组对2d字符串数组中的每一行进行排序。分类   java无法识别的SSL消息,纯文本连接?例外   为什么Java编译器允许在抛出部分列出方法无法抛出的异常   java将预测数组添加到训练数组   java从Ajax调用获取响应文本   使用改型2的java应用程序等待一分钟后退出