# HG changeset patch # User Heiko Schlittermann # Date 1263682984 -3600 # Node ID 1a6f6cfc46ea7adead1c01c6dda5415b9659513e # Parent 03ca6d811a17b9f49584afff8b60bb4af4e4f00f# Parent 2a66bb6a6a6ef2e46403307be210131244c59131 [savepoint] diff -r 03ca6d811a17 -r 1a6f6cfc46ea .hgtags --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.hgtags Sun Jan 17 00:03:04 2010 +0100 @@ -0,0 +1,2 @@ +1b975c58c5bf806baaa29b596f4279ed611ed1bf r/1 +0000000000000000000000000000000000000000 r/1 diff -r 03ca6d811a17 -r 1a6f6cfc46ea SI/system.pm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SI/system.pm Sun Jan 17 00:03:04 2010 +0100 @@ -0,0 +1,20 @@ +package SI::system; + +use strict; +use warnings; +use if $ENV{DEBUG} ~~ qw(system) => "Smart::Comments"; + +$ENV{LC_ALL} = "C"; + +sub id($) { + my ($file) = @_; + open(my $f, ">$file") or die "Can't open $file: $!\n"; + # hope it's eth* + local $_ = (sort grep { /^(eth|wlan)/ } `ifconfig -a`)[0]; + return if not $_; + return if not /^(?\S+)\s.*HWaddr\s+(?[\da-f:]+)\s*$/i; + print $f "ethernet $+{dev} $+{mac}\n"; +} + +1; +# vim:sts=4 sw=4 aw ai si: diff -r 03ca6d811a17 -r 1a6f6cfc46ea SI/tools.pm --- a/SI/tools.pm Sat Jan 16 23:53:50 2010 +0100 +++ b/SI/tools.pm Sun Jan 17 00:03:04 2010 +0100 @@ -8,7 +8,7 @@ sub run(@) { system(@_); - die "$_[0] failed with exit code " . $? >> 8 . "\n" + die "$_[0] failed with exit code " . ($? >> 8) . "\n" if $?; } diff -r 03ca6d811a17 -r 1a6f6cfc46ea si --- a/si Sat Jan 16 23:53:50 2010 +0100 +++ b/si Sun Jan 17 00:03:04 2010 +0100 @@ -12,6 +12,7 @@ use SI::lvm; use SI::mbr; use SI::dumper; +use SI::system; MAIN: { my $OUT = "../out-" . hostname; @@ -21,6 +22,8 @@ my %devices; + SI::system::id("$OUT/system"); + SI::ptable::volumes("$OUT/partitions.%s", %devices); SI::lvm::volumes(%devices); SI::blkid::ids("$OUT/blkid", %devices);