Як я можу уникнути підказок під час встановлення порту 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.