X-Git-Url: https://code.delx.au/refind/blobdiff_plain/32b3a5ad581fafc5c06493accc0202326ae6d362..508d89056f8675d0d664493fc82a574119e6f60a:/NEWS.txt diff --git a/NEWS.txt b/NEWS.txt index b622b4b..219353a 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -1,4 +1,669 @@ -0.7.9 (?/??/2014): +0.10.4 (?/??/2016): +------------------- + +- Tweaked refind-install to do a better job of detecting disks other + than /dev/sd? and /dev/hd? devices. + +0.10.3 (4/24/2016): +------------------- + +- Altered RPM & Debian installation scripts so as to NOT call sbsign if + Secure Boot is disabled. This is a response to Ubuntu bug #1574372 + (https://bugs.launchpad.net/ubuntu/+source/sbsigntool/+bug/1574372): In + Ubuntu 16.04, the sbsign program is segfaulting randomly, which prevents + proper installation of the program. This change at least permits proper + installation IF Secure Boot is disabled. + +- Changed description of BIOS/CSM/legacy OS loaders on Macs to include the + string "(Legacy)", so as to more easily identify BIOS/CSM/legacy-mode OSes + in the rEFInd main menu. + +- Added recognition of the fwupx64.efi file as a firmware update tool. + This filename is excluded from the first-row launchers, and is instead + presented on the second row, controlled by the "fwupdate" item on the + "showtools" option line. It's enabled by default. Note that it's still a + bit unclear to me how this tool is supposed to be used. rEFInd launches it + with no options, but if it should take options, this will have to be + changed in the future. + +- Tightened exclusion of shell binary filenames from boot loader scan. + Previously, any filename containing the substring "shell" was excluded + from scans. Now it's tighter; only files matching one of the filenames in + the constant SHELL_NAMES in main.c are excluded. This change will enable + programs with names that include "shell", but that aren't in rEFInd's + SHELL_NAMES list, such as "shelly.efi", to be shown in the rEFInd main + menu. + +- Fixed bug in NTFS driver that caused it to hang (and thus hang the + computer) in some situations, particularly when a file on an NTFS volume + had many fragments and when the computer's CSM was activated. (Fix + courtesy of "S L.") + +- Modified SIP/CSR rotation code: If the csr-active-config EFI variable is + missing AND the firmware is Apple (as identified by the string "Apple" + being present in the ST->FirmwareVendor string), rEFInd treats the + computer as one on which SIP is available and set to the "enabled" state + (0x10). The upshot is that the SIP/CSR tool will appear if the showtools + and csr_values options are set appropriately in refind.conf, even if the + csr-active-config variable is missing from the NVRAM. The point of this + change is that I've received reports of some Macs that run OS X 10.11 but + that lack this variable. OS X acts as if SIP were enabled, but rEFInd is + then unable to disable SIP. This change gives rEFInd the ability to + disable SIP on such systems. The drawback is that the variable might be + set on some systems that don't run OS X 10.11. This should be harmless + from a technical point of view, but the presence of SIP indicators in + rEFInd could be confusing. + +- Added refind-mkdefault script to simplify resetting rEFInd as the default + boot program in Linux. The intent is to run this after GRUB, Windows, OS + X, or some other tool takes over as the primary boot manager. It can be + called from a startup script to handle this task automatically. + +0.10.2 (1/26/2016): +------------------- + +- Fixed bug in refind-install that caused mountesp to be installed as a FILE + called /usr/local/bin on OS X if the /usr/local/bin directory did not + already exist. + +- Fixed bug in mvrefind that caused it to fail to move bootmgfw.efi in + some situations, and another that caused it to give the resulting NVRAM + entry the default rEFInd name of "rEFInd Boot Manager," rather than the + intended "Windows Boot Manager" (to work around bugs in some EFIs). + +- Worked around bug/quirk in some EFIs (in HP ProBook 6470b laptop, at + least) that prevented EFI filesystem drivers from working. (Drivers would + load but not provide access to filesystems.) + +- Fixed refind-install bug that caused --usedefault option to not work in OS + X. (This bug did not affect Linux.) + +- Improved Secure Boot detection in refind-install in Linux. + +- Fixed bug that caused custom volume badges (vol_*.png) to be read only + from default location ("icons" subdirectory), effectively eliminating the + ability to adjust them. + +- Added centos.crt and centos.cer public key files. + +0.10.1 (12/12/2015): +-------------------- + +- Change to PPA version: Installing the PPA now queries the user about + whether to install to the ESP. Upgrades will remember the initial + selection. + +- Modified time-based sorting of loaders in a single directory to push + anything starting with "vmlinuz-0-rescue" to the end of the list. Fedora + gives its rescue kernels filenames that begin with that string, and if + such a kernel happens to be the most recent, treating it normally will + cause it to become the default when kernel folding is in use. This is + almost certainly undesirable, so this change keeps the rescue kernel at + the end of the list instead, which is saner. + +- Significantly reworked the project's Makefiles. This should have no + impact on ordinary users, and even most developers should barely notice + it; but it should make future extensions to additional platforms or + building in different environments easier. + +- Added workaround to gptsync for issue with some Macs' EFIs that caused + the program to skip through all prompts, thus accepting the default + option. This would normally cause gptsync to do nothing. + +- Added type code 53746F72-6167-11AA-AA11-00306543ECAC (Apple Core Storage, + gdisk type AF05) to list of partition types recognized by gptsync. + +- Removed Luxi Sans Mono font, since I discovered it was not open source; + and changed the default font from Nimbus Mono to Liberation Mono. + +- Added support for compiling rEFInd for ARM64 (aka AARCH64 or aa64). This + works with both GNU-EFI and Tianocore UDK2014.SP1.P1. This support is + currently poorly tested. In particular, I used QEMU on an x86-64 computer + to create a virtualized ARM64 environment; I've not yet tested on a real + computer. I couldn't get QEMU to create a video card, so I used a serial + terminal, which means that the graphics features are untested -- I ran + rEFInd with "textonly" uncommented in refind.conf. I've tested the ext4fs + driver but no other drivers, although they all compile. (So does gptsync, + although it's unlikely to be useful on ARM64.) Some rEFInd features are + meaningless on ARM64, such as BIOS-mode boot support, anything geared + toward Macs (csr_values/csr_rotate, spoof_osx_version, etc.), and + enable_and_lock_vmx. + +- Fixed bug that caused rEFInd to fail to scan EFI boot loaders on + removable media when rEFInd itself was launched from the fallback + filename. + +- Moved detailed descriptions of refind-install from installing.html to + a refind-install man page. To keep this information Web-accessible, I've + also created HTML versions of the three man pages and linked them into + the HTML documentation. + +- Updated LodePNG to latest version (20151024). + +- Fixed bugs in mkrlconf and in refind-install that could cause some kernel + options to be excluded from refind_linux.conf. There were two trouble + conditions: + - Previously, these scripts assumed that the first option in + /proc/cmdline was the kernel's filename, but this isn't always the + case. (In particular, when gummiboot launches the kernel, this is not + true. It might be an incorrect assumption in some other cases, too.) + The fix involves checking for likely signs of a kernel filename before + discarding this first option. + - These scripts cut the "initrd=*" option from /proc/cmdline, but the + call to "sed" was overzealous and cut until the end of input. This + usually worked, since the initrd= option was usually last on the line; + but if it wasn't, any options following initrd= would be lost. + +- Added "kernel*" as a matching pattern for Linux kernels, since this is + what Gentoo uses by default. + +- The refind-install script can now be run as a symbolic link in Linux. + This enables creating a /usr/sbin/refind-install link in Linux packages, + with the binaries stashed wherever the package system likes them. This + feature does NOT work in OS X, but there's relatively little need for it + there. + +0.10.0 (11/8/2015): +------------------- + +- Fixed bug that caused refind-install to not unmount the ESP when it + should under OS X. + +- Modified refind-install and mkrlconf scripts to use /proc/cmdline as + source for default boot options EXCEPT when refind-install receives the + --root option. In that case, refind-install continues to use + /etc/default/grub as the source of default options. The idea behind this + change is that it's more reliable to get boot options from /proc/cmdline + when the targeted system is the one that's booted; but --root would be + used from emergency disks or live CDs, in which case the current boot + options would be completely wrong, so extracting boot options from GRUB + files is the best bet for getting close to the right options. + +- Added "@/boot" to default also_scan_dirs setting. This makes kernels + show up on Btrfs volumes under Ubuntu (and perhaps others), at least when + the Btrfs driver is loaded. + +- Added new System Integrity Protection (SIP) rotation feature for Macs + running OS X 10.11 or later. This feature is disabled by default, except + on CD-R and USB flash drive images, on which it's enabled. To enable it, + you must make TWO changes to refind.conf: Uncomment the new "csr_values" + item and add "csr_rotate" to the "showtools" line (uncommenting it, too, + if it's commented out). If desired, you can set more values on + "csr_values"; these are comma-delimited one-byte hexadecimal values that + define various SIP states. When SIP/CSR rotation is activated, a new + shield icon appears among the tools. Selecting it causes the next defined + value to be set and a confirmation message to appear for three seconds. + +- Added display of current System Integrity Protection (SIP) mode to + "About" display. + +- Added mountesp script for OS X to (you guessed it!) mount the ESP. + +- Renamed support scripts: install.sh to refind-install, mvrefind.sh to + mvrefind, and mkrlconf.sh to mkrlconf. + +- New icons! The old ones were getting to be a jumbled mess of styles, + particularly for OS tags. I used the AwOken icon set + (http://alecive.deviantart.com/art/AwOken-163570862) for the core icons, + then expanded from there by creating my own icons and modifying icons for + Debian and Elementary OS. I'm also trying to keep better track of + copyrights and licenses on icons. Between that and some icons being for + OSes that probably see very little use (FreeDOS and eComstation, for + instance), a few OS icons have been lost. If you prefer the old icons, + you can continue to use them by upgrading rEFInd, renaming icons-backup + to something else (say, icons-classic), and then adding an "icons" line + in refind.conf to point to the old icons directory. + +- Changed from .zip to .tar.gz as source code archive format. I did this + because Linux is the only officially-supported build platform, and + tarballs are a more natural fit to a Linux environment. I'm leaving .zip, + .deb, and .rpm files as the formats for binary packages. + +- Added detection of System Integrity Protection (SIP; aka "rootless") mode + to OS X portion of install.sh script. When detected, and if no existing + rEFInd installation is found, the script now prints a warning and brief + instructions of how to enter the Recovery mode to install rEFInd and + suggests aborting the installation. (The user can override and attempt + installation anyhow.) If SIP is detected along with an existing rEFInd + installation, the script moderates the warning and explains that an + update of a working rEFInd will probably succeed, but that re-installing + to fix a broken rEFInd will probably fail. + +- Added new "spoof_osx_version" token, which takes an OS X version number + (such as "10.9") as an option. This feature, when enabled, causes rEFInd + to tell a Mac's firmware that the specified version of OS X is being + launched. This option is usually unnecessary, but it can help properly + initialize some hardware -- particularly secondary video devices. OTOH, + on some Macs it can cause hardware (notably keyboards and mice) to become + unresponsive, so you should not use this option unnecessarily. + +- Worked around an EFI bug that affected my 32-bit Mac Mini: That system + seems to have a broken EFI, or possibly a buggy CPU, that causes some + (but not all) conversions from floating-point to integer numbers to hang + the computer. Such operations were performed only in rEFInd's + graphics-resizing code, and so would manifest only when icons or + background images were resized. My fix eliminates the use of + floating-point operations in the affected function, which eliminates the + crashes. There may be some degradation in the quality of resized images, + though, particularly on 32-bit systems. (64-bit systems use larger + integers, which enable greater precision in my floating-point + workaround.) + +- Under OS X, install.sh can now be run from the recovery system. This may + help work around OS X 10.11's problems with System Integrity Protection, + since it should be possible to reboot into the recovery system to install + rEFInd without disabling SIP for the main installation, even for just one + boot. + +0.9.2 (9/19/2015): +------------------ + +- Added "--keepname" option to install.sh. This option causes install.sh + to keep refind_x64.efi named as such rather than rename it as grubx64.efi + when using Shim. This option is meaningful only if the --shim option is + also used. This option passes the refind_x64.efi filename as an option to + Shim, which overrides the default filename of grubx64.efi. A big caveat: + Only Shim 0.7 and later supports this feature. (Shim 0.4 also works if a + refind_x64.efi is referred to as "\refind_x64.efi" on the command line, + but the need for a leading backslash to refer to a file in the same + directory as Shim is so confusing and wrong that I cannot in good + conscience support it.) I've not seen signed Shim binaries between 0.4 + and 0.7, so I don't know if any of them might work. + +- Implemented a workaround for a bug in Shim 0.8 that prevented + authentication of more than one binary. If any filesystem drivers were + installed, the first one would be verified, leaving rEFInd unable to + launch anything else unless it was signed by a key in the computer's main + Secure Boot db list. + +0.9.1 (9/13/2015): +------------------ + +- When rEFInd identifies the root (/) partition via the Freedesktop.org + Discoverable Partitions Specification, it now checks two of the + partition's attributes, as per the DPS (see + http://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/): + - The partition's read-only attribute determines whether to pass a "rw" + or "ro" option to the kernel. + - If the partition's do-not-automount flag is set, rEFInd will not pass + it as a "root=" option to the kernel. This flag can be used to remove + all but one partition from consideration as a root (/) partition if a + system has more than one with the correct type code. + +- Improved Freedesktop.org Discoverable Partitions Specification support: + Previously, if no refind_linux.conf file was present but an /etc/fstab + file was found, rEFInd ignored the Discoverable Partitions Specification + filesystem-type codes. This was fine if /etc/fstab contained a valid "/" + filesystem specification, but if that was absent, the result was no + "root=" specification being present. Under these circumstances + (refind_linux.conf absent, /etc/fstab present but lacking a "/" entry), + rEFInd now tries to identify a device to specify as "root=" via the + Discoverable Partitions Specification. + +- Fixed bug that caused "Found match!" and a prompt to press a key to + continue to be printed if any partition used the Freedesktop.org + Discoverable Partitions Specification root-partition GUID. (This + was leftover debugging/testing code that I somehow missed deleting.) + +- Added icon for Elementary OS. + +- Added /etc/lsb-release to files scanned for clues about the Linux + distribution. This file differentiates Mint and Elementary OS from Ubuntu + better than does /etc/os-release, and may also help with other + closely-related distributions. + +- Improvements to handling of case-insensitive string comparisons. These + are buggy on some EFIs, and such bugs affect things like dont_scan_* + blacklists, removal of rEFInd's own directory from scanning, matching of + keyword names in refind.conf, and even loading of icons. I've replaced + many calls to problematic functions with safer calls, which should help a + lot. There may still be problems on some systems with some computers, + though; as far as I can tell, the bugs are buried deep in some EFI + firmware, so I can only replace some of the most direct calls to + potentially buggy system calls. + +0.9.0 (7/26/2015): +------------------ + +- New icon for Kali Linux, submitted by Francesco D'Eugenio. + +- Minor code changes to ensure that rEFInd compiles with GCC 5.1. (Tested + with GNU-EFI on a Fedora 22 system; not yet tested with the TianoCore + EDK2.) + +- Added new "fold_linux_kernels" token to refind.conf. This option, when + active (the default) "folds" all Linux kernels in a directory into a + single entry on the rEFInd menu. The kernel with the most recent time + stamp is launched by default. To launch another kernel, you must press F2 + or Insert; additional kernels appear as options on the first kernel's + submenu. To see the pre-0.9.0 behavior, you must set "fold_linux_kernels + false" (or one of its synonyms, "off" or "0"). The point of this option + is to help de-clutter the rEFInd main menu. + +- Added new Linux root (/) partition auto-discovery feature, based on + Freedesktop.org's Discoverable Partitions Spec (DPS) + (http://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/): + If no refind_linux.conf file or /etc/fstab file is found, and if a + partition with the correct DPS type code for the system architecture is + found, rEFInd adds "ro root=/dev/disk/by-partuuid/{GUID}" to the kernel + options. This will not help on LVM setups, and will get it right for only + one installation on systems with multiple Linux installations, but it may + help some users, if/when the DPS type codes become more common. + +- Fixed bug that caused a rEFInd crash if an empty refind_linux.conf + file was encountered. + +- The mkrlconf.sh script now checks the OS on which it's running, which + should help avoid confusion or problems by users who mistakenly run it + under OS X. + +- rEFInd now skips checking for various BIOS-mode boot sector signatures + when running on a UEFI-based PC; these checks are run only on Macs. This + may reduce startup time on systems with many partitions. + +- Fixed Debian debinstall script to work correctly on IA32 systems. It had + a bug that caused filesystem drivers and gptsync to not be packaged for + IA32. + +- Modified Debian postinst file to call install.sh with --localkeys option + if sbsign and openssl are available, even when NOT in Secure Boot mode or + if shim is not detected. This helps with my Ubuntu PPA when using custom + Secure Boot keys, since the PPA is delivered unsigned. (Users will have + to have added their own local keys to their firmware's db.) For + consistency, I've made the same change to the RPM .spec file. + +0.8.7 (3/1/2015): +----------------- + +- Fixed install.sh bug that caused inappropriate installation under the + name bootx64.efi (or bootia32.efi) under Linux, with a failure to update + the boot entries in NVRAM, has been fixed. + +- Added identification of XFS as filesystem type in volume descriptions. + +- More fixes to filesystem type detection code. Previous version sometimes + identified FAT or NTFS (or anything with a boot loader) as a whole-disk + device rather than the correct filesystem type. + +- Added protections to the code to reduce the risk of crashes that might + occur when dereferencing NULL pointers in various situations. + +- I'm deprecating the use of filesystem numbers (as in "fs0:") because + they're unreliable -- filesystem numbers can change between boots and + might not be the same as those used in an EFI shell or other program. + Sooner or later I'll remove code supporting this feature. In the + meantime, if it doesn't work for you, please switch to using filesystem + labels, partition labels, or partition GUIDs. + +- Added detection of FreeBSD's BIOS-mode GPT boot loader. Previously, + rEFInd could detect FreeBSD's BIOS-mode MBR boot loader, which gave + FreeBSD an appropriate icon on Macs; but the BIOS-mode GPT boot loader + code is different, so some recent FreeBSD installations showed up with + generic grey diamond icons. This change creates FreeBSD icons instead. + +- Added "Secure Boot [active|inactive]" notice to "about" menu for x86 + (32-bit) systems, since there are now a few 32-bit UEFI systems that + support Secure Boot. (AFAIK, these are mostly tablets and convertibles + such as the ASUS T100.) + +- Added KeyTool.efi and KeyTool-signed.efi to list of MOK managers. KeyTool + is the "super-deluxe" Secure Boot key and hash manager provided as part + of the efitools package. + +- Fixed more instances of "invalid parameter" errors on some EFIs. + +- Improved Secure Boot detection in install.sh. + +- install.sh should no longer complain when copying Shim or MokManager over + itself. + +0.8.6 (2/8/2015): +----------------- + +- Removed special case of ignoring an HFS+ name of "HFS+ volume", since the + old rEFInd HFS+ driver that produced this name for all HFS+ volumes has + long since been updated to deliver a real name. + +- Addition of new Windows 8 OS icon. On Macs and for BIOS/legacy boots, the + new icon is now used for Windows Vista, 7, and 8, while the old one is + used for earlier versions of Windows. For EFI-mode boots, the new icon is + used universally. + +- If the NTFS driver is loaded, rEFInd now scans NTFS volumes on Macs for + the presence of Windows boot files, and removes any NTFS volume that + lacks such files from the BIOS/legacy boot list. This should help + unclutter the display on Macs that contain NTFS data partitions. + +- Fixed bug that caused misidentification of both whole disks and NTFS + volumes as being FAT. (This bug affected the identification of devices + and locations in the rEFInd menu, not actual access to devices.) + +- Code refactoring to clear out legacy-boot functions from the + ever-expanding refind/main.c file. + +- Added new "badges" option to the "hideui" token in refind.conf. This + option hides the device-type badges associated with the OS boot options. + +- Reverted rEFIt commit r472, introduced in rEFInd 0.8.5 to support more + BMP images because I've received bug reports that it's causing existing + selection images to fail to load. + +- Fixed install.sh bug that caused misidentification of installation + directory under OS X if an already-mounted ESP has spaces in its path. + +- Fixed Mac-specific install.sh bug that could cause misidentification of + the ESP on disks with partition numbers of 10 or above. + + +0.8.5 (2/1/2015): +----------------- + +- Added NTFS EFI filesystem driver. + +- Minor improvements to filesystem driver framework code. + +- Changes to + +- Fixed bug in Btrfs driver's address reference. + +- Improved install.sh to make it smarter about figuring out where to + install on Macs. Specifically, this version now upgrades existing + installations, if found (as it always has under Linux), rather than + blindly install to EFI/BOOT; it installs to EFI/refind if not existing + installation is found; it installs using the --shortform option to bless, + which seems to eliminate the 30-second delay problem; and it can handle + an HFS+ ESP, which it treats as a separate HFS+ volume (as if the user + had used --ownhfs). These changes do not affect behavior under Linux. + +- Added missing check of architecture type for several tools. + +- Applied rEFIt commit r472, which adds support for BMP images with negative + height fields, indicating that the image is NOT vertically flipped. This + commit and r467 were not incorporated in the original rEFInd because I + forked it from a Debian rEFIt package that had been patched to build + under GNU-EFI, and was apparently based on a slightly earlier version. + +- Applied rEFIt commit r467, which improves Mac handling of legacy boots + from other than the first hard disk. + + +0.8.4 (12/8/2014): +------------------ + +- Tweaked default for dont_scan_volumes: Removed "Recovery HD". This change + better suits the needs of OS X 10.10 ("Yosemite") installations, but may + result in some stray Recovery HD entries on some Macs. + +- Updated icons for Fedora and Ubuntu and added an icon for Xubuntu. + +- Added new configuration option, "enable_and_lock_vmx", which sets an + Intel CPU feature that's required for some types of virtualization to + work. Most EFIs enable setting this feature in their own setup utilities, + but some (such as most Macs) don't. + +- If rEFInd can't locate an icons directory (either the default or one + specified by the icons_dir token), the program switches to text-only + mode. + +- If a loader contains the string "grub" and no other clue to the loader's + OS association exists, search for os_grub.{png|icns} (which is not + provided with rEFInd) or os_linux.{png|icns}. (Previous versions provided + a generic loader icon for GRUB.) + +- Fixed bug that caused dont_scan_files to not work with special-case + boot loaders (for OS X and Windows) when specifying the complete path to + the loader (e.g., EFI/Microsoft/Boot/bootmgfw.efi). + +- Added support for the iPXE network boot tool (see BUILDING.txt for + building and basic use instructions). + +0.8.3 (7/6/2014): +----------------- + +- Added new feature: Setting "timeout = -1" in refind.conf causes rEFInd to + immediately boot the default option UNLESS a keypress is in the buffer + when rEFInd launches. In that case, if the keypress corresponds to a + shortcut key, the associated boot loader is launched; or if not, the menu + is displayed. + +- Added new icons for Clover boot loader and for Mythbuntu Linux + distribution. + +- rEFInd now displays the partition's label, when one is available, when + offering a BIOS-mode boot option for a partition with no filesystem + driver. This works only on Macs doing BIOS-mode booting. + +- Removed GPLv2 code from the FSW core files. This was done because the + Btrfs driver is derived from the GRUB Btrfs driver, which is licensed + under the GPLv3. Ironically, the GPLv2 and GPLv3 are incompatible + licenses, so ensuring that the Btrfs driver doesn't rely on GPLv2 code + was legally necessary. In most cases, I reverted to the original rEFIt + code, although I kept my own cache code; since I wrote it, I can + change its license to a BSD license. + +- Fixed bug that caused rEFInd to unload drivers immediately after loading + them. This didn't affect rEFInd's own drivers because they didn't include + the unload hooks, but it did affect some other drivers. + +- Changed default scan_all_linux_kernels setting from "false" to "true", + and commented the option out in refind.conf-sample. This should not + affect most people, since refind.conf-sample had this option commented + out, and most rEFInd users either use it that way or don't have Linux + kernels installed at all. I've made this change because I want rEFInd to + "do the right thing" by default in as many cases as possible. For a while + now, rEFInd has been excluding non-bootable files from its menu, and most + kernels "in the wild" now include the EFI stub. Thus, enabling this + support by default seems worthwhile. If you prefer to not scan Linux + kernels by default, simply uncomment the "scan_all_linux_kernels" line + and ensure it's set to "false". + +0.8.2.1 (6/8/2014): +------------------- + +- Removed stray bit of debugging code that caused a prompt to press a + key to appear at rEFInd startup. + +0.8.2 (6/8/2014): +----------------- + +- Changed behavior when default_selection is not set: It now boots the + previously-booted loader, assuming it's still available; if not, rEFInd + boots the first loader (as it does now). Behavior is unchanged if + default_selection is set. Note that this behavior depends on the ability + of rEFInd to store an EFI variable in NVRAM. It therefore fails on + systems with flaky NVRAM storage. You can view the previously-booted + loader in the + /sys/firmware/efi/efivars/PreviousBoot-36d08fa7-cf0b-42f5-8f14-68df73ed3740 + variable under Linux. + +- Added icon for Mageia Linux (os_mageia.png). + +- Fixed bug that could misidentify a not-quite-GUID as a GUID in a + manual boot stanza's "volume" line. + +- I've updated my personal build system, and therefore the rEFInd Makefiles + and related files, to use TianoCore UDK2014 rather than UDK2010. + +- Added "deep_uefi_legacy_scan" token. When not set (the default), rEFInd + does not modify EFI NVRAM settings when scanning for BIOS-mode boot + loaders on UEFI-based (non-Mac) computers. Some computers require + uncommenting this setting for rEFInd to reliably detect some BIOS-mode + boot devices. Passing "0", "off", or "false" as an option resets it to + the default value (useful in a loaded secondary configuration file to + override a setting in the main file). + +0.8.1 (5/15/2014): +------------------ + +- Fixed bug that could cause rEFInd to fail to detect boot loaders stored + on the root directory of a partition. + +- Added two new bitmap fonts to those distributed with rEFInd: Ubuntu Mono + and Nimbus Mono. Both come in 12-, 14-, 16-, and 24-point sizes. + +- Messages about pauses for scanning and re-scanning of boot loaders are + now suppressed when doing an initial delayed scan when scan_delay is 1 + second. + +- Improved centering of legacy boot option descriptions on some systems' + screens. + +- Fixed bug that could cause a BIOS-mode boot to boot from an inappropriate + device if that device had an innately high boot priority (as set by the + firmware). + +- Changed icons from ICNS to PNG form. There are several reasons to do + this, all of them minor; but together they're enough to warrant a change. + PNG is more common, and therefore more accessible to most users -- + particularly those who don't use OS X. The PNG files are smaller than + their ICNS equivalents. PNG supports a wider range of sizes (although I'm + not now using anything that ICNS doesn't support, I might in the future). + The icon-scaling support added a few versions ago makes ICNS's support + for multiple icon sizes relatively unimportant. + +- Reversed order of search for icons by extension: rEFInd now searches + for PNG files before ICNS files, rather than the other way around. This + makes it possible to override a volume icon for rEFInd by giving it the + name .VolumeIcon.png, even when a .VolumeIcon.icns file exists on the + volume and is used by OS X. + +- Fixed bug that caused .VolumeIcon.icns to take higher-than-intended + precedence in icon setting for OS X. + +- Chainloading to BIOS-mode boot loaders now works on UEFI-based PCs when + rEFInd is built with GNU-EFI, not just when built with Tianocore. + +0.8.0 (5/4/2014): +----------------- + +- The "dont_scan_volumes" parameter now also works with legacy-boot + volumes. Unlike with EFI volumes, where the option you pass must exactly + match an entire volume name, when applied to legacy-boot volumes, it + matches any part of the description that appears beneath the item when + you select it in the rEFInd main menu. + +- Can now boot in legacy mode from second (and probably later) hard disks! + +- rEFInd now limits the length of the firmware name string shown in the + system information screen to 65 characters. This is done because at least + one EFI presents a longer string by default, and this causes the entire + information display to come up empty on 800x600 displays. + +- rEFInd now uses the partition's name (as stored in the GPT data + structures) as a fallback for the filesystem's name if the latter can't + be found. Exceptions are if the partition name is one of three generic + names used by GPT fdisk: "Microsoft basic data", "Linux filesystem", or + "Apple HFS/HFS+". These are ignored in favor of the descriptive fallback + (e.g., "20 GiB Btrfs volume") + +- It's now possible to specify a volume by partition GUID number in a + manual boot stanza. This should be more reliable (albeit also more + awkward) than using a filesystem number (such as fs0: or fs1:). + +- Fixed memory-allocation bug that could cause error message displays, + and possibly hangs, when re-scanning boot loaders. + +0.7.9 (4/20/2014): ------------------ - Attempt to fix rEFInd perpetually re-scanning after ejecting a disc on