-
Notifications
You must be signed in to change notification settings - Fork 39
/
uncompress_dada.cgi
75 lines (55 loc) · 1.61 KB
/
uncompress_dada.cgi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/usr/bin/perl -T
use strict;
# For information on what this script is used for, please see:
# http://dadamailproject.com/d/install_dada_mail.pod.html
# You may have to update this, depending on the version of Dada Mail!
my $gz = 'dada-4_6_0.tar.gz';
$ENV{PATH} = "/bin:/usr/bin";
delete @ENV{ 'IFS', 'CDPATH', 'ENV', 'BASH_ENV' };
use CGI::Carp qw(fatalsToBrowser);
use CGI qw(:standard);
print header();
if ( !-e $gz ) {
$gz = 'pro_' . $gz;
}
if ( !-e $gz ) {
print p('Can\'t find ' . $gz . ' to uncompress!');
exit;
}
print h1('Dada Mail!');
if ( -e 'dada' ) {
print p("STOP. 'dada' directory already exists!");
exit;
}
print p("Uncompressing $gz...");
print pre(`gunzip $gz`);
my $tar = $gz;
$tar =~ s/\.gz$//;
if ( !-e $tar ) {
print p( 'Can\'t find ' . $tar . ' to uncompress!' );
print p('You may have to uncompress and prep Dada Mail manually.');
exit;
}
else {
print p("Success!");
}
print p("Unrolling $tar");
`tar -xvf $tar`;
if ( !-e 'dada' ) {
print p("Can't find 'dada' directory!");
exit;
}
else {
print p("Success!");
}
print p("Changing permissions of dada/mail.cgi to, 755");
print pre(`chmod 755 dada/mail.cgi`);
print pre(`chmod 777 dada/DADA/Config.pm`);
my $installer_loc = 'dada/installer-disabled';
my $new_installer_loc = 'dada/installer';
print p("Enabling installer at $installer_loc by moving it to, $new_installer_loc\n");
print pre(`mv $installer_loc $new_installer_loc`);
print pre(`chmod 755 $new_installer_loc/install.cgi`);
print p("done!");
print
"<h1><a href=\"./$new_installer_loc/install.cgi\">Install and Configure Dada Mail!</a></h1>";