diff options
author | Norbert Preining <preining@logic.at> | 2008-09-27 15:09:20 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2008-09-27 15:09:20 +0000 |
commit | 20176283f7404d5397312cc3e97969509c98e609 (patch) | |
tree | 72e7a54cb12a65c5e5db20de4eef9ce92e90bb17 /Master | |
parent | e3f8b076af99b6bd8dc272f0740620da2a06231f (diff) |
add -no-setup option to tl-update-containers, and if the dest tlpdb
cannot be read, go automatically in recreate mode
git-svn-id: svn://tug.org/texlive/trunk@10744 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rwxr-xr-x | Master/tlpkg/bin/tl-update-containers | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/Master/tlpkg/bin/tl-update-containers b/Master/tlpkg/bin/tl-update-containers index 3fe51783dfb..dc389b45eb3 100755 --- a/Master/tlpkg/bin/tl-update-containers +++ b/Master/tlpkg/bin/tl-update-containers @@ -32,12 +32,14 @@ my $opt_recreate = 0; my $opt_help = 0; my $opt_version = 0; my $opt_all = 0; +my $opt_nosetup = 0; TeXLive::TLUtils::process_logging_options(); GetOptions( "location=s" => \$opt_location, "recreate" => \$opt_recreate, "all|a" => \$opt_all, + "no-setup" => \$opt_nosetup, "version" => \$opt_version, "help|?" => \$opt_help) or pod2usage(1); @@ -75,12 +77,18 @@ sub main my %count; my $nettlpdb; + if (!$opt_recreate) { + if (! -r "$opt_location/tlpkg/texlive.tlpdb") { + warn ("Cannot load tlpdb from $opt_location, going into recreate mode!"); + $opt_recreate = 1; + } + } + if ($opt_recreate) { # remake everything. @todopacks = $tlpdb->list_packages(); $nettlpdb = $tlpdb->copy; $nettlpdb->root($opt_location); - } else { $nettlpdb = TeXLive::TLPDB->new(root => $opt_location); if (!defined($nettlpdb)) { @@ -149,7 +157,14 @@ sub main } # set up the programs ... - &TeXLive::TLUtils::setup_programs("$Master/tlpkg/installer"); + if ($opt_nosetup) { + # do a minimal setup + $::progs{'lzma'} = "lzma"; + $::progs{'tar'} = "tar"; + } else { + # do a full setup + &TeXLive::TLUtils::setup_programs("$Master/tlpkg/installer"); + } # get list of packages. PACKS: for my $pkg (sort @todopacks) { @@ -286,6 +301,9 @@ Does a full rebuild of all packages. Will update also packages which are exempted due to possible breakage (currently texlive.infra and bin-texlive). +=item B<-no-setup> +Does not try to setup the various programs, but uses I<lzma> and I<tar>. + =item B<-help> Print this documentation and exit. |