Peter Robinson 17a478
--- appliance-tools-007.8/appcreate/partitionedfs.py.orig	2016-09-20 12:42:15.950885273 +0100
Peter Robinson 17a478
+++ appliance-tools-007.8/appcreate/partitionedfs.py	2016-09-20 12:42:25.905888013 +0100
Peter Robinson 17a478
@@ -77,7 +77,7 @@
Peter Robinson 17a478
 
Peter Robinson 17a478
             d = self.disks[p['disk']]
Peter Robinson 17a478
             d['numpart'] += 1
Peter Robinson 17a478
-            if d['numpart'] > 3 and self.partition_layout == 'msdos':
Peter Robinson 17a478
+            if d['numpart'] > 4 and self.partition_layout == 'msdos':
Peter Robinson 17a478
                 # Increase allocation of extended partition to hold this partition
Peter Robinson 17a478
                 d['extended'] += p['size']
Peter Robinson 17a478
                 p['type'] = 'logical'
Peter Robinson 17a478
@@ -106,6 +106,8 @@
Peter Robinson 17a478
             logging.debug("Add %s part at %d of size %d" % (p['type'], p['start'], p['size']))
Peter Robinson 17a478
             if p['fstype'].startswith('ext'):
Peter Robinson 17a478
                 fstype = 'ext2'
Peter Robinson 17a478
+            if p['fstype'].startswith('swap'):
Peter Robinson 17a478
+                fstype = 'linux-swap'
Peter Robinson 17a478
             if p['fstype'] == 'vfat':
Peter Robinson 17a478
                 fstype = 'fat32'
Peter Robinson 17a478
             rc = subprocess.call(["/sbin/parted", "-a", "opt", "-s", d['disk'].device, "mkpart",
Peter Robinson 17a478
@@ -264,6 +266,10 @@
Peter Robinson 17a478
                 p['UUID'] = self.__getuuid(p['device'])
Peter Robinson 17a478
                 continue
Peter Robinson 17a478
 
Peter Robinson 17a478
+            if mp == '/boot':
Peter Robinson 17a478
+                # mark the partition bootable
Peter Robinson 17a478
+                subprocess.call(["/sbin/parted", "-s", self.disks[p['disk']]['disk'].device, "set", str(p['num']), "boot", "on"])
Peter Robinson 17a478
+
Peter Robinson 17a478
             if mp == 'biosboot':
Peter Robinson 17a478
                 subprocess.call(["/sbin/parted", "-s", self.disks[p['disk']]['disk'].device, "set", "1", "bios_grub", "on"])
Peter Robinson 17a478
                 continue