Як я можу уникнути підказок під час встановлення порту FreeBSD?


26

Коли я встановлюю порт, мені часто пропонується екран меню, щоб вибрати параметри конфігурації. Якщо я збираюся встановити дійсно великий пакет з великою кількістю залежностей, це буде вкрай незручно. Чи є прапор для прийняття відповідей за замовчуванням для всіх таких підказок?

Відповіді:


20

Можливо BATCH, описане в портах (7) - це те, що ви шукаєте:

# cd /usr/ports/sysutils/screen
# export BATCH=yes
# make rmconfig
# make install clean
(no configuration menu is displayed)

make rmconfigвидаляє OPTIONSконфігурацію для цього порту, і ви можете використовувати його для видалення, OPTIONSякі раніше були збережені під screen(1)час першого налаштування та встановлення . OPTIONSзберігаються в каталозі, який задається через PORT_DB_DIR(за замовчуванням /var/db/ports).

Якщо ви використовуєте bash, BATCHйого можна встановити автоматично під час кожного входу:

# echo 'export BATCH=yes' >> ~/.bash_profile

12
Я вважаю за краще make config-recursive && make install clean, оскільки він дає вам всі конфігураційні діалоги наперед, а фактична установка, ймовірно, буде працювати без нагляду.
user569825

Крім того, для скорочення робочого навантаження, необхідного для конфігурації, часто є розумною ідеєю ексклюзивно переглянути параметри, активні за замовчуванням, і просто розглянути можливість деактивації будь-якого з них.
user569825

7
Також, будь ласка, запустіть make config-recursiveкілька разів, поки ви не перестанете отримувати нові варіанти (тобто принаймні двічі). Щоразу, коли ви змінюєте параметр, він може спричинити іншу залежність, яка має ще більше варіантів.
Алекс Гірзель

exportпрацюватиме лише в тому випадку, shколи це не оболонка FreeBSD за замовчуванням
ajeh

21

Я думаю, що варто згадати, що ви не завжди можете це зробити. Здається, я пам’ятаю, наприклад, що потрібно було налаштувати emacs, щоб додати підтримку xft. Якщо ви хочете обійти підказки для однієї збірки,

make install clean BATCH=yes

також працюватиме.


як-небудь працює краще, ніж ставити "BATCH = так" в передній частині make. Спасибі.
Харі

Варто зауважити, що він make install clean BATCH=має той самий ефект, що і згідно з посібником для ports(7), його потрібно лише визначити. Його можна встановити на що-небудь або взагалі нічого
Гарольд Фішер,

15

Це автоматично не приймає стандартні налаштування, як ви запитуєте, але мені подобається метод "зробити конфігураційно-рекурсивний", який проводить вас через будь-які параметри потрібного порту, а також варіанти для всіх залежностей. Вам не потрібно нічого змінювати, якщо ви цього не хочете, але ви проходите всі екрани вибору одразу, а не тоді, коли будівельний процес надходить на них.

Як тільки це буде зроблено, ваш "make install clean" повинен залишатися без нагляду.


3
Як я вже говорив на посаді @ Yasir - переконайтеся, що виконайте це кілька разів. Якщо ви зміните параметр, який приносить іншу залежність, якщо ця залежність має параметри налаштування, ви не торкаєтесь її до наступного запуску make config-recursive.
Алекс Гірзель

Особисто думаю, що це має бути прийнятою відповіддю.
revprez
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.