Get rid of the chroot! :)
authorAlexander Wirt <formorer@grml.org>
Mon, 7 May 2007 18:39:44 +0000 (20:39 +0200)
committerAlexander Wirt <formorer@grml.org>
Mon, 7 May 2007 18:39:44 +0000 (20:39 +0200)
source-report/apt-config [new file with mode: 0644]
source-report/apt/etc/sources.list [new file with mode: 0644]
source-report/apt/status [new file with mode: 0644]
source-report/get_sources

diff --git a/source-report/apt-config b/source-report/apt-config
new file mode 100644 (file)
index 0000000..ef0a82f
--- /dev/null
@@ -0,0 +1,23 @@
+Dir "/home/sources/source-report/apt/"
+{
+       // Location of the state dir
+       State "lists"
+       {
+               Lists "lists/";
+               xstatus "xstatus";
+               userstatus "status.user";
+               status "/home/sources/source-report/apt/status";
+               cdroms "cdroms.list";
+       };
+       Cache "cache" {
+               Archives "archives/";
+               srcpkgcache "srcpkgcache.bin";
+               pkgcache "pkgcache.bin";
+       };
+       Etc "etc/" {
+               SourceList "sources.list";
+               Preferences "preferences";
+               Parts "apt.conf.d/";
+       };
+
+}
diff --git a/source-report/apt/etc/sources.list b/source-report/apt/etc/sources.list
new file mode 100644 (file)
index 0000000..75aa069
--- /dev/null
@@ -0,0 +1,6 @@
+deb http://ftp.de.debian.org/debian sarge main
+deb http://grml.org/repos/ ./
+
+deb http://security.debian.org/ sarge/updates main contrib non-free
+#backports.org
+deb-src http://www.backports.org/debian sarge-backports main contrib non-free
diff --git a/source-report/apt/status b/source-report/apt/status
new file mode 100644 (file)
index 0000000..e69de29
index d301f20..94081f1 100755 (executable)
@@ -116,12 +116,11 @@ close ($fh);
 #if we provide our own sources list it will be copied into the chroot
 if ($config->{sourceslist} && -f $config->{sourceslist}) {
        print "Copy sourceslist into chroot\n" if $debug; 
-       system ("cp " . $config->{sourceslist} . " " . $config->{chroot}."/etc/apt/sources.list") == 0
-               or die "Could not copy sourceslist into chroot: $!"; 
+       copy($config->{sourceslist},"apt/etc/sources.list") or die "Sources list cannot be copied: $!";
 }
 
 #update chroot
-system ("sudo /usr/sbin/chroot " . $config->{chroot} . " apt-get update") if $config->{updatesource}; 
+system ("apt-get -c=apt-config update") if $config->{updatesource}; 
 
 foreach my $package (keys %{$package_tree}) {
        print "Working on $package\n" if $debug;
@@ -135,8 +134,8 @@ foreach my $package (keys %{$package_tree}) {
                        next; 
        }
        $package_tree->{$package}->{'errors'} = (); 
-       open (my $fh, '-|', "sudo chroot " . $config->{chroot} . " apt-get --print-uris -d source $source=$version 2>&1 ") 
-               or warn "Could not launch chroot command:$!"; 
+       open (my $fh, '-|', "apt-get -c=apt-config --print-uris -d source $source=$version 2>&1 ") 
+               or warn "Could not launch apt-get command:$!"; 
        while (my $line = <$fh>) {
                chomp $line;
                if ($line =~ /^'([^']+)'\s+(\S+)\s+(\S+)\s+(\S+)/) {
@@ -246,7 +245,7 @@ foreach my $package (sort(keys %{$package_tree})) {
 }
 
 
-copy($config->{chroot}."/etc/apt/sources.list", $config->{reportdir}."/sources.list") or die "Sources list cannot be copied: $!";
+copy("apt/etc/sources.list", $config->{reportdir}."/sources.list") or die "Sources list cannot be copied: $!";
 
 #first some statistics 
 my $pnum = keys(%{$package_tree});