问题标签 [rpm-spec]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 如何在 Red Hat Enterprise Linux 中进行 rpm 安装期间将启动器添加到面板?
有谁知道如何在 rpm 安装期间将启动器放在应用程序的面板中?例如在 Firefox 启动器旁边。
我猜它可能涉及在规范文件中的 %post 期间将 .desktop 文件移动到目录中?
rpm 适用于带有 gnome 的 RHEL 6.1 系统。
我正在为我正在处理的项目从规范文件创建一个 rpm。我还使用 .desktop 文件将启动器放入 Applications\Accessories 菜单。我被要求将启动器放入应用程序的面板中,并尝试搜索但收效甚微。
任何的建议都受欢迎。
centos - rpm 安装脚本未执行
我正在使用安装了 rpm 4.4 的 ClearOS5.3。我正在使用 rpm 分发我创建的模块,但是%post
当我安装包时,我的规范文件中的脚本没有执行。
我正在使用命令rpmbuild -ba mypackage.spec
来构建 rpm,并使用命令rpm -ivh mypackage-version-release.rpm
来安装包。
make
在 %install 脚本中手动执行安装(不使用)。所有文件似乎都安装在正确的位置,但是没有安装脚本运行(特别是%post
和%preun
,在我的包的情况下)。使用其他安装脚本 ( %pre
) 进行的测试表明这些部分也不起作用。
根据我在调试模式下安装软件包的情况,%pretrans
和%posttrans
脚本运行。此外,在构建包时,它会识别安装脚本并列出它们的依赖项 ( /bin/sh
)。
有谁知道为什么这些安装脚本可能无法运行并有解决问题的建议?
version - rpm 规范文件“建议”声明
我目前正在翻新许多过时的规范文件,我记得谈论过软依赖关系,这对于当前的规范文件会派上用场(即 lighttpd 建议安装最流行的模块,如 mod_rewrite、mod_redirect)。
我的主要问题是,google 似乎没有发布任何关于该声明的执行状态Suggests:
、当前总体状态和 rpm 版本要求的有价值信息。大多数文档和操作指南都来自 2004 年及更早的时间,过于过时而不能被视为可信赖的来源。绝对 rpm pdf 也没有说明任何关于Suggests:
标签的内容。
非常感谢您提前提供的任何信息。
发布脚本:OpenSuSE 和 Mageia 似乎使用它,但除此之外..
https://build.opensuse.org/package/view_file?file=meld.spec&package=meld&project=openSUSE%3AFactory
rpm - rpmbuild 时是否可以忽略某些特定的自动检测依赖项
rpmbuild 可以通过查找包中包含的二进制文件所需的共享库来自动检测依赖关系,虽然这几乎每次都是一个好的想法,但有时它是不可取的,但仅适用于某些特定的库。我指的是某些二进制文件需要的库不是通过其 rpm 包管理提供给系统但由第三方安装程序直接安装的情况。
现在,问题是:有没有办法保持自动检测功能处于活动状态(对于包中的其他二进制文件很方便)但只忽略/删除这些特定的库?
就像是
rpm - 为其他包创建包装器 rpm
我正在尝试创建一个 RPM(“我的”)以方便安装另一个 RPM“其他”(不是由我维护)。这个第三方 RPM 需要包“foo”和“bar”。我希望我的 RPM 提供包“foo”和“bar”,但使用我自己的实现。是否可以定义一个 RPM 来指定它提供其他包?
rpm - 如何获得 RPM 构建以正确设置安装路径
这是我第一次尝试构建 RPM,我发现它有点令人困惑,还没有真正得到不同的变量,所以不胜感激下面的任何建议..
我有以下规格文件:
它可以创建 rpm 文件,但是当我在目标服务器上安装它时,它安装在 /bin 和 /etc
源文件是以下目录结构中的 gzip tar 文件,除了将其安装在文件夹 /var/opt 中之外,我想保留它
- 如何在规范文件中设置安装路径?
- 我是否需要制作目录以保留结构,还是会自动保留该结构?
任何他都表示赞赏。
谢谢
D
rpm - 如何检测 RPM 是源 rpm 还是二进制 rpm?
如何检测 RPM 是源 rpm 还是二进制 rpm?
显然我不想依赖文件名。
rpm - 从 Linux 上的 rpm 包中删除一些信息,例如软链接
这是我目前正在处理的一种情况。
我提供了一个包含 32 位和 64 位应用程序的 rpm 包,并且可以在两种模式下安装,即在 64 位和 32 位平台上。
由于该软件包包含这两个应用程序,因此当尝试在 32 位 Linux 机器上安装 rpm 软件包时。它也为 64 位应用程序和 32 位应用程序创建软链接。在安装后,我删除了 64 位应用程序的软链接,因为我们无法在 32 位机器上安装它。
现在,问题出现了,因为该软件包已经安装在 32 位机器上,并且我已经删除了 64 位应用程序的软链接作为安装后的一部分,但 rpm 仍然包含这些 64 位应用程序软件的信息-links 并且在通过 rpm 命令查询时可以看到,但实际上这些不应该。
因此,任何人都想通过 rpm 查询并删除 32 位应用程序的额外信息。这应该在安装 32 位软件包期间完成,可能在安装后。
任何帮助/想法将不胜感激。
packaging - 如何为不同的环境使用相同的路径创建 RPM 子包?
我想使用 rpm 为不同的环境(live、testing、developer)构建子包,但对于相同的文件,所以有一个名为 name-config-live 的包,一个名为 name-config-testing,一个名为 name-config -developer 并在其中具有相同的路径,但每个路径的配置都与其命名的环境相对应。举个例子
假设在所有环境中我都有一个名为 /etc/name.conf 的文件,并且在测试时我希望它包含“1”、开发时“2”和实时“3”。是否可以在同一个规范中执行此操作,因为子包生成只发生在最后而不是按照我输入的顺序。(希望不使用 %post -n )
我尝试使用 BuildRoot 但似乎这是一个全局属性
fedora - 用于创建 RPM 包的简单规范文件
我有一个二进制 Javarun.jar
文件,一个 bash 脚本run.sh
,它run.jar
通过java -jar
.
- 在我的环境 (
~/rpmbuild/
) 中,我必须将这两个文件放在哪里?我必须将源文件放在哪里?(我想我应该将源压缩为.tar.gz
)
如何将规范文件写入:
- 制作目录
~/bin/my-package
; - 复制
run.jar
到run.sh
上面的目录;
这就是我想要的。你能帮帮我吗?
谢谢你的时间。
PS:我经历了这个操作方法。不幸的是,我是这方面的新手,我找不到解决方案。