# #
###############################################################################
+ ### Clean up our environment
+ #
+ delete @ENV{qw(IFS CDPATH ENV BASH_ENV PATH)};
+ $< = $>;
+
require "/opt/pakfire/lib/functions.pl";
my $interactive = 1;
#
if ( $0 =~ /pakfire-update$/ ) {
&Pakfire::message("CRON INFO: Running an update");
- my $random = int(rand(3600));
+ my $random = int(rand(60));
&Pakfire::logger("CRON INFO: Waiting for $random seconds.");
sleep($random);
$ARGV[0] = "update";
} elsif ("$ARGV[0]" eq "upgrade") {
&Pakfire::upgradecore();
my @upgradepaks = &Pakfire::dblist("upgrade", "noweb");
- my @temp;
+ my @temp, $pak;
foreach (@upgradepaks) {
@temp = &Pakfire::resolvedeps("$_");
}
### Download first
- foreach (sort @upgradepaks) {
- &Pakfire::getpak("$_", "");
+ foreach $pak (sort @upgradepaks) {
+ system("mv $Conf::dbdir/meta/meta-$pak $Conf::dbdir/meta/old-meta-$pak");
+ &Pakfire::getpak("$pak", "");
}
- foreach (sort @upgradepaks) {
- &Pakfire::upgradepak("$_");
+ foreach $pak (sort @upgradepaks) {
+ if (&Pakfire::upgradepak("$pak")) {
+ system("mv $Conf::dbdir/meta/old-meta-$pak $Conf::dbdir/meta/meta-$pak");
+ }
}
} elsif ("$ARGV[0]" eq "list") {