为包含 anaconda、atom、node.js 等的多语言项目包编写安装脚本的最佳方法?

问题描述

我正在为富有成效的研究(即写作、数据分析、出版等)设计一个环境。

为了与其他人分享最终结果,我需要找到一种方法来打包并设置本地安装。

该项目依赖于 Anaconda,因此可以使用 conda 作为包管理器。 它还包括

  • Pandoc 和一些 pandoc 包,有些必须直接从 Github 获取,因为某些版本无法通过 conda-forge 获得(在 conda 中可行)
  • Atom 和 Atom 包;它们应该由我的脚本安装和配置(这可以通过 apm 包管理器在 CLI 上运行)
  • Node.js 和 Mermaid 以及其他一些需要 npm 调用的 JS 包
  • 一些文件系统级操作,例如从包中删除我只需要其中一部分的部分、创建符号链接和别名等。
  • 也许是一些用于修改 yaml/json/ini 文件或从中读取的 Python 代码

主项目将驻留在 Github 存储库中。用户可以从那里克隆它并在本地启动构建脚本。

我的想法是编写一个 Bash shell 脚本

  • 基于requirements.yaml 为所有可以通过这种方式完成的事情创建一个conda 环境
  • 使用 CLI 命令(wget/curl 等)安装其他部分
  • 使用 CLI 命令进行所有必要的修改,可能使用一些简短的 Python 脚本(例如,用于更改或读取 JSON 或 yaml 文件)。
  • 我在本地使用的是 OSX Big Sur,应该支持 Linux,Windows 兼容性很好。

在我开始之前:

  • 这种方法可行吗?我认为它会非常透明,但当然也有点专有。
  • Docker 对我来说可能有点矫枉过正,而且我还了解到 OSX 上的执行速度会很慢。
  • 相同的环境可能会在同一用户的机器上安装多次,因此我可以控制例如通过别名或符号链接使用现有包和文件。对于非python/非conda 部分(例如atom、node.js、mermaid 可能是所有安装的相同二进制文件;只是Python 包集可能因安装而异),将多个安装解耦并不重要。

感谢您的专业知识!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)