]> code.delx.au - refind/blob - NEWS.txt
Modified "resolution" refind.conf token so it affects text mode as
[refind] / NEWS.txt
1 0.5.0 (??/??/2012):
2 -------------------
3
4 - Modified the "resolution" token so that it affects text mode as well
5 as graphics mode. On my systems, though, the actual text area is still
6 restricted to an 80x25 area. (This seems to be a firmware limitation; my
7 EFI shells are also so limited.)
8
9 - Fixed a bug that caused the options line editor to blank out lines that
10 were not actually edited.
11
12 - Added support for using Matthew Garrett's Shim program and its Machine
13 Owner Keys (MOKs) to extend Secure Boot capabilities. If rEFInd is
14 launched from Shim on a computer with Secure Boot active, rEFInd will
15 launch programs signed with either a standard UEFI Secure Boot key or a
16 MOK. For the moment, this feature works only on x86-64 systems.
17
18 - Added new "dont_scan_files" (aka "don't_scan_files") token for
19 refind.conf. The effect is similar to dont_scan_dirs, but it creates a
20 blacklist of filenames within directories rather than directory names.
21 I'm initially using it to place shim.efi and MokManager.efi in the
22 blacklist to keep these programs out of the OS list. (MokManager.efi is
23 scanned separately as a tool; see below.) I've moved checks for
24 ebounce.efi, GraphicsConsole.efi, and TextMode.efi to this list. (These
25 three had previously been blacklisted by hard-coding in ScanLoaderDir().)
26
27 - Added the directory from which rEFInd launched to dont_scan_dirs. This
28 works around a bug in which rEFInd would show itself as a bogus Windows
29 entry if it's installed as EFI/Microsoft/boot/bootmgfw.efi.
30
31 - Added support for launching MokManager.efi for managing the Machine Owner
32 Keys (MOKs) maintained by the shim boot loader developed by Fedora and
33 SUSE. This program is scanned and presented as a second-row tool.
34
35 - Added support for Apple's Recovery HD partition: If it's detected, a new
36 icon appears on the second row. This icon can be removed by explicitly
37 setting the "showtools" option in refind.conf and excluding the
38 "apple_recovery" option from that line.
39
40 - Fixed bug that caused text-mode ("textonly" refind.conf option enabled)
41 menu entries to be right-aligned rather than left-aligned when rEFInd was
42 compiled with the TianoCore EDK2.
43
44 - Added "--usedefault {devicename}" and "--drivers" options to the
45 install.sh script and changed the "esp" option to "--esp".
46
47 0.4.7 (11/6/2012):
48 ------------------
49
50 - Added an icon for gummiboot.
51
52 - Added a boot option editor: Pressing the Insert or F2 key from a boot
53 tag's options menu opens a simple text-mode line editor on which the boot
54 options may be edited for a one-time boot with altered options.
55
56 - Modified the "scan_delay" feature to delay and then perform a re-scan,
57 which may work better than the first attempt at this feature (which I'm
58 told isn't working as planned).
59
60 - Modified rEFInd to add a space after the command-line options only when
61 launching Mac OS X. On some early Macs, the extra space (which had been
62 present by default, as a carryover from rEFIt) causes problems when
63 booting Linux kernels from FAT partitions.
64
65 0.4.6 (10/6/2012):
66 ------------------
67
68 - Fixed some minor memory management issues.
69
70 - Added new "scan_delay" feature to impose a delay before scanning
71 for disks.
72
73 - Changed default "scanfor" option from internal-external-optical to either
74 internal-external-optical-manual (for non-Macs) or
75 internal-hdbios-external-biosexternal-optical-cd-manual (for Macs). I've
76 done this for two reasons:
77 - Many Mac users have been confused by the fact that rEFInd needs
78 reconfiguration to detect Windows (or Linux installed in BIOS mode),
79 since rEFIt scans BIOS devices by default. Adding the BIOS options as
80 default for them should help them.
81 - Adding the "manual" option enables users to simply add manual boot
82 stanzas and have them work, which is more intuitive. Adding the
83 "manual" option will have no effect unless manual stanzas are created
84 or uncommented, so this part of the change won't affect users' working
85 default configurations.
86
87 - Added new legacy (BIOS) boot support for UEFI-based PCs.
88
89 0.4.5 (8/12/2012):
90 ------------------
91
92 - Fixed bug that caused a failure to boot BIOS-based OSes on Macs.
93
94 - Fixed bug in install.sh that caused it to fail to detect rEFItBlesser.
95
96 0.4.4 (6/23/2012):
97 ------------------
98
99 - Fixed bug that caused filesystem labels to be corrupted by rEFInd on
100 32-bit systems.
101
102 - Fixed bug that caused filesystem labels to be truncated in the drivers
103 on 32-bit systems.
104
105 - Fixed bug in use_graphics_for option parsing that caused most options
106 to set graphics mode for OS X and/or Linux but not other boot
107 loaders/OSes.
108
109 - Tweaked install script to better isolate the ESP under OS X.
110
111 0.4.3 (6/21/2012):
112 ------------------
113
114 - rEFInd now supports compilation using the TianoCore UDK2010/EDK2
115 development kit in addition to GNU-EFI.
116
117 - Added new "use_graphics_for" option to control which OSes to boot in
118 graphics mode. (This effect lasts for a fraction of a second on most
119 systems, since the boot loader that rEFInd launches is likely to set
120 graphics or text mode itself.)
121
122 - Graphics-mode booting now clears the screen to the current rEFInd
123 background color (rather than black) and does NOT display boot messages.
124 The intent is for a smoother transition when booting OS X, or perhaps
125 other OSes that don't display boot loader messages. In practice, this
126 effect will be tiny for many OSes, since the boot loader generally clears
127 the screen within a fraction of a second of being launched; but the
128 "flicker" of a rEFInd message in that time can sometimes be distracting.
129
130 - Filesystem drivers now work on EFI 1.x systems, such as Macs.
131
132 - Removed "linux.conf" as a valid alternative name for "refind_linux.conf"
133 for holding Linux kernel options. The kernel developers plan to use
134 "linux.conf" themselves.
135
136 0.4.2 (6/3/2012):
137 -----------------
138
139 - Added a message to install.sh when run on Macs to remind users to update
140 the "scanfor" line in refind.conf if they need to boot BIOS-based OSes
141 via rEFInd.
142
143 - Modified install.sh script to be smarter about running efibootmgr on
144 Linux. It now uses the whole path to the rEFInd binary as a key to
145 determine whether an existing entry exists, rather than just the filename
146 portion. If an entry exists and is the first entry in the boot order, the
147 script does nothing to the NVRAM entries. If such an entry exists but is
148 not the default, the script deletes that entry and creates a new one
149 (implicitly making it the first in the boot order). If such an entry does
150 not exist, the script creates a new one (again, making it the first in
151 the boot order).
152
153 - Added "dont_scan_dirs" configuration file option, which adds directories
154 to a "blacklist" of directories that are NOT scanned for boot loaders.
155
156 0.4.1 (5/25/2012):
157 ------------------
158
159 - Added "scanning for new boot loaders" message to the re-scan function
160 (hitting Esc at the main menu). It usually flashes up too quickly to
161 be of importance, but if the scan function takes a while because of
162 access to a CD that must be spun up, it should make it clear that the
163 system hasn't hung.
164
165 - Modified install.sh script to detect rEFItBlesser on Macs, and if
166 present, to ask the user if it should be removed.
167
168 - Cleaned up the Make.common file for the filesystem drivers.
169
170 - Changed HFS+ driver to return volume label of "HFS+ volume" rather than
171 an empty label. (The driver doesn't currently read the real volume
172 label.)
173
174 - Fixed bug that could cause rEFInd to appear in its own menu after
175 running a shell and then re-scanning for boot loaders.
176
177 0.4.0 (5/20/2012):
178 ------------------
179
180 - Inclusion of drivers for ISO-9660, HFS+, ReiserFS, and ext2fs. Most of
181 these drivers originated with rEFIt, although the HFS+ driver seems to
182 have come from Oracle's VirtualBox, with some files from Apple. I hadn't
183 included these drivers previously because the build process proved
184 challenging. As it is, they don't work on my Mac Mini, I suspect because
185 the build process with the UDK2010 development kit may not work with the
186 EFI 1.x that Apple uses.
187
188 - Addition of support for drivers in the "drivers_{arch}" subdirectory of
189 the main rEFInd binary directory (e.g., "drivers_x64" or "drivers_ia32").
190 Drivers may continue to be placed in the "drivers" subdirectory.
191
192 - Added new feature to eject CDs (and other removable media): Press F12 to
193 eject all such media. This function works only on some Macs, though (it
194 relies on an Apple-specific EFI extension, and this extension isn't even
195 implemented on all Macs, much less on UEFI-based PCs).
196
197 - Fixed a problem that could cause GRUB 2 to fail to read its configuration
198 file when launched from rEFInd.
199
200 0.3.5 (5/15/2012):
201 ------------------
202
203 - Removed the GRUB 2 detection "reciped" added with 0.3.2, since I've
204 received reports that it's not working as intended.
205
206 - Added re-scan feature: Press the Esc key to have rEFInd re-read its
207 configuration file, tell the EFI to scan for new filesystems, and re-scan
208 those filesystems for boot loaders. The main purpose is to enable
209 scanning a new removable medium that you insert after launching rEFInd;
210 however, it can also be used to immediately implement changes to the
211 configuration file or new drivers you load from an EFI shell.
212
213 - Fixed a bug that could cause the scroll-right arrow to be replaced by the
214 scroll-left arrow under some circumstances.
215
216 0.3.4 (5/9/2012):
217 -----------------
218
219 - Added new configuration file option: "icons_dir", which sets the name
220 of the subdirectory in which icons are found. See the documentation or
221 sample configuration file for a full description.
222
223 - Modified Makefile to generate rEFInd binary that includes architecture
224 code -- refind_ia32.efi or refind_x64.efi, rather than the generic
225 refind.efi. This is done mainly to help the install.sh script. The
226 program can be named anything you like on the disk. (The generic name
227 refind.efi is used on unknown architectures.)
228
229 - Improved install.sh script: Fixed bug on OS X 10.7 and enable it to be
230 used after building from source code (or via new "make install" Makefile
231 target).
232
233 - Improved screen redraws to produce less flicker when moving among the
234 second-row tags or to the last tag on the first row.
235
236 0.3.3 (5/6/2012):
237 -----------------
238
239 - Improved menu navigation:
240 - In graphics mode, left & right arrow keys move left & right, while up &
241 down arrows move between rows.
242 - Page Up and Page Down now move through chunks of visible tags (in both
243 text & graphics modes), jumping from one row to another only when at
244 the edge of the row. In text mode, the "rows" are broken down as in
245 graphics mode, but they aren't visibly distinguished on the screen.
246
247 - Improved text-mode use: rEFInd now displays the proper number of entries
248 when first started in text mode and scrolling is done sensibly when too
249 many entries exist to fit on the screen.
250
251 0.3.2 (5/4/2012):
252 -----------------
253
254 - Added the install.sh script to install rEFInd on Linux and Mac OS X
255 systems. This script must be run as root (or via sudo). It requires
256 no options, but on Mac OS X, passing it the "esp" option causes it
257 to install rEFInd on the computer's ESP rather than the default of the
258 currently OS X boot partition. (Under Linux, the default is to install to
259 the ESP.) Note that there may be some unusual cases in which this script
260 will fail to work.
261
262 - Does a better job of clearing the screen when launching OSes in text
263 mode.
264
265 - Added detection "recipe" for GRUB 2's BIOS Boot Partition.
266
267 - Fixed bogus detection of ESPs created by Linux's mkdosfs utility or
268 Windows as bootable partitions when "scanfor" includes BIOS scanning
269 options.
270
271
272 0.3.1 (4/27/2012):
273 ------------------
274
275 - Fixed bug that caused spurious "Unsupported while scanning the root
276 directory" messages under some conitions on Macs.
277
278 - Modified loader scanning code to sort boot loader entries within a
279 directory by modification time, so that the most recently-modified loader
280 is first among those in a given directory. Thus, if you specify a
281 directory name (or volume name, for loaders stored in the root directory
282 of a volume) as the default_selection, the most recent of those loaders
283 will be the default. This is intended to help with Linux kernel
284 maintenance when using the EFI stub loader; set up this way, the most
285 recent kernel copied to your kernel directory will be the default,
286 obviating the need to adjust the refind.conf file when adding a new
287 kernel. If you want to change the default among those in the default
288 directory, you can use "touch" to adjust the modification timestamp.
289
290 - Tweaked code to find loader-specific .icns file so that it finds files
291 for Linux kernels without .efi extensions. In this case, files should be
292 named the same as the kernels they match, but with .icns extensions. For
293 instance, bzImage-3.3.2 should have an icon called bzImage-3.3.2.icns.
294 (The old code would have looked for an icon called bzImage-3.3.icns.)
295
296 - Eliminated bogus OS loader tags for filenames that end in ".icns" when
297 the scan_all_linux_kernels option is set.
298
299 0.3.0 (4/22/2012):
300 ------------------
301
302 - I'm officially upgrading this project's status from "alpha" to "beta" and
303 giving it a bump from 0.2.x to 0.3.0. This doesn't reflect any major
304 milestone with this version; rather, it reflects my sense that rEFInd has
305 been "out there" for a while, and although I've gotten bug reports,
306 they've been minor and/or have been fixed. The program still has known
307 bugs, but my impression is that it is, overall, usable by ordinary users.
308
309 - Added "resolution" option to refind.conf, which enables setting the video
310 resolution. To use it, pass two numeric values, as in "resolution 1024
311 768" to use a 1024x768 video mode. Note that not all modes are supported.
312 If you specify a non-supported video mode on a UEFI system, a message
313 appears listing the supported video modes and you must then press a key
314 to continue, using the default video mode (usually 800x600).
315 Unfortunately, I don't know the calls to get a list of supported video
316 modes on older EFI 1.x systems (including Macs), so on Macs setting an
317 incorrect video mode silently fails (you keep using the default mode).
318 This makes changing your video mode a hit-or-miss proposition on Macs.
319 CAUTION: It's possible to set a legal video mode that your monitor can't
320 handle, in which case you'll get a blank display until you boot an OS
321 that resets the video mode.
322
323 - Fixed (maybe) a bug that caused rEFInd to crash when returning from an
324 EFI shell or other programs on Macs, particularly when rEFInd used
325 graphical mode. I'm not 100% sure this bug is squashed because I still
326 don't understand the cause and I only have one Mac for testing. See
327 comments in the ReinitRefitLib() function in refit/lib.c for more
328 details.
329
330 - Added new refind.conf option: scan_all_linux_kernels, which causes Linux
331 kernels that lack ".efi" extensions to be included in scans for EFI boot
332 loaders. This may help integration with Linux distributions that don't
333 give their kernels such names by default. Beware, though: It can detect
334 unwanted files, such as older non-stub-loader kernels or .icns files used
335 to give kernels with .efi extensions custom icons.
336
337 - Improved EFI boot loader detection on boards with Gigabyte's Hybrid EFI,
338 and perhaps other EFIs with a buggy StriCmp() function. Files with both
339 ".efi" and ".EFI" extensions should now be detected as boot loaders.
340
341 - Fixed a bug that caused rEFInd to fail to scan for drivers if the
342 filesystem driver didn't set a volume name (that is, if the relevant
343 field was set to NULL rather than even an empty string). In such
344 situations, rEFInd now reports the volume name as "Unknown".
345
346 0.2.7 (4/19/2012):
347 ------------------
348
349 - After much trial and tribulation, I've overcome a GNU-EFI limitation and
350 enabled rEFInd to load EFI drivers. This feature was present in the
351 original build of rEFIt but was removed in the versions that could
352 compile under Linux, but now it's back -- and still being compiled under
353 Linux! To use it, you should place your drivers in a convenient directory
354 on the ESP (or whatever partition you use to launch rEFInd) and add a
355 "scan_driver_dirs" entry to refind.conf to tell rEFInd where to look. (As
356 always, you should specify the driver directory relative to the root of
357 the filesystem.) Note that you can't launch drivers from another
358 filesystem; they must be on the same volume that holds rEFInd. Those who
359 compile from source code should note that implementing this feature
360 necessitated using a more recent version of the GNU-EFI library. I'm
361 currently using version 3.0p, and version 3.0i does NOT work. I don't
362 know where the change occurred, but you may need to upgrade your GNU-EFI
363 installation.
364
365 - Fixed bug that caused rEFInd to show up in its own menu sometimes.
366
367 - Added new refind.conf token: also_scan_dirs. When scanning volumes for
368 EFI boot loaders, rEFInd always scans the root directory and every
369 subdirectory of the /EFI directory, but it doesn't recurse into these
370 directories. The also_scan_dirs token adds more directories to the scan
371 list. It defaults to "elilo,boot", but you can set it to any directory or
372 directories you like.
373
374 0.2.6 (4/14/2012):
375 ------------------
376
377 - Added "volume" keyword to configuration file's stanza options. This
378 option changes the volume from which subsequent files (specified by
379 "loader" and "icon") are loaded. You pass "volume" the name/label of the
380 FILESYSTEM you want to use (not the GPT partition name), or a number
381 followed by a colon (e.g., "1:"). The former should reliably identify a
382 filesystem, assuming the name is unique. The latter assigns numbers based
383 on the order in which they're scanned, which may not be as reliable but
384 should work when a volume is unnamed.
385
386 - Fixed bug in 0.2.5 that caused failure of Linux initial RAM disk
387 mapping on some (but not all) systems. Affected computers include at
388 least some Intel motherboards, maybe others.
389
390 0.2.5 (4/9/2012):
391 -----------------
392
393 - Fixed bug that caused an inability to associate initial RAM disks with
394 Linux kernels stored in a volume's root directory.
395
396 - Volume badges (that override default badges) are now stored in
397 .VolumeBadge.icns. Although undocumented, rEFInd formerly loaded custom
398 volume badges from .VolumeIcon.icns. This carryover from rEFIt was a
399 confusing name, given the next (new) feature, so I've changed and
400 documented the name....
401
402 - Added ability to set a default icon for a loader stored in the root
403 directory of a volume: The icon is stored in .VolumeIcon.icns. This icon
404 is also used for Mac OS X volumes booted from the standard location.
405
406 - Fixed bug that caused icons to drop back to generic icons when rEFInd
407 was launched in certain ways (such as from an EFI shell in rEFInd's
408 directory) on certain systems.
409
410 - Fixed bug that caused "unknown disable flag" to be shown (very briefly)
411 instead of "unknown hideui flag" when an improper hideui flag was set.
412
413 0.2.4 (4/5/2012):
414 -----------------
415
416 - Created new refind.conf entry: "showtools". This entry takes options of
417 "shell", "gptsync", "about", "exit", "reboot", and "shutdown". This
418 option is in some respects an affirmative version of portions of the old
419 "disable" and "hideui" options; however, it enables users to specify the
420 order in which these options appear on the screen. Also, the "exit"
421 option is new; it terminates the program. The effect is usually to return
422 to whatever tool launched it or to launch a default OS; however, this is
423 somewhat unpredictable. The default therefore omits the "exit" option, as
424 well as "gptsync", which has always been dangerous (but necessary on most
425 MacOS/Windows dual-boot setups on Macs). As part of this reconfiguration,
426 I've eliminated the "rescue Linux" option, which always seemed pointless
427 to me.
428
429 - Folded "disable" and "hideui" refind.conf entries into one ("disable"),
430 and reduced the number of options to six: "banner", "label",
431 "singleuser", "hwtest", "arrows", and "all". ("arrows" is new and
432 disables the scroll arrows when a system has too many tags to display
433 simultaneously.)
434
435 - Added max_tags option to the refind.conf file, enabling users to reduce
436 the maximum number of OS loader tags that can be displayed at once.
437
438 - Updated rEFIt icon, based on the 128x128 volume label from the rEFIt CD
439 image.
440
441 - Added x86 and x86-64 EFI shells to the CD image version of the binary,
442 but NOT to the binary zip file. The logic is that the CD image is more
443 likely to be used directly as an emergency disc and so may need this
444 feature, even though the source isn't part of the rEFInd project. (The
445 source is readily available from the TianoCore project.)
446
447 - EFI shells may now be stored at /shellx64.efi for x86-64 systems or at
448 /shellia32.efi for x86 systems. The /EFI/tools/shell.efi name is also
449 recognized; however, if both files are present, two EFI shell icons will
450 appear on the main menu. The /efi/{refind-path/apps/shell.efi filename,
451 which was never officially documented but worked as a carryover from
452 rEFIt, is no longer valid.
453
454 0.2.3 (3/26/2012):
455 ------------------
456
457 - Fixed (maybe) a bug that caused hangs when launching a second program
458 after returning from a first. There are some weird system-to-system
459 differences, though, and this fix causes (apparently harmless) error
460 messages about "(re)opening our installation volume" on at least one
461 system (a 32-bit Mac Mini). I'm committing this change because, imperfect
462 though it is, it's preferable to the earlier version, at least on my
463 small sample of computers.
464
465 - Because of news that the Linux kernel developers are planning to use the
466 filename linux.conf to hold Linux kernel configuration data for EFI
467 booting, I'm transitioning rEFInd away from that name and to
468 refind_linux.conf to avoid a conflict. This version can use either name,
469 with refind_linux.conf taking precedence if both are present.
470
471 - Added logo for Arch Linux.
472
473 0.2.2 (3/23/2012):
474 ------------------
475
476 - Fixed bug that caused program failure when Linux kernels with EFI stub
477 support were detected with no associated version numbers. rEFInd now
478 permits automatic linking of *ONE* versionless kernel to *ONE*
479 versionless initrd file.
480
481 - Fixed bug that caused program hangs when a boot loader filename or label
482 was too long. Such names are now properly truncated and program execution
483 continues.
484
485 - Fixed bug that caused no text to appear in submenus on UEFI systems with
486 small screens (800x600). NOTE: Problem still occurs on screens smaller
487 than this, but such systems are very rare.
488
489 0.2.1 (3/19/2012):
490 ------------------
491
492 - Added ability to set a "default_selection" that's a title or a substring
493 of one -- the name given to a stanza in a "menuentry" or the boot
494 loader's filename, in most cases, although "Mac OS X", "Windows XP
495 (XoM)", and "Microsoft EFI boot" are also titles.
496
497 - Added support for semi-automatic scans of Linux kernels with EFI stub
498 loader support. The program auto-detects matching initial RAM disk files
499 and loads additional options from the "linux.conf" file in the same
500 directory as the kernel.
501
502 - Added support for "submenuentry" keyword and associated sub-stanza
503 entries in refind.conf file.
504
505 - Renamed icons/os_mint.icns to icons/os_linuxmint.icns to match the
506 filename Linux Mint ACTUALLY uses for its ESP boot loader directory.
507
508
509 0.2.0 (3/14/2012):
510 ------------------
511
512 - Initial public release