Linux 用于独立rpm数据库中非root安装的yum/zypper

Linux 用于独立rpm数据库中非root安装的yum/zypper,linux,rpm,yum,zypper,Linux,Rpm,Yum,Zypper,我的公司正在开发一种基于Linux的软件产品,该产品将交付给不同的客户。 该产品由相互作用的小型软件组件组成 我们通常向客户提供的更新/新版本是不同软件组件的当前版本,例如compA-2.0.1、compB-3.2.3和compC-4.1.2 目前,我们在安装/升级过程中使用了一个相当简单的shell脚本。但是,我们希望将forwarard转移到最先进的封装,主要是为了能够轻松地交换不同版本的组件,跟踪文件及其所属的包,并为客户提供更方便的更新/安装界面 根据客户的需求,软件组件安装在不同的目录

我的公司正在开发一种基于Linux的软件产品,该产品将交付给不同的客户。 该产品由相互作用的小型软件组件组成

我们通常向客户提供的更新/新版本是不同软件组件的当前版本,例如compA-2.0.1、compB-3.2.3和compC-4.1.2

目前,我们在安装/升级过程中使用了一个相当简单的shell脚本。但是,我们希望将forwarard转移到最先进的封装,主要是为了能够轻松地交换不同版本的组件,跟踪文件及其所属的包,并为客户提供更方便的更新/安装界面

根据客户的需求,软件组件安装在不同的目录中。所以它可能在
/opt
/usr/local
或完全不同的东西中

由于我们的绝大多数客户都运行基于rpm的Linux发行版,因此我们决定使用rpm软件包而不是dpkg

就rpm而言,我们的问题是非root安装。这实际上是直接使用以下功能实现的:

  • 使用
    --dbpath
    选项拥有rpm数据库
  • 使用
    前缀
    机构在不同位置安装
  • 可选:使用rpm规范文件中的
    AutoReqProv:no
    禁用自动库依赖性
使用这些功能/选项,我们可以创建rpm软件包,这些软件包可以作为非root用户使用
rpm
命令行工具安装

但是,我们真正希望看到的是通过http存储库通过
yum
zypper
安装这些软件包。后者是基于SUSE的分布中的首选工具

我们看到的问题是,没有一个工具提供非root安装所需的可选rpm数据库选项(
--dbath

有人对如何处理这个问题有什么建议/想法吗?是否有我们不知道的第三个软件包工具?

或者我们应该走一条完全不同的路线?我曾经玩过GNU
stow
,并围绕它编写了一些非常简单的类似于yum的逻辑-但之后我基本上会启动我自己的包安装工具,我试图绕过它。

开始听起来像是使用客户端定义的目录?