RPM包文件名语法,与Debian不同



我最近为Debian(实际上是Ubuntu18和20(构建了一个可执行文件包。核心内容的tarball能够在Fedora 34上运行。所以现在我被要求为它创建一个RPM。

Debian文件名类似于:

mystuff-sfwrname-edu_21.05-0715.1234-u20_amd64.deb

这对应于Debian包文件名的name_版本_arch.deb语法。下划线是主要分隔符;减号其实并不重要。(u20表示Ubuntu 20.04版本;由于libc问题,Ubuntu 18.04也有u18版本。(

来到RPM世界,我发现语法是:名称-版本-发布arch.rpm,其中减号和最后一个周期是显著的。然而,似乎有像openssh-clients-7.4p1-16.el7.x86_64这样的包名称在名称中带有减号,在体系结构之前带有句点。

然后我可以把我的包裹命名为:吗

mystuff-sfwrname-edu-21.05-0715.1234.el7.x86-64.rpm

其中:

  • name=mystuff-sfwrname-edu(带多个减号(
  • version=21.05
  • release=0715.1234.el7
  • arch=x86_64

如果我认为相同的RPM在Fedora 34和CentOS 7上都有效,我会去掉el7还是有其他我不知道的规则/实践?

简而言之,是的,你可以。

有关版本指南的详细信息https://docs.fedoraproject.org/en-US/packaging-guidelines/Versioning/

.el7是disttag。通常在规范中写为:

发布:0715.1234%{?dist}

RPM本身根本不关心它。它把它当作一根简单的绳子。仅CCD_ 17<CCD_ 18。因此,从技术上讲,您可以安装从.el7到RHEL8的软件包。但当然,有时由于不同平台上的路径不同,它不会像预期的那样工作。你必须自己测试。

相关内容

  • 没有找到相关文章

最新更新