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
|
#!/usr/bin/env python3
import argparse
from os import makedirs as mkpath
from shutil import copy
from subprocess import run
def main():
parser = argparse.ArgumentParser(description='Build a bootable CD-ROM image using grub-mkrescue')
parser.add_argument('kernel', metavar='zcore', type=str, help='path to kernel')
parser.add_argument('grub', metavar='grub.cfg', type=str, help='path to grub.cfg')
parser.add_argument('mkrescue_args', metavar='MKRESCUE_ARGS', type=str, nargs='*', help='Additional arguments passed to grub-mkrescue')
parser.add_argument('--cache', type=str, default='isodir', help='isodir')
parser.add_argument('-o', '--output', type=str, default='glitch.iso', help='glitch.iso')
args = parser.parse_args()
mkpath('isodir/boot/grub', exist_ok=True)
copy(args.grub, 'isodir/boot/grub/grub.cfg')
mkpath('isodir/boot/glitch', exist_ok=True)
copy(args.kernel, 'isodir/boot/glitch/glitch.elf')
run(['grub-mkrescue', '-o', args.output, args.cache] + args.mkrescue_args)
if __name__ == "__main__":
main()
|