diff options
Diffstat (limited to 'SBO-Lib/lib/SBO/Lib')
-rw-r--r-- | SBO-Lib/lib/SBO/Lib/Build.pm | 8 | ||||
-rw-r--r-- | SBO-Lib/lib/SBO/Lib/Readme.pm | 16 | ||||
-rw-r--r-- | SBO-Lib/lib/SBO/Lib/Repo.pm | 5 |
3 files changed, 10 insertions, 19 deletions
diff --git a/SBO-Lib/lib/SBO/Lib/Build.pm b/SBO-Lib/lib/SBO/Lib/Build.pm index a0ff814..fced993 100644 --- a/SBO-Lib/lib/SBO/Lib/Build.pm +++ b/SBO-Lib/lib/SBO/Lib/Build.pm @@ -6,7 +6,7 @@ use warnings; our $VERSION = '2.0'; -use SBO::Lib::Util qw/ :const script_error get_sbo_from_loc get_arch check_multilib uniq %config in /; +use SBO::Lib::Util qw/ :const prompt script_error get_sbo_from_loc get_arch check_multilib uniq %config in /; use SBO::Lib::Tree qw/ get_sbo_location /; use SBO::Lib::Info qw/ get_sbo_version check_x32 get_requires /; use SBO::Lib::Download qw/ get_sbo_downloads get_dl_fns get_filename_from_link check_distfiles /; @@ -535,8 +535,7 @@ sub process_sbos { return \@failures, $exit if $args{NON_INT}; say "Unable to download/verify source file(s) for $sbo:"; say " $fail"; - print 'Do you want to proceed? [n] '; - if (<STDIN> =~ /^[yY]/) { + if (prompt('Do you want to proceed?' , default => 'no')) { next FIRST; } else { unlink for @symlinks; @@ -572,8 +571,7 @@ sub process_sbos { return \@failures, $exit if $count == @$todo; say "Failure encountered while building $sbo:"; say " $fail"; - print 'Do you want to proceed [n] '; - if (<STDIN> =~ /^[yY]/) { + if (prompt('Do you want to proceed?', default => 'no')) { next FIRST; } else { unlink for @symlinks; diff --git a/SBO-Lib/lib/SBO/Lib/Readme.pm b/SBO-Lib/lib/SBO/Lib/Readme.pm index c5fb95c..dddeb8d 100644 --- a/SBO-Lib/lib/SBO/Lib/Readme.pm +++ b/SBO-Lib/lib/SBO/Lib/Readme.pm @@ -6,7 +6,7 @@ use warnings; our $VERSION = '2.0'; -use SBO::Lib::Util qw/ script_error slurp open_read _ERR_OPENFH usage_error /; +use SBO::Lib::Util qw/ prompt script_error slurp open_read _ERR_OPENFH usage_error /; use SBO::Lib::Tree qw/ is_local /; use Exporter 'import'; @@ -55,13 +55,9 @@ sub ask_opts { script_error('ask_opts requires an argument') unless @_; my ($sbo, $readme) = @_; say "\n". $readme; - print "\nIt looks like $sbo has options; would you like to set any"; - print ' when the slackbuild is run? [n] '; - if (<STDIN> =~ /^[Yy]/) { + if (prompt("\nIt looks like $sbo has options; would you like to set any when the slackbuild is run?", default => 'no')) { my $ask = sub { - print "\nPlease supply any options here, or enter to skip: "; - chomp(my $opts = <STDIN>); - return() if $opts =~ /^\n/; + chomp(my $opts = prompt("\nPlease supply any options here, or enter to skip: ")); return $opts; }; my $kv_regex = qr/[A-Z0-9]+=[^\s]+(|\s([A-Z]+=[^\s]+){0,})/; @@ -96,8 +92,7 @@ sub ask_user_group { print "\nIt looks like this slackbuild requires the following"; say ' command(s) to be run first:'; say " # $_" for @$cmds; - print 'Shall I run them prior to building? [y] '; - return <STDIN> =~ /^[Yy\n]/ ? $cmds : undef; + return prompt('Shall I run them prior to building?', default => 'yes') ? $cmds : undef; } =head2 get_opts @@ -184,11 +179,10 @@ sub user_prompt { my $opts = 0; $opts = ask_opts($sbo, $readme) if get_opts($readme); print "\n". $readme unless $opts; - print "\nProceed with $sbo? [y]: "; # we have to return something substantial if the user says no so that we # can check the value of $cmds on the calling side. we should be able to # assume that 'N' will never be a valid command to run. - return 'N' unless <STDIN> =~ /^[Yy\n]/; + return 'N' unless prompt("\nProceed with $sbo?", default => 'yes'); return $cmds, $opts; } diff --git a/SBO-Lib/lib/SBO/Lib/Repo.pm b/SBO-Lib/lib/SBO/Lib/Repo.pm index b4205a6..e8e7c2e 100644 --- a/SBO-Lib/lib/SBO/Lib/Repo.pm +++ b/SBO-Lib/lib/SBO/Lib/Repo.pm @@ -6,7 +6,7 @@ use warnings; our $VERSION = '2.0'; -use SBO::Lib::Util qw/ %config usage_error get_slack_version script_error open_fh open_read in /; +use SBO::Lib::Util qw/ %config prompt usage_error get_slack_version script_error open_fh open_read in /; use Cwd; use File::Copy; @@ -338,8 +338,7 @@ C<$repo_path>, and if not, offer to run C<sbosnap fetch> for you. sub slackbuilds_or_fetch { unless (chk_slackbuilds_txt()) { say 'It looks like you haven\'t run "sbosnap fetch" yet.'; - print 'Would you like me to do this now? [y] '; - if (<STDIN> =~ /^[Yy\n]/) { + if (prompt("Would you like me to do this now?", default => 'yes')) { fetch_tree(); } else { say 'Please run "sbosnap fetch"'; |