From 885c1754ee48f0d08d136b5183f284febc948c13 Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Tue, 18 Jun 2019 19:50:58 +0200 Subject: Add options endlist and skiplist This patch adds options to override the default endlist and skiplist. Signed-off-by: Matthias Beyer --- debtree | 52 +++++++++++++++++++++++++++++++++------------------- 1 file changed, 33 insertions(+), 19 deletions(-) diff --git a/debtree b/debtree index 3b703ec..290c210 100755 --- a/debtree +++ b/debtree @@ -58,6 +58,8 @@ my $show_all = 0; my $do_rotate = 0; my $do_condense = 0; my $ARCH=""; +my $endlist=""; +my $skiplist=""; my $download_size=0; my $total_size=0; @@ -93,6 +95,8 @@ GetOptions( 'rotate|r' => \$do_rotate, 'condense' => \$do_condense, 'arch=s' => \$ARCH, + 'endlist=s' => \$endlist, + 'skiplist=s' => \$skiplist, 'quiet|q' => \$quiet, 'verbose|v+' => \$verbose, ) or usage; @@ -1157,25 +1161,35 @@ sub process_package { # to determine their dependencies if (! $show_all) { my $file; - for $file ("$HOME/.debtree/skiplist", "/etc/debtree/skiplist") { - if (-r $file) { - info(3, "Using list of 'skip' packages from $file"); - if (! $no_skip) { - import_list($file, "skip"); - } else { - # Change skip packages to end packages - import_list($file, "end"); - } - last; - } - } - for $file ("$HOME/.debtree/endlist", "/etc/debtree/endlist") { - if (-r $file) { - info(3, "Using list of 'end' packages from $file"); - import_list($file, "end"); - last; - } - } + if (-r $skiplist) { + info(3, "Using list of 'end' packages from $skiplist"); + import_list($skiplist, "skip"); + } else { + for $file ("$HOME/.debtree/skiplist", "/etc/debtree/skiplist") { + if (-r $file) { + info(3, "Using list of 'skip' packages from $file"); + if (! $no_skip) { + import_list($file, "skip"); + } else { + # Change skip packages to end packages + import_list($file, "end"); + } + last; + } + } + } + if (-r $endlist) { + info(3, "Using list of 'end' packages from $endlist"); + import_list($endlist, "end"); + } else { + for $file ("$HOME/.debtree/endlist", "/etc/debtree/endlist") { + if (-r $file) { + info(3, "Using list of 'end' packages from $file"); + import_list($file, "end"); + last; + } + } + } } # ptype B/S indicates "start" binary/source package -- cgit v1.2.3