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