From a502e85d3f0110e0ae64e4c4050bc69bed57d0fb Mon Sep 17 00:00:00 2001
From: srs5694
Date: Sun, 15 Dec 2013 18:29:17 -0500
Subject: [PATCH] Cleanup for 0.7.6 release.
---
NEWS.txt | 6 +-----
docs/refind/bootmode.html | 2 +-
docs/refind/configfile.html | 2 +-
docs/refind/drivers.html | 2 +-
docs/refind/features.html | 4 +++-
docs/refind/getting.html | 18 +++++++++---------
docs/refind/index.html | 2 +-
docs/refind/installing.html | 2 +-
docs/refind/linux.html | 2 +-
docs/refind/revisions.html | 4 +++-
docs/refind/secureboot.html | 2 +-
docs/refind/themes.html | 2 +-
docs/refind/todo.html | 2 +-
docs/refind/using.html | 2 +-
filesystems/fsw_efi.c | 2 +-
gptsync/gptsync.h | 2 +-
install.sh | 1 -
mkrlconf.sh | 1 -
refind.spec | 6 +++---
refind/config.c | 29 ++++-------------------------
refind/main.c | 2 +-
21 files changed, 36 insertions(+), 59 deletions(-)
diff --git a/NEWS.txt b/NEWS.txt
index da463e5..0850bc9 100644
--- a/NEWS.txt
+++ b/NEWS.txt
@@ -1,4 +1,4 @@
-0.7.6 (12/??/2013):
+0.7.6 (12/15/2013):
-------------------
- Added support for multiple "default_selection" targets. These MUST be
@@ -25,10 +25,6 @@
unless you hit a key soon after rEFInd starts. Once you hit a key, the
screensaver will be disabled.
-- Modified install.sh and mkrlconf.sh to create a new Linux kernel
- option set: "Boot without EFI storage paranoia," which passes the
- efi_no_storage_paranoia option to the kernel.
-
- Added --ownhfs {target} option to install.sh. This option causes rEFInd
to install to an HFS+ partition in a way that's more consistent with the
way the Mac's native boot loader is installed. Note that you should NOT
diff --git a/docs/refind/bootmode.html b/docs/refind/bootmode.html
index c5c0f49..20cfb20 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:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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 87fcbfa..8516a57 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:
-12/14/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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 7bb282b..1b72dba 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:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/features.html b/docs/refind/features.html
index 1c9ab0c..1c19a3d 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:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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!
@@ -177,6 +177,8 @@ rEFInd with the TianoCore EDK2 toolkit, which I do for my main binary
build. Note that some UEFI PCs, such as those with Gigabyte's Hybrid EFI,
lack a usable CSM.
+Improved flexibility in setting the default OS to boot. rEFInd enables specifying the default by any substring in the description. You can also specify multiple defaults, so that if the first isn't available, another will take its place (which is useful when using removable disks). You can also add time specifications to set a default to be used only during certain hours of the day.
+
The ability to fine-tune options passed to EFI boot loaders, via manual configuration.
An option editor to enable you to edit the options passed to an EFI boot loader on a per-boot basis.
diff --git a/docs/refind/getting.html b/docs/refind/getting.html
index 14af677..9029bb8 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:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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!
@@ -136,7 +136,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
- A
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind-bin-0.7.6.zip/download">A
binary zip file—Download this if you want to install
rEFInd and/or its filesystem drivers on an x86 or x86-64
computer and have no need to test rEFInd first by booting it on an
@@ -146,14 +146,14 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
href="installing.html">Installing rEFInd page. Some users of Arch
Linux have reported problems booting some specific Arch Linux kernels
with rEFInd and some other tools. For them, a variant
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind-bin-gnuefi-0.7.6.zip/download">variant
package exists in which the x86-64 binary was compiled with
GNU-EFI rather than the usual TianoCore EDK2. This change helps some
users with this problem; but using GNU-EFI also means that this version
can't launch BIOS-mode OSes.
- A
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind-0.7.6-1.x86_64.rpm/download">A
binary RPM file—If you use an RPM-based x86-64
Linux system such as Fedora or openSUSE, you can install the binary RPM
package rather than use the binary zip file. (I don't provide an
@@ -162,13 +162,13 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
rEFInd page) as part of the installation process. Distribution
maintainers can examine the refind.spec file in the source
package and tweak it to their needs. The source
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind-0.7.6-1.src.rpm/download">source
RPM file might or might not build on your system as-is; it relies
on assumptions about the locations of the GNU-EFI development
files.
- A
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind_0.7.6-1_amd64.deb/download">A
binary Debian package—If you use an x86-64 version
of Debian, Ubuntu, Mint, or another Debian-based distribution, you can
install from this package, which was converted from the binary RPM
@@ -190,7 +190,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
- A
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind-cd-0.7.6.zip/download">A
CD-R image file—This download contains the same files as
the binary zip file, but you can burn it to a CD-R to test rEFInd
(and its filesystem drivers) without installing it first. (It boots on
@@ -214,14 +214,14 @@ on /dev/sdd. This procedure should work even on a BIOS-booted
computer.
- A
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind-flashdrive-0.7.6.zip/download">A
USB flash drive image file—Although you can create
your own rEFInd USB flash drive, you may find it easier to download
this version and copy it to your USB drive with dd or some
other low-level disk copying utility.
- A
+ href="http://sourceforge.net/projects/refind/files/0.7.6/refind-src-0.7.6.zip/download">A
source code zip file—This is useful if you want to compile
the software locally. Note that I use Linux with the TianoCore EFI
diff --git a/docs/refind/index.html b/docs/refind/index.html
index faa0f51..9a7df3c 100644
--- a/docs/refind/index.html
+++ b/docs/refind/index.html
@@ -15,7 +15,7 @@
href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
Originally written: 3/14/2012; last Web page update:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/installing.html b/docs/refind/installing.html
index 9d7bfc7..ffd5169 100644
--- a/docs/refind/installing.html
+++ b/docs/refind/installing.html
@@ -15,7 +15,7 @@
href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
Originally written: 3/14/2012; last Web page update:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/linux.html b/docs/refind/linux.html
index 405db63..2a5a1a8 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:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/revisions.html b/docs/refind/revisions.html
index 6bf65d2..3a3cec9 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: 11/10/2013
+Last Web page update: 12/15/2013
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!
@@ -130,6 +130,8 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
+- 0.7.6 (12/15/2013)—The biggest changes in this version relate to the default_selection setting. You can now provide multiple default selections by listing them within quotes and separated by commas, as in default_selection "ubuntu,fedora" which boots ubuntu if it's present and fedora if ubuntu is not present but fedora is. This should be helpful with removable disks. You can also include two times, in 24-hour format, following a default_selection specification, as in default_selection Maintenance 1:00 2:00, which boots Maintenance by default between 1:00 and 2:00. If another default_selection without a time specification preceded this line, the earlier one will still apply at other times. Another change to the main program is that you can now set screensaver -1 to have rEFInd come up with its screen blanked. You'll probably want to combine this with a short timeout value to have rEFInd boot your default OS quickly unless you press a key first. Finally, I've added a new option to the install.sh script: --ownhfs target_partition. This option is valid only under OS X. It installs rEFInd to an HFS+ volume that does not currently hold an OS X installation. The installation method differs from the usual rEFInd installation in that the result looks to the firmware more like an OS X installation. This makes rEFInd appear as an option in the firmware's own boot manager and it may help suspend-to-RAM operations.
+
- 0.7.5 (11/10/2013)—This version fixes a few bugs, the most important of which is one that caused some Macs to hang when multiple EFI drivers were present. Another squashed bug caused the screen to clear to the default gray rather than the actual background color when launching OSes in graphics mode. rEFInd no longer shows all exFAT partitions as being bootable on Macs when legacy boot options are enabled; now such partitions only show up as bootable if rEFInd spots a known boot loader installed on them. Finally, I've fixed a bug that caused install.sh to fail when installing to the ESP with recent versions of OS X.
- 0.7.4 (8/25/2013)—This version fixes problems in booting VMware's mboot64.efi boot loader and when launching boot loaders from some types of Mac drives. These fixes might improve matters for other boot loaders, too. I've also added a space to the end of the Boot X from Y description, which means you can use Y in the default_selection field even if another entry contains the same Y string, but with something added. To do this, you must enclose Y in quotes and add a space to its end, as in default_selection "Bit ", which sets the first boot loader on the Bit volume as the default, even if you also have a disk called Bitten. Finally, this version adds explicit support for the new EFI version of Memtest86. See the "Installing Additional Components" section of the Installing rEFInd page for details on this support.
diff --git a/docs/refind/secureboot.html b/docs/refind/secureboot.html
index 0418b3a..9b90a26 100644
--- a/docs/refind/secureboot.html
+++ b/docs/refind/secureboot.html
@@ -15,7 +15,7 @@
href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
Originally written: 11/13/2012; last Web page update:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/themes.html b/docs/refind/themes.html
index 4a18ce1..26fb280 100644
--- a/docs/refind/themes.html
+++ b/docs/refind/themes.html
@@ -15,7 +15,7 @@
href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
Originally written: 4/19/2012; last Web page update:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/todo.html b/docs/refind/todo.html
index 3beefd5..d12c680 100644
--- a/docs/refind/todo.html
+++ b/docs/refind/todo.html
@@ -15,7 +15,7 @@
href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
Originally written: 3/14/2012; last Web page update:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/using.html b/docs/refind/using.html
index 8d36857..838263c 100644
--- a/docs/refind/using.html
+++ b/docs/refind/using.html
@@ -15,7 +15,7 @@
href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com
Originally written: 3/14/2012; last Web page update:
-11/10/2013, referencing rEFInd 0.7.5
+12/15/2013, referencing rEFInd 0.7.6
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/filesystems/fsw_efi.c b/filesystems/fsw_efi.c
index 56e4df7..d4616fb 100644
--- a/filesystems/fsw_efi.c
+++ b/filesystems/fsw_efi.c
@@ -98,7 +98,7 @@ EFI_GUID gEfiFileSystemVolumeLabelInfoIdGuid = EFI_FILE_SYSTEM_VOLUME_LABEL_INFO
/** Helper macro for stringification. */
#define FSW_EFI_STRINGIFY(x) #x
/** Expands to the EFI driver name given the file system type name. */
-#define FSW_EFI_DRIVER_NAME(t) L"rEFInd 0.7.5 " FSW_EFI_STRINGIFY(t) L" File System Driver"
+#define FSW_EFI_DRIVER_NAME(t) L"rEFInd 0.7.6 " FSW_EFI_STRINGIFY(t) L" File System Driver"
// function prototypes
diff --git a/gptsync/gptsync.h b/gptsync/gptsync.h
index c37cc6b..dc5f12a 100644
--- a/gptsync/gptsync.h
+++ b/gptsync/gptsync.h
@@ -35,7 +35,7 @@
*/
/* Changes copyright (c) 2013 Roderick W. Smith */
-#define VERSION L"0.7.5"
+#define VERSION L"0.7.6"
//
// config
diff --git a/install.sh b/install.sh
index a31dbb3..99102e4 100755
--- a/install.sh
+++ b/install.sh
@@ -782,7 +782,6 @@ GenerateRefindLinuxConf() {
DefaultOptions="$GRUB_CMDLINE_LINUX $GRUB_CMDLINE_LINUX_DEFAULT"
echo "\"Boot with standard options\" \"ro root=$RootFS $DefaultOptions \"" > $RLConfFile
echo "\"Boot to single-user mode\" \"ro root=$RootFS $DefaultOptions single\"" >> $RLConfFile
- echo "\"Boot without EFI storage paranoia\" \"ro root=$RootFS $DefaultOptions efi_no_storage_paranoia\"" >> $RLConfFile
echo "\"Boot with minimal options\" \"ro root=$RootFS\"" >> $RLConfFile
fi
}
diff --git a/mkrlconf.sh b/mkrlconf.sh
index ae9eff6..e7ffc6b 100755
--- a/mkrlconf.sh
+++ b/mkrlconf.sh
@@ -42,7 +42,6 @@ if [[ ! -f $RLConfFile || $1 == "--force" ]] ; then
DefaultOptions="$GRUB_CMDLINE_LINUX $GRUB_CMDLINE_LINUX_DEFAULT"
echo "\"Boot with standard options\" \"ro root=$RootFS $DefaultOptions \"" > $RLConfFile
echo "\"Boot to single-user mode\" \"ro root=$RootFS $DefaultOptions single\"" >> $RLConfFile
- echo "\"Boot without EFI storage paranoia\" \"ro root=$RootFS $DefaultOptions efi_no_storage_paranoia\"" >> $RLConfFile
echo "\"Boot with minimal options\" \"ro root=$RootFS\"" >> $RLConfFile
else
echo "Existing $RLConfFile found! Not overwriting!"
diff --git a/refind.spec b/refind.spec
index a611fdf..254625c 100644
--- a/refind.spec
+++ b/refind.spec
@@ -1,6 +1,6 @@
Summary: EFI boot manager software
Name: refind
-Version: 0.7.5
+Version: 0.7.6
Release: 1%{?dist}
Summary: EFI boot manager software
License: GPLv3
@@ -157,5 +157,5 @@ fi
# wiping out the just-updated files.
%changelog
-* Sun Nov 10 2013 R Smith - 0.7.5
-- Created spec file for 0.7.5 release
+* Sun Dec 15 2013 R Smith - 0.7.6
+- Created spec file for 0.7.6 release
diff --git a/refind/config.c b/refind/config.c
index e9d2e55..26eeeff 100644
--- a/refind/config.c
+++ b/refind/config.c
@@ -342,36 +342,15 @@ static VOID HandleStrings(IN CHAR16 **TokenList, IN UINTN TokenCount, OUT CHAR16
// Convert TimeString (in "HH:MM" format) to a pure-minute format. Values should be
// in the range from 0 (for 00:00, or midnight) to 1439 (for 23:59; aka LAST_MINUTE).
-// Any value outside that range denotes an error in the specification.
-// static UINTN HandleTime(IN CHAR16 *TimeString) {
-// BOOLEAN Found = FALSE;
-// UINTN ColonPosition = 0, Hour = 0, Minute = 0, TimeLength;
-//
-// Print(L"Entering HandleTime('%s')\n", TimeString);
-// TimeLength = StrLen(TimeString);
-// for (ColonPosition = 0; (ColonPosition < TimeLength) && !Found; ColonPosition++) {
-// Print(L"ColonPosition = %d\n", ColonPosition);
-// if (TimeString[ColonPosition] == ':')
-// Found = TRUE;
-// } // for
-//
-// if ((ColonPosition == 0) || (ColonPosition > StrLen(TimeString)))
-// return (LAST_MINUTE + 1);
-//
-// Hour = Atoi(TimeString);
-// Minute = Atoi(&TimeString[ColonPosition + 1]);
-// Print(L"Hour = %d, Minute = %d\n", Hour, Minute);
-// return (Hour * 60 + Minute);
-// } // BOOLEAN HandleTime()
-
+// Any value outside that range denotes an error in the specification. Note that if
+// the input is a number that includes no colon, this function will return the original
+// number in UINTN form.
static UINTN HandleTime(IN CHAR16 *TimeString) {
UINTN Hour = 0, Minute = 0, TimeLength, i = 0;
- BOOLEAN FoundColon = FALSE;
TimeLength = StrLen(TimeString);
while (i < TimeLength) {
if (TimeString[i] == L':') {
- FoundColon = TRUE;
Hour = Minute;
Minute = 0;
} // if
@@ -381,7 +360,7 @@ static UINTN HandleTime(IN CHAR16 *TimeString) {
} // if
i++;
} // while
- return (FoundColon ? Hour * 60 + Minute : LAST_MINUTE + 1);
+ return (Hour * 60 + Minute);
} // BOOLEAN HandleTime()
// Sets the default boot loader IF the current time is within the bounds
diff --git a/refind/main.c b/refind/main.c
index 83c44e7..2ab85c4 100644
--- a/refind/main.c
+++ b/refind/main.c
@@ -153,7 +153,7 @@ static VOID AboutrEFInd(VOID)
{
if (AboutMenu.EntryCount == 0) {
AboutMenu.TitleImage = BuiltinIcon(BUILTIN_ICON_FUNC_ABOUT);
- AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.7.5.2");
+ AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.7.6");
AddMenuInfoLine(&AboutMenu, L"");
AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2006-2010 Christoph Pfisterer");
AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2012-2013 Roderick W. Smith");
--
2.39.2