diff options
author | Norbert Preining <preining@logic.at> | 2008-07-24 17:02:05 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2008-07-24 17:02:05 +0000 |
commit | 5771bdd88aa5a9f37ba11edb0d6b4e8a6a6768c9 (patch) | |
tree | 6fd4b02e8758f32ee880925441f2dc27cba28cca /Master/install-tl | |
parent | 5bed1c55ff78931d80377943da83697c7b9c03a9 (diff) |
slightly changed profile behaviour for install-tl, see the pod docu
git-svn-id: svn://tug.org/texlive/trunk@9753 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/install-tl')
-rwxr-xr-x | Master/install-tl | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Master/install-tl b/Master/install-tl index 59ec68e9bf4..813fff0821e 100755 --- a/Master/install-tl +++ b/Master/install-tl @@ -799,6 +799,27 @@ sub read_profile { if (m/^collection-/) { $vars{$_} = 0; } if (defined($pro{$_})) { $vars{$_} = $pro{$_}; } } + # if a profile contains *only* the selected_scheme setting without + # any collection, we assume that exactely that scheme should be installed + my $coldefined = 0; + foreach my $k (keys %pro) { + if ($k =~ m/^collection-/) { + $coldefined = 1; + last; + } + } + # if at least one collection has been defined return here + return if $coldefined; + # since no collections have been defined in the profile, we + # set those to be installed on which the scheme depends + my $scheme=$tlpdb->get_package($vars{'selected_scheme'}); + if (!defined($scheme)) { + dump_vars(\*STDOUT); + die ("Scheme $vars{'selected_scheme'} not defined!\n"); + } + for my $scheme_content ($scheme->depends) { + $vars{"$scheme_content"}=1 if ($scheme_content=~/^collection-/); + } } sub prepare_installation { @@ -1351,6 +1372,24 @@ Print the detected arch-os combination and exit. =item B<-profile> I<profile> Load the I<profile> file for repeated installations on different systems. +A I<profile> contains the values of all necessary variable for the +installation. After normal installation has finished a profile for that +exact installation is written into DEST/tlpkg/texlive.profile. That file +can be used to do the exact same installation on a different computer. + +You can also hand-craft such a profile starting from a generated one +by changing some values. Normally a profile has to contain the value 1 for +each collection that should be installed, even if the scheme is specified. +That follows from the logic of the installer that you first select a scheme +and then can change the actual collections being installed. + +There is one exception to this: If the profile contains a variable for +B<selected_scheme> and I<NO> collection variable is defined in the profile, +then the collections which the specified scheme requires are installed. +Thus, a simple line C<selected_scheme scheme-medium> together with the +definitions of the paths (TEXDIR, TEXDIRW, TEXMFHOME, TEXMFLOCAL, +TEXMFSYSCONFIG, TEXMFSYSVAR) suffice to install the medium scheme with all +default options. =item B<-q> |