[Midnightbsd-cvs] mports: Chroot.pm: Couple bug fixes.
ctriv at midnightbsd.org
ctriv at midnightbsd.org
Thu Sep 6 00:22:38 EDT 2007
Log Message:
-----------
Couple bug fixes.
Modified Files:
--------------
mports/Tools/lib/Magus:
Chroot.pm (r1.2 -> r1.3)
-------------- next part --------------
Index: Chroot.pm
===================================================================
RCS file: /home/cvs/mports/Tools/lib/Magus/Chroot.pm,v
retrieving revision 1.2
retrieving revision 1.3
diff -LTools/lib/Magus/Chroot.pm -LTools/lib/Magus/Chroot.pm -u -r1.2 -r1.3
--- Tools/lib/Magus/Chroot.pm
+++ Tools/lib/Magus/Chroot.pm
@@ -31,7 +31,7 @@
use strict;
use warnings;
-use File::Path qw(mkpath);
+use File::Path qw(mkpath rmtree);
=head1 NAME
@@ -125,6 +125,7 @@
$self->_mtree('BSD.x11-4.dist', $self->{x11base});
system("/sbin/mount -t devfs devfs $self->{root}/dev");
+ $self->_touchfile('/.clean');
}
@@ -135,7 +136,7 @@
my ($self) = @_;
for (qw(workdir x11base localbase packages)) {
- rmpath("$self->{root}/$self->{$_}");
+ rmtree("$self->{root}/$self->{$_}");
$self->_mkdir($self->{$_});
}
@@ -143,9 +144,7 @@
$self->_mtree('BSD.x11-4.dist', $self->{x11base});
unlink("$self->{root}/.dirty");
- my $tmp;
- open($tmp, '>', "$self->{root}/.clean") && close($tmp)
- || die "Couldn'touch $self->{root}/.clean\n";
+ $self->_touchfile('/.clean');
}
@@ -157,9 +156,17 @@
sub _mkdir {
my ($self, $dir) = @_;
-
+ use Carp;
mkpath("$self->{root}/$dir") ||
- die "Couldn't mkdir $self->{root}/$dir: $!\n";
+ croak "Couldn't mkdir $self->{root}/$dir: $!\n";
+}
+
+
+sub _touchfile {
+ my ($self, $file) = @_;
+ my $tmp;
+ open($tmp, '>>', "$self->{root}$file") && close($tmp)
+ || die "Couldn'touch $self->{root}$file\n";
}
@@ -221,10 +228,10 @@
or die "umount returned non-zero: $?\n";
}
- system("/sbin/chflags 0 $self->{root}/var/empty") == 0
+ system("/bin/chflags 0 $self->{root}/var/empty") == 0
or die "chflags returned non-zero: $?\n";
- rmpath($self->root);
+ rmtree($self->root) || die "Couldn't rmtree $self->{root}\n";
}
1;
More information about the Midnightbsd-cvs
mailing list