diff options
author | Siep Kroonenberg <siepo@cybercomm.nl> | 2018-08-08 20:43:24 +0000 |
---|---|---|
committer | Siep Kroonenberg <siepo@cybercomm.nl> | 2018-08-08 20:43:24 +0000 |
commit | f51a6f1c1458fa7b8e38fe1a3546648620ed1aa1 (patch) | |
tree | 4bab8692ea58ee7985e8a345c8e5c8845549ef0d /Master/tlpkg/installer/install-menu-extl.pl | |
parent | 2d2b56d95940ee3a154b0c739ee78a57a33eab46 (diff) |
Options; basic mode; faster startup
git-svn-id: svn://tug.org/texlive/trunk@48374 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/installer/install-menu-extl.pl')
-rw-r--r-- | Master/tlpkg/installer/install-menu-extl.pl | 32 |
1 files changed, 28 insertions, 4 deletions
diff --git a/Master/tlpkg/installer/install-menu-extl.pl b/Master/tlpkg/installer/install-menu-extl.pl index 4961108b9e4..b5e9e305091 100644 --- a/Master/tlpkg/installer/install-menu-extl.pl +++ b/Master/tlpkg/installer/install-menu-extl.pl @@ -30,7 +30,7 @@ # run_menu_extl returns to install-tl. # by then, the frontend has switched to non-blocking i/o # and will capture the output of the actual installation -# inside a log window +# on the fly inside a log window our %vars; # only contains simple scalars @@ -60,7 +60,7 @@ $::fileassocdesc[2] = "All"; $::deskintdesc[0] = "None"; $::deskintdesc[1] = "Menu shortcuts"; -if (win32() && is_seven()) { $::deskintdesc[2] = "Launcher"; } +$::deskintdesc[2] = "Launcher"; # %vars hash should eventually include each binary, collection and scheme # as individual schalars. @@ -74,6 +74,7 @@ foreach my $pkg ($tlpdb->schemes) { } $vars{'scheme-custom'} = 0 unless defined $vars{'scheme-custom'}; +# reading back current %vars from the frontend sub read_vars { my $l = <STDIN>; chomp $l; @@ -94,6 +95,20 @@ sub read_vars { return 0; } +# for each scheme and collection, print name, category and short description +sub print_descs { + print "descs\n"; + foreach my $p ($tlpdb->schemes) { + my $pkg = $tlpdb->get_package($p); + print $pkg->name, ': ', $pkg->category, ' ', $pkg->shortdesc || "", "\n"; + } + foreach my $p ($tlpdb->collections) { + my $pkg = $tlpdb->get_package($p); + print $pkg->name, ': ', $pkg->category, ' ', $pkg->shortdesc || "", "\n"; + } + print "enddescs\n"; +} + sub print_vars { print "vars\n"; foreach my $key (sort keys %vars) { @@ -102,20 +117,28 @@ sub print_vars { print "endvars\n"; } -# run_menu_extl should be invoked by install-tl. +# run_menu_extl should be invoked by install-tl + sub run_menu_extl { # make sure we have a value for total_size: calc_depends(); print "menudata\n"; + print "year: $texlive_release\n"; + # for windows, add a key indicating elevated permissions + if (win32()) { + print "admin: ". TeXLive::TLWinGoo::admin() . "\n"; + } + print_descs(); + print_vars(); # tell the frontend the preferred order for schemes my @schemes = schemes_ordered_for_presentation(); push @schemes, "scheme-custom"; print "schemes_order: ", join(' ', @schemes), "\n"; + # binaries print "binaries\n"; - # binaries aren't packages; list their descriptions here my @binaries = $tlpdb->available_architectures; @binaries=sort TeXLive::TLUtils::sort_archs @binaries; @@ -134,6 +157,7 @@ sub run_menu_extl { # 'startinst': done with choices, tell install-tl to # start installation # 'quit': tell install-tl to clean up and quit + # read from frontend while (1) { my $l = <STDIN>; |