BLL.Workflows.IsoGen.CreateGrubMenu C# (CSharp) Method

CreateGrubMenu() private method

private CreateGrubMenu ( ) : void
return void
        private void CreateGrubMenu()
        {
            var grubMenu = new StringBuilder();

            grubMenu.Append("# Global options" + NewLineChar);
            grubMenu.Append("set timeout=90" + NewLineChar);
            grubMenu.Append("set default=0" + NewLineChar);
            grubMenu.Append("set fallback=1" + NewLineChar);
            grubMenu.Append("set pager=1" + NewLineChar);

            grubMenu.Append("if loadfont /EFI/boot/unicode.pf2; then" + NewLineChar);
            grubMenu.Append("set gfxmode=1024x768,auto" + NewLineChar);
            grubMenu.Append("insmod efi_gop" + NewLineChar);
            grubMenu.Append("insmod efi_uga" + NewLineChar);
            grubMenu.Append("insmod gfxterm" + NewLineChar);
            grubMenu.Append("terminal_output gfxterm" + NewLineChar);
            grubMenu.Append("fi" + NewLineChar);

            grubMenu.Append("" + NewLineChar);
            grubMenu.Append("menuentry \"Boot To Local Machine\" {" + NewLineChar);
            grubMenu.Append("exit" + NewLineChar);
            grubMenu.Append("}" + NewLineChar);
            grubMenu.Append("" + NewLineChar);

            grubMenu.Append("menuentry \"Download Image\" {" + NewLineChar);
            grubMenu.Append("set gfxpayload=keep" + NewLineChar);
            grubMenu.Append("linux	/clonedeploy/" + _kernel + " ramdisk_size=156000 root=/dev/ram0 rw web=" + _webPath +
                " USER_TOKEN=" + _userToken + " task=push consoleblank=0 " + _arguments + NewLineChar);
            grubMenu.Append("initrd	/clonedeploy/" + _bootImage + NewLineChar);
            grubMenu.Append("}" + NewLineChar);
            grubMenu.Append("" + NewLineChar);

            grubMenu.Append("menuentry \"Upload Image\" {" + NewLineChar);
            grubMenu.Append("set gfxpayload=keep" + NewLineChar);
            grubMenu.Append("linux	/clonedeploy/" + _kernel + " ramdisk_size=156000 root=/dev/ram0 rw web=" + _webPath +
                " USER_TOKEN=" + _userToken + " task=pull consoleblank=0 " + _arguments + NewLineChar);
            grubMenu.Append("initrd	/clonedeploy/" + _bootImage + NewLineChar);
            grubMenu.Append("}" + NewLineChar);
            grubMenu.Append("" + NewLineChar);

            grubMenu.Append("menuentry \"Client Console\" {" + NewLineChar);
            grubMenu.Append("set gfxpayload=keep" + NewLineChar);
            grubMenu.Append("linux	/clonedeploy/" + _kernel + " ramdisk_size=156000 root=/dev/ram0 rw web=" + _webPath +
                " USER_TOKEN=" + _userToken + " task=debug consoleblank=0 " + _arguments + NewLineChar);
            grubMenu.Append("initrd	/clonedeploy/" + _bootImage + NewLineChar);
            grubMenu.Append("}" + NewLineChar);
            grubMenu.Append("" + NewLineChar);

            grubMenu.Append("menuentry \"Add Computer\" {" + NewLineChar);
            grubMenu.Append("set gfxpayload=keep" + NewLineChar);
            grubMenu.Append("linux	/clonedeploy/" + _kernel + " ramdisk_size=156000 root=/dev/ram0 rw web=" + _webPath +
                " USER_TOKEN=" + _userToken + " task=register consoleblank=0 " + _arguments + NewLineChar);
            grubMenu.Append("initrd	/clonedeploy/" + _bootImage + NewLineChar);
            grubMenu.Append("}" + NewLineChar);
            grubMenu.Append("" + NewLineChar);

            grubMenu.Append("menuentry \"On Demand\" {" + NewLineChar);
            grubMenu.Append("set gfxpayload=keep" + NewLineChar);
            grubMenu.Append("linux	/clonedeploy/" + _kernel + " ramdisk_size=156000 root=/dev/ram0 rw web=" + _webPath +
                " USER_TOKEN=" + _userToken + " task=ond consoleblank=0 " + _arguments + NewLineChar);
            grubMenu.Append("initrd	/clonedeploy/" + _bootImage + NewLineChar);
            grubMenu.Append("}" + NewLineChar);
            grubMenu.Append("" + NewLineChar);

            grubMenu.Append("menuentry \"Diagnostics\" {" + NewLineChar);
            grubMenu.Append("set gfxpayload=keep" + NewLineChar);
            grubMenu.Append("linux	/clonedeploy/" + _kernel + " ramdisk_size=156000 root=/dev/ram0 rw web=" + _webPath +
                " USER_TOKEN=" + _userToken + " task=diag consoleblank=0 " + _arguments + NewLineChar);
            grubMenu.Append("initrd	/clonedeploy/" + _bootImage + NewLineChar);
            grubMenu.Append("}" + NewLineChar);
            grubMenu.Append("" + NewLineChar);

            var outFile = _buildPath + "EFI" + Path.DirectorySeparatorChar + "boot" + Path.DirectorySeparatorChar +
                          "grub.cfg";

            new FileOps().WritePath(outFile, grubMenu.ToString());
        }