From: srs5694 Date: Sun, 1 Nov 2015 19:16:14 +0000 (-0500) Subject: Documentation changes, mostly related to new icons. X-Git-Url: https://code.delx.au/refind/commitdiff_plain/1c723f224b1bc771a4192a2679831c7a6d21c264 Documentation changes, mostly related to new icons. --- diff --git a/CREDITS.txt b/CREDITS.txt index 54ef1f1..1200d44 100644 --- a/CREDITS.txt +++ b/CREDITS.txt @@ -74,22 +74,22 @@ Program (C source code) files: Icons and graphics: ------------------- -* Most icons are derived from the Aw0ken icon set, version 2.5, by +* Most icons are derived from the AwOken icon set, version 2.5, by Alessandro Roncone (aka alecive); see http://alecive.deviantart.com/art/AwOken-163570862. Many of these icons have been scaled or altered in color from their original forms. * The Debian icon is based on the SVG available from https://commons.wikimedia.org/wiki/File:Debian-OpenLogo.svg. I modified - it to fit the general style set by the Aw0ken icons. + it to fit the general style set by the AwOken icons. * The Elementary OS icon is based on the SVG available from https://commons.wikimedia.org/wiki/File:Elementary_logo.svg. I modified - it to fit the general style set by the Aw0ken icons. + it to fit the general style set by the AwOken icons. * Erik Kemperman provided the original (pre-0.9.3) rEFInd icon, which is a combination of the common refresh/reload icon and the search/find icon. For version 0.9.3, I created a new icon from Erik's basic design concept, - but to match the Aw0ken flat-with-drop-shadow style. + but to match the AwOken flat-with-drop-shadow style. * Additional icons were created by me. diff --git a/NEWS.txt b/NEWS.txt index 870a886..9f30ead 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -1,6 +1,23 @@ 0.9.3 (??/??/2015): ------------------- +- New icons! The old ones were getting to be a jumbled mess of styles, + particularly for OS tags. I used the AwOken icon set + (http://alecive.deviantart.com/art/AwOken-163570862) for the core icons, + then expanded from there by creating my own icons and modifying icons for + Debian and Elementary OS. I'm also trying to keep better track of + copyrights and licenses on icons. Between that and some icons being for + OSes that probably see very little use (FreeDOS and eComstation, for + instance), a few OS icons have been lost. If you prefer the old icons, + you can continue to use them by upgrading rEFInd, renaming icons-backup + to something else (say, icons-classic), and then adding an "icons" line + in refind.conf to point to the old icons directory. + +- Changed from .zip to .tar.gz as source code archive format. I did this + because Linux is the only officially-supported build platform, and + tarballs are a more natural fit to a Linux environment. I'm leaving .zip, + .deb, and .rpm files as the formats for binary packages. + - Added detection of System Integrity Protection (SIP; aka "rootless") mode to OS X portion of install.sh script. When detected, and if no existing rEFInd installation is found, the script now prints a warning and brief diff --git a/debian/copyright b/debian/copyright index 174a118..67969d0 100644 --- a/debian/copyright +++ b/debian/copyright @@ -247,14 +247,17 @@ Files: icons/arrow_left.png icons/tool_mok_tool.png icons/tool_netboot.png icons/tool_shell.png + icons/tool_windows_rescue.png icons/vol_external.png icons/vol_internal.png icons/vol_net.png icons/vol_optical.png Copyright: 2013 by Alessandro Roncone (aka alecive on DeviantArt) License: Creative Commons Attribution-Share Alike 3.0 (CC-SA 3.0) +Note: tool_windows_rescue is combination of os_win8.png with + tool_rescue.png. -Mappings of files to original Aw0ken package filenames is in the +Mappings of files to original AwOken package filenames is in the icons/README file. Files: icons/boot_win.png @@ -269,11 +272,17 @@ Files: icons/boot_win.png icons/os_refind.png icons/os_refit.png icons/os_win.png + icons/tool_apple_rescue.png icons/tool_memtest.png + icons/tool_rescue.png + icons/tool_windows_rescue.png icons/transparent.png Copyright: 2015 by Roderick W. Smith License: LGPLv3+ or Creative Commons Attribution-Share Alike 3.0 (CC-SA 3.0) +Note: tool_windows_rescue is combination of os_win8.png with + tool_rescue.png. + File: icons/os_debian.png Copyright: 1999 by Debian Project diff --git a/debian/debinstall b/debian/debinstall index ad7af71..6140c4b 100755 --- a/debian/debinstall +++ b/debian/debinstall @@ -38,6 +38,7 @@ fi # Copy configuration and support files to /usr/share/refind install -Dp -m0644 refind.conf-sample $BUILD_ROOT/usr/share/refind/refind/ cp -a icons $BUILD_ROOT/usr/share/refind/refind/ +rm -rf $BUILD_ROOT/usr/share/refind/refind/icons/svg install -Dp -m0755 install.sh $BUILD_ROOT/usr/share/refind/ # Copy documentation to /usr/share/doc/refind diff --git a/docs/refind/automatic-submenu.png b/docs/refind/automatic-submenu.png index df2a87d..c839d50 100644 Binary files a/docs/refind/automatic-submenu.png and b/docs/refind/automatic-submenu.png differ diff --git a/docs/refind/configfile.html b/docs/refind/configfile.html index caae10f..57f4445 100644 --- a/docs/refind/configfile.html +++ b/docs/refind/configfile.html @@ -17,7 +17,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

Originally written: 3/14/2012; last Web page update: -9/19/2015, referencing rEFInd 0.9.2

+11/1/2015, referencing rEFInd 0.9.3

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!

@@ -491,43 +491,43 @@ menuentry "Ubuntu Linux" { disabled } -menuentry Gentoo { - icon \EFI\refind\icons\os_gentoo.icns - volume G_KERNELS - loader \kernels\bzImage-3.3.0-rc7 - initrd \kernels\initrd-3.3.0-rc7.img +menuentry Arch { + icon /EFI/refind/icons/os_arch.png + volume ARCHBOOT + loader /vmlinuz-linux + initrd /initramfs-linux.img options "root=/dev/sda3 ro" } menuentry "Windows via shell script" { - icon \EFI\refind\icons\os_win.icns + icon \EFI\refind\icons\os_win.png loader \EFI\tools\shell.efi options "fs0:\EFI\tools\launch_windows.nsh" } -

This example sets up three entries: one for Ubuntu Linux, one for Gentoo Linux, and one to launch a shell script. Note that the first two entries use different directory separators, simply to demonstrate the fact that it's possible. The Ubuntu entry sets no icon, since rEFInd will note that the boot loader is stored in the ubuntu directory, and it will automatically find the appropriate Ubuntu icon (os_ubuntu.icns). This option is, however, disabled, so no matching icon will appear when you reboot unless you first comment out or delete the disabled line.

+

This example sets up three entries: one for Ubuntu Linux, one for Arch Linux, and one to launch a shell script. Note that the final entry uses different directory separators from the first two, simply to demonstrate the fact that it's possible. (The form of directory separators in options lines is important, though, because the program being launched may expect a particular directory separator character.) The Ubuntu entry sets no icon, since rEFInd will note that the boot loader is stored in the ubuntu directory, and it will automatically find the appropriate Ubuntu icon (os_ubuntu.png). This option is, however, disabled, so no matching icon will appear when you reboot unless you first comment out or delete the disabled line.

-

The Gentoo entry begins with an icon specification to be sure that the icon is loaded from the same volume as rEFInd. (If the icon were stored on the same filesystem as the kernel, you'd place the icon line after the volume line.) This entry uses the volume token to tell rEFInd to load the kernel and initial RAM disk file from the filesystem or partition called G_KERNELS. It passes the filename for an initial RAM disk using the initrd line and free-form options using the options line. Note that the kernel filename does not include a .efi extension, which keeps rEFInd from picking up the kernel file in its auto-scans.

+

The Arch entry begins with an icon specification to be sure that the icon is loaded from the same volume as rEFInd. (If the icon were stored on the same filesystem as the kernel, you'd place the icon line after the volume line.) This entry uses the volume token to tell rEFInd to load the kernel and initial RAM disk file from the filesystem or partition called ARCHBOOT. It passes the filename for an initial RAM disk using the initrd line and free-form options using the options line.

The Windows via shell script entry may seem puzzling, but its purpose is to launch an OS (Windows in this case) after performing additional pre-boot initialization, which is handled by an EFI shell script. This works because you can pass the name of a shell script to an EFI shell—the script is named on the stanza's options line, using EFI file notation. The shell script, in turn, does whatever it needs to do and then launches the OS's boot loader:

mm 0003003E 8 -pci
 fs0:\EFI\Microsoft\Boot\bootmgfw.efi
-

This example writes data to the computer's PCI bus via the EFI shell's mm command and then launches Windows. Chances are you won't need to engage in such operations, and I do not recommend you try this exact example unless you know what you're doing! This command was required to activate the video hardware on a computer of a person with whom I corresponded prior to booting Windows, but such needs are rare. Another example of a similar approach can be found in this forum thread. A few pointers on finding addresses for your hardware can be found in this post.

+

This example writes data to the computer's PCI bus via the EFI shell's mm command and then launches Windows. Chances are you won't need to engage in such operations, and I do not recommend you try this exact example unless you know what you're doing! This command was required to activate the video hardware prior to booting Windows on a computer of a person with whom I corresponded, but such needs are rare. (Using the spoof_osx_version option in rEFInd 0.9.3 and later may also help with some such problems, at least on Macs.) Another example of a similar approach can be found in this forum thread. A few pointers on finding addresses for your hardware can be found in this post.

-

You can combine these OS stanzas with the global refind.conf options presented earlier. The result would contain just two entries on the rEFInd boot menu (for Gentoo and Windows, since the Ubuntu entry is disabled), unless rEFInd found other boot options on an external or optical disk.

+

You can combine these OS stanzas with the global refind.conf options presented earlier. The result would contain just two entries on the rEFInd boot menu (for Arch and Windows, since the Ubuntu entry is disabled), unless rEFInd found other boot options on an external or optical disk.

Creating Submenu Entries

-

As described on the Using rEFInd page, rEFInd can present a menu of options for certain loader tags when you press the Insert, F2, or + key. rEFInd does this automatically when it detects Mac OS X or ELILO boot loaders, or when you set the OS type via the ostype option. The Mac OS X boot loader, in particular, accepts various options that you can use to boot in various ways.

+

As described on the Using rEFInd page, rEFInd can present a menu of options for certain loader tags when you press the Insert, F2, or + key. rEFInd does this automatically when it detects Mac OS X or ELILO boot loaders, when you set the OS type via the ostype option, or when booting a Linux kernel directly. The Mac OS X boot loader, in particular, accepts various options that you can use to boot in various ways.

-

Sometimes, you might want to create your own custom submenu entries, and rEFInd 0.2.1 and later enable you to do this. To create a custom submenu, you use the submenuentry keyword inside a menuentry stanza. Normally, you'll set the submenu definitions after you've set the main menu options, since the submenu options take the main menu options as defult, and so the main options must be set first. Like a menuentry stanza, a submenuentry definition begins with the keyword, the name of the item, and an open curly brace ({). It continues until a close curly brace (}). A submenu definition can use the keywords described in Table 3. Except as otherwise noted, using an option of a given name completely overrides the setting in the main stanza.

+

Sometimes, you might want to create your own custom submenu entries, and rEFInd enables you to do this. To create a custom submenu, you use the submenuentry keyword inside a menuentry stanza. Normally, you'll set the submenu definitions after you've set the main menu options, since the submenu options take the main menu options as defult, and so the main options must be set first. Like a menuentry stanza, a submenuentry definition begins with the keyword, the name of the item, and an open curly brace ({). It continues until a close curly brace (}). A submenu definition can use the keywords described in Table 3. Except as otherwise noted, using an option of a given name completely overrides the setting in the main stanza.

@@ -575,20 +575,19 @@ fs0:\EFI\Microsoft\Boot\bootmgfw.efi

The following menu entry illustrates the use of submenu entries. This is a variant of the second entry presented earlier:

-menuentry Gentoo {
-    loader \EFI\linux\bzImage-3.3.0-rc7
-    initrd \EFI\linux\initrd-3.3.0-rc7.img
+menuentry Arch {
+    icon /EFI/refind/icons/os_arch.png
+    loader /vmlinuz-linux
+    initrd /initramfs-linux.img
     options "root=/dev/sda3 ro"
-    icon \EFI\refind\icons\os_gentoo.icns
     submenuentry "single-user mode" {
         add_options "single"
     }
-    submenuentry "3.3.0 final release kernel" {
-        loader \EFI\linux\bzImage-3.3.0
-        initrd \EFI\linux\initrd-3.3.0.img
+    submenuentry "Use fallback initrd" {
+        initrd /initramfs-linux-fallback.img
     }
-    submenuentry "boot via ELILO" {
-        loader \EFI\elilo\elilo.efi
+    submenuentry "boot via SYSLINUX" {
+        loader \EFI\syslinux\syslinux.efi
 	initrd
 	options
     }
@@ -597,11 +596,11 @@ menuentry Gentoo {
 
 

The main menu item for this entry won't look different with the submenus defined than without them; but if you press the F2 or Insert key, you'll see the submenu items:

-
Manually defining submenus enables you to customize
+    <br /><center><img src=

-

The main menu item appears at the top of the list—Run bzImage-3.3.0-rc7 in this example. The three submenus defined in this example's configuration file appear next, enabling you to launch in single-user mode, run the 3.3.0 release kernel, or boot via ELILO, respectively. Submenus also include an item called Return to Main Menu that does just as it says. (Alternatively, you can return to the main menu by pressing the Esc key.)

+

The main menu item appears at the top of the list—Boot using default options. The three submenus defined in this example's configuration file appear next, enabling you to launch in single-user mode, boot the standard kernel with the fallback initrd file, or boot via SYSLINUX, respectively. Submenus also include an item called Return to Main Menu that does just as it says. (Alternatively, you can return to the main menu by pressing the Esc key.)

This example illustrates some of the things you can do with submenu entries:

@@ -609,11 +608,13 @@ menuentry Gentoo {
  • You can add kernel options when booting via the EFI stub loader—to launch single-user mode, to add graphical boot options, or what have you.
  • +
  • You can remove options. Note the empty initrd and options lines in the SYSLINUX entry, for example; these empty lines override the default entries, which are carried over to submenu entries by default.
  • +
  • You can change kernel options when booting via the EFI stub loader—to remove graphical boot options, to boot to a different root device, and so on.
  • You can change your kernel and/or initial RAM disk when booting via the EFI stub loader.
  • -
  • You can give users a choice of boot loaders. In this example, the main option boots via the kernel stub loader, but the submenu gives users the chance to boot via ELILO instead. In fact, you could even boot two entirely different OSes from manually-defined submenu entries, although that could be confusing.
  • +
  • You can give users a choice of boot loaders. In this example, the main option boots via the kernel stub loader, but the submenu gives users the chance to boot via SYSLINUX instead. In fact, you could even boot two entirely different OSes from manually-defined submenu entries, although that could be confusing.
  • diff --git a/docs/refind/index.html b/docs/refind/index.html index 01c5eb4..d21f29a 100644 --- a/docs/refind/index.html +++ b/docs/refind/index.html @@ -17,7 +17,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Originally written: 3/14/2012; last Web page update: -9/19/2015, referencing rEFInd 0.9.2

    +11/1/2015, referencing rEFInd 0.9.3

    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,9 +130,9 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    This page describes rEFInd, my fork of the rEFIt boot manager for computers based on the Extensible Firmware Interface (EFI) and Unified EFI (UEFI). Like rEFIt, rEFInd is a boot manager, meaning that it presents a menu of options to the user when the computer first starts up, as shown below. rEFInd is not a boot loader, which is a program that loads an OS kernel and hands off control to it. (Since version 3.3.0, the Linux kernel has included a built-in boot loader, though, so this distinction is rather artificial these days, at least for Linux.) Many popular boot managers, such as the Grand Unified Bootloader (GRUB), are also boot loaders, which can blur the distinction in many users' minds. All EFI-capable OSes include boot loaders, so this limitation isn't a problem. If you're using Linux, you should be aware that several EFI boot loaders are available, so choosing between them can be a challenge. In fact, the Linux kernel can function as an EFI boot loader for itself, which gives rEFInd characteristics similar to a boot loader for Linux. See my Web page on this topic for more information.

    -
    rEFInd presents a GUI menu for selecting your boot
-    OS.

    +
    rEFInd presents a graphical menu for selecting your
+    boot OS.

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

  • rEFInd and OS X 10.10 (Yosemite)—Apple's latest OS X makes some changes that require your attention (this subpage is rendered obsolete by rEFInd 0.8.4 and later
  • +
  • rEFInd and System Integrity Protection—How to install rEFInd on Macs running OS X 10.11 (El Capitan) +
  • Using rEFInd—Basic usage instructions for the boot loader
  • Configuring the Boot Manager—For advanced users, information on customizing a rEFInd installation
  • diff --git a/docs/refind/linux.html b/docs/refind/linux.html index 13cfd7e..274f234 100644 --- a/docs/refind/linux.html +++ b/docs/refind/linux.html @@ -184,7 +184,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    For Those With Foresight or Luck: The Easiest Method

    -

    This method requires that your /boot directory, whether it's on a separate partition or is a regular directory in your root (/) filesystem, be readable by the EFI. At the moment, all EFI implementations can read FAT and Macs can read HFS+. By using drivers, you can make any EFI read HFS+, ISO-9660, ReiserFS, ext2fs, ext3fs, ext4fs, or Btrfs. Thus, if you use any of these filesystems on a regular partition (not an LVM or RAID configuration) that holds your kernels in /boot, you qualify for this easy method. The default partition layouts used by Ubuntu, Fedora, and many other distributions qualify, because they use one of these filesystems (usually ext4fs) in a normal partition or on a separate /boot partition. You must also have a 3.3.0 or later Linux kernel with EFI stub support, of course.

    +

    This method requires that your /boot directory, whether it's on a separate partition or is a regular directory in your root (/) filesystem, be readable by the EFI. At the moment, all EFI implementations can read FAT and Macs can read HFS+. By using drivers, you can make any EFI read HFS+, ISO-9660, ReiserFS, ext2fs, ext3fs, ext4fs, Btrfs, or other filesystems. Thus, if you use any of these filesystems on a regular partition (not an LVM or RAID configuration) that holds your kernels in /boot, you qualify for this easy method. The default partition layouts used by Ubuntu, Fedora, and many other distributions qualify, because they use one of these filesystems (usually ext4fs) in a normal partition or on a separate /boot partition. You must also have a 3.3.0 or later Linux kernel with EFI stub support, of course.

    If you installed rEFInd 0.6.0 or later with its install.sh script from your regular Linux installation, chances are everything's set up; you should be able to reboot and see your Linux kernels as boot options. If you installed manually, from OS X, or from an emergency system, though, you may need to do a couple of things manually: @@ -216,7 +216,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Preparing a Test Configuration

    -

    If you're not sure you want to use the EFI stub loader in the long term, you can perform a fairly quick initial test of it. This procedure assumes that you have access to a 3.3.0 or later Linux kernel with EFI stub support compiled into it. (Fedora 17, Ubuntu 12.10, and probably other distributions ship with such kernels.) Creating this configuration poses no risk to your current boot options, provided you don't accidentally delete existing files. The procedure for a quick test is:

    +

    If you're not sure you want to use the EFI stub loader in the long term, you can perform a fairly quick initial test of it. This procedure assumes that you have access to a 3.3.0 or later Linux kernel with EFI stub support compiled into it. (Fedora since version 17, Ubuntu since 12.10, and most other distributions ship with such kernels.) Creating this configuration poses no risk to your current boot options, provided you don't accidentally delete existing files. The procedure for a quick test is:

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

      disk file (init*) from /boot to a subdirectory of EFI on your ESP. Your distribution's directory there should work fine. For instance, typing cp - /boot/vmlinuz-3.6.7-4.fc17.x86_64 - /boot/initramfs-3.6.7-4.fc17.x86_64.img /boot/efi/EFI/redhat might + /boot/vmlinuz-4.2.5-300.fc23.x86_64 + /boot/initramfs-4.2.5-300.fc23.x86_64.img /boot/efi/EFI/fedora might do the trick on a Fedora system, although you'll probably have to adjust the version numbers. Note that the filename forms vary from one distribution to another, so don't worry if yours look different from @@ -349,20 +349,19 @@ extends it as follows:

      1. rEFInd looks for boot loaders whose names include the strings - bzImage or vmlinuz and that end in .efi. For - instance, bzImage-3.3.0.efi or vmlinuz-3.3.0-fc17.efi - would match, and trigger subsequent steps in this procedure. Beginning - with version 0.3.0, if you uncomment the - scan_all_linux_kernels option in refind.conf, rEFInd - will also scan for kernels without a .efi filename - extension. This option is uncommented by default, but if you comment it - out, delete it, or change it to read scan_all_linux_kernels 0, - rEFInd won't scan for kernels that lack .efi filename - extensions.
      2. + bzImage or vmlinuz. For instance, + bzImage-3.19.0.efi or vmlinuz-4.2.0 would match, and + trigger subsequent steps in this procedure. The + scan_all_linux_kernels option in refind.conf controls + the scanning for kernels whose names do not end in .efi; if + this option is set to false, kernel filenames must end in + .efi to be picked up by rEFInd. This option is set to + true by default, but you can change it if you don't want to + scan all Linux kernels.
      3. If a file's name ends in .efi.signed, any other file with an otherwise-identical name that lacks this extension is excluded. - This peculiar rule exists because Ubuntu has begun delivering two + This peculiar rule exists because Ubuntu delivers two copies of every kernel, one with and one without this extension. The one with the extension is signed with a Secure Boot key; the one without it is not so signed. Thus, if both files are present, the one @@ -379,19 +378,20 @@ extends it as follows:

        The version string is defined as the part of the filename from the first digit to the last digit, inclusive. Note that the version string can include non-digits. For instance, the version string for - bzImage-3.3.0.efi is 3.3.0, which matches - initramfs-3.3.0.bz; and vmlinuz-3.3.0-fc17.efi's - version string is 3.3.0-fc17, which matches - initrd-3.3.0-fc17.img. Many other matches are possible. If an - initial RAM disk is identified, rEFInd passes a suitable - initrd= option to the kernel when it boots.
      4. + bzImage-3.19.0.efi is 3.19.0, which matches + initramfs-3.19.0.bz; and + vmlinuz-4.2.5-300.fc23.x86_64's version string is + 4.2.5-300.fc23.x86_64, which matches + initrd-4.2.5-300.fc23.x86_64.img. Many other matches are + possible. If an initial RAM disk is identified, rEFInd passes a + suitable initrd= option to the kernel when it boots.
      5. rEFInd looks for a file called refind_linux.conf in the same directory as the kernel file. It consists of a series of lines, each of which consists of a label followed by a series of kernel options. The first line sets default options, and subsequent lines set options that are accessible from the main menu tag's submenu screen. If - you installed rEFInd 0.5.1 or later with the install.sh + you installed rEFInd with the install.sh script, that script created a sample refind_linux.conf file, customized for your computer, in /boot. This file will work without changes on many installations, but you may need to tweak it for @@ -412,62 +412,65 @@ extends it as follows:

        that rEFInd uses /etc/fstab only if refind_linux.conf is not found.
      6. -
      +
    1. If rEFInd can't find a refind_linux.conf file or an + /etc/fstab file, it tries to identify the Linux root + (/ filesystem by looking for a partition with a GUID type code + matching that specified for the root (/) filesystem in the Freedesktop.org + Discoverable Partitions Specification. These type codes are as yet + seldom used, but if and when they become common, they should help a lot + for situations similar to those of the preceding case, but when a + separate /boot partition is used.
    2. -

      The intent of this system is that distribution maintainers can place their kernels, initial RAM disks, and a refind_linux.conf file in their own subdirectories on the ESP, on EFI-accessible /boot partitions, or in /boot directories on EFI-accessible Linux root (/) partitions. rEFInd will detect these kernels and create one main menu entry for each kernel. Each entry will implement as many options as there are lines in the refind_linux.conf file. In this way, two or more distributions can each maintain their boot loader entries, without being too concerned about who maintains rEFInd as a whole.

      +
    -

    The scan_all_linux_kernels option is intended to help users and distribution maintainers when rEFInd is used in conjunction with a Linux filesystem driver for EFI or when the ESP is mounted as the Linux /boot partition. In these cases, if all the kernels in Linux's /boot directory include EFI stub loader support, rEFInd will automatically detect and use kernels installed in the usual way, such as via an automatic system update. You won't even need to move or rename your kernels. You will need to set up a refind_linux.conf file and you may need to install a driver or set the also_scan_dirs option in refind.conf; but these are one-time requirements. Set up in this way, ongoing maintenance to handle kernel updates drops to zero!

    +

    The intent of this system is that distribution maintainers can place their kernels, initial RAM disks, and a refind_linux.conf file in their own subdirectories on the ESP, on EFI-accessible /boot partitions, or in /boot directories on EFI-accessible Linux root (/) partitions. rEFInd will detect these kernels and create one main menu entry for each directory that holds kernels; or if fold_linux_kernels is set to false, one menu entry for each kernel. Each entry will implement as many options as there are lines in the refind_linux.conf file (multiplied by the number of kernels, if fold_linux_kernels is true). In this way, two or more distributions can each maintain their boot loader entries, without being too concerned about who maintains rEFInd as a whole.

    -

    As an example, consider the following file configuration:

    +

    As an example, consider the following (partial) file listing:

    -$ ls -l /boot/efi/EFI/ubuntu/
    +$ ls -l /boot/vmlin*
     total 17943
    --rwxr-xr-x 1 root root  4781632 2012-03-18 12:01 bzImage-3.3.0.efi
    --rwxr-xr-x 1 root root   131072 2011-10-14 04:10 grubx64.EFI
    --rwxr-xr-x 1 root root 13459936 2012-03-18 12:02 initrd.img-3.3.0
    --rwxr-xr-x 1 root root      266 2012-03-26 19:39 refind_linux.conf
    +-rw-r--r-- 1 root root 5271984 Aug  7 10:18 /boot/vmlinuz-3.16.7-24-default
    +-rw-r--r-- 1 root root 5271536 Oct 23 17:25 /boot/vmlinuz-3.16.7-29-default
     
    -

    When rEFInd scans this directory, it will find two EFI boot loaders in EFI/ubuntu: grubx64.EFI and bzImage-3.3.0.efi. rEFInd will create two main-menu tags for these two loaders, one of which will launch Ubuntu's standard GRUB and the other of which will launch the 3.3.0 kernel file directly. The refind_linux.conf file contains a list of labels and options:

    +

    When rEFInd scans this directory, it will discover two kernels in /boot. Assuming fold_linux_kernels is its default of true, rEFInd will create one main-menu tag for these two kernels. A refind_linux.conf file in this directory should contain a list of labels and options:

    -"Boot with standard options" "root=/dev/sda3 ro quiet splash vt.handoff=7"
    -"Boot to single-user mode"   "root=UUID=1cd95082-bce0-494c-a290-d2e642dd82b7 ro single"
    -"Boot with minimal options"  "root=UUID=1cd95082-bce0-494c-a290-d2e642dd82b7 ro"
    -# "Boot alternate install"     "root=/dev/sdb9 ro quiet splash vt.handoff=7"
    +"Boot with standard options"  "ro root=UUID=084f544a-7559-4d4b-938a-b920f59edc7e splash=silent quiet showopts "
    +"Boot to single-user mode"    "ro root=UUID=084f544a-7559-4d4b-938a-b920f59edc7e splash=silent quiet showopts single"
    +"Boot with minimal options"   "ro root=UUID=084f544a-7559-4d4b-938a-b920f59edc7e"
    +# This line is a comment
     

    Ordinarily, both fields in this file must be enclosed in quotes. If you have to pass an option that includes quotes, you can do so by doubling up on them, as in "root=/dev/sdb9 my_opt=""this is it""", which passes root=/dev/sdb9 my_opt="this is it" to the shell. You can include as much white space as you like between options. You can also place comments in the file, or remove an option by commenting it out with a leading hash mark (#), as in the fourth line in this example.

    -

    In the preceding example, the first line sets the options that rEFInd passes to the kernel by default (along with the name of the initrd.img-3.3.0 file, since its version string matches that of the kernel). The next two lines set options that you can obtain by pressing Insert, F2, or + on the main menu, as shown here:

    +

    In the preceding example, the first line sets the options that rEFInd passes to the kernel by default (along with the name of the discovered initrd file, since its version string matches that of the kernel). The next two lines set options that you can obtain by pressing Insert, F2, or + on the main menu, as shown here:


    rEFInd can load Linux boot options from
+    width=

    +

    Note that in this example, the default kernel (the one with the most recent time stamp) appears first on the list, with the labels specified in refind_linux.conf. Subsequent kernels (just one in this example) appear below it, with the same labels preceded by the kernel filename. If you were to set fold_linux_kernels false, each kernel would get its own entry on the main menu, and each one's submenu would enable options for launching it alone.

    +

    To assist in initial configuration, rEFInd's install.sh script creates a sample refind_linux.conf file in /boot. This sample file defines three entries, the first two of which use the default GRUB options defined in /etc/default/grub and the last of which uses minimal options. The first entry boots normally and the second boots into single-user mode. If you want to create a new file, you can use the mkrlconf.sh script that comes with rEFInd. If you pass it the --force option, it will overwrite the existing /boot/refind_linux.conf file; otherwise it will create the file only if one doesn't already exist.

    From a user's perspective, the submenus defined in this way work just like submenus defined via the submenuentry options in refind.conf, or like the submenus that rEFInd creates automatically for Mac OS X or ELILO. There are, however, limitations in what you can accomplish with this method:

      -
    • Your kernels must be compiled with EFI stub loader support.
    • +
    • Your kernels must be compiled with EFI stub loader support. (This is + almost always true of distribution-provided kernels these days.)
    • You can't set a submenu option to boot via a different boot loader, such as ELILO or GRUB; all the submenu options apply to a single boot loader—that is, a single kernel. (rEFInd will still detect other boot loaders and provide separate main-menu tags for them, - though.)
    • - -
    • If an installation includes two or more kernel files, each one receives - its own main-menu entry; you can't combine them together in one menu - item. This is essentially a corollary of the preceding limitation. The - result can be an overburdened main menu if your system has many - kernels.
    • + though.) Folded kernel entries are an exception to this rule.
    • All the kernels in a given directory use the same refind_linux.conf file. If you need to set different options @@ -480,15 +483,13 @@ total 17943
    -

    Ordinarily, a kernel booted in this way must reside on the ESP, or at least on another FAT partition. On a Macintosh, though, you can use HFS+ to house your kernel files. In fact, that may be necessary; my Mac Mini hangs when I try to boot a Linux kernel via an EFI stub loader from the computer's ESP, but it works fine when booting from an HFS+ partition. If you use EFI drivers, though, you can place your kernel on any filesystem for which an EFI driver exists. This list is currently good (ext2fs/ext3fs, ext4fs, ReiserFS, Btrfs, ISO-9660, and HFS+), so chances are you'll be able to use this method to boot your kernel from your root (/) partition or from a /boot partition.

    +

    Ordinarily, a kernel booted in this way must reside on the ESP, or at least on another FAT partition. On a Macintosh, though, you can use HFS+ to house your kernel files. In fact, that may be necessary; my Mac Mini hangs when I try to boot a Linux kernel via an EFI stub loader from the computer's ESP, but it works fine when booting from an HFS+ partition. If you use EFI drivers, though, you can place your kernel on any filesystem for which an EFI driver exists. This list is currently good (ext2fs/ext3fs, ext4fs, ReiserFS, Btrfs, ISO-9660, HFS+, and NTFS in rEFInd, plus more from other sources), so chances are you'll be able to use this method to boot your kernel from your root (/) partition or from a /boot partition.

    rEFInd sorts boot loader entries within each directory by time stamp, so that the most recent entry comes first. Thus, if you specify a directory name (or a volume label, for loaders stored in a volume's root directory) as the default_selection, rEFInd will make the most recent loader in the directory the default. This can obviate the need to adjust this configuration parameter when you add a new kernel; chances are you want the most recently-added kernel to be the default, and rEFInd makes it so when you set the default_selection in this way. If you don't want the latest kernel to become the default, you can use touch to give the desired kernel (or other boot loader) in the directory a more recent time stamp, or you can set default_selection to a value that uniquely identifies your desired default loader. One caveat you should keep in mind is that the EFI and Windows interpret the hardware clock as local time, whereas Mac OS X uses Coordinated Universal Time (UTC). Linux can work either way. Thus, time stamps for boot loaders can be skewed by several hours depending on the environment in which they were created or last modified.

    -

    Prior to rEFInd 0.9.0, each Linux kernel appeared as a separate entry in the main rEFInd menu. This could make for a very crowded menu if you kept many old kernels and/or if you have several Linux distributions installed. rEFInd 0.9.0 adds a "folding" feature, in which multiple kernel entries in a single directory appear as a single entry in the main menu. Selecting that entry launches the kernel with the most recent time stamp. To launch an older kernel, you must press F2 or Insert; older kernels appear in the submenu shown earlier, but with the kernel filename prepended to the description. If you want to launch an older kernel by default, you can touch it in Linux, as in touch /boot/vmlinuz-3.6.0 to make /boot/vmlinuz-3.6.0 the default. (You must type this command as root or using sudo.) If you want to see all your kernels separated on the main menu, as in earlier versions of rEFInd, you should edit refind.conf: Uncomment the fold_linux_kernels option and set it to false, off, or 0.

    - -

    On the whole, auto-detecting kernels and passing boot options using refind_linux.conf has a lot going for it. For distribution maintainers, if you place your Linux kernel files (with EFI stub support) on the ESP, with suitable filenames, matching initial RAM disk files, and a refind_linux.conf file, then any rEFInd 0.2.3 or later installation should detect your files, even if the user installs another distribution with another rEFInd that takes over from yours. (If the user, or this other rEFInd installation, disables auto-detection, this won't work.)

    +

    On the whole, auto-detecting kernels and passing boot options using refind_linux.conf has a lot going for it. For distribution maintainers, if you place your Linux kernel files (with EFI stub support) on the ESP, with suitable filenames, matching initial RAM disk files, and a refind_linux.conf file, then rEFInd should detect your files, even if the user installs another distribution with another rEFInd that takes over from yours. (If the user, or this other rEFInd installation, disables auto-detection, this won't work.)

    For end users, this method is simpler than maintaining manual configurations in refind.conf (or equivalents for ELILO or GRUB). To install a new kernel, you need only copy it and its initial RAM disk, under suitable names, to a scanned directory on the ESP. There's no need to touch any configuration file, provided you've already set up refind_linux.conf in your kernel's directory. You will, however, have to adjust refind_linux.conf if you make certain changes, such as if your root directory identifier changes.

    diff --git a/docs/refind/manual-submenu.png b/docs/refind/manual-submenu.png index 29840a1..f04e398 100644 Binary files a/docs/refind/manual-submenu.png and b/docs/refind/manual-submenu.png differ diff --git a/docs/refind/os_legacy.png b/docs/refind/os_legacy.png index bf6d8f3..74d0abc 100644 Binary files a/docs/refind/os_legacy.png and b/docs/refind/os_legacy.png differ diff --git a/docs/refind/recovery-mode.png b/docs/refind/recovery-mode.png new file mode 100644 index 0000000..8e6a54e Binary files /dev/null and b/docs/refind/recovery-mode.png differ diff --git a/docs/refind/refind-background-snowy.png b/docs/refind/refind-background-snowy.png new file mode 100644 index 0000000..bd15c59 Binary files /dev/null and b/docs/refind/refind-background-snowy.png differ diff --git a/docs/refind/refind-background.png b/docs/refind/refind-background.png index df058a5..2150410 100644 Binary files a/docs/refind/refind-background.png and b/docs/refind/refind-background.png differ diff --git a/docs/refind/refind.gif b/docs/refind/refind.gif deleted file mode 100644 index 0d5a0a8..0000000 Binary files a/docs/refind/refind.gif and /dev/null differ diff --git a/docs/refind/refind.png b/docs/refind/refind.png index f98fb0a..bfc7884 100644 Binary files a/docs/refind/refind.png and b/docs/refind/refind.png differ diff --git a/docs/refind/sip.html b/docs/refind/sip.html new file mode 100644 index 0000000..fa589b7 --- /dev/null +++ b/docs/refind/sip.html @@ -0,0 +1,236 @@ + + + + + + The rEFInd Boot Manager: rEFInd and System Integrity Protection + + + + + + +

    The rEFInd Boot Manager:
    rEFInd and System Integrity Protection

    + +

    by Roderick W. Smith, rodsmith@rodsbooks.com

    + +

    Originally written: 10/31/2015, referencing rEFInd 0.9.3

    + + +

    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!

    + +
    Table 3: Submenu keywords in refind.conf
    + + + + + + + + + + + + + + + + + + + + + + +
    Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate $20.00Donate another value
    +
    + + + + + + + + + +Donate with PayPal +
    +
    +
    + + + + + + + + + +Donate with PayPal +
    +
    +
    + + + + + + + + + +Donate with PayPal +
    +
    +
    + + + + + + + + + +Donate with PayPal +
    +
    +
    + + + + + + + + + +Donate with PayPal +
    +
    +
    + + + + + + + + +Donate with PayPal +
    +
    + +
    + +

    This page is part of the documentation for the rEFInd boot manager. If a Web search has brought you here, you may want to start at the main page.

    + +
    + +

    Apple's OS X 10.11 (aka El Capitan) includes a new feature, known as System Integrity Protection (SIP), aka "rootless" mode. To understand SIP, you should first know that Unix-like systems, including OS X, have traditionally provided a model of security in which ordinary users can read and write their own files (word processor documents, their own digital photos, etc.), but not system files (programs, system configuration files, etc.). This system security model has worked well for decades on traditional Unix systems, which have been administered by computer professionals and used by individuals with less experience. For administrative tasks, the root account is used; on Macs, this access is generally granted by the sudo command or by various GUI tools. Most Macs are single-user computers that are administered by their users. Such people often lack the knowledge of the professional system administrators who have traditionally managed Unix systems; but they must still perform system administration tasks such as installing new software and configuring network settings. OS X has always provided some measure of security by requiring users to enter their passwords before performing these dangerous tasks, and by providing GUI tools to help guide users through these tasks in a way that minimizes the risk of damage.

    + +

    Apple has apparently decided that these safeguards are no longer sufficient. I won't try to speak for Apple or explain their motivations, but the result of Apple's decisions is SIP. With SIP active, as is the default, OS X limits your ability to perform some of these administrative tasks. You can still install and remove most third-party programs, configure your network, and so on; but some critical directories can no longer be written, even as root, and some utilities cannot be used in certain ways, even as root. These restrictions impact rEFInd because one of the affected tools, a command called bless, is required to tell the Mac to boot rEFInd rather than to boot OS X directly.

    + +

    The end result of SIP is that rEFInd cannot be installed under OS X 10.11 in the way described on the Installing rEFInd page—at least, not without first booting into Recovery mode, in which SIP restrictions are ignored or disabling SIP. This page covers these two options in more detail, as well as a third: Using another OS to install rEFInd.

    + + +

    Using Recovery Mode

    +
    + +

    Unless you've deleted its partition, the Recovery HD partition should be present on your Mac as a way to perform emergency recovery operations. The nature of this tool means that SIP cannot be enabled, so you can install rEFInd from a boot to this partition. The trouble is that this installation is not a full-fledged OS X system, so you may have trouble using it if you're not comfortable with such a bare-bones environment. Nontheless, it is arguably the best way to install rEFInd on a Mac that runs OS X 10.11. To do so, follow these steps:

    + +
      + +
    1. Download the rEFInd binary .zip file and unpack it. You can unpack it on your regular hard disk or on a USB flash drive. Pay attention to where it's located, though; you'll need to find it later. Pay attention to both the name of the volume and the complete path to the directory in which it's stored. (Your home directory is normally /Users/yourname, where yourname is your username. Your Desktop is normally /Users/yourname/Desktop.
    2. + +
    3. Reboot the computer.
    4. + +
    5. At the startup chime, hold down the Option+R key combination. The computer should launch into the Recovery system. This is a very bare system, with only a window providing a way to launch a handful of utilities and a menu bar, as shown here:
    6. + +
      To install rEFInd, you must launch the Terminal from
+    the menu bar.

      + +
    7. Select Utilities -> Terminal from the menu bar. A Terminal window should open.
    8. + +
    9. If you unpacked rEFInd on a USB flash drive, insert it and wait for its access light (if it has one) to stop blinking.
    10. + +
    11. Increase the size of the Terminal a bit. (This just makes its output more legible, since the next step produces long lines.)
    12. + +
    13. Type df -h in the Terminal. This produces a list of partitions that are mounted. Locate the one on which you unpacked the rEFInd files. It will normally be /Volumes/Somename, where Somename" is the volume's name.
    14. + +
    15. In the Terminal, use cd to change to the directory where the rEFInd files you unpacked earlier are stored. For instance, on my MacBook, I would type cd /Volumes/Macintosh\ HD/Users/rodsmith/Destkop/refind-0.9.3. Note that if any element of this path includes a space, you must either enclose the entire path in quotes or precede the space with a backslash (\), as in this example's Macintish\ HD volume name.
    16. + +
    17. Type ls to verify that refind-install is present in this directory.
    18. + +
    19. Type ./refind-install to run the installation script.
    20. It should run normally, as described on the Installing rEFInd page. You can add options, if you like, as described on the Installing rEFInd page. Alternatively, you can perform a manual installation, also as described on that page. + +
    21. Reboot.
    22. + +
    + +

    At this point, rEFInd should come up and enable you to boot into OS X and any other OS(es) that are already installed. You should not need to perform these steps again unless OS X re-installs its own boot loader or a subsequent OS installation overrides the default boot option. You can install an updated rEFInd and it should install correctly, provided you're installing it to the EFI System Partition (ESP). The refind-install script may complain about a failure, but because you're overwriting one rEFInd binary with another one, it should continue to boot.

    + + +

    Disabling SIP

    +
    + +

    Another option is to disable SIP for your regular boot. This is a viable option if you're an expert who needs regular access to tools with which SIP interferes, such as low-level disk utilities. Regular users should probably avoid this option unless the preceding procedure does not work—and in that case, you should disable SIP temporarily and then re-enable it when you've finished installing rEFInd.

    + +

    To disable SIP, you must first boot into the Recovery HD, as in the previous procedure, and launch a Terminal window. Instead of locating and running the refind-instal script, though, you should type:

    + +
    # csrutil disable
    + +

    This command will disable SIP for all OSes that honor this setting. (In theory, multiple versions of OS X might be installed on a single computer, and all of them that support SIP should honor the SIP settings. To the best of my knowledge, no non-Apple OS honors SIP settings, although that could change.)

    + +

    Once you've typed this command, you can reboot the computer. When you return to your regular OS X installation, SIP should be disabled and rEFInd should install normally, as described on the Installing rEFInd page. You will also be able to use disk partitioning tools like my GPT fdisk, write to directories that are normally off-limits, and so on. Note that disabling SIP does not disable normal Unix-style protections—you'll still need to use sudo (or enter your password in a GUI dialog box) to acquire root privileges to perform these system-administration tasks. You'll be no less safe with SIP disabled under OS X 10.11 than you would be with OS X 10.10 or earlier.

    + +

    If you want to re-enable SIP, you can do so in exactly the way you disabled it, except that you should type csrutil enable rather than csrutil disable in the Recovery environment.

    + + +

    Using Another OS

    +
    + +

    A final option for installing rEFInd on a Mac that runs with SIP enabled is to do the installation using another OS. This other OS could be an OS that's already installed or an emergency boot disk, such as an Ubuntu installation/recovery system.

    + +

    If you follow this path, you'll need to know something about how to boot and use your non-Apple OS. The options are quite varied, so I can't provide every detail; however, I do have a few tips:

    + + + +

    I've tested this method of installing rEFInd on my MacBook Air, but I can't promise it will work on all Macs—or even on an identical Mac with a configuration that's different from mine. My preference is to install rEFInd under OS X on Macs, because Apple likes to do things differently from everybody else, and so a Mac's firmware might not react in the usual way to tools like efibootmgr in Linux or bcdedit in Windows.

    + + +

    Conclusion

    +
    + +

    Although the goal of increased security is a good one, SIP is causing problems for intermediate and advanced users. The good news is that the process to install rEFInd on a system that runs OS X 10.11, although more complex than it used to be, is not an impossible one. Furthermore, once you've done it, you shouldn't have to do it again for a while. (An update to OS X's boot loader is entirely possible, though. If nothing else, the next major OS X update may require re-installing rEFInd.)

    + +

    + +

    + +
    + +

    copyright © 2015 by Roderick W. Smith

    + +

    This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

    + +

    If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

    + +

    Go to the main rEFInd page

    + +

    Learn how to use rEFInd

    + +

    Return to my main Web page.

    + + diff --git a/docs/refind/submenu.png b/docs/refind/submenu.png index 00151c8..5d31f81 100644 Binary files a/docs/refind/submenu.png and b/docs/refind/submenu.png differ diff --git a/docs/refind/themes.html b/docs/refind/themes.html index 85e0bac..3cfb5b7 100644 --- a/docs/refind/themes.html +++ b/docs/refind/themes.html @@ -17,7 +17,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Originally written: 4/19/2012; last Web page update: -9/19/2015, referencing rEFInd 0.9.2

    +11/1/2015, referencing rEFInd 0.9.3

    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!

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

    -

    rEFInd relies on both built-in and external graphical elements in its user interface, and all of these elements can be replaced by user-specified files. This fact makes rEFInd's "look and feel" highly adjustable even by non-programmers. This page will help you get started in making such changes to each of the major sets of features: banners and backgrounds, icons, and fonts. I conclude this page with pointers to a few themes that users have created for rEFInd.

    +

    rEFInd relies on both built-in and external graphical elements in its user interface, and all of these elements can be replaced by user-specified files. This fact makes rEFInd's "look and feel" highly adjustable even by non-programmers. This page will help you get started in making such changes to each of the major sets of features: banners and backgrounds, icons, icon selection backgrounds, and fonts. I conclude this page with pointers to a few themes that users have created for rEFInd.

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

    You can create a new background image and logo by placing a PNG or BMP file in rEFInd's main directory and passing its filename to rEFInd with the banner option in refind.conf. If the image is smaller than the screen, the color in the top-left pixel of the image will be used for the rest of the display. This pixel's color is also used as the background color for submenu text, even for full-screen backgrounds. Using a full-screen background image can produce a dramatically different "look" for rEFInd:


    rEFInd provides extensive theming
+    width=

    @@ -200,11 +200,23 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Icons

    + + +

    The core icons in rEFInd 0.9.3 and later come from the AwOken 2.5 icon +set, with additional icons created by me, and a few others taken from +other sources. (The details are documented in the README file in +the icons subdirectory.) These icons have a "flat" appearance, but +with drop shadows to provide a type of depth. Most of the individual icons +use just one color, aside from the drop shadow. Of course, the point of +themes is that you might get bored with, or simply not like, the default +graphics, so you can change them.

    +

    As described on various other pages of this document, rEFInd relies on icon files located in its icons subdirectory, and occasionally elsewhere, to define its overall appearance. You can adjust rEFInd's icons in a few ways:

    +

    As an example of what the combination of icons and backgrounds can do, consider my own Snowy theme, showing the same boot options as the preceding image:

    + +
    The Snowy theme uses predominantly white
+    icons and a background image to match its name +

    +

    Icon Selection Backgrounds

    @@ -272,34 +291,82 @@ to be tedious.

    Known Themes

    -

    I used icons from the Oxygen Icons project, both from the Oxygen Refit package and from Gentoo's oxygen-icons package. These icons supplemented or replaced icons that rEFIt used; however, many OS icons (such as those for Windows and Mac OS) are carried over from rEFIt. I've also used a handful of icons for individual Linux distributions from other sources—usually documentation associated with the distribution in question.

    -

    In addition to this default icon set, I've received word of a few other rEFInd themes:

    If you've created or discovered another rEFInd theme, please tell me about it so that I can provide a link to it from this page.

    diff --git a/docs/refind/using.html b/docs/refind/using.html index a873a15..8a79513 100644 --- a/docs/refind/using.html +++ b/docs/refind/using.html @@ -17,7 +17,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Originally written: 3/14/2012; last Web page update: -9/19/2015, referencing rEFInd 0.9.2

    +11/1/2015, referencing rEFInd 0.9.3

    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!

    @@ -164,15 +164,15 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Assuming rEFInd starts up correctly, you should see its main screen, which resembles the following:

    -
    rEFInd presents a GUI menu for selecting your boot
+    <br /><center><img src=

    -

    If you don't press a key before the timeout expires, the default boot loader will launch. (The timeout is shown beneath the description line until you press a key—note that it's absent from the preceding screen shot.) This is normally the item that you launched the last time rEFInd ran, but you can adjust the default by editing the configuration file. (In this example, it's the Ubuntu Linux loader, which is further identified by text as boot\vmlinuz-3.16.0-31-generic.efi.signed from 49 GiB ext4 volume.)

    +

    If you don't press a key before the timeout expires, the default boot loader will launch. (The timeout is shown beneath the description line until you press a key.) This is normally the item that you launched the last time rEFInd ran, but you can adjust the default by editing the configuration file. (In this example, it's the Ubuntu Linux loader, which is further identified by text as EFI\ubuntu\grubx64.efi from ESP.)

    -

    This display is dominated by the central set of OS tags (icons), which in this example includes tags for Windows, OS X, Ubuntu, and an unknown Linux distribution. All but the last of these are on hard disks, but the unknown Linux boot loader is on an optical disc, as revealed by the small icons (known as badges) in the lower-right corner of the OS icons.

    +

    This display is dominated by the central set of OS tags (icons), which in this example includes tags for an unknown Linux distribution, Ubuntu, OS X, and Windows. All but the first of these are on hard disks, but the unknown Linux boot loader is on an optical disc, as revealed by the small icons (known as badges) in the lower-right corner of the OS icons.

    -

    In this example, the Ubuntu tag is selected. You can move the selection left by pressing the left arrow key and right by pressing the right arrow key. If your system has many boot loaders, an arrow icon will appear to the right and/or left of the boot loader list, indicating that the boot loader list will scroll when you move off the edge. (Such an arrow is visible to the right in the sample screen.) You can scroll the list by one line full of icons by using the Page Up or Page Down keys to move left and right, respectively. Moving past the final selection or using the down arrow key moves the selection to the second row of small tags, which launch ancillary programs or perform special actions. If you've moved the selection cursor to the second row, pressing the up arrow key or scrolling past the left edge of the second row moves the cursor to the top row. In this figure, these six tags are present:

    +

    In this example, the Ubuntu tag is selected. You can move the selection left by pressing the left arrow key and right by pressing the right arrow key. If your system has many boot loaders, an arrow icon will appear to the right and/or left of the boot loader list, indicating that the boot loader list will scroll when you move off the edge. (Such an arrow is visible to the right in the sample screen.) You can scroll the list by one line full of icons by using the Page Up or Page Down keys to move left and right, respectively. Moving past the final selection or using the down arrow key moves the selection to the second row of small tags, which launch ancillary programs or perform special actions. If you've moved the selection cursor to the second row, pressing the up arrow key or scrolling past the left edge of the second row moves the cursor to the top row. In this figure, these eight tags are present:

    -

    By default, the options to display an information page, shutdown the computer, and reboot the computer are present. Options to launch a shell, launch gdisk, launch a memory test utility, launch the Apple recovery utility, launch the Windows recovery utility, and launch a Secure Boot key management utility will also appear automatically if these utilities are installed. The tag to reboot into the firmware appears if your firmware supports this feature. Options to launch the hybrid MBR tool (gptsync) and to exit from rEFInd are not displayed by default; you must edit the configuration file to enable these features, or to disable those that are displayed by default if you don't want them.

    +

    By default, the options to display an information page, shutdown the computer, and reboot the computer are present. Options to launch a shell, launch gdisk, launch a memory test utility, launch the Apple recovery utility, launch the Windows recovery utility, and launch a Secure Boot key management utility will also appear automatically if these utilities are installed. A tag to reboot into the firmware appears if your firmware supports this feature. Options to launch the hybrid MBR tool (gptsync) and to exit from rEFInd are not displayed by default; you must edit the configuration file to enable these features, or to disable those that are displayed by default if you don't want them.

    To launch an OS or utility, you should select its tag and then press the Enter key or the space bar.

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

    If you press the Insert, F2, or + key, rEFInd will show a menu that may hold additional options, depending on the OS type. (OS X and Linux are most likely to hold interesting options on their submenus.) The following figure shows the submenu for Mac OS X. You can use this menu much like the main menu; move the cursor to select the option you want to use, then press the Enter key to launch the boot loader with the selected options. Press the Esc key or select Return to Main Menu to return to the main menu.


    rEFInd submenus enable you to set session-specific
+    height=

    From the options submenu, you can press the Insert, F2, or + key again to edit your boot loader options. You're most likely to want to do this when booting Linux via its EFI stub loader, since you can then enter arbitrary kernel options. A simple text-mode line editor opens (shown below), enabling you to move a cursor back and forth in the line with your arrow keys, delete text, and type in new text. If you want to boot with your edited options, press the Enter key. If you decide you picked the wrong entry, press the Esc key. Note that long option lists, as shown in the figure, scroll off the edge of the screen. Moving the cursor past the screen edge scrolls the entire line of text.

    @@ -338,19 +342,19 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Booting Legacy OSes

    -

    Sometimes it's necessary to boot a legacy (BIOS-based) OS on an EFI computer. This is especially true on Macs, since this is the usual method of dual-booting OS X and Windows. In fact, even most Linux distributions install more easily in BIOS mode on Macs, although running Linux in EFI mode has its advantages. (See my EFI-Booting Ubuntu on a Mac page for an in-depth look at this topic.)

    +

    Sometimes it's necessary to boot a legacy (BIOS-based) OS on an EFI computer. This is especially true on Macs, since this has been the usual method of dual-booting OS X and Windows. (Since the release of Windows 8, though, booting Windows in EFI mode on Macs has become both more practical and more common.) In the past, many Linux distributions installed more easily in BIOS mode on Macs, but many Linux distributions now favor native EFI-mode installation on Macs. (See my EFI-Booting Ubuntu on a Mac page for an in-depth look at this topic.)

    -

    On UEFI-based PCs, booting some OSes in EFI mode and others in BIOS mode is less often necessary, since it's usually easy to install all your OSes in BIOS mode. If you have a working EFI-mode OS installation, though, and if you want to install an OS that lacks EFI-mode boot support, you may need to boot in both modes. This may happen if you want to add one of the BSDs (FreeBSD, OpenBSD, NetBSD, and so on) to a working system, for instance. You might also want to boot a BIOS-mode emergency recovery CD, such as Parted Magic or System Rescue CD.

    +

    On UEFI-based PCs, booting some OSes in EFI mode and others in BIOS mode is less often necessary, since it's usually easy to install all your OSes in BIOS mode. If you have a working EFI-mode OS installation, though, and if you want to install an OS that lacks EFI-mode boot support, you may need to boot in both modes. Most of the BSDs (FreeBSD being a notable exception), Haiku, DOS, Windows XP and earlier, and many more obscure OSes still lack EFI support and so must be booted in BIOS mode. You might also want to boot a BIOS-mode emergency recovery CD, such as Parted Magic or System Rescue CD. Note, however, that EFI-mode support is being added to OSes. It's possible that some of those I've mentioned here will support EFI-mode booting by the time you read this!

    -

    For all such cases, rEFInd supports booting legacy OSes; however, the details vary between Macs and UEFI PCs. Also, be aware that some UEFI PCs lack the Compatibility Support Module (CSM) that's required for this feature to work. This is true even of some computers that can boot BIOS-based OSes natively. This can happen because the firmware is basically a BIOS with a UEFI implementation tacked on top of it; such systems rely on the native BIOS to boot, and may not provide a way for EFI applications to access the BIOS features via CSM mechanisms. If you have such a computer and if you enable a legacy boot option in the configuration file, rEFInd notifies you of its inability to present legacy boot options when it starts up. rEFInd's legacy boot support also depends on features that are not available in the GNU-EFI development package, so you may see a similar notice if you run a version of rEFInd compiled with that package. (The primary build available on the Getting rEFInd page is compiled with the TianoCore EDK2 package, which does support the BIOS boot features.)

    +

    To help out when you need to boot in BIOS mode, rEFInd supports booting legacy OSes; however, the details vary between Macs and UEFI PCs. Also, be aware that some UEFI PCs lack the Compatibility Support Module (CSM) that's required for this feature to work. This is true even of some computers that can boot BIOS-based OSes natively. This can happen because the firmware is basically a BIOS with a UEFI implementation tacked on top of it; such systems rely on the native BIOS to boot, and may not provide a way for EFI applications to access the BIOS features via CSM mechanisms. If you have such a computer and if you enable a legacy boot option in the configuration file, rEFInd notifies you of its inability to present legacy boot options when it starts up.

    The scanfor option, described on the Configuring the Boot Manager page, controls rEFInd's detection of legacy OSes. On Macs, the default is to scan for such OSes, since a common boot scenario on Macs is dual-booting OS X and Windows, and of course BIOS support is required for this. On UEFI PCs, rEFInd defaults to not scanning for legacy OSes; thus, you must edit the scanfor item in the configuration file if you want to boot a legacy OS on a UEFI PC.

    - The legacy OS icon is identical for all OSes on UEFI-based PCs. -

    On Macs, rEFInd uses a flexible scanning algorithm inherited from rEFIt. This procedure detects most legacy OSes on most disks, although it can sometimes miss an OS. This scanning algorithm can often identify the legacy OS you've installed and present a suitable icon. On UEFI PCs, rEFInd relies on the computer's NVRAM settings to determine which legacy boot loaders to scan, but rEFInd does tell the firmware to find every BIOS-mode boot option and add it to its NVRAM list. On most UEFI PCs, at least one hard disk and your optical drive appear as options. On one computer I tested (a Lenovo laptop), the internal hard disk appears in the rEFInd menu as a removable disk, and selecting any BIOS-mode option causes the computer to attempt a network boot. Three other computers I've tested behave more sensibly. If you opt to scan for BIOS-mode optical disks (scanfor cd) on UEFI-based PCs, an icon will appear whether or not your drive holds a CD. The UEFI scanning procedure is also incapable of detecting the OS type, so you'll see a generic legacy OS icon, as shown at the right.

    +

    On Macs, rEFInd uses a flexible scanning algorithm inherited from rEFIt. This procedure detects most legacy OSes on most disks, although it can sometimes miss an OS. This scanning algorithm can often identify the legacy OS you've installed and present a suitable icon. On UEFI PCs, rEFInd relies on the computer's NVRAM settings to determine which legacy boot loaders to scan, but rEFInd does tell the firmware to find every BIOS-mode boot option and add it to its NVRAM list. On most UEFI PCs, at least one hard disk and your optical drive appear as options. On one computer I tested (a Lenovo laptop), the internal hard disk appears in the rEFInd menu as a removable disk. If you have multiple hard disks, you may need to uncomment the uefi_deep_legacy_scan option to get entries for booting all of your disks. If you opt to scan for BIOS-mode optical disks (scanfor cd) on UEFI-based PCs, an icon will appear whether or not your drive holds a CD. The UEFI scanning procedure is also incapable of detecting the OS type, so you'll see a generic legacy OS icon, as shown at the right.

    On both PCs and Macs, if you see non-functional legacy boot options, you can remove them by using the dont_scan_volumes token in refind.conf: Add any substring from the description that appears when you highlight the non-functional option to the set of options to have rEFInd ignore that entry. (Note that you must provide a complete volume name when excluding EFI volumes from scanning. The legacy-mode exclusion operation is more flexible in this regard.)

    diff --git a/docs/refind/yosemite.html b/docs/refind/yosemite.html index 14ea693..df97811 100644 --- a/docs/refind/yosemite.html +++ b/docs/refind/yosemite.html @@ -182,7 +182,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    Go to the main rEFInd page

    -

    Learn how to use rEFInd

    +

    Installing rEFInd using El Capitan

    Return to my main Web page.

    diff --git a/icons/README b/icons/README index 1721483..6093c61 100644 --- a/icons/README +++ b/icons/README @@ -5,7 +5,7 @@ to the relevant licenses under which the icons are distributed. Icon Sources (Overview) ----------------------- -- The Aw0ken 2.5 icon set +- The AwOken 2.5 icon set - Source: http://alecive.deviantart.com/art/AwOken-163570862 - Copyright (c) 2013 by Alessandro Roncone (aka alecive on DeviantArt) - License: Creative Commons Attribution-Share Alike 3.0 (CC-SA 3.0) @@ -30,56 +30,56 @@ conversion from SVG to PNG format, resizing, changes in coloration, or addition of "drop shadow" effects. Details follow.... The "svg" subdirectory holds SVG versions of some icons (notably absent are -those based on the Aw0ken icon set). +those based on the AwOken icon set). Icon Sources (Detail) --------------------- -Icons unchanged from Aw0ken 2.5: - -os_centos.png -- Aw0ken/clear/128x128/start-here/start-here-centos.png -os_chakra.png -- Aw0ken/clear/128x128/start-here/start-here-chakra.png -os_chrome.png -- Aw0ken/clear/128x128/apps/google-chrome1.png -os_crunchbang.png -- Aw0ken/clear/128x128/start-here/start-here-crunchbang3.png -os_fedora.png -- Aw0ken/clear/128x128/start-here/start-here-fedora5.png -os_frugalware.png -- Aw0ken/clear/128x128/start-here/start-here-frugalware1.png -os_kubuntu.png -- Aw0ken/clear/128x128/start-here/start-here-kubuntu.png -os_lubuntu.png -- Aw0ken/clear/128x128/start-here/start-here-lubuntu.png -os_mageia.png -- Aw0ken/clear/128x128/start-here/start-here-mageia.png -os_mandriva.png -- Aw0ken/clear/128x128/start-here/start-here-mandriva5.png -os_network.png -- Aw0ken/clear/128x128/places/network-workgroup1.png -os_ubuntu.png -- Aw0ken/clear/128x128/start-here/start-here-ubuntu.png -os_unknown.png -- Aw0ken/clear/128x128/actions/color-line1.png -os_win8.png -- Aw0ken/clear/128x128/apps/live1.png - - -Icons modified from Aw0ken 2.5: - -arrow_left.png -- Aw0ken/clear/128x128/actions/go-previous.png -arrow_right.png -- Aw0ken/clear/128x128/actions/go-next.png -boot_linux.png -- Aw0ken/clear/128x128/apps/supertux.png -func_about.png -- Aw0kenWhite/clear/128x128/actions/info2.png -func_exit.png -- Aw0kenWhite/clear/128x128/actions/application-exit2.png +Icons unchanged from AwOken 2.5: + +os_centos.png -- AwOken/clear/128x128/start-here/start-here-centos.png +os_chakra.png -- AwOken/clear/128x128/start-here/start-here-chakra.png +os_chrome.png -- AwOken/clear/128x128/apps/google-chrome1.png +os_crunchbang.png -- AwOken/clear/128x128/start-here/start-here-crunchbang3.png +os_fedora.png -- AwOken/clear/128x128/start-here/start-here-fedora5.png +os_frugalware.png -- AwOken/clear/128x128/start-here/start-here-frugalware1.png +os_kubuntu.png -- AwOken/clear/128x128/start-here/start-here-kubuntu.png +os_lubuntu.png -- AwOken/clear/128x128/start-here/start-here-lubuntu.png +os_mageia.png -- AwOken/clear/128x128/start-here/start-here-mageia.png +os_mandriva.png -- AwOken/clear/128x128/start-here/start-here-mandriva5.png +os_network.png -- AwOken/clear/128x128/places/network-workgroup1.png +os_ubuntu.png -- AwOken/clear/128x128/start-here/start-here-ubuntu.png +os_unknown.png -- AwOken/clear/128x128/actions/color-line1.png +os_win8.png -- AwOken/clear/128x128/apps/live1.png + + +Icons modified from AwOken 2.5: + +arrow_left.png -- AwOken/clear/128x128/actions/go-previous.png +arrow_right.png -- AwOken/clear/128x128/actions/go-next.png +boot_linux.png -- AwOken/clear/128x128/apps/supertux.png +func_about.png -- AwOkenWhite/clear/128x128/actions/info2.png +func_exit.png -- AwOkenWhite/clear/128x128/actions/application-exit2.png func_firmware.png -- AwOkenWhite/clear/128x128/status/indicator-cpufreq.png -func_reset.png -- Aw0kenWhite/clear/128x128/apps/gnome-session-reboot2.png -func_shutdown.png -- Aw0kenWhite/clear/128x128/apps/gnome-session-halt2.png -os_arch.png -- Aw0kenWhite/clear/128x128/start-here/start-here-arch3.png -os_clover.png -- Aw0kenWhite/clear/128x128/actions/tools-wizard.png -os_gentoo.png -- Aw0ken/clear/128x128/start-here/start-here-gentoo.png +func_reset.png -- AwOkenWhite/clear/128x128/apps/gnome-session-reboot2.png +func_shutdown.png -- AwOkenWhite/clear/128x128/apps/gnome-session-halt2.png +os_arch.png -- AwOkenWhite/clear/128x128/start-here/start-here-arch3.png +os_clover.png -- AwOkenWhite/clear/128x128/actions/tools-wizard.png +os_gentoo.png -- AwOken/clear/128x128/start-here/start-here-gentoo.png os_hwtest.png -- AwOkenWhite/clear/128x128/apps/hw.png -os_linux.png -- Aw0kenWhite/clear/128x128/apps/supertux.png -os_linuxmint.png -- Aw0kenWhite/clear/128x128/start-here/start-here-mint3.png -os_opensuse.png -- Aw0kenWhite/clear/128x128/start-here/start-here-suse3.png -os_slackware.png -- Aw0kenWhite/clear/128x128/start-here/start-here-slackware1.png -os_suse.png -- Aw0kenWhite/clear/128x128/start-here/start-here-suse3.png -os_xubuntu.png -- Aw0kenWhite/clear/128x128/start-here/start-here-xubuntu1.png -tool_mok_tool.png -- Aw0kenWhite/clear/128x128/apps/gnome-keyring-manager.png -tool_netboot.png -- Aw0ken/clear/128x128/places/network-workgroup1.png -tool_shell.png -- Aw0ken/clear/128x128/apps/terminal3.png +os_linux.png -- AwOkenWhite/clear/128x128/apps/supertux.png +os_linuxmint.png -- AwOkenWhite/clear/128x128/start-here/start-here-mint3.png +os_opensuse.png -- AwOkenWhite/clear/128x128/start-here/start-here-suse3.png +os_slackware.png -- AwOkenWhite/clear/128x128/start-here/start-here-slackware1.png +os_suse.png -- AwOkenWhite/clear/128x128/start-here/start-here-suse3.png +os_xubuntu.png -- AwOkenWhite/clear/128x128/start-here/start-here-xubuntu1.png +tool_mok_tool.png -- AwOkenWhite/clear/128x128/apps/gnome-keyring-manager.png +tool_netboot.png -- AwOken/clear/128x128/places/network-workgroup1.png +tool_shell.png -- AwOken/clear/128x128/apps/terminal3.png vol_external.png -- AwOkenWhite/clear/128x128/devices/drive-removable-media-usb2.png -vol_internal.png -- Aw0ken/clear/128/128/drive-harddisk/Internal.png -vol_net.png -- Aw0ken/clear/128/128/drive-harddisk/Server.png -vol_optical.png - Aw0ken/clear/128x128/devices/media-optical-cd1.png +vol_internal.png -- AwOken/clear/128/128/drive-harddisk/Internal.png +vol_net.png -- AwOken/clear/128/128/drive-harddisk/Server.png +vol_optical.png - AwOken/clear/128x128/devices/media-optical-cd1.png Modified Elementary OS icon: @@ -106,15 +106,17 @@ os_redhat.png os_refind.png os_refit.png os_win.png +tool_apple_rescue.png tool_memtest.png +tool_rescue.png transparent.png -In addition, some icons are combinations of two other icons: +In addition, some icons are combinations of two other icons from different +sources: -tool_apple_rescue.png: os_mac.png with Aw0ken's gnome_network_preferences.png -tool_part.png -- vol_internal.png with Aw0ken's gparted2.png -tool_windows_rescue.png: os_win8.png with Aw0ken's gnome_network_preferences.png +tool_part.png -- vol_internal.png with AwOken's gparted2.png +tool_windows_rescue.png: os_win8.png with AwOken's gnome_network_preferences.png Licneses diff --git a/icons/tool_apple_rescue.png b/icons/tool_apple_rescue.png index 931c2b4..c1c637d 100644 Binary files a/icons/tool_apple_rescue.png and b/icons/tool_apple_rescue.png differ diff --git a/icons/tool_rescue.png b/icons/tool_rescue.png new file mode 100644 index 0000000..45de046 Binary files /dev/null and b/icons/tool_rescue.png differ diff --git a/icons/tool_windows_rescue.png b/icons/tool_windows_rescue.png index 41e0f35..19d1dd2 100644 Binary files a/icons/tool_windows_rescue.png and b/icons/tool_windows_rescue.png differ diff --git a/mkdistrib b/mkdistrib index 9386799..c2f785f 100755 --- a/mkdistrib +++ b/mkdistrib @@ -48,14 +48,20 @@ make clean rm -rf debian/refind debian/*.log # Prepare a place and copy files there.... -mkdir -p ../snapshots/$1/refind-$1/icons -cp --preserve=timestamps icons/*png ../snapshots/$1/refind-$1/icons/ +mkdir -p ../snapshots/$1/refind-$1/icons/licenses ../snapshots/$1/refind-$1/icons/svg +cp --preserve=timestamps icons/*png icons/README ../snapshots/$1/refind-$1/icons/ +cp --preserve=timestamps -r icons/licenses/* ../snapshots/$1/refind-$1/icons/licenses/ +cp --preserve=timestamps -r icons/svg/* ../snapshots/$1/refind-$1/icons/svg/ cp -a debian docs images keys fonts banners include EfiLib libeg mok net refind filesystems gptsync refind.spec install.sh mkrlconf.sh mvrefind.sh CREDITS.txt NEWS.txt BUILDING.txt COPYING.txt LICENSE.txt README.txt refind.inf Make.tiano Make.common Makefile refind.conf-sample ../snapshots/$1/refind-$1 -# Go there and prepare a souce code zip file.... +# Go there and prepare a souce code tarball.... cd ../snapshots/$1/ -rm -f refind-src-$1.zip -zip -9r refind-src-$1.zip refind-$1 +rm -f refind-src-$1.tar.gz +tar cvf refind-src-$1.tar refind-$1 +gzip -9 refind-src-$1.tar + +# Remove SVG files, since they aren't needed for binary packages.... +rm -rf refind-$1/icons/svg # Build the IA32 binaries cd refind-$1 @@ -116,13 +122,13 @@ cd .. rm -r refind-$1 # Prepare the RPM & Debian package files -cp refind-src-$1.zip ~/rpmbuild/SOURCES/ +cp refind-src-$1.tar.gz ~/rpmbuild/SOURCES/ rpmbuild -ba $StartDir/refind.spec mv ~/rpmbuild/RPMS/*/refind-$1* ./ mv ~/rpmbuild/SRPMS/refind-$1* ./ sudo alien --to-deb -k -c refind-$1*x86_64.rpm sudo chown rodsmith: refind*deb -rm ~/rpmbuild/SOURCES/refind-src-$1.zip +rm ~/rpmbuild/SOURCES/refind-src-$1.tar.gz # Clean up if [[ $SignIt == 1 ]] ; then diff --git a/refind.conf-sample b/refind.conf-sample index d4e242b..5ace75d 100644 --- a/refind.conf-sample +++ b/refind.conf-sample @@ -46,6 +46,7 @@ timeout 20 # Default is "icons". # #icons_dir myicons +#icons_dir icons/snowy # Use a custom title banner instead of the rEFInd icon and name. The file # path is relative to the directory where refind.efi is located. The color @@ -55,6 +56,7 @@ timeout 20 # #banner hostname.bmp #banner mybanner.png +#banner icons/snowy/banner-snowy.png # Specify how to handle banners that aren't exactly the same as the screen # size: @@ -179,7 +181,7 @@ timeout 20 # netboot - launch the ipxe.efi tool for network (PXE) booting # Default is shell,memtest,gdisk,apple_recovery,windows_recovery,mok_tool,about,shutdown,reboot,firmware # -#showtools shell, gdisk, memtest, mok_tool, about, reboot, exit, firmware +#showtools shell, gdisk, memtest, mok_tool, apple_recovery, windows_recovery, about, reboot, exit, firmware # Boot loaders that can launch a Windows restore or emergency system. # These tend to be OEM-specific. diff --git a/refind.spec b/refind.spec index bebb870..fb63d6c 100644 --- a/refind.spec +++ b/refind.spec @@ -1,12 +1,12 @@ Summary: EFI boot manager software Name: refind -Version: 0.9.2 +Version: 0.9.2.4 Release: 1%{?dist} Summary: EFI boot manager software License: GPLv3 URL: http://www.rodsbooks.com/refind/ Group: System Environment/Base -Source: refind-src-%version.zip +Source: refind-src-%version.tar.gz Requires: efibootmgr BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) @@ -85,6 +85,7 @@ fi # Copy configuration and support files to /usr/share/refind-%{version} install -Dp -m0644 refind.conf-sample $RPM_BUILD_ROOT/usr/share/refind-%{version}/refind/ cp -a icons $RPM_BUILD_ROOT/usr/share/refind-%{version}/refind/ +rm -rf $RPM_BUILD_ROOT/usr/share/refind-%{version}/refind/icons/svg install -Dp -m0755 install.sh $RPM_BUILD_ROOT/usr/share/refind-%{version}/ # Copy documentation to /usr/share/doc/refind-%{version} diff --git a/refind/main.c b/refind/main.c index 4d201bf..dd0fc98 100644 --- a/refind/main.c +++ b/refind/main.c @@ -189,7 +189,7 @@ static VOID AboutrEFInd(VOID) if (AboutMenu.EntryCount == 0) { AboutMenu.TitleImage = BuiltinIcon(BUILTIN_ICON_FUNC_ABOUT); - AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.9.2.3"); + AddMenuInfoLine(&AboutMenu, L"rEFInd Version 0.9.2.4"); AddMenuInfoLine(&AboutMenu, L""); AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2006-2010 Christoph Pfisterer"); AddMenuInfoLine(&AboutMenu, L"Copyright (c) 2012-2015 Roderick W. Smith");