+ time.sleep(2)
+
+ def optimize_image(self, rootdir):
+ """
+ Filing up the image with zeros will increase its compression rate
+ """
+ zeros = os.path.join(rootdir, 'ZEROS')
+ self.runcmd_unchecked(['dd', 'if=/dev/zero', 'of=' + zeros, 'bs=1M'])
+ self.runcmd(['rm', '-f', zeros])
+
+ def squash(self):
+ """
+ Run squashfs on the image.
+ """
+ if not os.path.exists('/usr/bin/mksquashfs'):
+ logging.warning("Squash selected but mksquashfs not found!")
+ return
+ self.message("Running mksquashfs")
+ suffixed = "%s.squashfs" % self.settings['image']
+ self.runcmd(['mksquashfs', self.settings['image'],
+ suffixed,
+ '-no-progress', '-comp', 'xz'], ignore_fail=False)
+ os.unlink(self.settings['image'])
+ self.settings['image'] = suffixed
+