- config layout -- need to apply defaults and annotate/document find out where to run aif-pre.sh (runs on host) (rename to aif-pre.script) and get a way to insert that and aif-post(.script) from the kernel params, etc. remember to uncomment the functions in main() when ready to test - use sgdisk? scripting (generated by python) for disk partitioning (part types listed at http://www.rodsbooks.com/gdisk/walkthrough.html ) -- actually, might want to use parted --script instead? then we can do percentages. https://www.gnu.org/software/parted/manual/parted.html https://unix.stackexchange.com/questions/200582/scripteable-gpt-partitions-using-parted - add mkfs-ing - how to support mdadm, lvm? -support serverside "autoconfig"- a mechanism to let servers automatically generate xml build configs. e.g.: kernel ... aif_url="https://build.domain.tld/aif-ng.php" auto=yes would yield the *client* sending info via URL params, e.g. https://build.domain.tld/aif-ng.php?disk[]=sda&disk[]=sdb&disk[sda]=300GB&disk[sdb]=500GB ? something like that. parser: make sure to use https://mikeknoop.com/lxml-xxe-exploit/ fix docs: http://lxml.de/parsing.html https://www.w3.org/2001/XMLSchema.xsd http://lxml.de/validation.html#xmlschema https://stackoverflow.com/questions/3084155/custom-attributes-in-an-xsd-schema https://www.w3schools.com/xml/schema_intro.asp https://www.w3schools.com/xml/schema_example.asp https://msdn.microsoft.com/en-us/library/dd489258.aspx