]> code.delx.au - refind/blob - NEWS.txt
Applied old rEFIt commits r467 and r472, which improve Mac legacy
[refind] / NEWS.txt
1 0.8.5 (??/??/2015):
2 -------------------
3
4 - Improved install.sh to make it smarter about figuring out where to
5 install on Macs.
6
7 - Added missing check of architecture type for several tools.
8
9 - Applied rEFIt commit r472, which adds support for BMP images with negative
10 height fields, indicating that the image is NOT vertically flipped. This
11 commit and r467 were not incorporated in the original rEFInd because I
12 forked it from a Debian rEFIt package that had been patched to build
13 under GNU-EFI, and was apparently based on a slightly earlier version.
14
15 - Applied rEFIt commit r467, which improves Mac handling of legacy boots
16 from other than the first hard disk.
17
18
19 0.8.4 (12/8/2014):
20 ------------------
21
22 - Tweaked default for dont_scan_volumes: Removed "Recovery HD". This change
23 better suits the needs of OS X 10.10 ("Yosemite") installations, but may
24 result in some stray Recovery HD entries on some Macs.
25
26 - Updated icons for Fedora and Ubuntu and added an icon for Xubuntu.
27
28 - Added new configuration option, "enable_and_lock_vmx", which sets an
29 Intel CPU feature that's required for some types of virtualization to
30 work. Most EFIs enable setting this feature in their own setup utilities,
31 but some (such as most Macs) don't.
32
33 - If rEFInd can't locate an icons directory (either the default or one
34 specified by the icons_dir token), the program switches to text-only
35 mode.
36
37 - If a loader contains the string "grub" and no other clue to the loader's
38 OS association exists, search for os_grub.{png|icns} (which is not
39 provided with rEFInd) or os_linux.{png|icns}. (Previous versions provided
40 a generic loader icon for GRUB.)
41
42 - Fixed bug that caused dont_scan_files to not work with special-case
43 boot loaders (for OS X and Windows) when specifying the complete path to
44 the loader (e.g., EFI/Microsoft/Boot/bootmgfw.efi).
45
46 - Added support for the iPXE network boot tool (see BUILDING.txt for
47 building and basic use instructions).
48
49 0.8.3 (7/6/2014):
50 -----------------
51
52 - Added new feature: Setting "timeout = -1" in refind.conf causes rEFInd to
53 immediately boot the default option UNLESS a keypress is in the buffer
54 when rEFInd launches. In that case, if the keypress corresponds to a
55 shortcut key, the associated boot loader is launched; or if not, the menu
56 is displayed.
57
58 - Added new icons for Clover boot loader and for Mythbuntu Linux
59 distribution.
60
61 - rEFInd now displays the partition's label, when one is available, when
62 offering a BIOS-mode boot option for a partition with no filesystem
63 driver. This works only on Macs doing BIOS-mode booting.
64
65 - Removed GPLv2 code from the FSW core files. This was done because the
66 Btrfs driver is derived from the GRUB Btrfs driver, which is licensed
67 under the GPLv3. Ironically, the GPLv2 and GPLv3 are incompatible
68 licenses, so ensuring that the Btrfs driver doesn't rely on GPLv2 code
69 was legally necessary. In most cases, I reverted to the original rEFIt
70 code, although I kept my own cache code; since I wrote it, I can
71 change its license to a BSD license.
72
73 - Fixed bug that caused rEFInd to unload drivers immediately after loading
74 them. This didn't affect rEFInd's own drivers because they didn't include
75 the unload hooks, but it did affect some other drivers.
76
77 - Changed default scan_all_linux_kernels setting from "false" to "true",
78 and commented the option out in refind.conf-sample. This should not
79 affect most people, since refind.conf-sample had this option commented
80 out, and most rEFInd users either use it that way or don't have Linux
81 kernels installed at all. I've made this change because I want rEFInd to
82 "do the right thing" by default in as many cases as possible. For a while
83 now, rEFInd has been excluding non-bootable files from its menu, and most
84 kernels "in the wild" now include the EFI stub. Thus, enabling this
85 support by default seems worthwhile. If you prefer to not scan Linux
86 kernels by default, simply uncomment the "scan_all_linux_kernels" line
87 and ensure it's set to "false".
88
89 0.8.2.1 (6/8/2014):
90 -------------------
91
92 - Removed stray bit of debugging code that caused a prompt to press a
93 key to appear at rEFInd startup.
94
95 0.8.2 (6/8/2014):
96 -----------------
97
98 - Changed behavior when default_selection is not set: It now boots the
99 previously-booted loader, assuming it's still available; if not, rEFInd
100 boots the first loader (as it does now). Behavior is unchanged if
101 default_selection is set. Note that this behavior depends on the ability
102 of rEFInd to store an EFI variable in NVRAM. It therefore fails on
103 systems with flaky NVRAM storage. You can view the previously-booted
104 loader in the
105 /sys/firmware/efi/efivars/PreviousBoot-36d08fa7-cf0b-42f5-8f14-68df73ed3740
106 variable under Linux.
107
108 - Added icon for Mageia Linux (os_mageia.png).
109
110 - Fixed bug that could misidentify a not-quite-GUID as a GUID in a
111 manual boot stanza's "volume" line.
112
113 - I've updated my personal build system, and therefore the rEFInd Makefiles
114 and related files, to use TianoCore UDK2014 rather than UDK2010.
115
116 - Added "deep_uefi_legacy_scan" token. When not set (the default), rEFInd
117 does not modify EFI NVRAM settings when scanning for BIOS-mode boot
118 loaders on UEFI-based (non-Mac) computers. Some computers require
119 uncommenting this setting for rEFInd to reliably detect some BIOS-mode
120 boot devices. Passing "0", "off", or "false" as an option resets it to
121 the default value (useful in a loaded secondary configuration file to
122 override a setting in the main file).
123
124 0.8.1 (5/15/2014):
125 ------------------
126
127 - Fixed bug that could cause rEFInd to fail to detect boot loaders stored
128 on the root directory of a partition.
129
130 - Added two new bitmap fonts to those distributed with rEFInd: Ubuntu Mono
131 and Nimbus Mono. Both come in 12-, 14-, 16-, and 24-point sizes.
132
133 - Messages about pauses for scanning and re-scanning of boot loaders are
134 now suppressed when doing an initial delayed scan when scan_delay is 1
135 second.
136
137 - Improved centering of legacy boot option descriptions on some systems'
138 screens.
139
140 - Fixed bug that could cause a BIOS-mode boot to boot from an inappropriate
141 device if that device had an innately high boot priority (as set by the
142 firmware).
143
144 - Changed icons from ICNS to PNG form. There are several reasons to do
145 this, all of them minor; but together they're enough to warrant a change.
146 PNG is more common, and therefore more accessible to most users --
147 particularly those who don't use OS X. The PNG files are smaller than
148 their ICNS equivalents. PNG supports a wider range of sizes (although I'm
149 not now using anything that ICNS doesn't support, I might in the future).
150 The icon-scaling support added a few versions ago makes ICNS's support
151 for multiple icon sizes relatively unimportant.
152
153 - Reversed order of search for icons by extension: rEFInd now searches
154 for PNG files before ICNS files, rather than the other way around. This
155 makes it possible to override a volume icon for rEFInd by giving it the
156 name .VolumeIcon.png, even when a .VolumeIcon.icns file exists on the
157 volume and is used by OS X.
158
159 - Fixed bug that caused .VolumeIcon.icns to take higher-than-intended
160 precedence in icon setting for OS X.
161
162 - Chainloading to BIOS-mode boot loaders now works on UEFI-based PCs when
163 rEFInd is built with GNU-EFI, not just when built with Tianocore.
164
165 0.8.0 (5/4/2014):
166 -----------------
167
168 - The "dont_scan_volumes" parameter now also works with legacy-boot
169 volumes. Unlike with EFI volumes, where the option you pass must exactly
170 match an entire volume name, when applied to legacy-boot volumes, it
171 matches any part of the description that appears beneath the item when
172 you select it in the rEFInd main menu.
173
174 - Can now boot in legacy mode from second (and probably later) hard disks!
175
176 - rEFInd now limits the length of the firmware name string shown in the
177 system information screen to 65 characters. This is done because at least
178 one EFI presents a longer string by default, and this causes the entire
179 information display to come up empty on 800x600 displays.
180
181 - rEFInd now uses the partition's name (as stored in the GPT data
182 structures) as a fallback for the filesystem's name if the latter can't
183 be found. Exceptions are if the partition name is one of three generic
184 names used by GPT fdisk: "Microsoft basic data", "Linux filesystem", or
185 "Apple HFS/HFS+". These are ignored in favor of the descriptive fallback
186 (e.g., "20 GiB Btrfs volume")
187
188 - It's now possible to specify a volume by partition GUID number in a
189 manual boot stanza. This should be more reliable (albeit also more
190 awkward) than using a filesystem number (such as fs0: or fs1:).
191
192 - Fixed memory-allocation bug that could cause error message displays,
193 and possibly hangs, when re-scanning boot loaders.
194
195 0.7.9 (4/20/2014):
196 ------------------
197
198 - Attempt to fix rEFInd perpetually re-scanning after ejecting a disc on
199 some Macs.
200
201 - Added check to remove redundant (or non-functional if Secure Boot is
202 active) kernel entries for Ubuntu, which is now including two versions of
203 kernels, one signed and the other unsigned.
204
205 - Fixed bug in install.sh that could cause it to display error messages
206 if the dmraid utility was not installed.
207
208 - The HFS+ driver now reports a correct volume name.
209
210 - Fixed some EFI filesystem driver bugs that could cause lockups under
211 some circumstances. These bugs could affect any of the filesystem
212 drivers.
213
214 - Added "gdisk" option to the "showtools" configuration file token. When
215 active, this adds gdisk.efi or gdisk_{arch}.efi, if present in the
216 EFI\tools directory, to the tools row.
217
218 - Fixed mistaken identification of the MOK utility as the "MOK utility
219 utility."
220
221
222 0.7.8 (3/9/2014):
223 -----------------
224
225 - Added "debian" directory to source, which facilitates creation of Debian
226 packages. Packages built in this way are built with GNU-EFI and don't run
227 any post-installation script, so although the rEFInd binaries are on the
228 hard disk, they aren't installed to be bootable; you must manually run
229 install.sh. Also, at least on Ubuntu, the Make.common file's /usr/lib64
230 references must be changed to /usr/lib. This is more of a proof of
231 concept and a "leg up" for distribution maintainers than anything else.
232
233 - Two new options, big_icon_size and small_icon_size, set the size of
234 the first-row OS icons and of the second-row tool icons, respectively.
235 The big_icon_size option also indirectly sets the size of disk-type
236 badges; they're 1/4 the size of the big icons. Default values are 128 and
237 48, respectively, to match the actual icon files provided with rEFInd. If
238 the icon you're using is of a different size than you've specified,
239 rEFInd scales it. For best quality, you should both provide icons drawn
240 to the right size and set the icon sizes in refind.conf.
241
242 - rEFInd now automatically scales icons to fit the standard icon sizes.
243 This won't have any effect with the icons that come with rEFInd, but it
244 can help if you want to use another icon, since you needn't scale it in a
245 graphics program before using it. Note that rEFInd uses bitmap icons, so
246 scaling by a huge amount (say, a 16x16 icon to fit the standard 128x128
247 OS icon) is not likely to look good.
248
249 - Added new option, banner_scale, that tells rEFInd how to handle banners:
250 Set to "noscale" (the default), banners are not scaled, although they'll
251 be cropped if they're too big for the display. This is the same as the
252 behavior in previous versions. Set to "fillscreen", rEFInd now scales the
253 banner image (larger or smaller) to fill the display.
254
255 - Adjusted the post-installation script in refind.spec (used to generate
256 RPMs, and therefore also indirectly Debian packages) to search for
257 existing shim program files under the filesnames shim.efi and shimx64.efi
258 rather than just shim.efi. Ubuntu uses shimx64.efi, so Debian packages
259 were failing to detect Ubuntu's shim in previous versions. (Note,
260 however, that Ubuntu's early shim 0.1 is unsuitable for use with rEFInd
261 The newer 0.4 version that's in the repositories now should work fine;
262 it's only when installing on an older system that's NOT been updated that
263 problems might arise.
264
265 0.7.7 (1/3/2014):
266 -----------------
267
268 - Can now specify complete paths, optionally including volumes, in
269 dont_scan_files.
270
271 - Added shimx64.efi to the default dont_scan_files list.
272
273 - Added windows_recovery_files token, to specify what program(s) launch a
274 Windows recovery utility; and the "windows_recovery" option to
275 "showtools," to control whether or not to display the Windows recovery
276 utility on the second row of icons.
277
278 - The use_graphics_for, also_scan_dirs, dont_scan_dirs, dont_scan_files,
279 and scan_driver_dirs tokens in refind.conf now support "+" as the first
280 option, which causes the remaining options to be added to the default
281 value rather than replacing that value. (This has no practical effect for
282 scan_driver_dirs, though, since it has a null default value.)
283
284 - Added support for specifying the configuration file at program launch,
285 via the "-c" parameter, as in "refind_x64.efi -c foo.conf" to use the
286 foo.conf file as the main configuration file.
287
288 - Scans of ext2/3/4fs and ReiserFS partitions now omit partitions with
289 duplicate filesystem UUIDs. These are likely parts of RAID arrays and so
290 would have the same boot loaders or kernels as the first one with a given
291 UUID.
292
293 - Added feature in install.sh: Script now tries to locate and mount an ESP
294 in Linux, if it's currently unmounted.
295
296 - Fixed bug in mkrlconf.sh and install.sh that caused a stray line break
297 and PARTUUID= specification to appear in generated refind_linux.conf file
298 under some circumstances.
299
300 0.7.6 (12/15/2013):
301 -------------------
302
303 - Added support for multiple "default_selection" targets. These MUST be
304 comma-separated AND enclosed in quotes, as in:
305 default_selection "fred,ginger"
306 This example will launch "fred" by default if it's available; and if
307 it's not, rEFInd will attempt to launch "ginger" as the default.
308
309 - Added support for time-sensitive "default_selection" setting. This token
310 may now have either one or three options. If one, it's interpreted as it
311 has been in the past, as setting a default that's independent of times.
312 If you follow this default by two times, however, those are interpreted
313 as the start and end times (in 24-hour format) for a default setting. For
314 instance, "default_selection foo 8:00 17:00" causes foo to be the default
315 from 8:00 (AM) to 17:00 (aka 5:00 PM). You can include multiple
316 "default_selection" lines to set different defaults for a variety of
317 times. If they're in conflict, the last one takes precedence. Note that
318 times are hardware clock's native value, which may be local time or UTC,
319 depending on your computer.
320
321 - Added support for a blank-screen startup: Set "screensaver -1" and the
322 screen saver will be initialized when rEFInd starts. If you set a low
323 "timeout" value, the result will be a boot straight to the default OS
324 unless you hit a key soon after rEFInd starts. Once you hit a key, the
325 screensaver will be disabled.
326
327 - Added --ownhfs {target} option to install.sh. This option causes rEFInd
328 to install to an HFS+ partition in a way that's more consistent with the
329 way the Mac's native boot loader is installed. Note that you should NOT
330 install to an already-bootable partition with this option, since it will
331 overwrite the existing boot loader, which would render OS X unbootable.
332
333 0.7.5 (11/10/2013):
334 -------------------
335
336 - Fixed bug that caused unbootable exFAT partitions to show up as
337 bootable on Macs with BIOS/CSM/legacy boot options enabled.
338
339 - Fixed bug in install.sh that caused installs to the ESP on recent
340 versions of OS X to fail.
341
342 - Fixed bug that caused rEFInd to hang on some Macs when multiple EFI
343 drivers were present.
344
345 - Fixed bug that caused clear to default gray screen when launching OSes
346 with 'use_graphics_for' enabled, even when the rEFInd background is not
347 gray. Now rEFInd clears to the same background color used in its menu.
348 When launching OS X, though, the OS X boot loader will itself clear to
349 gray a second or so later; and when launching Linux, it will clear to
350 black a second or so later.
351
352 0.7.4.1 (8/25/2013):
353 --------------------
354
355 - My initial 0.7.4 release broke legacy-boot ability on Macs, so I quickly
356 released this version using the original 0.7.4 filenames to fix the
357 problem.
358
359 0.7.4 (8/25/2013):
360 ------------------
361
362 - Fixed options passing to loader to include loader's filename as the first
363 option. This omission had no effect on most boot loaders, but caused
364 VMware's mboot64.efi to fail.
365
366 - Added support for memtest86 as second-row option. Program must be
367 stored in EFI/tools, EFI/tools/memtest, EFI/tools/memtest86, EFI/memtest,
368 or EFI/memtest86; and must use the name memtest86.efi, memtest86_x64.efi,
369 memtest86x64.efi, or bootx64.efi (changing "x64" to "ia32" on IA-32
370 systems). The memtest86 program is scanned for when the "showtools"
371 option includes the "memtest" or "memtest86" token, which it does by
372 default.
373
374 - Added space to end of "Boot %s from %s" string; enables adding a space
375 to the end of the "default_selection" item (in quotes) to set a default
376 that matches a volume name that's identical to another one except for
377 extra characters at the end of the non-wanted volume's name.
378
379 - Fixed bug that could cause rEFInd to hang when launching boot loaders
380 under some conditions. (Launching from Firewire drives on Macs is the
381 known case, but there may be others.)
382
383 0.7.3 (8/7/2013):
384 -----------------
385
386 - Fixed bug that caused missing media-type badges on BIOS-mode boot
387 loaders on Macs.
388
389 - Fixed bug that caused failure when launching BIOS-mode OSes on Macs.
390
391 0.7.2 (8/6/2013):
392 -----------------
393
394 - Fixed bug that caused display glitches in the final entry on the first
395 row of icons if the second row of icons was empty.
396
397 - Fixed bug that could cause incorrect scanning or even a rEFInd crash when
398 using volume specification in also_scan_dirs token.
399
400 - Added protection against loading invalid drivers and other EFI programs.
401 (Some EFIs crash when attempting to load such drivers and programs.)
402
403 - Added PreLoader.efi and shim-fedora.efi to default dont_scan_files list;
404 it's now "shim.efi, shim-fedora.efi, PreLoader.efi, TextMode.efi,
405 ebounce.efi, GraphicsConsole.efi, MokManager.efi, HashTool.efi,
406 HashTool-signed.efi".
407
408 - Added icon for Funtoo Linux.
409
410 - Fixed reading of volume badges from user-specified icons directory, which
411 was broken.
412
413 - Fixed handling of /.VolumeBadge.icns (or /.VolumeBadge.png) files, which
414 was broken.
415
416 0.7.1 (7/8/2013):
417 -----------------
418
419 - Fixed build problem with recent development versions of EDK2.
420
421 - Added scan for Boot Repair's backup of the Windows boot loader
422 (bkpbootmgfw.efi). If found, give separate entries for it and for
423 bootmgfw.efi, each with its own descriptive text label.
424
425 - Fixed also_scan_dirs; used to have bug that caused it to ignore
426 volume specification, if present.
427
428 - Fixed bug in driver cache that caused Btrfs driver to hang sometimes.
429
430 0.7.0 (6/27/2013):
431 ------------------
432
433 - Added Btrfs signature to rEFInd, so that it can identify the filesystem
434 type for volumes that lack labels.
435
436 - Changed some critical filesystem driver pointers from 32-bit to 64-bit.
437 This *SHOULD* enable use of over-2TiB filesystems (for those filesystems
438 that support such large volumes). This capability is largely untested,
439 though.
440
441 - Added a cache to the filesystem driver core, and therefore to all the
442 filesystem drivers. This cache greatly improves performance in
443 VirtualBox, and offers modest performance improvements on a few "real"
444 computers. The most dramatic improvement is on ext2/3fs under VirtualBox:
445 Loading a kernel and initrd used to take ~200 seconds on my system, but
446 now takes ~3 seconds! On most "real" hardware, the improvement is much
447 less dramatic -- an improvement of a second or less, presumably because
448 of cacheing within the EFI or on the hard disk itself.
449
450 - Filter boot loaders based on a test of their validity; keeps out Linux
451 kernels without EFI stub loader code, loaders for the wrong architecture,
452 non-EFI loaders, etc.
453
454 - New Btrfs driver, contributed by Samuel Liao based on GRUB 2.00 Btrfs
455 code.
456
457 0.6.12 (6/18/2013):
458 -------------------
459
460 - Changed the 64-bit EFI shell included in the CD-R and USB flash drive
461 images to a version 2 shell that should support the "bcfg" command.
462
463 - Added support for PreBootloader to refind.spec's built-in installation
464 script.
465
466 - Added support for the Linux Foundation's PreLoader to install.sh. It's
467 treated just like shim, including using the --shim option (or, now,
468 --preloader); but it searches for and copies HashTool.efi rather than
469 MokManager.efi, and filenames are adjusted appropriately.
470
471 - Added code to determine Linux root filesystem from /etc/fstab file, if
472 it's on the same partition as the kernel and if the refind_linux.conf
473 file is not available. This enables rEFInd to boot Linux without any
474 rEFInd-specific configuration files on some (but not all) systems.
475
476 0.6.11 (5/13/2013):
477 -------------------
478
479 - New feature: rEFInd now ignores symbolic links to files on filesystems
480 that support them. This prevents the "vmlinuz" symbolic link that some
481 distributions create in the root directory from appearing in the loader
482 list. Note that this does NOT affect symbolic links to directories.
483
484 - Added icons for Lubuntu and Kubuntu.
485
486 - Improved the install.sh script so that it does a better job dealing with
487 directory names that contain spaces.
488
489 - rEFInd now tries to guess the Linux distribution type based on the kernel
490 filename (Fedora and RHEL only) or the "ID" or "NAME" variables in
491 /etc/os-release on the kernel's partition. None of these is guaranteed to
492 work. A fallback of the Tux penguin icon remains in place in case rEFInd
493 can't find anything substantive enough for a guess.
494
495 - Added "EFI\opensuse" to the locations searched for MOK utilities, since
496 OpenSUSE now uses that name.
497
498 - Renamed "Reboot to Firmware User Interface" to "Reboot to Computer Setup
499 Utility" in menu.
500
501 - Fixed bug in gptsync that caused it to hang if the disk had too few GPT
502 partitions to fill the MBR.
503
504 0.6.10 (5/5/2013):
505 ------------------
506
507 - Added support for "screensaver" token. If set to a positive integer, this
508 causes the screen to blank after the specified number of seconds of
509 inactivity. Pressing most keys (unfortunately NOT including Shift, Alt,
510 or Ctrl) will restore the display and restart the screen saver timeout.
511
512 - Added icon for ChromeOS (os_chrome.icns in the icons subdirectory).
513 ChromeBooks reportedly boots using the fallback filename, but if a user
514 wants to install rEFInd on a ChromeBook, renaming the original EFI/BOOT
515 directory to EFI/chrome and then installing rEFInd in the fallback
516 filename will bring up this new icon for ChromeOS.
517
518 - Added new option to reboot the computer into the firmware's user
519 interface. This option is active by default, or can be set via the
520 "firmware" option to the "showtools" token in refind.conf. It works
521 on only some computers, though; older computers lack this feature, and
522 when rEFInd is told to use this feature on such computers, the directive
523 is quietly ignored.
524
525 - Upgraded LodePNG library from version 20121216 to 20130415 and
526 restructured rEFInd-specific modifications to simplify future upgrades.
527
528 - Replaced hexadecimal error code with description if an error is
529 encountered when saving a screen shot.
530
531 - Enable multiple screen shots: Rather than naming all screen shots
532 "screenshot.bmp", the name is now "screenshot_###.bmp", where "###" is a
533 sequence number, starting with "001".
534
535 0.6.9 (4/25/2013):
536 ------------------
537
538 - Modified default banner to include the new rEFInd icon, provided by Erik
539 Kemperman.
540
541 - Worked around a suspected firmware bug that caused rEFInd 0.6.6 to 0.6.8
542 to hang at startup on some systems (DUET and some Macs).
543
544 - Modified rEFInd to search for gptsync under the names gptsync.efi and
545 gptsync_{arch}.efi, where {arch} is ia32 or x64. (Previous versions
546 searched only for gptsync.efi.)
547
548 - Added gptsync program from rEFIt project, but with some changes to
549 improve flexibility and make it less likely that UEFI users will
550 accidentally trash their systems.
551
552 - Changed timeout code so that the timeout continues if the keyboard is
553 disconnected. This can help in booting a headless server or a system with
554 a bluetooth or other keyboard that's not recognized by the EFI.
555
556 0.6.8 (3/18/2013):
557 ------------------
558
559 - Added workaround for presumed EFI bug that was causing "Invalid
560 Parameter" errors when scanning for boot loaders on some computers.
561
562 - Added search for an EFI shell called shell.efi in the root directory
563 (previously this name was only accepted in EFI\tools).
564
565 - Fixed bug in install.sh that caused it to fail on some systems (Fedora
566 18, for instance) because of a problem identifying the ESP.
567
568 - Fixed bug that caused icons named after boot loaders to not be used.
569
570 0.6.7 (2/3/2013):
571 -----------------
572
573 - Added a more explicit error message summarizing options when a launch of
574 a program results in a Secure Boot failure.
575
576 - Changed MOK tool detection to scan all volumes, not just the rEFInd
577 home volume. This is desirable because the Linux Foundation's HashTool
578 can only scan its own volume, making it desirable to place copies of this
579 program on every volume that holds EFI boot loader binaries.
580
581 - Added support for launching the Linux Foundation HashTool as a means of
582 managing MOKs (or MOK hashes, at any rate).
583
584 - Fixed bug that caused rEFInd to present an entry for itself as a
585 Microsoft OS if it was launched as EFI/Microsoft/Boot/bootmgfw.efi.
586
587 - Fixed bug that caused dont_scan_volumes option to be added to
588 also_scan_dirs list.
589
590 - Fixed dont_scan_volumes so that it works with OS X boot loaders.
591
592 - Fixed broken mixing of PNG and ICNS icons when using a user-specified
593 icons directory -- previously, an ICNS file in the default directory
594 would override a PNG file in the user-specified directory.
595
596 0.6.6 (1/26/2013):
597 ------------------
598
599 - rEFInd now ignores the fallback boot loader (EFI/BOOT/bootx64.efi or
600 EFI/BOOT/bootia32.efi) if it's identical to another boot loader on
601 the same volume. This is intended to help unclutter the display on
602 systems that run Windows, since Windows tends to duplicate its own boot
603 loader under the fallback name.
604
605 - Added new "font" token to refind.conf, which enables specifying a font in
606 the form of a PNG file. This file must contain monospace glyphs for the
607 95 characters from ASCII 32 to 126 (space through tilde), inclusive, plus
608 a glyph to be displayed for characters outside of this range, for a total
609 of 96 glyphs.
610
611 - Replaced the old font (inherited from rEFInd) with an anti-aliased
612 version of Luxi Mono Regular 14 point.
613
614 - Fixed bug that caused rEFInd to ignore manual boot stanzas in files
615 included via the "include" token in refind.conf.
616
617 - Fixed bug that caused ASSERT error on some systems (and conceivably a
618 crash on startup on some) when default_selection line in refind.conf was
619 commented out or empty.
620
621 - Fixed bug that caused "Binary is whitelisted" message to persist on
622 screen after loading MOK-signed drivers in Secure Boot mode.
623
624 - Fixed bug that caused rEFInd to ignore the "icon" token in refind.conf
625 manual boot stanzas.
626
627 - Fixed bug in install.sh that caused the script to fail to update
628 drivers when rEFInd was installed in EFI/BOOT/.
629
630 0.6.5 (1/16/2013):
631 ------------------
632
633 - Improved text color support: rEFInd now uses black text against light
634 backgrounds and white text against dark backgrounds.
635
636 - Added support for PNGs as banners, icons, and selectors.
637
638 - Added icon for ALT Linux.
639
640 - Added "safemode" option to "hideui" token, to hide option to boot into
641 safe mode for OS X ("-v -x" option to boot.efi).
642
643 - Added icon for Haiku (os_haiku.icns).
644
645 - Enable transparency of icons & main-menu text when the banner icon is
646 sized to cover these areas.
647
648 - Fixed bug that could cause rEFInd to crash if fed a banner image that's
649 too big. Note that "too big" can be substantially smaller than the screen
650 resolution!
651
652 0.6.4 (1/8/2013):
653 -----------------
654
655 - Revised install.sh to copy ext2fs driver, rather than ext4fs driver, for
656 ext2/3 filesystems. This can help keep non-functional entries from links
657 from /vmlinuz to /boot/vmlinuz out of the menu if the system uses ext4fs
658 on root and ext2fs or ext3fs on /boot.
659
660 - Fixed a couple of memory management bugs that cause rEFInd to hang at
661 startup on some systems.
662
663 0.6.3 (1/6/2013):
664 -----------------
665
666 - Added the ability to specify a volume name or number in the
667 "dont_scan_dirs" and "also_scan_dirs" tokens.
668
669 - Fixed a bug that caused removable EFI media to not appear in scan lists
670 if rEFInd was installed as EFI/BOOT/boot{arch}.efi on a hard disk.
671
672 - Modified ISO-9660 driver so that it can handle discs with other than
673 2048-byte sectors. This makes it useful for reading "hybrid ISO" images
674 burned to USB flash disks.
675
676 - New mvrefind.sh script to move a rEFInd installation between a standard
677 location (typically EFI/refind) and one of the fallback locations
678 (EFI/BOOT or EFI/Microsoft/Boot). It can also do more exotic locations.
679
680 - The install.sh script now installs to EFI/BOOT/bootx64.efi or
681 EFI/Microsoft/Boot/bootmgfw.efi if it's run in BIOS mode. This is
682 intended to give some chance of producing a bootable installation should
683 a user accidentally install Linux in EFI mode and then install rEFInd
684 from that installation.
685
686 - The install.sh script now tries to find an existing rEFInd installation
687 and upgrade it, even if it's in EFI/BOOT or EFI/Microsoft/Boot rather
688 than in EFI/refind.
689
690 - New "--yes" option to install.sh to help with unattended or automated
691 installations (as from an RPM or Debian package).
692
693 0.6.2 (12/30/2012):
694 -------------------
695
696 - Inclusion of a sample refind.spec file for the benefit of RPM
697 distribution maintainers who might want to include rEFInd. It's a bit
698 rough, but it gets you a good chunk of the way there....
699
700 - The EFI filesystem drivers can now be built with the GNU-EFI toolkit as
701 well as with the TianoCore EDK2. See the BUILDING.txt file for details on
702 how to build them with either toolkit. This improvement doesn't affect
703 users of my binary packages, but it should make it easier for Linux
704 distributions to adopt rEFInd into their package systems.
705
706 - Tweaked refind.inf file for better build results using "native" TianoCore
707 EDK2 build process (vs. the Makefile-based build process that I use under
708 Linux). This won't affect those who use my binary builds or build under
709 Linux with the "make" command.
710
711 - Fixed bug that prevented Secure Boot launches from working when rEFInd
712 was built with GNU-EFI rather than the TianoCore EDK2.
713
714 - Substantial reworking of Secure Boot code, based on James Bottomley's
715 PreLoader program. This new code eliminates the limitation of launching
716 just one driver in Secure Boot mode and is likely to be more reliable
717 with future or obscure boot loaders. It should also work with non-x86-64
718 systems, although this relies on a platform-specific shim program, which
719 to date exists only for x86-64. The basic features are the same as before
720 -- rEFInd relies on shim for authentication functions and will launch
721 programs that are signed by Secure Boot keys, shim keys, or MOKs.
722
723 - Altered default for "textmode" option (when it's commented out) to not
724 adjust the text mode at all. (Prior versions set it to mode 0 by
725 default.)
726
727 0.6.1 (12/21/2012):
728 -------------------
729
730 - Added "--root" option to install.sh, to enable installation of rEFInd
731 to something other than the currently-running OS. This is intended for
732 use on emergency discs.
733
734 - Thanks to Stefan Agner, the ext4fs driver now supports the "meta_bg"
735 filesystem feature, which distributes metadata throughout the disk. This
736 feature isn't used by default, but can be set at filesystem creation time
737 by passing the "-O meta_bg,^resize_inode" option to mke2fs. (Using
738 "^resize_inode" is necessary because meta_bg is incompatible with
739 resize_inode, which IS used by default.) This feature can be used on
740 ext3fs and ext2fs as well as on ext4fs, so the ext4fs driver can now
741 handle some ext3fs and ext2fs partitions that the ext2fs driver can't
742 handle.
743
744 - Fixed some screen resolution-setting bugs.
745
746 - Added the "words" that make up a filesystem's label (delimited by spaces,
747 dashes, or underscores) to the list of bases used to search for OS icons.
748 For instance, if the filesystem's label is "Arch", rEFInd searches for
749 os_Arch.icns; if it's "Fedora 17", it searches for os_Fedora.icns and
750 os_17.icns; and if it's "NEW_GENTOO", it searches for os_NEW.icns and
751 os_GENTOO.icns.
752
753 - Refined hints displays to be more context-sensitive, particularly in text
754 mode.
755
756 - Instead of displaying a blank filesystem label when a filesystem has
757 none, rEFInd now displays the size and/or type of the filesystem, as in
758 "boot EFI\foo\bar.efi from 200 MiB ext3 volume" rather than "boot
759 EFI\foo\bar.efi from".
760
761 - Fixed a bug that caused the screen to clear after displaying an error
762 message but before displaying the "Hit any key to continue" message when
763 a boot loader launch failed.
764
765 0.6.0 (12/16/2012):
766 -------------------
767
768 - Fixed a memory allocation bug that could cause a program crash when
769 specifying certain values with the "also_scan_dirs", "dont_scan_volumes",
770 "dont_scan_dirs", "dont_scan_files", and "scan_driver_dirs" refind.conf
771 options.
772
773 - Modified Linux kernel initrd-finding code so that if an initrd is
774 specified in refind_linux.conf, rEFInd will not add any initrd it finds.
775 This enables an override of the default initrd, and is likely to be
776 particularly helpful to Arch Linux users.
777
778 - Added ext4fs driver!
779
780 - Made "boot" the default value for "also_scan_dirs".
781
782 - Added identifying screen header to line editor.
783
784 - Fixed bug that caused rEFInd's display to be mis-sized upon return
785 from a program that set the resolution itself.
786
787 - Adjusted "resolution" refind.conf parameter so that it can accept EITHER
788 a resolution as width and height OR a single digit as a UEFI mode number
789 (which is system-specific). This is done because some systems present the
790 same mode twice in their mode lists, perhaps varying in refresh rate,
791 monitor output, or some other salient characteristics; specifying the
792 mode number enables selecting the higher-numbered mode, whereas using
793 horizontal and vertical resolution values selects the lowest-numbered
794 mode.
795
796 - Added "textmode" refind.conf parameter to set the text mode used in
797 text-only displays, and for the line editor and boot-time handoff
798 display even in graphics mode.
799
800 - Fixed bug that caused tools (shell, etc.) to launch when they were
801 highlighted and F2 or Insert was pressed.
802
803 - Added "editor" option to the "hideui" token in refind.conf, which
804 disables the boot options editor.
805
806 - Added hints text to rEFInd main menu and sub-menus. This can be disabled
807 by setting the new "hints" option to the "hideui" token in refind.conf.
808
809 - Added "boot with minimal options" entry to refind_linux.conf file
810 generated by install.sh. This entry boots without the options extracted
811 from the /etc/default/grub file.
812
813 - Added keys subdirectory to main distribution, to hold public Secure
814 Boot/shim keys from known sources.
815
816 - Changed install.sh --drivers option to --alldrivers, added new
817 --nodrivers option, and made the default on Linux to install the one
818 driver that's used on /boot (or the root filesystem if /boot isn't a
819 separate partition). Of course, this won't install a non-existent driver,
820 and it also won't work properly if run from an emergency disk unless you
821 mount a separate /boot partition at that location.
822
823 - Fixed bug in install.sh that prevented creation of refind_linux.conf file
824 on Linux systems.
825
826 0.5.1.1 (12/12/2012):
827 ---------------------
828
829 - Fixed bug in install.sh that prevented it from working on OS X.
830
831 0.5.1 (12/11/2012):
832 -------------------
833
834 - Added support for "0" options to "textonly" and "scan_all_linux_kernels"
835 to reverse the usual meaning of these tokens. This is useful for
836 including these options in a secondary configuration file called with the
837 new "include" token to override a setting set in the main file.
838
839 - Added "include" token for refind.conf, to enable including a secondary
840 configuration file from a primary one.
841
842 - Modified install.sh so that it creates a simple refind_linux.conf file in
843 /boot, if that file doesn't already exist and if install.sh is run from
844 Linux. If that directory happens to be on a FAT, HFS+, ext2fs, ext3fs, or
845 ReiserFS volume, and if the necessary drivers are installed, the result
846 is that rEFInd will detect the Linux installation with no further
847 configuration on many systems. (Some may still require tweaking of kernel
848 options, though; for instance, adding "dolvm" on Gentoo systems that use
849 LVM.)
850
851 - Added --shim and --localkeys options to install.sh to help simplify setup
852 on systems with Secure Boot active.
853
854 - Fixed (maybe) bug that caused resolution options to not be displayed on
855 recent Macs with GOP graphics when specifying an invalid resolution in
856 refind.conf.
857
858 - Fixed bug that caused some programs (EFI shells, in particular) to hang
859 when launching on some systems (DUET, in particular).
860
861 - Implemented a fix to enable ELILO to launch with Secure Boot active.
862 This fix might help with some other boot loaders in Secure Boot mode,
863 too, but I don't know of any specifics.
864
865 0.5.0 (12/6/2012):
866 ------------------
867
868 - Added the ability to include quote marks ('"') in refind.conf and
869 refind_linux.conf tokens by doubling them up, as in:
870 "ro root=/dev/sda4 some_value=""this is it"""
871 This example results in the following string being passed as an
872 option:
873 ro root=/dev/sda4 some_value="this is it"
874
875 - Changed refind.conf-sample to uncomment the scan_all_linux_kernels
876 option by default. If this option is deleted or commented out, the
877 program default remains to not scan all Linux kernels; but with
878 increasing numbers of distributions shipping with kernels that include
879 EFI stub loader support, setting the configuration file default to scan
880 for them makes sense.
881
882 - Modified the "resolution" token so that it affects text mode as well
883 as graphics mode. On my systems, though, the actual text area is still
884 restricted to an 80x25 area. (This seems to be a firmware limitation; my
885 EFI shells are also so limited.)
886
887 - Fixed a bug that caused the options line editor to blank out lines that
888 were not actually edited.
889
890 - Added support for using Matthew Garrett's Shim program and its Machine
891 Owner Keys (MOKs) to extend Secure Boot capabilities. If rEFInd is
892 launched from Shim on a computer with Secure Boot active, rEFInd will
893 launch programs signed with either a standard UEFI Secure Boot key or a
894 MOK. For the moment, this feature works only on x86-64 systems.
895
896 - Added new "dont_scan_files" (aka "don't_scan_files") token for
897 refind.conf. The effect is similar to dont_scan_dirs, but it creates a
898 blacklist of filenames within directories rather than directory names.
899 I'm initially using it to place shim.efi and MokManager.efi in the
900 blacklist to keep these programs out of the OS list. (MokManager.efi is
901 scanned separately as a tool; see below.) I've moved checks for
902 ebounce.efi, GraphicsConsole.efi, and TextMode.efi to this list. (These
903 three had previously been blacklisted by hard-coding in ScanLoaderDir().)
904
905 - Added the directory from which rEFInd launched to dont_scan_dirs. This
906 works around a bug in which rEFInd would show itself as a bogus Windows
907 entry if it's installed as EFI/Microsoft/boot/bootmgfw.efi.
908
909 - Added support for launching MokManager.efi for managing the Machine Owner
910 Keys (MOKs) maintained by the shim boot loader developed by Fedora and
911 SUSE. This program is scanned and presented as a second-row tool.
912
913 - Added support for Apple's Recovery HD partition: If it's detected, a new
914 icon appears on the second row. This icon can be removed by explicitly
915 setting the "showtools" option in refind.conf and excluding the
916 "apple_recovery" option from that line.
917
918 - Fixed bug that caused text-mode ("textonly" refind.conf option enabled)
919 menu entries to be right-aligned rather than left-aligned when rEFInd was
920 compiled with the TianoCore EDK2.
921
922 - Added "--usedefault {devicename}" and "--drivers" options to the
923 install.sh script and changed the "esp" option to "--esp".
924
925 0.4.7 (11/6/2012):
926 ------------------
927
928 - Added an icon for gummiboot.
929
930 - Added a boot option editor: Pressing the Insert or F2 key from a boot
931 tag's options menu opens a simple text-mode line editor on which the boot
932 options may be edited for a one-time boot with altered options.
933
934 - Modified the "scan_delay" feature to delay and then perform a re-scan,
935 which may work better than the first attempt at this feature (which I'm
936 told isn't working as planned).
937
938 - Modified rEFInd to add a space after the command-line options only when
939 launching Mac OS X. On some early Macs, the extra space (which had been
940 present by default, as a carryover from rEFIt) causes problems when
941 booting Linux kernels from FAT partitions.
942
943 0.4.6 (10/6/2012):
944 ------------------
945
946 - Fixed some minor memory management issues.
947
948 - Added new "scan_delay" feature to impose a delay before scanning
949 for disks.
950
951 - Changed default "scanfor" option from internal-external-optical to either
952 internal-external-optical-manual (for non-Macs) or
953 internal-hdbios-external-biosexternal-optical-cd-manual (for Macs). I've
954 done this for two reasons:
955 - Many Mac users have been confused by the fact that rEFInd needs
956 reconfiguration to detect Windows (or Linux installed in BIOS mode),
957 since rEFIt scans BIOS devices by default. Adding the BIOS options as
958 default for them should help them.
959 - Adding the "manual" option enables users to simply add manual boot
960 stanzas and have them work, which is more intuitive. Adding the
961 "manual" option will have no effect unless manual stanzas are created
962 or uncommented, so this part of the change won't affect users' working
963 default configurations.
964
965 - Added new legacy (BIOS) boot support for UEFI-based PCs.
966
967 0.4.5 (8/12/2012):
968 ------------------
969
970 - Fixed bug that caused a failure to boot BIOS-based OSes on Macs.
971
972 - Fixed bug in install.sh that caused it to fail to detect rEFItBlesser.
973
974 0.4.4 (6/23/2012):
975 ------------------
976
977 - Fixed bug that caused filesystem labels to be corrupted by rEFInd on
978 32-bit systems.
979
980 - Fixed bug that caused filesystem labels to be truncated in the drivers
981 on 32-bit systems.
982
983 - Fixed bug in use_graphics_for option parsing that caused most options
984 to set graphics mode for OS X and/or Linux but not other boot
985 loaders/OSes.
986
987 - Tweaked install script to better isolate the ESP under OS X.
988
989 0.4.3 (6/21/2012):
990 ------------------
991
992 - rEFInd now supports compilation using the TianoCore UDK2010/EDK2
993 development kit in addition to GNU-EFI.
994
995 - Added new "use_graphics_for" option to control which OSes to boot in
996 graphics mode. (This effect lasts for a fraction of a second on most
997 systems, since the boot loader that rEFInd launches is likely to set
998 graphics or text mode itself.)
999
1000 - Graphics-mode booting now clears the screen to the current rEFInd
1001 background color (rather than black) and does NOT display boot messages.
1002 The intent is for a smoother transition when booting OS X, or perhaps
1003 other OSes that don't display boot loader messages. In practice, this
1004 effect will be tiny for many OSes, since the boot loader generally clears
1005 the screen within a fraction of a second of being launched; but the
1006 "flicker" of a rEFInd message in that time can sometimes be distracting.
1007
1008 - Filesystem drivers now work on EFI 1.x systems, such as Macs.
1009
1010 - Removed "linux.conf" as a valid alternative name for "refind_linux.conf"
1011 for holding Linux kernel options. The kernel developers plan to use
1012 "linux.conf" themselves.
1013
1014 0.4.2 (6/3/2012):
1015 -----------------
1016
1017 - Added a message to install.sh when run on Macs to remind users to update
1018 the "scanfor" line in refind.conf if they need to boot BIOS-based OSes
1019 via rEFInd.
1020
1021 - Modified install.sh script to be smarter about running efibootmgr on
1022 Linux. It now uses the whole path to the rEFInd binary as a key to
1023 determine whether an existing entry exists, rather than just the filename
1024 portion. If an entry exists and is the first entry in the boot order, the
1025 script does nothing to the NVRAM entries. If such an entry exists but is
1026 not the default, the script deletes that entry and creates a new one
1027 (implicitly making it the first in the boot order). If such an entry does
1028 not exist, the script creates a new one (again, making it the first in
1029 the boot order).
1030
1031 - Added "dont_scan_dirs" configuration file option, which adds directories
1032 to a "blacklist" of directories that are NOT scanned for boot loaders.
1033
1034 0.4.1 (5/25/2012):
1035 ------------------
1036
1037 - Added "scanning for new boot loaders" message to the re-scan function
1038 (hitting Esc at the main menu). It usually flashes up too quickly to
1039 be of importance, but if the scan function takes a while because of
1040 access to a CD that must be spun up, it should make it clear that the
1041 system hasn't hung.
1042
1043 - Modified install.sh script to detect rEFItBlesser on Macs, and if
1044 present, to ask the user if it should be removed.
1045
1046 - Cleaned up the Make.common file for the filesystem drivers.
1047
1048 - Changed HFS+ driver to return volume label of "HFS+ volume" rather than
1049 an empty label. (The driver doesn't currently read the real volume
1050 label.)
1051
1052 - Fixed bug that could cause rEFInd to appear in its own menu after
1053 running a shell and then re-scanning for boot loaders.
1054
1055 0.4.0 (5/20/2012):
1056 ------------------
1057
1058 - Inclusion of drivers for ISO-9660, HFS+, ReiserFS, and ext2fs. Most of
1059 these drivers originated with rEFIt, although the HFS+ driver seems to
1060 have come from Oracle's VirtualBox, with some files from Apple. I hadn't
1061 included these drivers previously because the build process proved
1062 challenging. As it is, they don't work on my Mac Mini, I suspect because
1063 the build process with the UDK2010 development kit may not work with the
1064 EFI 1.x that Apple uses.
1065
1066 - Addition of support for drivers in the "drivers_{arch}" subdirectory of
1067 the main rEFInd binary directory (e.g., "drivers_x64" or "drivers_ia32").
1068 Drivers may continue to be placed in the "drivers" subdirectory.
1069
1070 - Added new feature to eject CDs (and other removable media): Press F12 to
1071 eject all such media. This function works only on some Macs, though (it
1072 relies on an Apple-specific EFI extension, and this extension isn't even
1073 implemented on all Macs, much less on UEFI-based PCs).
1074
1075 - Fixed a problem that could cause GRUB 2 to fail to read its configuration
1076 file when launched from rEFInd.
1077
1078 0.3.5 (5/15/2012):
1079 ------------------
1080
1081 - Removed the GRUB 2 detection "reciped" added with 0.3.2, since I've
1082 received reports that it's not working as intended.
1083
1084 - Added re-scan feature: Press the Esc key to have rEFInd re-read its
1085 configuration file, tell the EFI to scan for new filesystems, and re-scan
1086 those filesystems for boot loaders. The main purpose is to enable
1087 scanning a new removable medium that you insert after launching rEFInd;
1088 however, it can also be used to immediately implement changes to the
1089 configuration file or new drivers you load from an EFI shell.
1090
1091 - Fixed a bug that could cause the scroll-right arrow to be replaced by the
1092 scroll-left arrow under some circumstances.
1093
1094 0.3.4 (5/9/2012):
1095 -----------------
1096
1097 - Added new configuration file option: "icons_dir", which sets the name
1098 of the subdirectory in which icons are found. See the documentation or
1099 sample configuration file for a full description.
1100
1101 - Modified Makefile to generate rEFInd binary that includes architecture
1102 code -- refind_ia32.efi or refind_x64.efi, rather than the generic
1103 refind.efi. This is done mainly to help the install.sh script. The
1104 program can be named anything you like on the disk. (The generic name
1105 refind.efi is used on unknown architectures.)
1106
1107 - Improved install.sh script: Fixed bug on OS X 10.7 and enable it to be
1108 used after building from source code (or via new "make install" Makefile
1109 target).
1110
1111 - Improved screen redraws to produce less flicker when moving among the
1112 second-row tags or to the last tag on the first row.
1113
1114 0.3.3 (5/6/2012):
1115 -----------------
1116
1117 - Improved menu navigation:
1118 - In graphics mode, left & right arrow keys move left & right, while up &
1119 down arrows move between rows.
1120 - Page Up and Page Down now move through chunks of visible tags (in both
1121 text & graphics modes), jumping from one row to another only when at
1122 the edge of the row. In text mode, the "rows" are broken down as in
1123 graphics mode, but they aren't visibly distinguished on the screen.
1124
1125 - Improved text-mode use: rEFInd now displays the proper number of entries
1126 when first started in text mode and scrolling is done sensibly when too
1127 many entries exist to fit on the screen.
1128
1129 0.3.2 (5/4/2012):
1130 -----------------
1131
1132 - Added the install.sh script to install rEFInd on Linux and Mac OS X
1133 systems. This script must be run as root (or via sudo). It requires
1134 no options, but on Mac OS X, passing it the "esp" option causes it
1135 to install rEFInd on the computer's ESP rather than the default of the
1136 currently OS X boot partition. (Under Linux, the default is to install to
1137 the ESP.) Note that there may be some unusual cases in which this script
1138 will fail to work.
1139
1140 - Does a better job of clearing the screen when launching OSes in text
1141 mode.
1142
1143 - Added detection "recipe" for GRUB 2's BIOS Boot Partition.
1144
1145 - Fixed bogus detection of ESPs created by Linux's mkdosfs utility or
1146 Windows as bootable partitions when "scanfor" includes BIOS scanning
1147 options.
1148
1149
1150 0.3.1 (4/27/2012):
1151 ------------------
1152
1153 - Fixed bug that caused spurious "Unsupported while scanning the root
1154 directory" messages under some conitions on Macs.
1155
1156 - Modified loader scanning code to sort boot loader entries within a
1157 directory by modification time, so that the most recently-modified loader
1158 is first among those in a given directory. Thus, if you specify a
1159 directory name (or volume name, for loaders stored in the root directory
1160 of a volume) as the default_selection, the most recent of those loaders
1161 will be the default. This is intended to help with Linux kernel
1162 maintenance when using the EFI stub loader; set up this way, the most
1163 recent kernel copied to your kernel directory will be the default,
1164 obviating the need to adjust the refind.conf file when adding a new
1165 kernel. If you want to change the default among those in the default
1166 directory, you can use "touch" to adjust the modification timestamp.
1167
1168 - Tweaked code to find loader-specific .icns file so that it finds files
1169 for Linux kernels without .efi extensions. In this case, files should be
1170 named the same as the kernels they match, but with .icns extensions. For
1171 instance, bzImage-3.3.2 should have an icon called bzImage-3.3.2.icns.
1172 (The old code would have looked for an icon called bzImage-3.3.icns.)
1173
1174 - Eliminated bogus OS loader tags for filenames that end in ".icns" when
1175 the scan_all_linux_kernels option is set.
1176
1177 0.3.0 (4/22/2012):
1178 ------------------
1179
1180 - I'm officially upgrading this project's status from "alpha" to "beta" and
1181 giving it a bump from 0.2.x to 0.3.0. This doesn't reflect any major
1182 milestone with this version; rather, it reflects my sense that rEFInd has
1183 been "out there" for a while, and although I've gotten bug reports,
1184 they've been minor and/or have been fixed. The program still has known
1185 bugs, but my impression is that it is, overall, usable by ordinary users.
1186
1187 - Added "resolution" option to refind.conf, which enables setting the video
1188 resolution. To use it, pass two numeric values, as in "resolution 1024
1189 768" to use a 1024x768 video mode. Note that not all modes are supported.
1190 If you specify a non-supported video mode on a UEFI system, a message
1191 appears listing the supported video modes and you must then press a key
1192 to continue, using the default video mode (usually 800x600).
1193 Unfortunately, I don't know the calls to get a list of supported video
1194 modes on older EFI 1.x systems (including Macs), so on Macs setting an
1195 incorrect video mode silently fails (you keep using the default mode).
1196 This makes changing your video mode a hit-or-miss proposition on Macs.
1197 CAUTION: It's possible to set a legal video mode that your monitor can't
1198 handle, in which case you'll get a blank display until you boot an OS
1199 that resets the video mode.
1200
1201 - Fixed (maybe) a bug that caused rEFInd to crash when returning from an
1202 EFI shell or other programs on Macs, particularly when rEFInd used
1203 graphical mode. I'm not 100% sure this bug is squashed because I still
1204 don't understand the cause and I only have one Mac for testing. See
1205 comments in the ReinitRefitLib() function in refit/lib.c for more
1206 details.
1207
1208 - Added new refind.conf option: scan_all_linux_kernels, which causes Linux
1209 kernels that lack ".efi" extensions to be included in scans for EFI boot
1210 loaders. This may help integration with Linux distributions that don't
1211 give their kernels such names by default. Beware, though: It can detect
1212 unwanted files, such as older non-stub-loader kernels or .icns files used
1213 to give kernels with .efi extensions custom icons.
1214
1215 - Improved EFI boot loader detection on boards with Gigabyte's Hybrid EFI,
1216 and perhaps other EFIs with a buggy StriCmp() function. Files with both
1217 ".efi" and ".EFI" extensions should now be detected as boot loaders.
1218
1219 - Fixed a bug that caused rEFInd to fail to scan for drivers if the
1220 filesystem driver didn't set a volume name (that is, if the relevant
1221 field was set to NULL rather than even an empty string). In such
1222 situations, rEFInd now reports the volume name as "Unknown".
1223
1224 0.2.7 (4/19/2012):
1225 ------------------
1226
1227 - After much trial and tribulation, I've overcome a GNU-EFI limitation and
1228 enabled rEFInd to load EFI drivers. This feature was present in the
1229 original build of rEFIt but was removed in the versions that could
1230 compile under Linux, but now it's back -- and still being compiled under
1231 Linux! To use it, you should place your drivers in a convenient directory
1232 on the ESP (or whatever partition you use to launch rEFInd) and add a
1233 "scan_driver_dirs" entry to refind.conf to tell rEFInd where to look. (As
1234 always, you should specify the driver directory relative to the root of
1235 the filesystem.) Note that you can't launch drivers from another
1236 filesystem; they must be on the same volume that holds rEFInd. Those who
1237 compile from source code should note that implementing this feature
1238 necessitated using a more recent version of the GNU-EFI library. I'm
1239 currently using version 3.0p, and version 3.0i does NOT work. I don't
1240 know where the change occurred, but you may need to upgrade your GNU-EFI
1241 installation.
1242
1243 - Fixed bug that caused rEFInd to show up in its own menu sometimes.
1244
1245 - Added new refind.conf token: also_scan_dirs. When scanning volumes for
1246 EFI boot loaders, rEFInd always scans the root directory and every
1247 subdirectory of the /EFI directory, but it doesn't recurse into these
1248 directories. The also_scan_dirs token adds more directories to the scan
1249 list. It defaults to "elilo,boot", but you can set it to any directory or
1250 directories you like.
1251
1252 0.2.6 (4/14/2012):
1253 ------------------
1254
1255 - Added "volume" keyword to configuration file's stanza options. This
1256 option changes the volume from which subsequent files (specified by
1257 "loader" and "icon") are loaded. You pass "volume" the name/label of the
1258 FILESYSTEM you want to use (not the GPT partition name), or a number
1259 followed by a colon (e.g., "1:"). The former should reliably identify a
1260 filesystem, assuming the name is unique. The latter assigns numbers based
1261 on the order in which they're scanned, which may not be as reliable but
1262 should work when a volume is unnamed.
1263
1264 - Fixed bug in 0.2.5 that caused failure of Linux initial RAM disk
1265 mapping on some (but not all) systems. Affected computers include at
1266 least some Intel motherboards, maybe others.
1267
1268 0.2.5 (4/9/2012):
1269 -----------------
1270
1271 - Fixed bug that caused an inability to associate initial RAM disks with
1272 Linux kernels stored in a volume's root directory.
1273
1274 - Volume badges (that override default badges) are now stored in
1275 .VolumeBadge.icns. Although undocumented, rEFInd formerly loaded custom
1276 volume badges from .VolumeIcon.icns. This carryover from rEFIt was a
1277 confusing name, given the next (new) feature, so I've changed and
1278 documented the name....
1279
1280 - Added ability to set a default icon for a loader stored in the root
1281 directory of a volume: The icon is stored in .VolumeIcon.icns. This icon
1282 is also used for Mac OS X volumes booted from the standard location.
1283
1284 - Fixed bug that caused icons to drop back to generic icons when rEFInd
1285 was launched in certain ways (such as from an EFI shell in rEFInd's
1286 directory) on certain systems.
1287
1288 - Fixed bug that caused "unknown disable flag" to be shown (very briefly)
1289 instead of "unknown hideui flag" when an improper hideui flag was set.
1290
1291 0.2.4 (4/5/2012):
1292 -----------------
1293
1294 - Created new refind.conf entry: "showtools". This entry takes options of
1295 "shell", "gptsync", "about", "exit", "reboot", and "shutdown". This
1296 option is in some respects an affirmative version of portions of the old
1297 "disable" and "hideui" options; however, it enables users to specify the
1298 order in which these options appear on the screen. Also, the "exit"
1299 option is new; it terminates the program. The effect is usually to return
1300 to whatever tool launched it or to launch a default OS; however, this is
1301 somewhat unpredictable. The default therefore omits the "exit" option, as
1302 well as "gptsync", which has always been dangerous (but necessary on most
1303 MacOS/Windows dual-boot setups on Macs). As part of this reconfiguration,
1304 I've eliminated the "rescue Linux" option, which always seemed pointless
1305 to me.
1306
1307 - Folded "disable" and "hideui" refind.conf entries into one ("disable"),
1308 and reduced the number of options to six: "banner", "label",
1309 "singleuser", "hwtest", "arrows", and "all". ("arrows" is new and
1310 disables the scroll arrows when a system has too many tags to display
1311 simultaneously.)
1312
1313 - Added max_tags option to the refind.conf file, enabling users to reduce
1314 the maximum number of OS loader tags that can be displayed at once.
1315
1316 - Updated rEFIt icon, based on the 128x128 volume label from the rEFIt CD
1317 image.
1318
1319 - Added x86 and x86-64 EFI shells to the CD image version of the binary,
1320 but NOT to the binary zip file. The logic is that the CD image is more
1321 likely to be used directly as an emergency disc and so may need this
1322 feature, even though the source isn't part of the rEFInd project. (The
1323 source is readily available from the TianoCore project.)
1324
1325 - EFI shells may now be stored at /shellx64.efi for x86-64 systems or at
1326 /shellia32.efi for x86 systems. The /EFI/tools/shell.efi name is also
1327 recognized; however, if both files are present, two EFI shell icons will
1328 appear on the main menu. The /efi/{refind-path/apps/shell.efi filename,
1329 which was never officially documented but worked as a carryover from
1330 rEFIt, is no longer valid.
1331
1332 0.2.3 (3/26/2012):
1333 ------------------
1334
1335 - Fixed (maybe) a bug that caused hangs when launching a second program
1336 after returning from a first. There are some weird system-to-system
1337 differences, though, and this fix causes (apparently harmless) error
1338 messages about "(re)opening our installation volume" on at least one
1339 system (a 32-bit Mac Mini). I'm committing this change because, imperfect
1340 though it is, it's preferable to the earlier version, at least on my
1341 small sample of computers.
1342
1343 - Because of news that the Linux kernel developers are planning to use the
1344 filename linux.conf to hold Linux kernel configuration data for EFI
1345 booting, I'm transitioning rEFInd away from that name and to
1346 refind_linux.conf to avoid a conflict. This version can use either name,
1347 with refind_linux.conf taking precedence if both are present.
1348
1349 - Added logo for Arch Linux.
1350
1351 0.2.2 (3/23/2012):
1352 ------------------
1353
1354 - Fixed bug that caused program failure when Linux kernels with EFI stub
1355 support were detected with no associated version numbers. rEFInd now
1356 permits automatic linking of *ONE* versionless kernel to *ONE*
1357 versionless initrd file.
1358
1359 - Fixed bug that caused program hangs when a boot loader filename or label
1360 was too long. Such names are now properly truncated and program execution
1361 continues.
1362
1363 - Fixed bug that caused no text to appear in submenus on UEFI systems with
1364 small screens (800x600). NOTE: Problem still occurs on screens smaller
1365 than this, but such systems are very rare.
1366
1367 0.2.1 (3/19/2012):
1368 ------------------
1369
1370 - Added ability to set a "default_selection" that's a title or a substring
1371 of one -- the name given to a stanza in a "menuentry" or the boot
1372 loader's filename, in most cases, although "Mac OS X", "Windows XP
1373 (XoM)", and "Microsoft EFI boot" are also titles.
1374
1375 - Added support for semi-automatic scans of Linux kernels with EFI stub
1376 loader support. The program auto-detects matching initial RAM disk files
1377 and loads additional options from the "linux.conf" file in the same
1378 directory as the kernel.
1379
1380 - Added support for "submenuentry" keyword and associated sub-stanza
1381 entries in refind.conf file.
1382
1383 - Renamed icons/os_mint.icns to icons/os_linuxmint.icns to match the
1384 filename Linux Mint ACTUALLY uses for its ESP boot loader directory.
1385
1386
1387 0.2.0 (3/14/2012):
1388 ------------------
1389
1390 - Initial public release