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 | |