Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
return "<%s %s>" % (self.__class__.__name__, self)
def __str__(self):
- return "%s - %s" % (self.model, self.path)
+ return "%s (%s)" % (self.model, util.format_size(self.size))
def __hash__(self):
return hash(self.path)
@property
def model(self):
- return self.device.model
+ return self.device.model or _("Unknown Model")
+
+ @property
+ def size(self):
+ return self.device.length * self.device.sectorSize
class SelectDisk(step.InteractiveStep):
os.close(fd)
return path
+
+def format_size(s):
+ units = (
+ "%.0f ",
+ "%.0fk",
+ "%.1fM",
+ "%.1fG",
+ "%.1fT",
+ "%.1fP",
+ "%.1fE",
+ )
+
+ unit = None
+
+ for unit in units:
+ if abs(s) < 1024:
+ break
+
+ s /= 1024
+
+ return unit % s