summaryrefslogtreecommitdiffstats
path: root/patches/opkg-utils-r4747/0202-Fill-out-Installed-Size.patch
blob: 2261dbdd4e927b02f2745c7aa91121379fe2bf9d (plain)
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
From: George McCollister <george.mccollister@gmail.com>
Date: Fri, 23 Mar 2012 13:13:41 -0500
Subject: [PATCH] Fill out Installed-Size

Fill out Installed-Size so opkg can check to make sure there is enough
space to install the package before attempting to do so.

Signed-off-by: George McCollister <george.mccollister@gmail.com>
---
 opkg.py | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/opkg.py b/opkg.py
index c839100..53cf54a 100644
--- a/opkg.py
+++ b/opkg.py
@@ -155,6 +155,11 @@ class Package:
             ## sys.stderr.write("  extracting control.tar.gz from %s\n"% (fn,)) 
 
             ar = arfile.ArFile(f, fn)
+
+            tarStream = ar.open("data.tar.gz")
+            tarf = tarfile.open("data.tar.gz", "r", tarStream)
+            self.installed_size = sum([f.size for f in tarf.getmembers()])
+
             tarStream = ar.open("control.tar.gz")
             tarf = tarfile.open("control.tar.gz", "r", tarStream)
 
@@ -462,7 +467,7 @@ class Package:
         if self.maintainer: out = out + "Maintainer: %s\n" % (self.maintainer)
         if self.md5: out = out + "MD5Sum: %s\n" % (self.md5)
         if self.size: out = out + "Size: %d\n" % int(self.size)
-        if self.installed_size: out = out + "InstalledSize: %d\n" % int(self.installed_size)
+        if self.installed_size: out = out + "Installed-Size: %d\n" % int(self.installed_size)
         if self.filename: out = out + "Filename: %s\n" % (self.filename)
         if self.source: out = out + "Source: %s\n" % (self.source)
         if self.description: