]> code.delx.au - refind/commitdiff
0.8.6 release.
authorsrs5694 <srs5694@users.sourceforge.net>
Sun, 8 Feb 2015 14:56:43 +0000 (09:56 -0500)
committersrs5694 <srs5694@users.sourceforge.net>
Sun, 8 Feb 2015 14:56:43 +0000 (09:56 -0500)
20 files changed:
NEWS.txt
debian/changelog
docs/refind/bootmode.html
docs/refind/configfile.html
docs/refind/drivers.html
docs/refind/features.html
docs/refind/getting.html
docs/refind/index.html
docs/refind/installing.html
docs/refind/linux.html
docs/refind/revisions.html
docs/refind/secureboot.html
docs/refind/themes.html
docs/refind/todo.html
docs/refind/using.html
install.sh
refind.spec
refind/global.h
refind/lib.c
refind/main.c

index 071b2ce1c989f9905fc502ee5ffa0ec300d70f13..724ad0d7f51570eebd0d4e5b1d26b7bc6b691182 100644 (file)
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -1,5 +1,9 @@
-0.8.6 (?/??/2016):
-------------------
+0.8.6 (2/8/2016):
+-----------------
+
+- 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
@@ -9,7 +13,7 @@
 - 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 systems that contain NTFS data partitions.
+  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
@@ -28,8 +32,8 @@
 - Fixed install.sh bug that caused misidentification of installation
   directory under OS X if an already-mounted ESP has spaces in its path.
 
-- Fixed install.sh bug that could cause misidentification of the ESP on
-  disks with partition numbers of 10 or above.
+- 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):
index 9ddecde6abf2768035eba2cbc67844d86b6a008a..692e95436f445e0399d4a1f1d3340e05886aedc1 100644 (file)
@@ -1,8 +1,8 @@
-refind (0.8.5-0ppa1) UNRELEASED; urgency=medium
+refind (0.8.6-0ppa1) trusty; urgency=medium
 
   * Version bump
 
- -- Roderick Smith <rodsmith@rodsbooks.com>  Sun, 01 Feb 2015 17:44:19 -0500
+ -- Roderick Smith <rodsmith@rodsbooks.com>  Sun, 08 Feb 2015 09:38:43 -0500
 
 refind (0.8.4-0ppa1) trusty; urgency=medium
 
index 4736bb9840c28ba2c58ce36c49ef52e61b5eb2d8..35895d25af035a68ca9c49c87b31d8ae4837705c 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>\r
 \r
 <p>Originally written: 3/14/2012; last Web page update:\r
-12/8/2014, referencing rEFInd 0.8.4</p>\r
+2/8/2015, referencing rEFInd 0.8.6</p>\r
 \r
 \r
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>\r
@@ -264,7 +264,7 @@ resumeobject            {3aa4c728-9935-11e0-9f12-806e6f6e6963}</pre>
 \r
 <hr />\r
 \r
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>\r
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>\r
 \r
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>\r
 \r
index bbd5bd35ea9a966efb4fd80393ff2a7131f86a79..d38a8d42348341efa06725f4d5f0e95a7e437850 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -196,7 +196,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>As a special case, rEFInd assigns icons to the Windows and OS X boot loaders based on their conventional locations, so they get suitable icons even if they don't follow these rules.</p>
 
-<p>In addition to the main OS tag icon, you can set the <i>badge</i> icon for a volume by creating a file called <tt>.VolumeBadge.icns</tt> or <tt>.VolumeBadge.png</tt> in the root directory of a partition. If present, it replaces the disk-type icons that are overlaid on the main OS icon. If you use this feature, the badge is applied to all the boot loaders read from the disk, not just those stored in the root directory or the Apple boot loader location. You could use this feature to set a custom badge for different specific disks or to help differentiate multiple OS X installations on one computer. If you don't want any badges, you can replace the three badge icons in the rEFInd <tt>icons</tt> subdirectory (<tt>vol_external.icns</tt>, <tt>vol_internal.icns</tt>, and <tt>vol_optical.icns</tt>) with a completely transparent badge. The <tt>transparent.icns</tt> file in the rEFInd <tt>icons</tt> directory may be used for this purpose.</p>
+<p>In addition to the main OS tag icon, you can set the <i>badge</i> icon for a volume by creating a file called <tt>.VolumeBadge.icns</tt> or <tt>.VolumeBadge.png</tt> in the root directory of a partition. If present, it replaces the disk-type icons that are overlaid on the main OS icon. If you use this feature, the badge is applied to all the boot loaders read from the disk, not just those stored in the root directory or the Apple boot loader location. You could use this feature to set a custom badge for different specific disks or to help differentiate multiple OS X installations on one computer. If you don't want any badges, you can add the <tt>badges</tt> option to <tt>hideui</tt> in <tt>refind.conf</tt>. Alternatively, or to hide just certain types of badges, you can replace the four badge icons in the rEFInd <tt>icons</tt> subdirectory (<tt>vol_external.png</tt>, <tt>vol_internal.png</tt>, <tt>vol_optical.png</tt>, and <tt>vol_net.png</tt>) with a completely transparent badge. The <tt>transparent.png</tt> file in the rEFInd <tt>icons</tt> directory may be used for this purpose.</p>
 
 <p>The default icon sizes are 128x128 pixels for OS icons, 48x48 pixels for the second-row tools, and 32x32 pixels for badges. You can change the sizes of the big OS icons and the small tool icons with the <tt>big_icon_size</tt> and <tt>small_icon_size</tt> tokens in <tt>refind.conf</tt>, as noted in <a href="#table1">Table 1.</a> The size of the disk-type badges is 1/4 the size of OS icons.</p>
 
@@ -596,7 +596,7 @@ menuentry Gentoo {
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index 037763fc3f81abcaee7258951f929d301485f666..178906aa51f42311b61a5a1e7364c29cdb02caeb 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 4/19/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -264,12 +264,17 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
     to boot Windows with rEFInd, since Windows stores its EFI boot loader
     on the (FAT) ESP, and the BIOS boot process (generally used when
     dual-booting on a Mac) relies only on the partition's boot sector,
-    which is read without the benefit of this driver. You might use this
-    driver if you want to store large boot files, such as EFI-accessible
-    RAM disk images, from Windows. Also, if you have NTFS data partitions
-    on a Mac, loading this driver should exclude them from the boot menu;
-    and you should see NTFS volume names in the boot menu on a Mac if you
-    load this driver.</li>
+    which is read without the benefit of this driver. Reasons to use this
+    driver include:
+    <ul>
+    <li>If you want to store large boot files to be read from EFI, such as
+        RAM disk images, from Windows.</li>
+    <li>If you have a Mac and NTFS data partitions, loading this driver
+        should exclude those data partitions from the boot menu.</li>
+    <li>If you have a Mac that dual-boots with Windows, using this driver
+        should provide NTFS volume names in the boot menu.</li>
+    </ul>
+    </li>
 
 </ul>
 
@@ -363,7 +368,7 @@ ways.</p>
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index 03e493379da7d6569e90252113cad5eb0affbcab..80c15785430e87b40b3034040eeefa773c1cf245 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
 
@@ -246,7 +246,7 @@ such as those with Gigabyte's Hybrid EFI, lack a usable CSM.</li>
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index 4352412f20bae3deec008b62203c9de174ff64fb..377aa139f475a5295e37d82ec90149c51cf9f495 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
 
@@ -136,7 +136,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 <ul>
 
 <li><b><a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind-bin-0.8.5.zip/download">A
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind-bin-0.8.6.zip/download">A
     binary zip file</a></b>&mdash;Download this if you want to install
     rEFInd and/or its filesystem drivers on an <i>x</i>86 or <i>x</i>86-64
     computer and have no need to test rEFInd first by booting it on an
@@ -146,13 +146,13 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
     href="installing.html">Installing rEFInd</a> page. Some users of Arch
     Linux have reported problems booting some specific Arch Linux kernels
     with rEFInd and some other tools. For them, a <a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind-bin-gnuefi-0.8.5.zip/download">variant
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind-bin-gnuefi-0.8.6.zip/download">variant
     package</a> exists in which the <i>x</i>86-64 binary was compiled with
     GNU-EFI rather than the usual TianoCore EDK2. This change helps some
     users with this problem.</li>
 
 <li><b><a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind-0.8.5-1.x86_64.rpm/download">A
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind-0.8.6-1.x86_64.rpm/download">A
     binary RPM file</a></b>&mdash;If you use an RPM-based <i>x</i>86-64
     Linux system such as Fedora or openSUSE, you can install the binary RPM
     package rather than use the binary zip file. (I don't provide an
@@ -161,13 +161,13 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
     rEFInd</a> page) as part of the installation process. Distribution
     maintainers can examine the <tt>refind.spec</tt> file in the source
     package and tweak it to their needs. The <a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind-0.8.5-1.src.rpm/download">source
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind-0.8.6-1.src.rpm/download">source
     RPM file</a> might or might not build on your system as-is; it relies
     on assumptions about the locations of the GNU-EFI development
     files.</li>
 
 <li><b><a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind_0.8.5-1_amd64.deb/download">A
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind_0.8.6-1_amd64.deb/download">A
     binary Debian package</a></b>&mdash;If you use an <i>x</i>86-64 version
     of Debian, Ubuntu, Mint, or another Debian-based distribution, you can
     install from this package, which was converted from the binary RPM
@@ -191,7 +191,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 <p class="sidebar"><b>Note:</b> At the moment, neither the bootable CD-R image file nor the bootable USB flash drive image file supports booting with Secure Boot active. The x86-64 version of the <a href="http://en.altlinux.org/Rescue">ALT Linux Rescue disc</a> uses a Secure Boot-enabled rEFInd, though, so you may find that useful in some situations.</p>
 
 <li><b><a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind-cd-0.8.5.zip/download">A
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind-cd-0.8.6.zip/download">A
     CD-R image file</a></b>&mdash;This download contains the same files as
     the binary zip file, but you can burn it to a CD-R to test rEFInd
     (and its filesystem drivers) without installing it first. (It boots on
@@ -215,14 +215,14 @@ on <tt>/dev/sdd</tt>. This procedure should work even on a BIOS-booted
 computer.</p>
 
 <li><b><a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind-flashdrive-0.8.5.zip/download">A
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind-flashdrive-0.8.6.zip/download">A
     USB flash drive image file</a></b>&mdash;Although you     can create
     your own rEFInd USB flash drive, you may find it easier to download
     this version and copy it to your USB drive with <tt>dd</tt> or some
     other low-level disk copying utility.</li>
 
 <li><b><a
-    href="http://sourceforge.net/projects/refind/files/0.8.5/refind-src-0.8.5.zip/download">A
+    href="http://sourceforge.net/projects/refind/files/0.8.6/refind-src-0.8.6.zip/download">A
     source code zip file</a></b>&mdash;This is useful if you want to compile
     the software locally. Note that I use Linux with the <a
     href="https://sourceforge.net/projects/tianocore/">TianoCore EFI
@@ -255,13 +255,13 @@ computer.</p>
 <li><a name="ppa"><b>Ubuntu</b></a>&mdash;Although an official Ubuntu
     package isn't available, I've created a <a
     href="https://launchpad.net/~rodsmith/+archive/refind">rEFInd PPA</a>
-    for Ubuntu. To use it, type <tt class="userinput">sudo
-    apt-add-repository ppa:rodsmith/refind</tt>, then <tt
-    class="userinput">sudo apt-get update</tt>. You can then type <tt
-    class="userinput">sudo apt-get install refind</tt> to install the package.
-    Thereafter, the rEFInd version will update along with your other
-    software. This package is built with GNU-EFI and is not signed with a
-    Secure Boot key; however, the install script (which launches
+    for Ubuntu. To use it, open a Terminal window and type <tt
+    class="userinput">sudo apt-add-repository ppa:rodsmith/refind</tt>,
+    then <tt class="userinput">sudo apt-get update</tt>. You can then type
+    <tt class="userinput">sudo apt-get install refind</tt> to install the
+    package. Thereafter, the rEFInd version will update along with your
+    other software. This package is built with GNU-EFI and is not signed
+    with a Secure Boot key; however, the install script (which launches
     automatically when you install the package) should sign the binary with
     a locally-generated key if it detects that your system uses Secure
     Boot. Thus, if you've previously installed one of my binaries on a
@@ -304,7 +304,7 @@ computer.</p>
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index 1645c8133f865845846a131cf84f688421c0f17a..6b35afc03a9683aa3dc1bc83db8e99b582ccdb8f 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -254,7 +254,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index c2d833f4f810b27f721dc8d497720c0090e749b6..b847e502c0bc5afa967512100c6f5359b45c20d3 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -474,7 +474,7 @@ Filesystem     1K-blocks  Used Available Use% Mounted on
 /dev/sda1         191284 16604    174681   9% /boot/efi
 </pre>
 
-<p class="sidebar"><b>Warning:</b> If you're running Linux on a Mac, I recommend you install rEFInd under OS X. The Mac's boot process deviates a bit from EFI standards, so you'll probably have to use a tool called <tt>bless</tt> under Mac OS to do the job. Alternatively, there's a new Linux program, <tt>hfs-bless</tt>, part of the <a href="http://www.codon.org.uk/~mjg59/mactel-boot/"><tt>mactel-boot</tt></a> package, that's supposed to work with <tt>efibootmgr</tt> to make a Mac HFS partition bootable. I've not yet tried it, though. There are also reports that the <tt>efibootmgr</tt> tool used under Linux can corrupt some Macs' firmware. Although I've seen some vague suggestions that this problem has been fixed under 3.<i>x</i> kernels, I haven't tested this claim.</p>
+<p class="sidebar"><b>Warning:</b> If you're running Linux on a Mac, I recommend you install rEFInd under OS X. The Mac's boot process deviates a bit from EFI standards, so you'll probably have to use a tool called <tt>bless</tt> under Mac OS to do the job. Alternatively, there's a new Linux program, <tt>hfs-bless</tt>, part of the <a href="http://www.codon.org.uk/~mjg59/mactel-boot/"><tt>mactel-boot</tt></a> RPM package or as part of the <a href="https://launchpad.net/~detly/+archive/ubuntu/mactel-utils">mactel-utils PPA for Ubuntu</a>, that's supposed to work with <tt>efibootmgr</tt> to make a Mac HFS partition bootable. I've not yet tried it, though. There are also reports that the <tt>efibootmgr</tt> tool used under Linux can corrupt some Macs' firmware. Although I've seen some vague suggestions that this problem has been fixed under 3.<i>x</i> kernels, I haven't tested this claim.</p>
 
 <p>This example shows that <tt>/dev/sda1</tt> is mounted at <tt>/boot/efi</tt>, which is a typical configuration. (The ESP can be on another disk or partition, but <tt>/dev/sda1</tt> is the most common place for an ESP.) If your output shows <tt>/boot</tt> or <tt>/</tt> under the <tt>Mounted on</tt> column, then your ESP isn't mounted. (An exception is if you're mounting the ESP at <tt>/boot</tt>. This is an unusual configuration. If you're using it, you can proceed, making suitable adjustments to subsequent commands.) If you get a <tt>df: `/boot/efi': No such file or directory</tt> error message, then the <tt>/boot/efi</tt> directory doesn't even exist. In such cases, you may need to jump through some extra hoops, as described on my <a href="http://www.rodsbooks.com/efi-bootloaders/installation.html">EFI Boot Loader Installation</a> page.</p>
 
@@ -1010,7 +1010,7 @@ $ <b>ioreg -l -p IODeviceTree | grep firmware-abi</b>
 
 <p>Prior to version 0.8.5, these instructions and the <tt>install.sh</tt> script omitted the <tt>--shortform</tt> option from the <tt>bless</tt> command when installing rEFInd to the ESP. An rEFInd user, however, discovered that using the option eliminated the 30-second delay, so it is now the default with 0.8.5's <tt>install.sh</tt>, and is specified in the instructions. If you installed rEFInd 0.8.4 or earlier, you may want to re-install or re-<tt>bless</tt> rEFInd using this option.</p>
 
-<p>There is one caveat, though: The <tt>man</tt> page for <tt>bless</tt> notes that <tt>--shortform</tt> notes that its use can come "at the expense of boot time performance." Thus, it's not clear to me that this option might not actually <i>create</i> problems on some computers. (It's eliminated the boot delay on my 2014 MacBook Air and has no detrimental effect on an old 32-bit Mac Mini that's never had a boot delay problem, though.) Thus, if you have problems with rEFInd 0.8.5, you might try running <tt>bless</tt>, as described in <a href="#osx">Installing rEFInd Manually Using OS X's</a> step 8, but <i>omit</i> the <tt>--shortform</tt> option.</p>
+<p>There is one caveat, though: The <tt>man</tt> page for <tt>bless</tt> notes that <tt>--shortform</tt> notes that its use can come "at the expense of boot time performance." Thus, it's not clear to me that this option might not actually <i>create</i> problems on some computers. (It's eliminated the boot delay on my 2014 MacBook Air and has no detrimental effect on an old 32-bit Mac Mini that's never had a boot delay problem, though.) Thus, if you have problems with rEFInd 0.8.5 or later, you might try running <tt>bless</tt>, as described in <a href="#osx">Installing rEFInd Manually Using OS X's</a> step 8, but <i>omit</i> the <tt>--shortform</tt> option.</p>
 
 <a name="fallback">
 <h3>Using the Fallback Filename</h3>
index 63c8f031f8cabec993386ca3e0a33e1e838c7d99..f716d2f756e14c47b96f6759583556e59dc7e813 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/19/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -487,7 +487,7 @@ total 17943
 
 <hr/>
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index 2b6f5799bb9743d0876e746480c9e9525b3dfc35..01e3959d8c2fd91a67bd88796ef9837e4dd75983 100644 (file)
@@ -14,7 +14,7 @@
 <p class="subhead">by Roderick W. Smith, <a
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
-<p>Last Web page update: 2/1/2014</p>
+<p>Last Web page update: 2/8/2015</p>
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
 
@@ -130,6 +130,8 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <ul>
 
+<li><b>0.8.6 (2/8/2015)</b>&mdash;Most (but not all) of this release's changes focus on Windows dual-booting and Mac-specific issues. There's a new Windows 8 icon, which is now used by default as the Windows icon, although the old icon remains available and is used for Windows XP and earlier boots on Macs. If the NTFS driver is loaded, rEFInd will now exclude non-bootable NTFS volumes from the Mac boot list (this change does not affect UEFI-based PCs). A bug that caused misidentification of whole disks and NTFS volumes as being FAT has been fixed (again, this problem affected Macs, not PCs). A couple of Mac-specific <tt>install.sh</tt> bugs have been fixed, resulting in more reliable identification of the ESP and of the installation directory. Previous versions ignored a volume name of "HFS+ volume" because that name was produced by earlier versions of the rEFInd HFS+ driver for all HFS+ volumes; but the current HFS+ driver produces a real volume name, so I've removed that special case from the code. I've removed the r472 rEFIt commit, introduced in 0.8.5, because it was causing some BMP files to fail to load. Finally, the <tt>hideui</tt> token in <tt>refind.conf</tt> now accepts a value of <tt>badges</tt>, which has the effect of hiding the disk-type badges associated with OS launch icons.</li>
+
 <li><b>0.8.5 (2/1/2015)</b>&mdash;The biggest single change with this version is a new NTFS driver contributed by Samuel Liao, who also contributed the Btrfs driver. Samuel also contributed some miscellaneous driver fixes and a change to the way the keyboard is handled, which improves responsiveness on some systems. This version also improves the way <tt>install.sh</tt> works under OS X. In particular, it tweaks the <tt>bless</tt> command in a way that may eliminate startup delays and it does a better job of detecting and replacing existing rEFInd installations (on the ESP), rather than blindly writing to <tt>EFI/BOOT</tt>. Finally, this version applies <a href="https://sourceforge.net/p/refit/code/commit_browser">commits from late in rEFIt's history:</a> r467, which improves handling of BIOS/legacy boots from the second and subsequent disks on Macs; and r472, which enables handling BMP images that are not vertically flipped. These commits were not present in rEFInd from the start because the starting point for rEFInd was a Debian source package taken from a slightly earlier version.</li>
 
 <li><b>0.8.4 (12/8/2014)</b>&mdash;OS X 10.10 ("Yosemite") made changes that necessitated alterations to both rEFInd's <tt>install.sh</tt> script and rEFInd defaults. Specifically, Yosemite now uses a form of <a href="http://en.wikipedia.org/wiki/Logical_volume_management">logical volume management (LVM)</a> that makes installing rEFInd to the OS X root directory impossible, so the default location is changed to the ESP. Changes to the default for <tt>dont_scan_volumes</tt> are necessary to make the new location for the OS X boot loader show up. Another big change is in the new (but <i>experimental</i>) support for network booting, with the help of iPXE. See the <tt>BUILDING.txt</tt> file in the source package for details on how to build and install the necessary files. A new option for <tt>refind.conf</tt>, <tt>enable_and_lock_vmx</tt>, sets the VMX bit on Intel CPUs, which is necessary for booting some hypervisors, such as Hyper-V. This feature can be set on many computers' EFIs, but some, such as Macs, lack this ability. (<i>Do not</i> set this option on AMD CPUs or older Intel CPUs that lack this feature, though!) If rEFInd can't find its icons directory, it now drops back to text mode. A bug in <tt>dont_scan_files</tt> has been fixed, enabling you to specify a complete path to certain special-case boot loaders to omit them from scans. Finally, I've updated the icons for Fedora and Ubuntu and added an icon for Xubuntu.</li>
@@ -242,7 +244,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index 7278543e38d6e8dc750e0c45eba95cc8d28c3e86..d2a41475f9bf999f4544b0486743d0079b38e83b 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 11/13/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -499,7 +499,7 @@ $ <tt class="userinput">openssl x509 -in refind_local.crt -out refind_local.cer
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index 14a7612a6286ec5b7e3134f466cc5af00eae5a07..5e17782cfdec5df14d3839f24946b7bc2e778738 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 4/19/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -294,6 +294,8 @@ to be tedious.</p>
 
 <li>Brian Lechthaler has created an <a href="http://sta.sh/0raifz8774v">alternative rEFInd banner.</a>
 
+<li>User munlik has created a theme called <a href="http://munlik.deviantart.com/art/rEFInd-boot-manager-theme-Regular-theme-512091944">Regular-theme</a> on Deviantart.</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>
index b8930a184f0a179b7e60b2306c267f40ab2559f4..946ce72e23fce2625c0d3312892ea739778904a3 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -269,12 +269,11 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
        receiving a patch.</li>
 
     <li>If you use a true MBR disk on a Mac to boot Windows or some other
-       BIOS-only OS, and if that disk has an extended partition, that
-       partition may show up in rEFInd as a bootable FAT partition. The
-       reason is twofold: FAT doesn't contain a simple "magic" signature
-       like most filesystems, so it's easy to misidentify something else
-       as FAT; and it's hard to positively identify boot code vs. other
-       random data.</li>
+       BIOS-only OS, and if that disk has an extended partition, bogus
+       additional BIOS/legacy-bootable options may appear in the rEFInd
+       menu. The reason appears to be a bug in the handling of
+       extended/logical partitions in the <tt>refind/lib.c</tt> file, but
+       I haven't fully tracked it down.</li>
 
     <li>The re-scan feature occasionally produces odd results, such as
        ignoring new media or keeping old media that have been ejected.
@@ -445,7 +444,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index dc4abb3010c5488510dd3ce901921dca245b463b..924728f21f7a2bbaba9f294725ed4c2bbc3ad1e1 100644 (file)
@@ -15,7 +15,7 @@
 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <p>Originally written: 3/14/2012; last Web page update:
-2/1/2014, referencing rEFInd 0.8.5</p>
+2/8/2015, referencing rEFInd 0.8.6</p>
 
 
 <p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>
@@ -380,7 +380,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
 
 <hr />
 
-<p>copyright &copy; 2012&ndash;2014 by Roderick W. Smith</p>
+<p>copyright &copy; 2012&ndash;2015 by Roderick W. Smith</p>
 
 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
 
index a95d30ee9d6c0a32872512542985f21a89f5b029..4306c3fca3cbb5952296310f9a5342819cc21b92 100755 (executable)
@@ -644,7 +644,7 @@ SetupMacHfs() {
         <key>ProductName</key>
         <string>rEFInd</string>
         <key>ProductVersion</key>
-        <string>0.8.5</string>
+        <string>0.8.6</string>
 </dict>
 </plist>
 ENDOFHERE
index f44a67aaec870932fe0782d5aa493c4ca388c0aa..057cb53eb28de2c1e019d95fe23f074f11c71a11 100644 (file)
@@ -1,6 +1,6 @@
 Summary: EFI boot manager software
 Name: refind
-Version: 0.8.5
+Version: 0.8.6
 Release: 1%{?dist}
 Summary: EFI boot manager software
 License: GPLv3
@@ -159,6 +159,8 @@ fi
 # wiping out the just-updated files.
 
 %changelog
+* Sun Feb 8 2015 R Smith <rodsmith@rodsbooks.com> - 0.8.6
+- Updated spec file for 0.8.6
 * Sun Feb 2 2015 R Smith <rodsmith@rodsbooks.com> - 0.8.5
 - Updated spec file for 0.8.5
 * Mon Dec 8 2014 R Smith <rodsmith@rodsbooks.com> - 0.8.4
index 8ad30f5f3303ce15d622a4c51576879b65e3ad00..506c8a645b303d2ebb54270c386d74bb92de5963 100644 (file)
 
 // Filesystem type identifiers. Not all are yet used....
 #define FS_TYPE_UNKNOWN        0
-#define FS_TYPE_FAT            1
-#define FS_TYPE_EXFAT          2
-#define FS_TYPE_NTFS           3
-#define FS_TYPE_EXT2           4
-#define FS_TYPE_EXT3           5
-#define FS_TYPE_EXT4           6
-#define FS_TYPE_HFSPLUS        7
-#define FS_TYPE_REISERFS       8
-#define FS_TYPE_BTRFS          9
-#define FS_TYPE_ISO9660        10
+#define FS_TYPE_WHOLEDISK      1
+#define FS_TYPE_FAT            2
+#define FS_TYPE_EXFAT          3
+#define FS_TYPE_NTFS           4
+#define FS_TYPE_EXT2           5
+#define FS_TYPE_EXT3           6
+#define FS_TYPE_EXT4           7
+#define FS_TYPE_HFSPLUS        8
+#define FS_TYPE_REISERFS       9
+#define FS_TYPE_BTRFS          10
+#define FS_TYPE_ISO9660        11
 
 // How to scale banner images
 #define BANNER_NOSCALE         0
index 48da11d0291ddd0e88f9ce9dc0dac62cdbff14fd..980b51a7228d527f5940eb4948bf7196d446bf8c 100644 (file)
@@ -436,6 +436,9 @@ static CHAR16 *FSTypeName(IN UINT32 TypeCode) {
    CHAR16 *retval = NULL;
 
    switch (TypeCode) {
+      case FS_TYPE_WHOLEDISK:
+         retval = L" whole disk";
+         break;
       case FS_TYPE_FAT:
          retval = L" FAT";
          break;
@@ -485,26 +488,35 @@ static VOID SetFilesystemData(IN UINT8 *Buffer, IN UINTN BufferSize, IN OUT REFI
    UINT32       *Ext2Incompat, *Ext2Compat;
    UINT16       *Magic16;
    char         *MagicString;
+   EFI_FILE     *RootDir;
 
    if ((Buffer != NULL) && (Volume != NULL)) {
       SetMem(&(Volume->VolUuid), sizeof(EFI_GUID), 0);
       Volume->FSType = FS_TYPE_UNKNOWN;
 
       if (BufferSize >= 512) {
+
+         // Search for NTFS, FAT, and MBR/EBR.
+         // These all have 0xAA55 at the end of the first sector, but FAT and
+         // MBR/EBR are not easily distinguished. Thus, we first check to see
+         // if the "volume" is in fact a disk device; then look for NTFS
+         // "magic"; and then check to see if the volume can be mounted, thus
+         // relying on the EFI's built-in FAT driver to identify FAT.
          Magic16 = (UINT16*) (Buffer + 510);
          if (*Magic16 == FAT_MAGIC) {
             MagicString = (char*) (Buffer + 3);
-            if (CompareMem(MagicString, NTFS_SIGNATURE, 8) == 0) {
+            // Confusingly, "LogicalPartition" refers to the presence of a
+            // partition table, not an MBR logical partition.
+            if (Volume->BlockIO->Media->LogicalPartition) {
+               Volume->FSType = FS_TYPE_WHOLEDISK;
+            } else if (CompareMem(MagicString, NTFS_SIGNATURE, 8) == 0) {
                Volume->FSType = FS_TYPE_NTFS;
                CopyMem(&(Volume->VolUuid), Buffer + 0x48, sizeof(UINT64));
             } else {
-               // NOTE: This misidentifies a whole disk as a FAT partition
-               // because FAT and MBR share the same 0xaa55 "magic" and
-               // no other distinguishing data. Later code, in ScanVolume(),
-               // resets to FS_TYPE_UNKNOWN if the "filesystem" can't be
-               // read.
-               Volume->FSType = FS_TYPE_FAT;
-            }
+               RootDir = LibOpenRoot(Volume->DeviceHandle);
+               if (RootDir != NULL)
+                  Volume->FSType = FS_TYPE_FAT;
+            } // if/elseif/else
             return;
          } // if
       } // search for FAT and NTFS magic
@@ -581,7 +593,11 @@ static VOID ScanVolumeBootcode(REFIT_VOLUME *Volume, BOOLEAN *Bootable)
                                  Volume->BlockIOOffset, SAMPLE_SIZE, Buffer);
     if (!EFI_ERROR(Status)) {
 
-        SetFilesystemData(Buffer, SAMPLE_SIZE, Volume);
+//         if (Volume->BlockIO->Media->LogicalPartition)
+//            Print(L"Skipping; whole disk!\n");
+//         else
+           SetFilesystemData(Buffer, SAMPLE_SIZE, Volume);
+//        PauseForKey();
         if ((*((UINT16 *)(Buffer + 510)) == 0xaa55 && Buffer[0] != 0) && (FindMem(Buffer, 512, "EXFAT", 5) == -1)) {
             *Bootable = TRUE;
             Volume->HasBootCode = TRUE;
@@ -771,7 +787,7 @@ static CHAR16 *SizeInIEEEUnits(UINT64 SizeInBytes) {
 } // CHAR16 *SizeInIEEEUnits()
 
 // Return a name for the volume. Ideally this should be the label for the
-// filesystem it contains, but this function falls back to describing the
+// filesystem or volume, but this function falls back to describing the
 // filesystem by size (200 MiB, etc.) and/or type (ext2, HFS+, etc.), if
 // this information can be extracted.
 // The calling function is responsible for freeing the memory allocated
@@ -790,13 +806,6 @@ static CHAR16 *GetVolumeName(REFIT_VOLUME *Volume) {
       FoundName = StrDuplicate(FileSystemInfoPtr->VolumeLabel);
    }
 
-   // Special case: Old versions of the rEFInd HFS+ driver always returns label of "HFS+ volume", so wipe
-   // this so that we can build a new name that includes the size....
-   if ((FoundName != NULL) && (StrCmp(FoundName, L"HFS+ volume") == 0) && (Volume->FSType == FS_TYPE_HFSPLUS)) {
-      MyFreePool(FoundName);
-      FoundName = NULL;
-   } // if rEFInd HFS+ driver suspected
-
    // If no filesystem name, try to use the partition name....
    if ((FoundName == NULL) && (Volume->PartName != NULL) && (StrLen(Volume->PartName) > 0) &&
        !IsIn(Volume->PartName, IGNORE_PARTITION_NAMES)) {
@@ -989,18 +998,20 @@ VOID ScanVolume(REFIT_VOLUME *Volume)
 
    if (Volume->RootDir == NULL) {
       Volume->IsReadable = FALSE;
-      if (Volume->FSType != FS_TYPE_NTFS)
-          Volume->FSType = FS_TYPE_UNKNOWN;
       return;
    } else {
       Volume->IsReadable = TRUE;
-      if ((GlobalConfig.LegacyType == LEGACY_TYPE_MAC) && (Volume->FSType == FS_TYPE_NTFS) && Volume->HasBootCode)
+      if ((GlobalConfig.LegacyType == LEGACY_TYPE_MAC) && (Volume->FSType == FS_TYPE_NTFS) && Volume->HasBootCode) {
+         // VBR boot code found on NTFS, but volume is not actually bootable
+         // unless there are actual boot file, so check for them....
          Volume->HasBootCode = HasWindowsBiosBootFiles(Volume);
+      }
    } // if/else
 
    // get custom volume icons if present
-   if (!Volume->VolIconImage)
-     Volume->VolIconImage = egLoadIconAnyType(Volume->RootDir, L"", L".VolumeIcon", GlobalConfig.IconSizes[ICON_SIZE_BIG]);
+   if (!Volume->VolIconImage) {
+      Volume->VolIconImage = egLoadIconAnyType(Volume->RootDir, L"", L".VolumeIcon", GlobalConfig.IconSizes[ICON_SIZE_BIG]);
+   }
 } // ScanVolume()
 
 static VOID ScanExtendedPartition(REFIT_VOLUME *WholeDiskVolume, MBR_PARTITION_INFO *MbrEntry)
index 7fb2b73394c31ecca1a194ff0176e5d53d366b0a..8e390002eb1b699dc904c76e0fa35f874032b485 100644 (file)
@@ -166,7 +166,7 @@ static VOID AboutrEFInd(VOID)
 
     if (AboutMenu.EntryCount == 0) {
         AboutMenu.TitleImage = BuiltinIcon(BUILTIN_ICON_FUNC_ABOUT);
-        AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.8.5.7");
+        AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.8.6");
         AddMenuInfoLine(&AboutMenu, L"");
         AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2006-2010 Christoph Pfisterer");
         AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2012-2015 Roderick W. Smith");
@@ -1726,8 +1726,9 @@ static VOID LoadDrivers(VOID)
     } // while
 
     // connect all devices
-    if (NumFound > 0)
+    if (NumFound > 0) {
        ConnectAllDriversToAllControllers();
+    }
 } /* static VOID LoadDrivers() */
 
 // Locates boot loaders. NOTE: This assumes that GlobalConfig.LegacyType is set correctly.