|
|
|
#!/usr/bin/perl -w
|
|
|
|
|
|
|
|
# make-debian-x11.postinst
|
|
|
|
# Jonathan Rosenbaum <freesource@users.sourceforge.net>
|
|
|
|
|
|
|
|
use strict;
|
|
|
|
use Debconf::Client::ConfModule ':all';
|
|
|
|
|
|
|
|
if ($ARGV[0] && $ARGV[0] eq "configure") {
|
|
|
|
|
|
|
|
if (-d "/usr/doc" && !-e "/usr/doc/make-debian-x11" &&
|
|
|
|
-d "/usr/share/doc/make-debian-x11") {
|
|
|
|
system "ln -sf ../share/doc/make-debian-x11 /usr/doc/make-debian-x11";
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
# Before doing anything else, append CVS Entries files with fictional dates
|
|
|
|
# so replacements can't be edited. This is because make-debian-x11 shares
|
|
|
|
# a CVS/Entries file in /root with gbootroot. Note: This will be done
|
|
|
|
# over and over again, but usually a new gbootroot is installed so it isn't
|
|
|
|
# an issue.
|
|
|
|
my $Entries = << "ENTRIES";
|
|
|
|
/README-debian-X11/1.4/Thu Nov 8 06:16:29 2001//
|
|
|
|
/make_swapfile/1.2/Thu Nov 8 06:16:29 2001//
|
|
|
|
/setup-debian-X11/1.7/Thu Dec 6 18:36:05 2001//
|
|
|
|
ENTRIES
|
|
|
|
my $root_entry = "/usr/share/gbootroot/yard/Replacements/root/CVS/Entries";
|
|
|
|
if ( -f $root_entry ) {
|
|
|
|
open(ENTRY, ">>$root_entry") or warn "Couldn't open $root_entry: $!\n";
|
|
|
|
print ENTRY $Entries;
|
|
|
|
close(ENTRY) or warn "Couldn't close $root_entry\n";
|
|
|
|
}
|
|
|
|
|
|
|
|
my $answer = get("make-debian-x11/make_debian_x11");
|
|
|
|
|
|
|
|
if ($answer eq "true") {
|
|
|
|
|
|
|
|
my $swim = get("make-debian-x11/make_debian_x11-swim");
|
|
|
|
my $doc = get("make-debian-x11/make_debian_x11-doc");
|
|
|
|
my $zoneinfo = get("make-debian-x11/make_debian_x11-zoneinfo");
|
|
|
|
|
|
|
|
if ($doc eq "true") {
|
|
|
|
$doc = "yes\n";
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
$doc = "no\n";
|
|
|
|
}
|
|
|
|
if ($zoneinfo eq "true") {
|
|
|
|
$zoneinfo = "yes\n";
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
$zoneinfo = "no\n";
|
|
|
|
}
|
|
|
|
|
|
|
|
if ($swim) {
|
|
|
|
if ($swim eq "true") {
|
|
|
|
$swim = "yes\n";
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
$swim = "no\n";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!$swim) {
|
|
|
|
if ($ARGV[0] && $ARGV[0] eq "configure") {
|
|
|
|
print STDERR
|
|
|
|
"During make-debian-x11 package installation warnings\n" .
|
|
|
|
"about make-debian-x11 not being installed on the\n" .
|
|
|
|
"system are taken into account by the make_debian-x11\n" .
|
|
|
|
"script and the template properly reflects an installed\n" .
|
|
|
|
"make-debian-x11 package. This warning won't be issued\n" .
|
|
|
|
"when reconfiguring make-debian-x11.\n\n";
|
|
|
|
}
|
|
|
|
open (SCRIPT, "|make_debian-X11")
|
|
|
|
or warn "Couldn't open make_debian-X11\n";
|
|
|
|
print SCRIPT $doc;
|
|
|
|
print SCRIPT $zoneinfo;
|
|
|
|
close(SCRIPT);
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
# Will run swim --initdb first rather then trying to interact
|
|
|
|
# with the make_debian-X11 script.
|
|
|
|
# Not a perfect approach, but the swim package will be updated
|
|
|
|
# eventually.
|
|
|
|
print STDERR "Be patient, building the swim databases will take a little while.\n";
|
|
|
|
system "swim --initdb 2&> /dev/null";
|
|
|
|
|
|
|
|
# Now continue with the script.
|
|
|
|
#open (SCRIPT, "|make_debian-X11 2&> /dev/null")
|
|
|
|
if ($ARGV[0] && $ARGV[0] eq "configure") {
|
|
|
|
print STDERR
|
|
|
|
"During make-debian-x11 package installation warnings\n" .
|
|
|
|
"about make-debian-x11 not being installed on the\n" .
|
|
|
|
"system are taken into account by the make_debian-x11\n" .
|
|
|
|
"script and the template properly reflects an installed\n" .
|
|
|
|
"make-debian-x11 package. This warning won't be issued\n" .
|
|
|
|
"when reconfiguring make-debian-x11.\n\n";
|
|
|
|
}
|
|
|
|
open (SCRIPT, "|make_debian-X11")
|
|
|
|
or warn "Couldn't open make_debian-X11\n";
|
|
|
|
#print SCRIPT $swim;
|
|
|
|
print SCRIPT $doc;
|
|
|
|
print SCRIPT $zoneinfo;
|
|
|
|
close(SCRIPT);
|
|
|
|
set("make-debian-x11/make_debian_x11-swim","");
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
stop();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|