summaryrefslogtreecommitdiff
path: root/Master/install-tl
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2009-02-05 14:54:38 +0000
committerNorbert Preining <preining@logic.at>2009-02-05 14:54:38 +0000
commit751e159080c2e64f88cf166869cb51090227e3e5 (patch)
treef750301ffc61dc24c893a2e38a9555c2d0bdff59 /Master/install-tl
parentb9477c893814746095eaf0aad80b354620ac2421 (diff)
install-tl and intstall_package(s): rework the error behaviour logic: We
now return 1/0 (success/failure) in install_package(s) and give tlwarn there if something fails. This way the warnings appear in the log window of the GUI installers. Then we return 0 and install-tl itself creates the profile and dies. git-svn-id: svn://tug.org/texlive/trunk@12097 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/install-tl')
-rwxr-xr-xMaster/install-tl14
1 files changed, 13 insertions, 1 deletions
diff --git a/Master/install-tl b/Master/install-tl
index ac34c122baf..d6479523627 100755
--- a/Master/install-tl
+++ b/Master/install-tl
@@ -925,7 +925,19 @@ sub do_install_packages {
foreach my $package (sort keys %install) {
push @what, $package if ($install{$package} == 1);
}
- install_packages($tlpdb,$media,$localtlpdb,\@what,$vars{'option_src'},$vars{'option_doc'});
+ if (!install_packages($tlpdb,$media,$localtlpdb,\@what,
+ $vars{'option_src'},$vars{'option_doc'})) {
+ my $profile_name = "installation.profile";
+ create_profile($profile_name);
+ tlwarn("Installation failed.\n");
+ tlwarn("Rerunning the installer will try to restart the installation.\n");
+ tlwarn("Or you can restart by running the installer with:\n");
+ if (win32()) {
+ tlwarn(" install-tl.bat --profile $profile_name [EXTRA-ARGS]\n");
+ } else {
+ tlwarn(" install-tl --profile $profile_name [EXTRA-ARGS]\n");
+ }
+ }
}
# for later complete removal we want to save some options and values