summaryrefslogtreecommitdiff
path: root/Master/tlpkg/bin/tl-update-containers
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-05-16 23:14:44 +0000
committerKarl Berry <karl@freefriends.org>2016-05-16 23:14:44 +0000
commitf5a1ebeb10595819710f0b07ca874f1f8236ea2b (patch)
tree1f1ac417c7a381a94bafb87107d2ba393c8523ba /Master/tlpkg/bin/tl-update-containers
parent86289db1c13c60df7ae77e18b9196139cfefa316 (diff)
tl-fix-container-infos: update for "checksum" instead of md5.
setup_checksum_method. only update needed packages, instead of all. run on pretest area. tl-update-containers: setup_checksum_method. Original report at http://tug.org/pipermail/tex-live/2016-May/038508.html. 40+ packages were missing checksums, not just the new updmap-map. git-svn-id: svn://tug.org/texlive/trunk@41209 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/bin/tl-update-containers')
-rwxr-xr-xMaster/tlpkg/bin/tl-update-containers55
1 files changed, 31 insertions, 24 deletions
diff --git a/Master/tlpkg/bin/tl-update-containers b/Master/tlpkg/bin/tl-update-containers
index cb993da04f6..0bab6ba2d17 100755
--- a/Master/tlpkg/bin/tl-update-containers
+++ b/Master/tlpkg/bin/tl-update-containers
@@ -30,27 +30,27 @@ my @critical_pkg_list = qw/texlive\.infra tlperl\.win32/;
our ($mydir, $vc_id);
my $opt_all = 0;
+my $opt_dry = 0;
+my $opt_gpgcmd = "";
my $opt_location = ".";
+my $opt_master;
my $opt_nosetup = 0;
my $opt_recreate = 0;
my $opt_relative = 1;
my $opt_version = 0;
my $opt_help = 0;
-my $opt_dry = 0;
-my $opt_gpgcmd = "";
-my $opt_master;
TeXLive::TLUtils::process_logging_options();
GetOptions(
"all|a" => \$opt_all,
- "dry-run" => \$opt_dry,
+ "dry-run|n" => \$opt_dry,
+ "gpgcmd=s" => \$opt_gpgcmd,
"location=s" => \$opt_location,
+ "master=s" => \$opt_master,
"no-setup" => \$opt_nosetup,
"recreate" => \$opt_recreate,
"relative!" => \$opt_relative,
"version" => \$opt_version,
- "master=s" => \$opt_master,
- "gpgcmd=s" => \$opt_gpgcmd,
"help|?" => \$opt_help) or pod2usage(1);
pod2usage("-exitstatus" => 0, "-verbose" => 2) if $opt_help;
@@ -59,8 +59,7 @@ if ($opt_version) { print "$vc_id\n"; exit 0; }
exit (&main());
-sub main
-{
+sub main {
# check that we have a target db.
if (! $opt_recreate && ! -r "$opt_location/tlpkg/texlive.tlpdb") {
die "$0: Cannot load tlpdb from output directory $opt_location;\n"
@@ -80,12 +79,16 @@ sub main
$opt_gpgcmd = "$script_master/tlpkg/bin/tl-sign-file";
}
+ if (! TeXLive::TLCrypto::setup_checksum_method()) {
+ die "TLCrypto::setup_checksum_method() failed";
+ }
+
# get configuration of package splitting
my $srcsplit = $tlpdb->config_src_container;
my $docsplit = $tlpdb->config_doc_container;
my $format = $tlpdb->config_container_format;
my $type = "xz";
- if ($format eq "xz" || $format eq "zip") {
+ if ($format eq "xz") {
$type = $format;
} else {
tlwarn("$0: unknown container format $format in 00texlive.config; ",
@@ -168,7 +171,7 @@ sub main
}
if ($oldrev == $newrev) {
- debug("$pkg up to date\n");
+ ddebug("$pkg up to date\n");
# check for the existence of all containers in case they go missing
if (($tlp->runfiles && ! -r "$opt_containerdir/$pkg.tar.$type")
|| ($srcsplit && $tlp->srcfiles
@@ -269,13 +272,13 @@ sub main
last;
}
}
- my $do_relative = 0;
- debug("pkg=$pkg deps_on_arch=$deps_on_arch, ctt=", defined($ctt)?$ctt:"(undefined)", "\n");
- $do_relative = $opt_relative && # user option
+ my $do_relative = $opt_relative && # user option
($deps_on_arch?0:1) && # no $pkg.ARCH dep
(defined($ctt)?1:0) && # see above
(($ctt eq $TeXLive::TLConfig::RelocTree) ? 1 : 0);
# only for texmf-dist
+ debug("pkg=$pkg, do_relative=$do_relative, deps_on_arch=$deps_on_arch, "
+ . "ctt=", defined($ctt) ? $ctt : "(undefined)", "\n");
if ($srcsplit) {
if (!$opt_dry) {
my $objsrc = $obj->srcfiles_package;
@@ -436,6 +439,16 @@ tl-update-containers [I<option>]...
=over 4
+=item B<-all|-a>
+
+Include packages deemed critical in the update, currently
+C<texlive.infra>. (That is, C<tlmgr> itself needs
+testing before updating, so we don't do it by default.)
+
+=item B<-dry-run|-n>
+
+Don't write anything.
+
=item B<-location> I</container/dir>
The directory of containers to be updated, usually with a previous set
@@ -445,17 +458,6 @@ of containers to be compared against; default is C<./archive>.
The directory from which containers should be updated.
-=item B<-recreate>
-
-Forces rebuild of all containers, including creation of the output
-C<texlive.tlpdb> if need be.
-
-=item B<-all|-a>
-
-Include packages deemed critical in the update, currently
-C<texlive.infra>. (That is, C<tlmgr> itself needs
-testing before updating, so we don't do it by default.)
-
=item B<-no-relative>
Do not create any relocatable packages.
@@ -465,6 +467,11 @@ Do not create any relocatable packages.
Do not try to use the TL version of our basic programs such as I<xz>
and I<tar>, but instead looks for them in the current path.
+=item B<-recreate>
+
+Forces rebuild of all containers, including creation of the output
+C<texlive.tlpdb> if need be.
+
=item B<--help>
Display this documentation and exit.