包管理器的包装器

包管理器的包装器

有很多特定于语言的包管理器,例如用于 perl 的 cpan、用于 haskell 的 cabal 等。当我们想要安装某些软件时,有时可以从相应的存储库安装它,安装说明就像(例如,亚西)npm install yaxycpan somethingcabal install something.

这些包管理器的语法略有不同,它们都需要root权限和/或自定义设置,或者(在Yaxy的情况下)只是更新版本的解释器(Ubuntu打包的nodejs太旧而无法运行)。

是否有针对不同包管理器的包装器可以统一/自动化不同包管理器的设置?

编辑:我想要的是一种执行这样的安装命令npm install yaxy并使其工作的方法,而无需手动安装系统 npm+nodejs、获取非功能性可执行文件、找到在我的系统上安装更新的 nodejs 的最简单方法、重新安装...

答案1

我见过的最接近你要求的是我不久前在 github 上发现的一个名为 的项目fpm。代表 Effing 包管理器。

资料来源:

  • gem(甚至为您自动下载)
  • python 模块(为您自动下载)
  • 梨(也为您下载)
  • 目录
  • 转速
  • 德布
  • 节点包 (npm)

目标:

  • 德布
  • 转速
  • 索拉里斯
  • 柏油
  • 目录

该应用程序fpm是一个 Ruby gem,因此您可以像这样安装它:

$ gem install fpm

安装后,您可以按如下方式构建包:

 $ fpm -s <source type> -t <target type> [list of sources]...

操作系统包管理器与编程语言管理器

我会提醒您将它们视为包管理器。操作系统包是管理应用程序所必需的,但可以使用以下工具完全独立于操作系统来管理 Perl、Ruby 和 Python 等编程语言:

上述编程语言包管理器都不需要以 root 身份运行。如果您愿意,您可以这样做,但一般来说,除了您安装的任何插件模块、gems 等之外,它们还管理编程语言的基本安装。这确实是管理此类编程语言的最合适方法,特别是当它们在系统上设置用于特定应用程序时。

有关更多示例,请参阅我对之前的 U&L 问题的回答,其中我介绍了编程语言包管理器:

相关内容