versions of OS X.
0.7.5 (10/??/2013):
-------------------
+- Fixed bug that caused rEFInd to hang on some Macs when multiple EFI
+ drivers were present.
+
- Fixed bug that caused clear to default gray screen when launching OSes
with 'use_graphics_for' enabled, even when the rEFInd background is not
gray. Now rEFInd clears to the same background color used in its menu.
<li><b>Ext2Pkg</b>—This driver, based on <a href="https://bitbucket.org/alinrus/ext2pkg">bitbucket</a> and with a backup on <a href="https://github.com/the-ridikulus-rat/Tianocore_Ext2Pkg">github,</a> appears to be an ext2fs/ext3fs driver built independently of the driver written by Christoph Pfisterer. The linked-to sites provide access to source code via <tt>git</tt> but do not provide binaries. When I built binaries, they failed to work. Under VirtualBox, the driver loaded but then hung when I tried to access an ext2 filesystem. On a 32-bit Mac Mini, I got error messages when I tried to access an ext2 filesystem. As I write, the code was last updated in March of 2012. If you check the project and it's been updated more recently, it might be worth trying. Otherwise, I can't recommend this driver. I mention it here only in case it improves in the future.</li>
+<li><b>Paragon's UFSD</b>—According to <a href="http://blog.paragon-software.com/?p=2951">this blog post,</a> Paragon Software has ported its <a href="http://www.paragon-software.com/technologies/ufsd.html">Universal File System Drivers (UFSD)</a> to EFI, providing "transparent access to NTFS, HFS+, ExFAT, and ExtFS" (sic). The entry doesn't provide any download links, and it's unclear if the product is (or will be) available for free or on a pay basis. I haven't tried these drivers, so I can't comment on their quality.</li>
+
</ul>
<p>Most of these cross-project drivers appear to be related, and most of them have fed into rEFInd's drivers. I used the Clover package, which in turn was based on the VirtualBox drivers, as a starting point. Everybody else has dropped rEFIt's original ReiserFS driver, but I added that back. Of these drivers, only the Clover EFI Tools NTFS driver is missing from rEFInd. Specific versions can have their own quirks, though. For instance, the Clover (and I suspect VirtualBox) drivers don't return volume labels, which causes rEFInd to display loaders on those volumes as being on a disk called <tt>Unknown</tt>. (I fixed that bug for rEFInd's version, and it wasn't present in the original rEFIt drivers.) Most of these drivers also suffer from speed problems on some computers. This is worst with the ext2fs drivers under VirtualBox; on my main computer, that combination takes 3 minutes to load a Linux kernel and initial RAM disk file! Most real computers don't suffer nearly so badly, but some can take an extra five seconds or so to boot a kernel. I've fixed the speed problems in rEFInd's drivers as of version 0.7.0.</p>
<li>My own <a href="http://www.rodsbooks.com/efi-bootloaders/">EFI Boot Loaders for Linux</a> page provides information on installing and configuring several common Linux EFI boot loaders and boot managers.</li>
+<li><a href="http://www.rodsbooks.com/linux-uefi/">My Linux on UEFI: A Quick Installation Guide</a> page provides helpful tips on how to install Linux on EFI-based systems.</li>
+
<li>Phoenix Technologies maintains a <a href="http://wiki.phoenix.com/wiki/index.php/Main_Page">wiki on EFI topics,</a> including <a href="http://wiki.phoenix.com/wiki/index.php/Category:UEFI_2.0">information on many EFI system calls</a> useful to programmers.</li>
<li>Matthew J. Garrett, the developer of the shim boot loader to manage Secure Boot, maintains <a href="http://mjg59.dreamwidth.org/">a blog</a> in which he often writes about EFI issues.</li>
<p>I used icons from the Oxygen Icons project, both from the <a href="http://deviantdark.deviantart.com/art/Oxygen-Refit-70199755">Oxygen Refit</a> package and from Gentoo's <tt>oxygen-icons</tt> package. These icons supplemented or replaced icons that rEFIt used; however, many OS icons (such as those for Windows and Mac OS) are carried over from rEFIt. I've also used a handful of icons for individual Linux distributions from other sources—usually documentation associated with the distribution in question.</p>
-<p>In addition to this default icon set, I've received word of two other rEFInd themes:</p>
+<p>In addition to this default icon set, I've received word of three other rEFInd themes:</p>
<ul>
<li>Evan Purkhiser's <a href="https://github.com/EvanPurkhiser/rEFInd-minimal-theme">Minimal theme</a> uses black icons on a gray background of varied brightness.</li>
+<li>Sean Gibbons' <a href="http://sdbinwiiexe.deviantart.com/art/rEFInd-Next-Theme-407754566">rEFInd Next</a> theme is "inspired by both iOS 7 and Windows 8 interfaces." It includes both a background image and a number of OS icons.</li>
+
</ul>
<p>If you've created or discovered another rEFInd theme, please <a href="mailto:rodsmith@rodsbooks.com">tell me about it</a> so that I can provide a link to it from this page.</p>
#
# Revision history:
#
+# 0.7.5 -- Fixed bug when installing to ESP on recent versions of OS X
# 0.7.2 -- Fixed code that could be confused by use of autofs to mount the ESP
# 0.7.0 -- Added support for the new Btrfs driver
# 0.6.12 -- Added support for PreLoader as well as for shim
Temp=`diskutil list | grep " EFI "`
Esp=/dev/`echo $Temp | cut -f 5 -d ' '`
# If the ESP is mounted, use its current mount point....
- Temp=`df | grep "$Esp"`
+ Temp=`df -P | grep "$Esp"`
InstallDir=`echo $Temp | cut -f 6 -d ' '`
if [[ "$InstallDir" == '' ]] ; then
mkdir /Volumes/ESP &> /dev/null
// called before running external programs to close open file handles
VOID UninitRefitLib(VOID)
{
+ // This piece of code was made to correspond to weirdness in ReinitRefitLib().
+ // See the comment on it there.
+ if(SelfRootDir == SelfVolume->RootDir)
+ SelfRootDir=0;
+
UninitVolumes();
if (SelfDir != NULL) {