9.1.pkg-message(安装二进制包时显示的消息文件)
最后更新于
最后更新于
为了在安装包时显示一条消息,可以将消息放在 pkg-message 文件中。此功能通常用于在执行 pkg install
或 pkg upgrade
后显示安装过程中需要采取的额外步骤。
重要
pkg-message 必须只包含对 FreeBSD 设置和操作至关重要的信息,并且该信息必须是特定于该 Port 的。
设置信息应仅在首次安装时显示。升级说明应仅在从相关版本升级时显示。
请勿在消息中添加空格或符号行(如
----------
、`` 或==========
)。将格式设置交给 。提交者有权使用 UCL 格式规范将现有消息限制为安装或升级范围。
请务必使用正确的工具来处理服务。
使用
service name start
启动服务,而不是使用/usr/local/etc/rc.d/name start
。使用
sysrc name_enable=YES
修改 rc.conf 中的选项。
pkg-message 支持两种格式:
raw 普通的纯文本文件。其消息仅在安装时显示。
UCL 如果文件以“[”开头,则它会被视为 UCL 文件。UCL 格式的详细说明请参见 。
注意
请不要在 pkg-plist 中添加 pkg-message 的条目。
该格式如下。它应为对象的数组。每个对象可以包含以下关键字:
message
要显示的实际消息。此关键字是强制性的。
type
消息应显示的时机。
maximum_version
仅在 type
为 upgrade
时使用。仅在升级自严格低于指定版本的情况下显示。
minimum_version
仅在 type
为 upgrade
时使用。仅在升级自严格高于指定版本的情况下显示。
maximum_version
和 minimum_version
可以组合使用。
type
关键字可以有三种值:
install
仅在安装包时显示该消息。
remove
仅在删除包时显示该消息。
upgrade
仅在升级包时显示该消息。
重要
为了与非 UCL 格式的 pkg-message 文件保持兼容,UCL pkg-message 的第一行 必须是 一个单独的“[”,最后一行 必须是 一个单独的“]”。
示例 1. UCL 短字符串
消息由双引号 " "
分隔,用于简单的单行字符串:
示例 2. UCL 多行字符串
示例 3. 在安装/卸载时显示消息
当消息仅需要在安装或卸载时显示时,设置 type
:
示例 4. 显示升级时的消息
当升级 Port 时,显示的消息可以更加符合 Port 的需要。
当显示升级时的消息时,限制显示给用户的时机非常重要。大多数时候,这是通过使用 maximum_version
来限制消息的使用,以确保它仅在从某个特定版本之前的版本进行升级时显示。
多行字符串使用标准的 here 文档语法。多行定界符 必须 紧跟在 <<
符号后,没有任何空格,并且 必须 只包含大写字母。要结束多行字符串,在单独的一行中添加定界符字符串,不带任何空格。来自 的消息可以写成: