From 65eb839a6d8d68a439056473a0d3728dfd39d2c4 Mon Sep 17 00:00:00 2001 From: srs5694 Date: Sun, 20 May 2012 22:37:37 -0400 Subject: [PATCH] Version 0.4.0 release. --- BUILDING.txt | 36 +- CREDITS.txt | 4 +- NEWS.txt | 14 +- docs/refind/bootmode.html | 2 +- docs/refind/configfile.html | 2 +- docs/refind/drivers.html | 90 +++- docs/refind/features.html | 8 +- docs/refind/getting.html | 50 +- docs/refind/index.html | 2 +- docs/refind/installing.html | 29 +- docs/refind/linux.html | 4 +- docs/refind/revisions.html | 4 +- docs/refind/themes.html | 2 +- docs/refind/todo.html | 314 +++++++----- docs/refind/using.html | 2 +- filesystems/Make.common | 25 +- filesystems/Makefile | 4 +- filesystems/fsw_efi.c | 2 +- filesystems/test/.svn/all-wcprops | 41 -- filesystems/test/.svn/entries | 232 --------- .../test/.svn/text-base/README.svn-base | 2 - .../test/.svn/text-base/fsw_posix.c.svn-base | 479 ------------------ .../test/.svn/text-base/fsw_posix.h.svn-base | 98 ---- .../.svn/text-base/fsw_posix_base.h.svn-base | 89 ---- .../test/.svn/text-base/lslr.c.svn-base | 136 ----- .../test/.svn/text-base/lsroot.c.svn-base | 79 --- mkcdimage | 10 +- mkdistrib | 14 +- refind/main.c | 22 +- 29 files changed, 408 insertions(+), 1388 deletions(-) delete mode 100644 filesystems/test/.svn/all-wcprops delete mode 100644 filesystems/test/.svn/entries delete mode 100644 filesystems/test/.svn/text-base/README.svn-base delete mode 100644 filesystems/test/.svn/text-base/fsw_posix.c.svn-base delete mode 100644 filesystems/test/.svn/text-base/fsw_posix.h.svn-base delete mode 100644 filesystems/test/.svn/text-base/fsw_posix_base.h.svn-base delete mode 100644 filesystems/test/.svn/text-base/lslr.c.svn-base delete mode 100644 filesystems/test/.svn/text-base/lsroot.c.svn-base diff --git a/BUILDING.txt b/BUILDING.txt index 924ee8e..7d5fbd2 100644 --- a/BUILDING.txt +++ b/BUILDING.txt @@ -165,21 +165,22 @@ The EFI filesystem drivers in the filesystems subdirectory require the TianoCore UDK2010.SR1 toolkit. The drivers might compile with another version of the TianoCore toolkit, but I've not tested them with anything else. (My attempts to use GNU-EFI have failed; at best, I've gotten drivers -that load but hang the system.) +that load but hang the computer.) Unfortunately, the TianoCore toolkit is bulky and weird by Linux programming standards. I don't know of any Linux distribution packages for it in RPM, Debian package file, or other format; you MUST install the kit from source code using its own unusual compilation procedure. The -installation documentation also omits a few steps. Here's how I installed -the toolkit: +installation documentation also omits at least one step and is a bit +unclear about others. Here's how I installed the toolkit: 1) Download UDK2010.SR1 from https://sourceforge.net/apps/mediawiki/tianocore/index.php?title=UDK2010. 2) Type "mkdir /usr/local/UDK2010". You can use another directory, but the Makefile for rEFInd's EFI drivers assumes this location. You'll need to - edit the EDK2BASE line in the Makefile if you install somewhere else. + edit the EDK2BASE line in the Make.common file if you install somewhere + else. 3) Type "cd /usr/local/UDK2010". @@ -211,7 +212,10 @@ the toolkit: type "gcc -v" to learn your GCC version number) The Makefile for the drivers reads some of these variables from this file and uses them when accessing directories, so be sure to type these - entries in the case specified. + entries in the case specified. Note that the documentation refers to + editing Conf/tools_def.txt in addition to Conf/target.txt, but doesn't + specify what to change in Conf/tools_def.txt. I haven't found it + necessary to make any changes in Conf/tools_def.txt. 11) Type "make -C /usr/local/UDK2010/MyWorkSpace/BaseTools/Source/C". (This step is not documented on the EDK Web page.) @@ -221,11 +225,25 @@ the toolkit: Once the toolkit is installed, you can build the filesystem drivers. If you installed in a location other than the one I've specified, you must edit -the Makefile's EDK2BASE variable. You can then type "make" to build all the -drivers, or specify a filesystem type to build just it. +the EDK2BASE variable in the filesystems/Make.common file in the rEFInd +source package.. You can then type "make" in the "filesystems" directory, +or "make fs" in the main source directory, to build all the drivers. If you +want to build just one driver, you can change into the "filesystems" +directory and type "make {fsname}", where {fsname} is a filesystem name -- +"ext2", "reiserfs", "iso9660", or "hfs". The drivers will appear in the +"filesystems" directory, and also be copied to the "drivers" directory. + +To install drivers, you can type "make install" in the "filesystems" +directory. This copies all the drivers to the +"/boot/efi/EFI/refind/drivers" directory. Alternatively, you can copy the +files you want manually. + +*CAUTION:* Install drivers for your system's architecture *ONLY*. +Installing drivers for the wrong architecture causes some systems to hang +at boot time. The drivers all rely on filesystem wrapper code created by rEFIt's author, Christoph Phisterer. Most of the drivers seem to have passed through Oracle's VirtualBox project ((https://www.virtualbox.org) and the Clover -boot loader project (https://sourceforge.net/projects/cloverefiboot/). Most -of the drivers are based on code from the Linux kernel. +boot loader project (https://sourceforge.net/projects/cloverefiboot/), +which I used as the source for this build. diff --git a/CREDITS.txt b/CREDITS.txt index ad7f478..b3e85af 100644 --- a/CREDITS.txt +++ b/CREDITS.txt @@ -20,8 +20,8 @@ I've incorporated into the current version. Specifically: wrapper created by Christoph Phisterer. They then passed through Oracle's VirtualBox (https://www.virtualbox.org) and the Clover boot loader project (https://sourceforge.net/projects/cloverefiboot/). The - filesystem-specific code comes from various sources, including Apple and - the Linux kernel. + filesystem-specific code comes from various sources, including Apple, + the Linux kernel, and Christoph Phisterer. * I replaced many of the original rEFIt icons with icons taken from the Oxygen Icons project, either from the Oxygen Refit package on its page diff --git a/NEWS.txt b/NEWS.txt index 84e1371..82cd1be 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -1,6 +1,18 @@ -0.3.6 (?/??/2012): +0.3.6 (5/20/2012): ------------------ +- Inclusion of drivers for ISO-9660, HFS+, ReiserFS, and ext2fs. Most of + these drivers originated with rEFIt, although the HFS+ driver seems to + have come from Oracle's VirtualBox, with some files from Apple. I hadn't + included these drivers previously because the build process proved + challenging. As it is, they don't work on my Mac Mini, I suspect because + the build process with the UDK2010 development kit may not work with the + EFI 1.x that Apple uses. + +- Addition of support for drivers in the "drivers_{arch}" subdirectory of + the main rEFInd binary directory (e.g., "drivers_x64" or "drivers_ia32"). + Drivers may continue to be placed in the "drivers" subdirectory. + - Added new feature to eject CDs (and other removable media): Press F12 to eject all such media. This function works only on some Macs, though (it relies on an Apple-specific EFI extension, and this extension isn't even diff --git a/docs/refind/bootmode.html b/docs/refind/bootmode.html index 7ddb3da..7082ca8 100644 --- a/docs/refind/bootmode.html +++ b/docs/refind/bootmode.html @@ -15,7 +15,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

Originally written: 3/14/2012; last Web page update: -5/15/2012, referencing rEFInd 0.3.5

+5/20/2012, referencing rEFInd 0.4.0

I'm a technical writer and consultant specializing in Linux technologies. 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!

diff --git a/docs/refind/configfile.html b/docs/refind/configfile.html index 994a70c..ca6b444 100644 --- a/docs/refind/configfile.html +++ b/docs/refind/configfile.html @@ -15,7 +15,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

Originally written: 3/14/2012; last Web page update: -5/15/2012, referencing rEFInd 0.3.5

+5/20/2012, referencing rEFInd 0.4.0

I'm a technical writer and consultant specializing in Linux technologies. 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!

diff --git a/docs/refind/drivers.html b/docs/refind/drivers.html index a4447a0..579ddac 100644 --- a/docs/refind/drivers.html +++ b/docs/refind/drivers.html @@ -15,7 +15,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

Originally written: 4/19/2012; last Web page update: -5/15/2012, referencing rEFInd 0.3.5

+5/20/2012, referencing rEFInd 0.4.0

I'm a technical writer and consultant specializing in Linux technologies. 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!

@@ -90,7 +90,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com


-

Beginning with version 0.2.7, rEFInd has been able to load EFI drivers. Although EFI implementations should be able to do this prior to rEFInd's launch, in my experience, most EFI implementations offer such poor control over EFI driver loading that they can't be counted on to do this. Thus, if you want to use EFI drivers, rEFInd's ability to do so can be useful. This page tells you why you might want to use drivers, where you can go to find them, and provides tips on a few specific drivers.

+

Beginning with version 0.2.7, rEFInd has been able to load EFI drivers, and as of version 0.4.0, it has shipped with some EFI filesystem drivers. Although EFI implementations should be able to load drivers prior to rEFInd's launch, in my experience, most EFI implementations offer such poor control over EFI driver loading that they can't be counted on to do this. Thus, if you want to use EFI drivers, rEFInd's ability to do so can be useful. This page tells you why you might want to use drivers, how you can install and use rEFInd's own drivers, where you can go to find other drivers, and provides tips on a few specific drivers.

Why Should You Use EFI Drivers?

@@ -112,43 +112,95 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

To the best of my knowledge, the best reason to want EFI driver support in rEFInd is to provide access to filesystems. Although EFI filesystem driver choices are currently limited, those that are available can help to improve your installation and configuration options, particularly if you've found yourself "boxed in" by awkward installation or bugs, such as the dinky ESP that Ubuntu creates by default or the bug that prevents a Linux kernel with EFI stub loader support from booting from the ESP of at least some Macs.

-

As a side note, using an ISO-9660 driver can theoretically help you keep the size of a custom Linux boot CD/DVD down to a reasonable value. This is because EFI systems normally boot from optical discs by reading a FAT image file in El Torito format and treating that file as an ESP. If you need to store the kernel both in that file and directly in the ISO-9660 filesystem (to maintain bootability on BIOS systems), that can represent an unwanted extra space requirement. Placing rEFInd and an ISO-9660 driver in the FAT image file should enable you to store the kernel on the disc only once. Unfortunately, my attempts to get this to work have failed to date. When the ISO-9660 driver is loaded from the El Torito image, my test systems seem to allow only one of the two filesystems (the El Torito image's FAT filesystem or the optical disc's ISO-9660 filesystem) to be active; load one and the other goes away. Also, some EFI implementations include ISO-9660 drivers, so you might not need a separate ISO-9660 driver if you're building a disc for a particular computer.

+

As a side note, using an ISO-9660 driver can theoretically help you keep the size of a custom Linux boot CD/DVD down to a reasonable value. This is because EFI systems normally boot from optical discs by reading a FAT image file in El Torito format and treating that file as an ESP. If you need to store the kernel both in that file and directly in the ISO-9660 filesystem (to maintain bootability on BIOS systems), that can represent an unwanted extra space requirement. Placing rEFInd and an ISO-9660 driver in the FAT image file should enable you to store the kernel on the disc only once. Unfortunately, this doesn't work in practice. When the ISO-9660 driver is loaded from the El Torito image, the driver discovers that the optical disc is in use and refuses to access it. It's possible to use EFI shell commands to give the ISO-9660 driver access to the shell device, but this causes the El Torito access to go away, which means that anything loaded from the El Torito image (such as rEFInd) is likely to malfunction. Also, some EFI implementations include ISO-9660 drivers, so you might not need a separate ISO-9660 driver if you're building a disc for a particular computer.

-

Finding and Installing EFI Drivers

+

Using rEFInd's EFI Drivers

-

As already noted, I know of no EFI drivers for EFI hardware, aside from those that are built into motherboards' EFI implementations. I do, however, know of a few EFI filesystem drivers:

+ + +

Since version 0.4.0, rEFInd has shipped with a small collection of read-only EFI filesystem drivers. These are:

+ + + +

All of these drivers rely on filesystem wrapper code written by rEFIt's author, Christoph Phisterer. They all suffer from speed problems on some systems, as described later in "Notes on Specific Drivers;" however, these problems are very minor on most systems.

+ + + +

If you want to use one or more of these drivers, you can install them from the rEFInd binary package from the refind/drivers_arch directory, where arch is a CPU architecture code—x64 or ia32. The files are named after the filesystems they handle, such as ext2_x64.efi for the 64-bit ext2fs driver. You should copy the files for the filesystems you want to use to the drivers or drivers_arch subdirectory of the main rEFInd installation directory. (You may need to create this subdirectory.) Be careful to install drivers only for your own architecture. Attempting to load drivers for the wrong CPU type will cause a small delay at best, or may cause the computer to crash at worst. I've placed rEFInd's drivers in directories that are named to minimize this risk, but you should exercise care when copying driver files.

+ + + +

When you reboot after installing drivers, rEFInd should automatically detect and use the drivers you install. There's likely to be an extra delay, typically from one to five seconds, as rEFInd loads the drivers and tells the EFI to detect the filesystems they handle. For this reason, and because of the possibility of drivers harboring bugs, I recommend installing only those drivers that you need. If you like, you can install drivers you don't plan on using to some other directory, such as /drivers on the ESP's root. You can then load these drivers manually with the EFI shell's load command if the need arises in the future. You can then tell the shell to re-assign drive identifiers with map -r:

+ +
+fs0: load reiserfs_x64.efi
+fs0: map -r
+
+ +

If you build rEFInd from source, you should be aware that the drivers rely on TianoCore's development kit, whereas rEFInd itself uses GNU-EFI. Thus, to compile both, you'll need to install both development kits. Unfortunately, the TianoCore kit is a bit unusual from a Linux developer's perspective, and you'll probably have to build it from source code. Consult the BUILDING.txt file in the source package for more information. None of this is important if you use a binary build of rEFInd, unless you've obtained it from a third party who hasn't built the drivers. If that's the case, you'll have to download rEFInd from Sourceforge (see the Getting rEFInd page for details) or use drivers from another source.

+ +

Finding Additional EFI Drivers

+ +

As already noted, I know of no EFI drivers for EFI hardware, aside from those that are built into motherboards' EFI implementations. I do, however, know of a few EFI filesystem drivers, in addition to those provided with rEFInd:

-

Most of these cross-project drivers appear to be related. For instance, the ISO-9660 drivers are both based on code written by Christoph Phisterer for rEFIt (although he doesn't seem to have finished and released it in binary form himself).

- -

As you can see, pickings are rather slim. Nonetheless, the drivers that exist are useful for certain purposes. The options could increase in the future, too. Source code to a wide variety of filesystems is available in GRUB Legacy, GRUB 2, Linux, various BSD kernels, and in other projects. Sooner or later somebody's likely to begin porting those drivers to EFI. If you do so, or if you know of additional EFI drivers, please tell me about it, so I can share the information here. Likewise if you know of a source for other EFI drivers—say, for a video card or disk controller card.

+

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 Unknown. (I fixed that bug for rEFInd's version, and it wasn't present in the original rEFIt drivers.)

- +

Driver availability could increase in the future. Source code to a wide variety of filesystems is available in GRUB Legacy, GRUB 2, Linux, various BSD kernels, and in other projects. Sooner or later somebody's likely to begin porting those drivers to EFI. If you do so, or if you know of additional EFI drivers, please tell me about it, so I can share the information here. Likewise if you know of a source for other EFI drivers—say, for a video card or disk controller card.

-

Once you've obtained an EFI driver or two, you can install it in rEFInd by creating a subdirectory of the rEFInd directory called drivers—for instance, EFI/refind/drivers, if you've installed rEFInd to EFI/refind on the ESP. Alternatively, you can create a directory of any other name and use the scan_driver_dirs option in refind.conf to tell rEFInd where to look for drivers. Either way, rEFInd attempts to load all the EFI drivers from these directories, so placing your files there and rebooting will do the trick.

- -

rEFInd is likely to take slightly longer to start up when you use drivers, but the effect is likely to be small. On my systems, it's usually just a second or so. This effect could be greater with some drivers or on some systems, though.

+

Once you've obtained an EFI driver, you can install it in rEFInd just as you would install rEFInd's own drivers, as described earlier.

+

Notes on Specific Drivers

+
-

I've tested the original rEFIt drivers on a handful of systems. First let me re-emphasize one point: To use rEFIt's ext2fs and ReiserFS drivers on a UEFI-based PC, you must separate the x86 and x86-64 binaries from the "fat" binary format that come in the binary package. You can do this with my thin program.

- -

The rEFIt ext2fs driver works on both ext2fs and ext3fs, but not on ext4fs—at least, not in my one test. (There may be options you can use when creating an ext4 filesystem that would enable the rEFIt ext2fs driver to handle it, but if so I don't know what they are.) The ReiserFS driver is obviously useful only on ReiserFS partitions. (Reiser4 is not supported, as far as I know.) Given that these filesystems are getting a bit on in age by Linux standards, you might do well to use them on a separate Linux /boot partition; however, if you're willing to use ext3fs or ReiserFS on your root (/) filesystem, you can use the rEFIt drivers to read your kernel from it. Note that this assumes you use conventional partitions; to the best of my knowledge, there's no EFI driver for Linux's Logical Volume Manager (LVM) or Redundant Array of Independent Disks (RAID) configurations, so the EFI can't access filesystems stored in these ways.

+

I've tested several of the drivers described on this page on a handful of systems. The ext2fs driver (from any source) works on both ext2fs and ext3fs, but not on ext4fs—at least, not in my one test. (There may be options you can use when creating an ext4 filesystem that would enable the ext2fs driver to handle it, but if so I don't know what they are.) The ReiserFS driver is obviously useful only on ReiserFS partitions. (Reiser4 is not supported, as far as I know.) Given that these filesystems are getting a bit on in age by Linux standards, you might do well to use them on a separate Linux /boot partition; however, if you're willing to use ext3fs or ReiserFS on your root (/) filesystem, you can use the EFI drivers to read your kernel from it. Note that this assumes you use conventional partitions; to the best of my knowledge, there's no EFI driver for Linux's Logical Volume Manager (LVM) or Redundant Array of Independent Disks (RAID) configurations, so the EFI can't access filesystems stored in these ways.

-

The ext2fs and ReiserFS drivers work, but they are a bit sluggish—particularly the ext2fs driver. The extent of the problem depends on the computer. In my tests so far, VirtualBox has fared the worse. On it, loading a Linux kernel with EFI stub loader from a FAT partition takes 2 seconds, from the moment of selecting the OS in rEFInd to the moment the kernel messages begin to appear. The equivalent time using ReiserFS is 20 seconds, and with ext2fs it's 200 seconds (that is, 3 minutes and 20 seconds). On a 32-bit Mac Mini, though, the speed problem is much less pronounced—my kernel loads in just 3 seconds from a ReiserFS partition and in 13 seconds from an ext2 filesystem. Times with ext2fs on a UEFI PC with an Intel motherboard were also reasonable, although I didn't record precise values. Nonetheless, if you try the ext2fs driver and it seems to hang, be patient; it may finally boot up. If so, and if the delay is too great for you to accept, you might consider using ReiserFS instead of ext2fs or ext3fs, at least if a change is practical. (For a /boot partition, it almost certainly is practical; you can back it up quite easily, create a fresh filesystem on it, and restore it. You may need to adjust your /etc/fstab entry for a new UUID value, though.)

+

The ext2fs and ReiserFS drivers work, but they are a bit sluggish—particularly the ext2fs driver. The extent of the problem depends on the computer. In my tests so far, VirtualBox has fared the worst. On it, loading a Linux kernel with EFI stub loader from a FAT partition takes 2 seconds, from the moment of selecting the OS in rEFInd to the moment the kernel messages begin to appear. The equivalent time using ReiserFS or HFS+ is 20 seconds, and with ext2fs it's 200 seconds (that is, 3 minutes and 20 seconds). On a 32-bit Mac Mini, though, the speed problem is much less pronounced—my kernel loads in just 3 seconds from a ReiserFS partition and in 13 seconds from an ext2 filesystem. Times with ext2fs on a UEFI PC with an Intel motherboard are in the 2–4 second range. Nonetheless, if you try the ext2fs driver and it seems to hang, be patient; it may finally boot up. If so, and if the delay is too great for you to accept, you might consider using ReiserFS instead of ext2fs or ext3fs, at least if a change is practical. (For a /boot partition, it almost certainly is practical; you can back it up quite easily, create a fresh filesystem on it, and restore it. You may need to adjust your /etc/fstab entry for a new UUID value, though.) You can even use HFS+ on a Linux /boot partition, although this makes the most sense on a Mac, which has its own EFI HFS+ driver.

-

The Clover EFI Tools ext2fs driver performs much like the rEFIt ext2fs driver, but it doesn't deliver a filesystem label, which makes it less desirable. The NTFS driver from this package is nice and speedy, though, so if for some reason you need to place a boot loader on an NTFS volume, this driver might be worth tracking down.

+

Since the ext2fs and ReiserFS drivers share a common origin, it should come as no surprise that they perform in much the same way no matter which version (rEFIt, Clover, or rEFInd) you use. One exception is that the Clover EFI Tools drivers don't deliver filesystem labels, which makes them less desirable than the rEFIt or rEFInd drivers. The NTFS driver from the Clover Tools package is nice and speedy, though, so if for some reason you need to place a boot loader on an NTFS volume, this driver might be worth tracking down.

Although both ext2fs and ReiserFS are case-sensitive, these drivers treat them in a case-insensitive way. Symbolic links work, which opens up possibilities for configuration, such as using a single kernel binary for multiple Linux distributions, with a link in one subdirectory pointing to a file in another directory. (If you try this, though, be sure to use relative links, as in ../otherdist/bzImage.efi, at least if the partition is not Linux's root filesystem.)

diff --git a/docs/refind/features.html b/docs/refind/features.html index d1291ac..0fdd59b 100644 --- a/docs/refind/features.html +++ b/docs/refind/features.html @@ -15,7 +15,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

Originally written: 3/14/2012; last Web page update: -5/15/2012, referencing rEFInd 0.3.5

+5/20/2012, referencing rEFInd 0.4.0

I'm a technical writer and consultant specializing in Linux technologies. 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!

@@ -107,6 +107,10 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

  • Load EFI drivers for filesystems or hardware devices not supported natively by your firmware. (This feature is absent in some builds of rEFIt and in rEFInd prior to version 0.2.7.)
  • +
  • Inclusion of drivers for the Linux ReiserFS and ext2 filesystems in the + main package. (These drivers are absent from rEFInd prior to version + 0.4.0; and the rEFInd versions don't work on at least some Macs.)
  • +

    I've used rEFIt on a couple of computers for over a year, but I've found that it has some frustrating limitations. It tends to flood the screen with non-functional BIOS boot options, for instance; and it has a number of bugs on UEFI-based systems. I therefore expanded on rEFIt, giving rEFInd features that improve on or go beyond those of rEFIt, such as:

    @@ -149,6 +153,8 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

  • An "exit" option (disabled by default), so that you can return to whatever shell or boot manager you used to launch rEFInd, should this ability be desirable. (This feature first appeared in rEFInd 0.2.4.)
  • +
  • Drivers for ISO-9660 and HFS+, which are not included in rEFIt. (The ISO-9660 driver is based on code from the rEFIt project, but was never completed by its original author. It was completed by Oracle for VirtualBox.)
  • +

    On the flip side, at least for Mac users, rEFInd comes with less sophisticated Mac installation tools than does rEFIt, in favor of more OS-agnostic packaging.

    diff --git a/docs/refind/getting.html b/docs/refind/getting.html index d38c619..1a43a2f 100644 --- a/docs/refind/getting.html +++ b/docs/refind/getting.html @@ -15,7 +15,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Originally written: 3/14/2012; last Web page update: -5/15/2012, referencing rEFInd 0.3.5

    +5/20/2012, referencing rEFInd 0.4.0

    I'm a technical writer and consultant specializing in Linux technologies. 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!

    @@ -97,40 +97,40 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    diff --git a/docs/refind/linux.html b/docs/refind/linux.html index f1b901d..d9b47d1 100644 --- a/docs/refind/linux.html +++ b/docs/refind/linux.html @@ -15,7 +15,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Originally written: 3/19/2012; last Web page update: -5/15/2012, referencing rEFInd 0.3.5

    +5/20/2012, referencing rEFInd 0.4.0

    I'm a technical writer and consultant specializing in Linux technologies. 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!

    @@ -133,7 +133,7 @@ another possibility.

    will also scan for kernels without a .efi filename extension. This option is not the default, though, because it can pick up old kernels that lack EFI stub loader support and even non-kernel - files, such as icon files named to give a kernel a unique icon. + files. diff --git a/docs/refind/revisions.html b/docs/refind/revisions.html index a72657c..8bac805 100644 --- a/docs/refind/revisions.html +++ b/docs/refind/revisions.html @@ -14,7 +14,7 @@

    by Roderick W. Smith, rodsmith@rodsbooks.com

    -

    Last Web page update: 5/15/2012

    +

    Last Web page update: 5/20/2012

    I'm a technical writer and consultant specializing in Linux technologies. 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!

    @@ -93,6 +93,8 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com