diff options
author | Siep Kroonenberg <siepo@cybercomm.nl> | 2009-07-19 12:29:38 +0000 |
---|---|---|
committer | Siep Kroonenberg <siepo@cybercomm.nl> | 2009-07-19 12:29:38 +0000 |
commit | a242529bcf517df9bcf227f4636fd56c5072ecf7 (patch) | |
tree | 904638d136a9a87f93c8cf95c6cdd86880b9ad3c /Master | |
parent | a226a222a00cdb4e676fd242cb849c94f718c4a0 (diff) |
Better conditions for normalizing under Windows
git-svn-id: svn://tug.org/texlive/trunk@14319 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rwxr-xr-x | Master/texmf/scripts/texlive/tlmgr.pl | 233 |
1 files changed, 116 insertions, 117 deletions
diff --git a/Master/texmf/scripts/texlive/tlmgr.pl b/Master/texmf/scripts/texlive/tlmgr.pl index c01d77870f3..d3e048facef 100755 --- a/Master/texmf/scripts/texlive/tlmgr.pl +++ b/Master/texmf/scripts/texlive/tlmgr.pl @@ -106,37 +106,37 @@ my %globaloptions = ( "help|h|?" => 1); my %actionoptions = ( - "remove" => { "no-depends" => 1, + "remove" => { "no-depends" => 1, "no-depends-at-all" => 1, "force" => 1, "dry-run|n" => 1 }, "show" => { "list" => 1 }, - "search" => { "global" => 1, + "search" => { "global" => 1, "file" => 1 }, - "restore" => { "backupdir" => "=s", - "dry-run|n" => 1, + "restore" => { "backupdir" => "=s", + "dry-run|n" => 1, "force" => 1 }, - "backup" => { "backupdir" => "=s", - "clean" => ":-99", - "all" => 1, + "backup" => { "backupdir" => "=s", + "clean" => ":-99", + "all" => 1, "dry-run|n" => 1 }, - "update" => { "no-depends" => 1, - "no-depends-at-all" => 1, - "all" => 1, + "update" => { "no-depends" => 1, + "no-depends-at-all" => 1, + "all" => 1, "list" => 1, - "no-remove" => 1, - "force" => 1, - "backupdir" => "=s", - "backup" => 1, + "no-remove" => 1, + "force" => 1, + "backupdir" => "=s", + "backup" => 1, "dry-run|n" => 1 }, "paper" => { "list" => 1 }, - "install" => { "no-depends" => 1, - "no-depends-at-all" => 1, + "install" => { "no-depends" => 1, + "no-depends-at-all" => 1, "reinstall" => 1, - "force" => 1, + "force" => 1, "dry-run|n" => 1 }, "arch" => { "dry-run|n" => 1 }, - "generate" => { "localcfg" => "=s", + "generate" => { "localcfg" => "=s", "dest" => "=s" }, "postaction" => {"w32mode" => "=s", "all" => 1, @@ -147,7 +147,7 @@ my %actionoptions = ( ); my %optarg; -for my $k (keys %globaloptions) { +for my $k (keys %globaloptions) { if ($globaloptions{$k} eq "1") { $optarg{$k} = 1; } else { @@ -155,7 +155,7 @@ for my $k (keys %globaloptions) { } } for my $v (values %actionoptions) { - for my $k (keys %$v) { + for my $k (keys %$v) { if ($v->{$k} eq "1") { $optarg{$k} = 1; } else { @@ -169,7 +169,7 @@ our %opts; GetOptions(\%opts, keys(%optarg)) or pod2usage(2); -$::machinereadable = $opts{"machine-readable"} +$::machinereadable = $opts{"machine-readable"} if (defined($opts{"machine-readable"})); my $action = shift; @@ -236,7 +236,7 @@ if ($action =~ /^(paper|xdvi|pdftex|dvips|dvipdfmx?|context)$/) { } # --machine-readable is only supported by update. -# +# if ($::machinereadable && $action ne "update") { tlwarn("tlmgr: --machine-readable output not supported for $action\n"); } @@ -257,7 +257,7 @@ for my $k (keys %opts) { } } if (@notvalidargs) { - my $msg = + my $msg = "The following arguments are not supported for the action $action:\n"; for my $c (@notvalidargs) { $msg .= " $c"; @@ -275,7 +275,7 @@ if (@notvalidargs) { } # besides doing normal logging if -logfile is specified, we try to log -# package related actions (install, remove, update) to +# package related actions (install, remove, update) to # the package-log file TEXMFSYSVAR/web2c/tlmgr.log my $packagelogged = 0; # how many msgs we logged chomp (my $texmfsysvar = `kpsewhich -var-value=TEXMFSYSVAR`); @@ -430,14 +430,14 @@ sub do_cmd_and_check { # run external programs (mktexlsr, updmap-sys, etc.) as specified by the # keys in the RET hash. We return the number of unsuccessful runs, zero # if all ok. -# +# # If the "map" key is specified, the value may be a reference to a list # of map command strings to pass to updmap, e.g., "enable Map=ascii.map". -# +# sub handle_execute_actions { - + my $errors = 0; - + if ($::files_changed) { $errors += do_cmd_and_check("mktexlsr"); $::files_changed = 0; @@ -482,10 +482,10 @@ sub handle_execute_actions { chomp(my $TEXMFSYSVAR = `kpsewhich -var-value=TEXMFSYSVAR`); chomp(my $TEXMFLOCAL = `kpsewhich -var-value=TEXMFLOCAL`); - + # format-regenerate is used when the paper size changes. In that # case, if option("create_formats") is set, we simply want to generate - # + # { my %done_formats; my %updated_engines; @@ -555,12 +555,12 @@ sub handle_execute_actions { $do_something = 1; last; } - + if ($do_something) { for my $ext ("dat", "def") { my $lang = "language.$ext"; info("regenerating $lang\n"); - + my $arg1 = "$TEXMFSYSVAR/tex/generic/config/language.$ext"; my $arg2 = "$TEXMFLOCAL/tex/generic/config/language-local.dat"; if ($ext eq "dat") { @@ -611,7 +611,7 @@ sub handle_execute_actions { # if some of them are referenced somewhere they will not be removed # unless --force given # -# tlmgr remove --no-depends-at-all foo bar baz +# tlmgr remove --no-depends-at-all foo bar baz # willabsolutely only install foo bar baz not even taking .ARCH into # account # @@ -670,7 +670,7 @@ sub action_remove { my @origpacks = $localtlpdb->expand_dependencies("-only-arch", $localtlpdb, @ARGV) unless $opts{"no-depends-at-all"}; for my $p (@origpacks) { $origpacks{$p} = 1; } for my $p (@packs) { $packs{$p} = 1; } - for my $p (@neededpacks) { + for my $p (@neededpacks) { if (defined($origpacks{$p})) { # that package was asked for to be removed on the cmd line my @needed = $localtlpdb->needed_by($p); @@ -747,7 +747,7 @@ sub action_remove { # PAPER # ARGV can look like: -# paper a4 +# paper a4 # paper letter # [xdvi|...|context] paper [help|papersize|--list] # @@ -769,7 +769,7 @@ sub action_paper { } elsif (!defined($newpaper)) { # tlmgr paper => show all current sizes. TeXLive::TLPaper::paper_all($texmfsysconfig,undef); - + } elsif ($newpaper !~ /^(a4|letter)$/) { # tlmgr paper junk => complain. $newpaper = "the empty string" if !defined($newpaper); tlwarn("tlmgr: expected `a4' or `letter' after paper, not $newpaper\n"); @@ -861,8 +861,8 @@ sub action_show { } if ($foo->docfiles) { print "doc files:\n"; - for my $f (sort $foo->docfiles) { - print " $f"; + for my $f (sort $foo->docfiles) { + print " $f"; my $dfd = $foo->docfiledata; if (defined($dfd->{$f})) { for my $k (keys %{$dfd->{$f}}) { @@ -975,9 +975,9 @@ sub action_search { # RESTORE -# +# sub action_restore { - # tlmgr restore --backupdir dir + # tlmgr restore --backupdir dir # lists all packages with all revisions # tlmgr restore --backupdir dir pkg # lists all revisions of pkg @@ -1065,7 +1065,7 @@ sub action_restore { my $tlpobj = TeXLive::TLPOBJ->new; $tlpobj->from_file($localtlpdb->root . "/tlpkg/tlpobj/$pkg.tlpobj"); $localtlpdb->add_tlpobj($tlpobj); - TeXLive::TLUtils::announce_execute_actions("enable", + TeXLive::TLUtils::announce_execute_actions("enable", $localtlpdb->get_package($pkg)); $localtlpdb->save; } @@ -1083,7 +1083,7 @@ sub action_backup { # that parallels the value of autoclean in the configuration # we have to be careful, because if simply --clean is given, we should # check for the value saved in the tlpdb, and if that is not present - # do nothing. + # do nothing. # We have set clean to clean:-99 which makes -99 the default value # if only --clean is given without any argument # !defined($opts{"clean"}) -> no --clean given @@ -1166,10 +1166,10 @@ sub action_backup { clear_old_backups ($pkg, $opts{"backupdir"}, $opts{"clean"}, $opts{"dry-run"}); } else { my $tlp = $localtlpdb->get_package($pkg); - info("saving current status of $pkg to $opts{'backupdir'}/${pkg}.r" . + info("saving current status of $pkg to $opts{'backupdir'}/${pkg}.r" . $tlp->revision . "tar.xz\n"); if (!$opts{"dry-run"}) { - $tlp->make_container("xz", $localtlpdb->root, + $tlp->make_container("xz", $localtlpdb->root, $opts{"backupdir"}, "${pkg}.r" . $tlp->revision); } } @@ -1207,7 +1207,7 @@ sub write_w32_updater { $localtlp = $localtlpdb->get_package($pkg); $oldrev = $localtlp->revision; $newrev = $mediatlp->revision; - # we do install documenation files for category Documentation even if + # we do install documenation files for category Documentation even if # option("install_docfiles") is false $opt_real_doc = ($mediatlp->category =~ m/documentation/i) ? 1 : $opt_doc; @pkg_parts = ($pkg); @@ -1234,7 +1234,7 @@ sub write_w32_updater { if (!-r "$temp/$pkg_part.tar.xz") { tlwarn("Couldn't get $pkg_part.tar.xz, that is bad\n"); return 1; # abort - } + } # unpack xz archive $sysret = system("$::progs{'xzdec'} < \"$temp/$pkg_part.tar.xz\" > \"$temp/$pkg_part.tar\""); if ($sysret) { @@ -1280,10 +1280,10 @@ rem Self-delete without error message about missing file # # tlmgr update --no-depends-at-all foo # will absolutely only update foo not even taking .ARCH into account -# +# # TLMedia->install_package INSTALLS ONLY ONE PACKAGE, no deps whatsoever # anymore. That has all to be done by hand. -# +# sub machine_line { my ($flag1) = @_; my $ret = 0; @@ -1306,7 +1306,7 @@ sub action_update { } init_local_db(1); $opts{"no-depends"} = 1 if $opts{"no-depends-at-all"}; - + init_tlmedia(); info("update: dry run, no changes will be made\n") if $opts{"dry-run"}; @@ -1331,7 +1331,7 @@ sub action_update { last; } } - } + } if ($other_updates_asked_for) { if (check_for_critical_updates($localtlpdb, $tlmediatlpdb)) { if ($opts{"force"}) { @@ -1395,11 +1395,11 @@ sub action_update { $diebackupdir = 1 if (! -d $opts{"backupdir"}); } else { # not set in the tlpdb, and not set on cmd line, but asked for - # --backup + # --backup $diebackupdir = 1; } - } - # no else branch necessary, we already checked that --backupdir if + } + # no else branch necessary, we already checked that --backupdir if # given is ok, see above if ($diebackupdir) { tlwarn("You have asked for backups, but the backup directory as specified\n"); @@ -1410,7 +1410,7 @@ sub action_update { # finally, if we have --backupdir, but no --backup, just enable it $opts{"backup"} = 1 if $opts{"backupdir"}; - + debug("Doing backups to $opts{'backupdir'}\n") if $opts{"backup"}; # these two variables are used throughout this function @@ -1444,9 +1444,9 @@ sub action_update { push @schms, $p if defined($tlmediatlpdb->get_package($p)); } - my @localexpansion = + my @localexpansion = $localtlpdb->expand_dependencies($localtlpdb, @schms); - my @remoteexpansion = + my @remoteexpansion = $tlmediatlpdb->expand_dependencies($localtlpdb, @schms); for my $p (@remoteexpansion) { $newpkgs{$p} = 1; @@ -1483,11 +1483,11 @@ sub action_update { # update all .ARCH dependencies, too, unless $opts{"no-depends-at-all"}: @todo = $tlmediatlpdb->expand_dependencies("-only-arch", $localtlpdb, @todo) - unless $opts{"no-depends-at-all"}; + unless $opts{"no-depends-at-all"}; # # update general deps unless $opts{"no-depends"}: @todo = $tlmediatlpdb->expand_dependencies("-no-collections",$localtlpdb,@todo) - unless $opts{"no-depends"}; + unless $opts{"no-depends"}; # # we first collect the list of packages to be actually updated or installed @@ -1506,14 +1506,14 @@ sub action_update { # expansion. So try both with and without the .ARCH extension. (my $pkg_noarch = $pkg) =~ s/\.[^.]*$//; my $forcerm_coll = $forcermpkgs{$pkg} || $forcermpkgs{$pkg_noarch}; - + # similarly for new packages. If latexmk is new, latexmk.ARCH # will be in the dependency expansion, and we want it. my $newpkg_coll = $newpkgs{$pkg} || $newpkgs{$pkg_noarch}; if ($forcerm_coll) { if ($::machinereadable) { # TODO should we add a revision number - push @addlines, + push @addlines, machine_line("-ret", $pkg, $FLAG_FORCIBLE_REMOVED, "-", "-", "-"); } else { info("skipping forcibly removed package $pkg\n"); @@ -1572,16 +1572,16 @@ sub action_update { # number calculation # without w32 special packages, those are dealt with in the updater batch script - my $totalnr = $#new + $#updated + 2; + my $totalnr = $#new + $#updated + 2; my $nrupdated = 0; my $currnr = 1; # sizes_of_packages returns the sizes of *all* packages if nothing - # is passed over, so if @new and @updated both are empty we will + # is passed over, so if @new and @updated both are empty we will # get something wrong back, namely the total size of all packages my %sizes; # for size calculation we also want w32 special packages if (@new || @updated || @w32_updated) { - %sizes = %{$tlmediatlpdb->sizes_of_packages( + %sizes = %{$tlmediatlpdb->sizes_of_packages( $localtlpdb->option("install_srcfiles"), $localtlpdb->option("install_docfiles"), @new, @updated, @w32_updated)}; @@ -1684,7 +1684,7 @@ sub action_update { # first all normal packages, then collections, then schemes # this way if installation breaks off and a new package in a collection # isn't already installed, but the collection already updated, it will - # be reported as forcibly removed. + # be reported as forcibly removed. my @inst_packs; my @inst_colls; my @inst_schemes; @@ -1722,11 +1722,11 @@ sub action_update { } next; } - + if ($opts{"backup"} && !$opts{"dry-run"}) { - $tlp->make_container("xz", $root, + $tlp->make_container("xz", $root, $opts{"backupdir"}, "${pkg}.r" . $tlp->revision); - $unwind_package = + $unwind_package = "$opts{'backupdir'}/${pkg}.r" . $tlp->revision . ".tar.xz"; if ($autobackup) { @@ -1752,7 +1752,7 @@ sub action_update { # no backup was made, so let us create a temporary .tar file # of the package my $tlp = $localtlpdb->get_package($pkg); - my ($s, $m, $fullname) = $tlp->make_container("tar", $root, $temp, + my ($s, $m, $fullname) = $tlp->make_container("tar", $root, $temp, "__BACKUP_${pkg}.r" . $tlp->revision); if ($s <= 0) { tlwarn("\n$0: Creation of backup container of $pkg failed.\n"); @@ -1783,7 +1783,7 @@ sub action_update { tlwarn("\n\nInstallation of new version of $pkg did fail, trying to unwind.\n"); if (win32()) { # w32 is notorious for not releasing a file immediately - # we experienced permission denied errors + # we experienced permission denied errors my $newname = $unwind_package; $newname =~ s/__BACKUP/___BACKUP/; copy ("-f", $unwind_package, $newname); @@ -1812,13 +1812,13 @@ sub action_update { } info("done\n") unless $::machinereadable; } - + if (win32() && !$opts{"list"} && @w32_updated) { info("Preparing TeX Live infrastructure update...\n"); my $ret = write_w32_updater(@w32_updated); tlwarn ("Aborting infrastructure update.\n") if ($ret); } - + if (!(@new || @updated || @w32_updated) && ($tlmediasrc->media ne "NET") && $opts{"all"}) { # for all but net updates we warn if nothing is updated tlwarn("\nNothing to update.\n"); @@ -1847,7 +1847,7 @@ sub action_update { # take .ARCH deps into account # # tlmgr install --reinstall ... -# behaves exactely like without --reinstall BUT the following two +# behaves exactely like without --reinstall BUT the following two # differences: # . dependencies are not expanded from collection to collection, so # if you reinstall a collection then all its dependencies of type @@ -1859,7 +1859,7 @@ sub action_update { # # TLMedia->install_package does ONLY INSTALL ONE PACKAGE, no deps whatsoever # anymore! That has all to be done by hand. -# +# sub action_install { if ($opts{"gui"}) { action_gui("install"); @@ -1900,7 +1900,7 @@ sub action_install { # installation order of packages: # first all normal packages, then collections, then schemes # isn't already installed, but the collection already updated, it will - # be reported as forcibly removed. + # be reported as forcibly removed. my @inst_packs; my @inst_colls; my @inst_schemes; @@ -1938,7 +1938,7 @@ sub action_install { sub action_list { init_local_db(); - # make sure that the @ARGV hash is not changed in case we switch to + # make sure that the @ARGV hash is not changed in case we switch to # show mode my ($what) = @ARGV; if ($what) { @@ -1975,7 +1975,7 @@ sub action_list { # OPTION -# +# sub action_option { if ($opts{"gui"}) { action_gui("config"); @@ -2023,8 +2023,8 @@ sub action_option { if ($val !~ m!^(http|ftp)://!i) { # seems to be a local path, try to normalize it my $testloc = abs_path($val); - # however, if we were given a url, that will get "normalized" - # to the empty string, it not being a path. + # however, if we were given a url, that will get "normalized" + # to the empty string, it not being a path. # Restore the original value if so. $val = $testloc if $testloc; } @@ -2199,7 +2199,7 @@ sub action_arch { # GENERATE -# +# sub action_generate { my $dest = defined($opts{"dest"}) ? $opts{"dest"} : ""; my $localconf = defined($opts{"localcfg"}) ? $opts{"localcfg"} : ""; @@ -2217,7 +2217,7 @@ sub action_generate { chomp (my $TEXMFSYSVAR = `kpsewhich -var-value=TEXMFSYSVAR`); chomp (my $TEXMFSYSCONFIG = `kpsewhich -var-value=TEXMFSYSCONFIG`); chomp (my $TEXMFLOCAL = `kpsewhich -var-value=TEXMFLOCAL`); - + if ($what =~ m/^language(\.dat|\.def)?$/i) { if ($what =~ m/^language(\.dat)?$/i) { $dest ||= "$TEXMFSYSVAR/tex/generic/config/language.dat"; @@ -2229,13 +2229,13 @@ sub action_generate { # variable so that it is reset to the right value undef $dest; } - } + } if ($what =~ m/^language(\.def)?$/i) { $dest ||= "$TEXMFSYSVAR/tex/generic/config/language.def"; $localconf ||= "$TEXMFLOCAL/tex/generic/config/language-local.def"; debug("$0: writing language.def data to $dest\n"); TeXLive::TLUtils::create_language_def($localtlpdb, $dest, $localconf); - } + } } elsif ($what =~ m/^fmtutil$/i) { $dest ||= "$TEXMFSYSVAR/web2c/fmtutil.cnf"; @@ -2258,7 +2258,7 @@ sub action_generate { # GUI -# +# sub action_gui { my ($guiscreen) = @_; # yes, two times to make perl warnings shut up ... @@ -2293,7 +2293,7 @@ http://tug.org/texlive/distro.html for more details. exit 1; } - # now check that we can actually create a top level window, + # now check that we can actually create a top level window, # on darwin the X server might not be started, or on unix we are working # on a console, or whatever. eval { my $foo = Tk::MainWindow->new; $foo->destroy; }; @@ -2319,7 +2319,7 @@ Error message from creating MainWindow: # UNINSTALL -# +# sub action_uninstall { if (win32()) { printf STDERR "Please use \"Add/Remove Programs\" from the Control Panel to removing TeX Live!\n"; @@ -2551,7 +2551,7 @@ sub check_files { # if we are on Win32 or MacOS we return, they currently do not allow # find -wholename (missing find on w32, or bsd find on darwin). - # we need the -use-svn version only for the check-file-coverage + # we need the -use-svn version only for the check-file-coverage # replacement anyway, so it will be used on tug, which is neither w32 nor # darwin. my $arch = $localtlmedia->platform(); @@ -2643,7 +2643,7 @@ sub check_runfiles { # assume tex4ht stuff is ok, and don't worry about Changes/README for now # same for .xdy files next if ($f =~ /(^Changes$|^README$|\.htf$|\.4hf$|\.xdy$)/); - # + # my @copies = grep (/\/$f$/, @runtime_files); # map files can be duplicated as long as copies don't concern the same engine if ($f =~ /\.map$/) { @@ -2652,7 +2652,7 @@ sub check_runfiles { my @cop = @copies; # don't break the outside list map { s#^texmf-dist/fonts/map/(.*?)/.*#$1# } @cop; foreach my $dir (sort @cop ) { - last if ($need_check = ($dir eq $prev_dir)); + last if ($need_check = ($dir eq $prev_dir)); $prev_dir = $dir; } next unless $need_check; @@ -2763,11 +2763,11 @@ sub check_executes { # } #} # - # what should be checked for the executes? we could check + # what should be checked for the executes? we could check # - the existence of the engine in bin/i386-linux or all $arch # - the existence of the format name link/bat # - parse the options parameter and check for the inifile - # - rework the format definition that we have inifile=pdflatex.ini + # - rework the format definition that we have inifile=pdflatex.ini # isn't the * unnecessary? my %missingbins; my %missingengines; @@ -2869,7 +2869,7 @@ sub check_depends { # Except that schemes and our special .win32 packages are ok. push (@no_dep, $pkg) unless $pkg =~/^scheme-|\.win32$/; } - + # For each dependency, check that we have a package. for my $d ($localtlpdb->get_package($pkg)->depends) { next if ($d =~ m/\.ARCH$/); @@ -2891,8 +2891,8 @@ sub check_depends { $ret++; print "\f PACKAGES NOT IN ANY COLLECTION: @no_dep\n"; } - - return $ret; + + return $ret; } @@ -2900,7 +2900,7 @@ sub check_depends { # action_postaction # this action calls the various post actions if one want's to do that # on a client system or overriding global settings -# tlmgr postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] +# tlmgr postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] # [install|remove] [shortcut|fileassoc|script] [<package> <package> ...] sub action_postaction { @@ -2997,16 +2997,16 @@ sub action_postaction { return; } } - + # Subroutines galore. -# +# # set global $location variable. # if we cannot read tlpdb, die if arg SHOULD_I_DIE is true. # -# if an argument is given and is true init_local_db will die if +# if an argument is given and is true init_local_db will die if # setting up of programs failed. -# +# sub init_local_db { my ($should_i_die) = @_; # if the localtlpdb is already defined do simply return here already @@ -3044,9 +3044,9 @@ sub init_local_db { } # we normalize the path only if it is # - neither a URL starting with http or ftp - # - if we are on windows it does not start with Drive: + # - if we are on windows it does not start with Drive:[\/] if (! ( $location =~ m!^(http|ftp)://!i || - (win32() && $location =~ m!^.:!) ) ) { + (win32() && (!(-e $location) || ($location =~ m!^.:[\\/]!) ) ) ) ) { # seems to be a local path, try to normalize it my $testloc = abs_path($location); # however, if we were given a url, that will get "normalized" to the @@ -3077,14 +3077,14 @@ sub init_tlmedia { # agrees load the local copy if present instead of the remote one, # if the hashes disagree, load the remote tlpdb # - if that does not work assume we are offline or target not reachable, - # so warn the user and use saved, but note that installation will + # so warn the user and use saved, but note that installation will # not work my $local_copy_tlpdb_used = 0; if ($location =~ m;^(http|ftp)://;) { # first check that the saved tlpdb is present at all my $loc_digest = Digest::MD5::md5_hex($location); - my $loc_copy_of_remote_tlpdb = + my $loc_copy_of_remote_tlpdb = "$Master/$InfraLocation/texlive.tlpdb.$loc_digest"; ddebug("loc_digest = $loc_digest\n"); ddebug("loc_copy = $loc_copy_of_remote_tlpdb\n"); @@ -3159,14 +3159,14 @@ sub init_tlmedia { # finish handles the -pause option (wait for input from stdin), # and then exits unless the global $::gui_mode is set, in which case we # merely return. -# +# sub finish { my ($ret) = @_; if ($ret > 0) { print "tlmgr: exiting unsuccessfully (status $ret).\n"; } - + if ($opts{"pause"}) { print "Press Enter to exit the program.\n"; <STDIN>; @@ -3199,7 +3199,7 @@ sub clear_old_backups $dryrun = 1 if ($dry); # keep arbitrary many backups return if ($autobackup == -1); - + opendir (DIR, $backupdir) || die "opendir($backupdir) failed: $!"; my @dirents = readdir (DIR); closedir (DIR) || warn "closedir($backupdir) failed: $!"; @@ -3231,7 +3231,7 @@ sub check_for_critical_updates for my $pkg (sort @critical) { my $tlp = $localtlpdb->get_package($pkg); if (!defined($tlp)) { - # that should not happen, we expanded in the localtlpdb so why + # that should not happen, we expanded in the localtlpdb so why # should it not be present, any anyway, those are so fundamental # so they have to be there tlwarn("Fundamental package $pkg not present, that is sooo bad.\n"); @@ -3398,7 +3398,7 @@ written to the terminal. =item B<--force> -If updates to the tlmgr itself (and the underlying infrastructure) are +If updates to the tlmgr itself (and the underlying infrastructure) are present tlmgr will bail out and not perform the installation unless this option is given. @@ -3461,7 +3461,7 @@ be made to the specified I<directory>. You can set options via the C<option> action to automatically create backups for all packages, and/or keep only a certain number of -backups. Please see the C<option> action for details. +backups. Please see the C<option> action for details. C<tlmgr> always makes a temporary backup when updating packages, in case of download or other failure during an update. The purpose of this @@ -3528,8 +3528,8 @@ Instead of making backups, prune the backup directory of old backups. =item B<--dry-run> -Nothing is actually backed up or removed; instead, the actions to be -performed are written to the terminal. +Nothing is actually backed up or removed; instead, the actions to be +performed are written to the terminal. =back @@ -3607,7 +3607,7 @@ written to the terminal. =back The first form shows the global TeX Live settings currently saved in the -TLPDB with a short description and the C<key> used for changing it in +TLPDB with a short description and the C<key> used for changing it in paranthesis. The second form acts like the first, but also shows options which can @@ -3648,7 +3648,7 @@ number of backups to keep. Thus, backups are disabled if the value is 0. In the C<--clean> mode of the C<backup> action this option also specifies the number to be kept. -To setup C<autobackup> to C<-1> on the command line, use +To setup C<autobackup> to C<-1> on the command line, use tlmgr option autobackup infty @@ -3670,7 +3670,7 @@ On W32 based systems it adds or removes the binary dir to the system or user registry path entry, depending on being admin and the setting $tlpdb->option("w32_multi_user"). -=head2 postaction [-w32mode=user|admin] [-fileassocmode=1|2] [-all] +=head2 postaction [-w32mode=user|admin] [-fileassocmode=1|2] [-all] [install|remove] [shortcut|fileassoc|script] [<package> <package> ...] Carry out the postaction C<shortcut>, C<fileassoc>, or C<script> as @@ -3795,7 +3795,7 @@ are actually present, and lists those missing. =item B<depends> Lists those packages which occur as dependencies in an installed collections, -but are themselves not installed, and those packages that are not +but are themselves not installed, and those packages that are not contained in any collection. If you call C<tlmgr check collections> this test will be carried out @@ -3812,7 +3812,7 @@ List those filenames that are occurring more than one time in the runfiles. =back -Options: +Options: =over 4 @@ -3934,7 +3934,7 @@ Currently this option only applies to the L<update|/"update ... "end-of-header" pkgname status localrev serverrev size - ... + ... Currently the header section contains two fields. The field name and value are separated by a tab. Line endings may be LF or CRLF depending @@ -4036,4 +4036,3 @@ GNU General Public License Version 2 or later. ### tab-width: 2 ### indent-tabs-mode: nil ### End: -# vim:set tabstop=2 expandtab: # |