| 1 | | New release candidate. |
| | 1 | After five years, a new version. |
| | 2 | |
| | 3 | New in 2.02: |
| | 4 | |
| | 5 | * New/improved filesystem and disk support: |
| | 6 | * Big-endian UFS1. |
| | 7 | * Experimental 64-bit ext2 support. |
| | 8 | * Various fixes for non-512-byte sector devices. |
| | 9 | * New `proc' filesystem framework, used by LUKS disks. |
| | 10 | * Fix DM-RAID partition handling. |
| | 11 | * New `nativedisk' command to switch from firmware to native disk drivers. |
| | 12 | * Compressed HFS+. |
| | 13 | * DragonFly BSD labels. |
| | 14 | * CBFS (coreboot). |
| | 15 | * Handle partitioned LVM properly. |
| | 16 | * Use LVM UUIDs whenever possible. |
| | 17 | * GPT PReP. |
| | 18 | * New `progress' module that shows progress information while reading |
| | 19 | files. |
| | 20 | * ZFS features support. |
| | 21 | * ZFS LZ4 support. |
| | 22 | * XFS V5 format support. |
| | 23 | * LVM RAID1 support. |
| | 24 | |
| | 25 | * New/improved terminal and video support: |
| | 26 | * Monochrome text (matching `hercules' in GRUB Legacy). |
| | 27 | * Morse code output using system speaker. |
| | 28 | * `spkmodem' output (simple data protocol using system speaker). |
| | 29 | * Handle Japanese special keys. |
| | 30 | * coreboot framebuffer. |
| | 31 | * Serial on ARC. |
| | 32 | * Native vt100 handling for grub-emu, replacing the use of the curses |
| | 33 | library. |
| | 34 | * New gfxmenu options for terminal window positioning, theme background |
| | 35 | image handling, and scrollbar padding, plus `item_pixmap_style' and |
| | 36 | `highlight_overlay'. |
| | 37 | * Support several more image types (paletted and greyscale). |
| | 38 | |
| | 39 | * Boot protocol improvements: |
| | 40 | * Support Apple FAT binaries on non-Apple platforms. |
| | 41 | * Improve FreeDOS direct loading support compatibility. |
| | 42 | * Enable `linux16' on all x86 platforms, not just BIOS. |
| | 43 | * New TrueCrypt ISO loader. |
| | 44 | * multiboot2 boot-services EFI specification. |
| | 45 | * multiboot2 EFI memory map specification. |
| | 46 | * multiboot2 full-file specfication. |
| | 47 | |
| | 48 | * New/improved network support: |
| | 49 | * New variables `net_default_*' containing properties of the default |
| | 50 | interface. |
| | 51 | * Autoload `http' and `tftp' modules if necessary. |
| | 52 | * Improve TFTP robustness. |
| | 53 | * Parse `nd' disk names in GRUB Legacy configuration files. |
| | 54 | * Issue separate DNS queries for IPv4 and IPv6. |
| | 55 | * Support IPv6 Router Advertisement to configure default router. |
| | 56 | * New variable net_<interface>_next_server containing next server |
| | 57 | from BOOTP reply. |
| | 58 | |
| | 59 | * Coreboot improvements: |
| | 60 | * CBFS support both in on-disk images (loopback) and flash. |
| | 61 | * Ability to launch another payload from flash or disk |
| | 62 | * Coreboot framebuffer |
| | 63 | * CBMEMC support (both logging and inspecting logs) |
| | 64 | * Command for inspecting coreboot timestamps (`coreboot_boottime'). |
| | 65 | * Command for inspecting coreboot tables (`lscoreboot'). |
| | 66 | * New target default_payload.elf. |
| | 67 | * Increased maximal core size. |
| | 68 | * Prefer pmtimer for TSC calibration. |
| | 69 | |
| | 70 | * New/improved platform support: |
| | 71 | * New `efifwsetup' and `lsefi' commands on EFI platforms. |
| | 72 | * New `cmosdump' and `cmosset' commands on platforms with CMOS support. |
| | 73 | * New command `pcidump' for PCI platforms. |
| | 74 | * Improve opcode parsing in ACPI halt implementation. |
| | 75 | * Use the TSC as a possible time source on i386-ieee1275. |
| | 76 | * Merge PowerPC grub-mkrescue implementation with the common one. |
| | 77 | * Support grub-mkrescue on i386-ieee1275, sparc64, bootinfo machines such |
| | 78 | as pSeries, and mips-arc. |
| | 79 | * Make grub-mkrescue better support Apple Intel Macs on CD. |
| | 80 | * Enable GRUB Legacy configuration file parsing on EFI. |
| | 81 | * Support halt for Loongson 2E. |
| | 82 | * ARM U-Boot and EFI ports. |
| | 83 | * Reorganise platform-dependent code in utilities to avoid #ifdef mess. |
| | 84 | * AROS and Haiku support for userspace utilities. |
| | 85 | * Xen PV port. |
| | 86 | * Fix EFI stack alignment. |
| | 87 | * ARM64 EFI port. |
| | 88 | * On Linux, read partition start offsets from sysfs if possible. |
| | 89 | * New grub-macbless utility, and better integration with Mac firmware in |
| | 90 | grub-install. |
| | 91 | * Support Yeeloong 3A. |
| | 92 | * Add `cpuid --pae' option to detect Physical Address Extension on x86. |
| | 93 | * Support for USB debug dongles. |
| | 94 | * Support for *-emu on all platforms (previously only i386/x86_64 worked). |
| | 95 | * Support *-emu on Windows. |
| | 96 | * New platform `none' which builds only user level utilities. This is now |
| | 97 | default if target CPU is not supported. |
| | 98 | * Support for booting little-endian Linux kernel on powerpc. |
| | 99 | * Support network boot with Oracle sun4v vnet devices. |
| | 100 | * Added SAS disks to the IEEE 1275 Open Firmware device list. |
| | 101 | * Try multiple methods for TSC (timestamp counter) calibration - PIT, pmtimer, |
| | 102 | EFI Stall. If everything fails, use hardcoded frequency 800MHz. |
| | 103 | * Support Hyper-V Gen2 platforms which lack PIT for TSC calibration. |
| | 104 | * Map UEFI Persistent Memory to E820 persistent memory. |
| | 105 | * New Xen loader on ARM64. |
| | 106 | * Respect alignment requirement for block device IO buffers on EFI. |
| | 107 | |
| | 108 | * Security: |
| | 109 | * Add optional facility to enforce that all files read by the core image |
| | 110 | from disk have a valid detached digital signature. |
| | 111 | |
| | 112 | * Performance: |
| | 113 | * Avoid costly division operations in many places. |
| | 114 | * New boot time analysis framework (`./configure --enable-boot-time'). |
| | 115 | * Initialise USB ports in parallel. |
| | 116 | * New `testspeed' command to test file read speed. |
| | 117 | * Speed-up gfxterm by storing intermediate results in more compact format. |
| | 118 | * Lazy LVM/mdraid scan. |
| | 119 | * Disk hints. |
| | 120 | |
| | 121 | * Scripting: |
| | 122 | * New `eval' and `tr' commands. |
| | 123 | * grub-script-check fails on scripts containing no commands. |
| | 124 | |
| | 125 | * Installation and other utility improvements: |
| | 126 | * Add option to compress files on installation or image creation. |
| | 127 | * Using grub-reboot no longer requires setting `GRUB_DEFAULT=saved'. |
| | 128 | * Support probing EFI System Partition (requires os-prober >= 1.58). |
| | 129 | * Fix inconsistent use of `GRUB_CRYPTODISK_ENABLE' and |
| | 130 | `GRUB_ENABLE_CRYPTODISK'; the latter is now used consistently. |
| | 131 | * grub-mount handles symbolic links to directories. |
| | 132 | * Support disabling submenus with `GRUB_DISABLE_SUBMENU' configuration key |
| | 133 | for grub-mkconfig. |
| | 134 | * grub-install, grub-mknetdir, grub-mkrescue, and grub-mkstandalone |
| | 135 | rewritten in C. They should now work in supported non-Unix-like |
| | 136 | environments. |
| | 137 | * Native mingw support. |
| | 138 | * Ability to install on EFI under windows. |
| | 139 | * Reorganise timeout handling using new `timeout_style' environment |
| | 140 | variable and `GRUB_TIMEOUT_STYLE' configuration key for grub-mkconfig. |
| | 141 | Menu hotkeys pressed during a hidden timeout now boot the corresponding |
| | 142 | menu entry immediately. |
| | 143 | * New `file' command and grub-file utility to check file types. |
| | 144 | * New syslinux configuration file parser. |
| | 145 | * Set menu entry class to primary OS name returned by os-prober to display |
| | 146 | OS specific icon. |
| | 147 | * On Linux x86 detect EFI word size in grub-install and automatically select |
| | 148 | correct platform (x86_64-efi or i386-efi) to install. Requires Linux kernel |
| | 149 | 4.0 or higher. |
| | 150 | |
| | 151 | * Build system: |
| | 152 | * Remove all uses of nested functions; GRUB no longer requires an |
| | 153 | executable stack. |
| | 154 | * Fix documentation build with Texinfo >= 5.1. |
| | 155 | * More robust and documented cross-compiling support. |
| | 156 | * Partial clang support for some platforms (experimental). |
| | 157 | * Partial mingw64 x86_64-efi compile support (highly experimental). |
| | 158 | * Partial mingw32 i386-* (other than already present i386-pc) |
| | 159 | compile support (highly experimental). |
| | 160 | * Support for grub-mkpasswd on Windows. |
| | 161 | * Eliminate the use of AutoGen. This allowed some performance |
| | 162 | improvements to the build system. |
| | 163 | * Remove variable length arrays. |
| | 164 | * OpenBSD compile and tools support (NetBSD and FreeBSD were already supported). |
| | 165 | * Fix build with FreeType >= 2.5.1. |
| | 166 | * Make gentpl.py compatible with Python 3. It now requires at least |
| | 167 | Python 2.6. |
| | 168 | * modinfo.sh contains build information now. |
| | 169 | * Added many new tests to improve robustness. |
| | 170 | * Target is built without libgcc now. Necessary builtins are reimplemented |
| | 171 | directly. This removes requirement for target-specific runtime on build |
| | 172 | system. |
| | 173 | * emu libusb support removed (was broken and unmaintained). |
| | 174 | * powerpc64le compile support. |
| | 175 | * Use fixed timestamp when generating GRUB image for reproducible builds. |
| | 176 | * Verify at build time that modules contain only supported relocations and their |
| | 177 | structure matches what boot-time module loader expects. |
| | 178 | * Do not require fonts on powerpc-ieee1275. |
| | 179 | |
| | 180 | * Revision control moved to git. |
| | 181 | |