Do not print a question in non-interractive mode but explain why boostrapping
has failed and how to allow it to happen Reported by: jmmv
This commit is contained in:
parent
6bb3c5ceb8
commit
575c4095bf
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=259773
@ -821,6 +821,11 @@ static const char confirmation_message[] =
|
||||
"The package management tool is not yet installed on your system.\n"
|
||||
"Do you want to fetch and install it now? [y/N]: ";
|
||||
|
||||
static const char non_interractive_message[] =
|
||||
"The package management tool is not yet installed on your system.\n"
|
||||
"Please set ASSUME_ALWAYS_YES=yes environement variable to be able to boostrap "
|
||||
"in non-interractive (stdin not being a tty)\n";
|
||||
|
||||
static int
|
||||
pkg_query_yes_no(void)
|
||||
{
|
||||
@ -939,10 +944,12 @@ main(int argc, char *argv[])
|
||||
*/
|
||||
config_bool(ASSUME_ALWAYS_YES, &yes);
|
||||
if (!yes) {
|
||||
printf("%s", confirmation_message);
|
||||
if (!isatty(fileno(stdin)))
|
||||
if (!isatty(fileno(stdin))) {
|
||||
fprintf(stderr, non_interractive_message);
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
printf("%s", confirmation_message);
|
||||
if (pkg_query_yes_no() == 0)
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user