如何通过选择 "make config" 中的所有选项来自动安装端口?
How to automate ports installation by selecting all options in "make config"?
我想在我的 FreeBSD 环境中自动安装端口。通常我采用默认设置,但对于某些端口,我想 - 自动 - select 所有选项。
是否可以做类似的事情
/usr/ports/.../> make config
/usr/ports/.../> ** select all options **
/usr/ports/.../> make clean install BATCH=yes
在脚本中?
没有自动方法可以做到这一点。配置系统的重点是让操作员选择要选择的选项。
并且由于 ports 系统现在也支持多选选项,您不能总是 select 所有 选项。来自 /usr/ports/Mk/bsd.options.mk
:
# OPTIONS_SINGLE - List of single-choice grouped options: 1 and
# only 1 among N
# OPTIONS_RADIO - List of radio-choice grouped options: 0 or 1
# among N
# OPTIONS_MULTI - List of multiple-choice grouped options: at
# least 1 among N
# OPTIONS_GROUP - List of group-choice grouped options: 0 or
# more among N
但是,一旦端口更新更改选项的名称或数量,设置的选项将一直有效。所以一般来说,你不需要为每个构建重新运行 make config
。
您可以尝试的一件事是自己生成必要的 /var/db/*/options
文件(在 _OPTIONS_READ
中包含最新的端口修订)在 调用 make install clean
.
这取决于正确解析端口的 Makefile。在 OPTIONS_SINGLE 中你会选择哪个选项?
注意:可以在调用make
建端口时定义BATCH
。这应该跳过那些需要交互的端口。但是如果我读 /usr/ports/Mk/bsd.port.mk
正确,它将使用默认设置构建端口。
我想在我的 FreeBSD 环境中自动安装端口。通常我采用默认设置,但对于某些端口,我想 - 自动 - select 所有选项。
是否可以做类似的事情
/usr/ports/.../> make config
/usr/ports/.../> ** select all options **
/usr/ports/.../> make clean install BATCH=yes
在脚本中?
没有自动方法可以做到这一点。配置系统的重点是让操作员选择要选择的选项。
并且由于 ports 系统现在也支持多选选项,您不能总是 select 所有 选项。来自 /usr/ports/Mk/bsd.options.mk
:
# OPTIONS_SINGLE - List of single-choice grouped options: 1 and
# only 1 among N
# OPTIONS_RADIO - List of radio-choice grouped options: 0 or 1
# among N
# OPTIONS_MULTI - List of multiple-choice grouped options: at
# least 1 among N
# OPTIONS_GROUP - List of group-choice grouped options: 0 or
# more among N
但是,一旦端口更新更改选项的名称或数量,设置的选项将一直有效。所以一般来说,你不需要为每个构建重新运行 make config
。
您可以尝试的一件事是自己生成必要的 /var/db/*/options
文件(在 _OPTIONS_READ
中包含最新的端口修订)在 调用 make install clean
.
这取决于正确解析端口的 Makefile。在 OPTIONS_SINGLE 中你会选择哪个选项?
注意:可以在调用make
建端口时定义BATCH
。这应该跳过那些需要交互的端口。但是如果我读 /usr/ports/Mk/bsd.port.mk
正确,它将使用默认设置构建端口。