#!/usr/bin/perl $II2BUILDSTAMP = $ENV{"II2BUILDSTAMP"}; $II2PKGDIR = $ENV{"II2PKGDIR"}; $II2INSTALLDIR = $ENV{"II2INSTALLDIR"}; $II2RESOURCES = $ENV{"II2RESOURCES"}; $II2DOSERVER = $ENV{"II2DOSERVER"}; if (${II2BUILDSTAMP} < 1160910526) { warn "### You need at least i-Installer 2.83 for this package. Bailing out...\n"; exit 1; } $PROGNAME = `"${II2RESOURCES}/basename" "$0"`; chomp( $PROGNAME); print "### ${PROGNAME}: Started...\n"; my $arch = `uname -p`; chomp $arch; require "${II2PKGDIR}/texpkgs.sharedscript.pm"; checkPrerequisites( "ConTeXt"); print "### ${PROGNAME}: Preparing TeX for ConTeXt selection...\n"; # Set that contains the set selected during any previous selector phase. This is received # from i-Installer: my %set = getSetInfo(); # sets %set my $displayString; my @keys = sort keys %set; if (@keys == 1) { print "### ${PROGNAME}: Only one set available. Skipping selection, auto-choosing stable.\n"; `"${II2RESOURCES}/doalerter" -s "${II2DOSERVER}" -V -t SetSelectorSets -P "contextstable"`; } else { foreach my $knownsetid (@keys) { if ($set{$knownsetid}{'available'} eq 'YES') { # $displayString .= ($set{$knownsetid}{'selected'} eq 'YES' ? '+' : '-'); $displayString .= "$set{$knownsetid}{'name'}|"; } } chop( $displayString) if $displayString =~ /\|$/; if ($displayString eq '') { warn "### ${PROGNAME}: No set is complete for install. Please copy the package to a writable location, unlock it and turn network access on in i-Installer Preferences. Bailing out...\n"; exit 1; } REDO: $doresult = `"${II2RESOURCES}/doalerter" -s "${II2DOSERVER}" -V -t Choice -T "Select Package Parts" -C "$displayString" -I "Please select which parts of the package you want to install. Clicking Cancel will make this stage fail and abort the install procedure." -1 "Select" -3 "Cancel"`; chomp( $doresult); # warn $doresult; if (($? >> 8) == 0) { $displayString = ''; foreach my $knownsetid (@keys) { # warn "**** Checking \"$knownsetid ($set{$knownsetid}{'name'})\" against \"$doresult\""; if ($set{$knownsetid}{'name'} eq $doresult) { $displayString .= "$knownsetid|"; } } chop( $displayString) if $displayString =~ /\|$/; # warn "**** $displayString"; `"${II2RESOURCES}/doalerter" -s "${II2DOSERVER}" -V -t SetSelectorSets -P "$displayString"`; } elsif (($? >> 8) == 1) { # Cancel. print "### ${PROGNAME}: none selected. Bailing out...\n"; exit( 1); } } warn "### ${PROGNAME}: Finished...\n"; print "### ${PROGNAME}: Finished...\n"; exit( 0); # $Id: context-update.selector 106 2006-10-31 21:00:31Z gctwnl $