Contribute
Register

Dual boot OS X and Arch Linux with Clover?

Status
Not open for further replies.
Joined
May 25, 2015
Messages
22
Motherboard
GIGABYTE GA-Z97X-UD5H
CPU
Intel Core i7 4790K
Graphics
Gigabyte Nvidia GeForce 960
Mac
  1. 0
Classic Mac
  1. 0
Mobile Phone
  1. 0
Dual boot OS X and Antergos Linux with Clover?

I recently reinstalled Arch Linux in UEFI mode onto a separate SSD with a GPT partition scheme and I am having issues getting it to show up in Clover. I followed this Arch Wiki article https://wiki.archlinux.org/index.php/Clover and swapped out the UUID in the example with my Arch boot partition's UUID, but I still see no boot option for Linux in Clover. I also used Clover Configurator to confirm that the entry was added successfully, so I see Arch Linux under Gui > Custom Entries. I also installed grub2 like I normally would with a Linux install, so I'm not sure if that's necessary with Clover or not. Any insight on this would be much appreciated, thanks in advance.

EDIT

First of all, I should have stated that I am using Antergos, a fork (or rather GUI installer) for Arch Linux, so there can be a couple small differences from standard Arch. I made sure to install Antergos in UEFI mode, and I have also partitioned all my drives with a GUID partition table to keep things consistent.

I also tried using EasyUEFI on Windows 10 to add an entry for Linux, which works through my mobo's boot menu, but Clover still does not see this.

Questions:
- When installing Antergos, should I install the /boot/efi partition to the EFI partition on the same drive as OS X, or should I install it to it's own EFI partition?
- Do I need to install Grub2 since I am attempting to use Clover as a bootloader?
- Is it recommended to install Linux before or after OS X?
- Would reinstalling OS X/Clover "reindex" (for lack of a better term) all of my different boot drives, and potentially pick up my Linux install, or should it show up automatically if it's available?
 
Last edited:
BUMP
I updated the OP with hopefully more useful information. Thanks again in advanced.
 
BUMP
I updated the OP with hopefully more useful information. Thanks again in advanced.

In the EFI partition you have a folder EFI/Clover which has a boot file in it with other files/kexts needed to boot OS X.
To this EFI folder, add a Linux folder and copy the Grub2 UEFI boot file here (I think this is right). I saw this in passing on one of the Linux sites when I was looking for something else so am not 100% sure this is correct. You might try it and see if it works.
 
In the EFI partition you have a folder EFI/Clover which has a boot file in it with other files/kexts needed to boot OS X.
To this EFI folder, add a Linux folder and copy the Grub2 UEFI boot file here (I think this is right). I saw this in passing on one of the Linux sites when I was looking for something else so am not 100% sure this is correct. You might try it and see if it works.
This alone did not seem to help at all. I actually accidentally did the exact thing this morning by reinstalling Antergos and setting my EFI partition to the same one that OS X was using (without formatting of course). Antergos boots fine, and the files are there as they should be on the OS X SSD, but I still cannot see a boot option in Clover.
 
This alone did not seem to help at all. I actually accidentally did the exact thing this morning by reinstalling Antergos and setting my EFI partition to the same one that OS X was using (without formatting of course). Antergos boots fine, and the files are there as they should be on the OS X SSD, but I still cannot see a boot option in Clover.
I am in the process right now of cleaning a HDD with Diskpart to install a new license of Win7 to upgrade to Win10 on the Asus Z87I-Deluxe. Once this is done I can clean another drive and format it later but I will try tomorrow to install ArchLinux and replicate your problems.
Please post a link to the exact version you are using so we can have apples to apples. Also any other apps you are using to boot if other than Clover for OS X and Grub2 for Linux.
I currently have El Cap running on this build and can easily try a dual boot with Linux first - the goal being dual boot with Win10 UEFI, there is no reason not to try for triple boot on separate drives.
Will take many, many notes and maybe write a guide when I am off for 5 days starting next Thursday. In the meantime, 12 hour shift until then.
 
Hi prototech,

I was wondering if you had any luck with your Clover - Arch Linux attempt (I realize it is an old thread). I'm trying the triple boot macOS Sierra, Windows 10 and Manjaro. It goes w/o saying that Clover sees only Sierra and Windows 10.

Thanks in advance.
 
Hi Cacamaca,

Any luck? I'm trying to get the exact same build going. I'm not having much luck, lots of hacking, but no joy with Manjaro and Clover...
 
Ok, so I got this working. I made myself a little PDF cheat sheet for next time, I'll post it here for anyone that wants it. You'll need to have some knowledge of the command line as there is not a great deal of explanation in my PDF. If you have a question, please ask and I'll try to help.
 

Attachments

  • Manjaro - Clover.pdf
    206.7 KB · Views: 4,327
How I was able to boot Manjaro from Clover on a Hackintosh (UEFI)

(Just thought I'd post the contents of my pdf in the previous post so that it's easier to read here...)

1. Install Manjaro to gpt disk by booting from USB installer with UEFI.
2. Mount efi partition from Hackintosh HD /esp on Manjaro HD
3. Copy all files from /boot on Manjaro to another location, unmount current efi partition and delete contents of /boot .
4. Create a “Manjaro” folder within the “EFI” folder under /esp (This is the efi partition Hackintosh HD). Bind the “Manjaro” folder in /esp/EFI/ to /boot
5. Copy back the contents of /boot from the copy create in step 3.
6. edit fstab to make the above mount and bind permanent.
7. Edit the Clover config.plist to boot Manjaro (I used the Clover Configurator under OS X, but you could also just edit config.plist)
8. See if it all works, and then delete the efi partition on the Manjaro HD that the Manjaro installer created.
9. Enjoy booting MacOS and Manjaro from Clover (and maybe Windows 10 too as I have.)

Screenshots and config files below (You’ll need to modify a few things to suit your setup, such as the initramfs.img files, and the root partition UUID, and the paths if your setup is a little different to mine). Commands I ran on Manjaro(Some are from memory, so if you have an error please post and I’ll double check it…):

Code:
sudo mkdir /esp
sudo lsblk
sudo umount /boot/efi
sudo mount /dev/sdb1 /esp
sudo mkdir /esp/EFI/Manjaro
mkdir ~/Documents/Boot\ Backup
sudo sudo cp -r /boot ~/Documents/Boot\ Backup/
sudo rm -rf /boot/*
mount --bind /esp/EFI/Manjaro/ /boot
sudo cp -r ~/Documents/boot/* /boot/
sudo nano /etc/fstab

Contents of: /etc/fstab
Code:
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>                           <mount point>  <type>  <options>  <dump>  <pass>

# Old efi mount entry commented out...
#UUID=9AE9-7292                            /boot/efi      vfat    defaults,noatime 0       2

#Mount efi from mac hd and bind "Manjaro' folder to boot
UUID=67E3-17ED                            /esp           vfat    defaults,noatime 0       2
/esp/EFI/Manjaro/ /boot                    none    defaults,bind    0       0

UUID=0c64bcd5-d703-4026-ad95-b27e2d223db2 /              ext4    defaults,noatime,discard 0       1
/swapfile                                 none           swap    defaults,noatime,discard 0       0
tmpfs

Contents of "GUI" section of: config.plist (this is under the "GUI" section, I'll post the full config.plist below for clarity)

Code:
<key>Custom</key>
 <dict>
   <key>Entries</key>
   <array>
     <dict>
       <key>AddArguments</key>
       <string>root=UUID=0c64bcd5-d703-4026-ad95-b27e2d223db2 rw add_efi_memmap initrd=/EFI/Manjaro/intel-ucode.img initrd=/EFI/Manjaro/initramfs-4.4-x86_64-fallback.img nomodeset elevator=deadline rw quiet</string>
       <key>CustomLogo</key>
       <string>Alternate</string>
       <key>Disabled</key>
       <false/>
       <key>Hidden</key>
       <false/>
       <key>Ignore</key>
       <false/>
       <key>Path</key>
       <string>\EFI\Manjaro\vmlinuz-4.4-x86_64</string>
       <key>Title</key>
       <string>Manjaro Fallback</string>
       <key>Type</key>
       <string>Linux</string>
       <key>Volume</key>
       <string>EE59D465-4301-48B8-8089-5E732456D49E</string>
       <key>VolumeType</key>
       <string>Internal</string>
     </dict>
     <dict>
       <key>AddArguments</key>
       <string>root=UUID=0c64bcd5-d703-4026-ad95-b27e2d223db2 rw add_efi_memmap initrd=/EFI/Manjaro/intel-ucode.img initrd=/EFI/Manjaro/initramfs-4.4-x86_64.img nomodeset elevator=deadline rw quiet</string>
       <key>CustomLogo</key>
       <string>Alternate</string>
       <key>Disabled</key>
       <false/>
       <key>Hidden</key>
       <false/>
       <key>Ignore</key>
       <false/>
       <key>Path</key>
       <string>\EFI\Manjaro\vmlinuz-4.4-x86_64</string>
       <key>Title</key>
       <string>Manjaro</string>
       <key>Type</key>
       <string>Linux</string>
       <key>Volume</key>
       <string>EE59D465-4301-48B8-8089-5E732456D49E</string>
       <key>VolumeType</key>
       <string>Internal</string>
     </dict>
   </array>
 </dict>

Full conents of: config.plist
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>ACPI</key>
    <dict>
        <key>DSDT</key>
        <dict>
            <key>Debug</key>
            <false/>
            <key>DropOEM_DSM</key>
            <false/>
            <key>Fixes</key>
            <dict>
                <key>FiX_TMR_40000</key>
                <false/>
                <key>FiX_WAK_200000</key>
                <false/>
                <key>NewWay_80000000</key>
                <false/>
            </dict>
            <key>Name</key>
            <string>DSDT.aml</string>
            <key>ReuseFFFF</key>
            <false/>
        </dict>
        <key>SSDT</key>
        <dict>
            <key>DropOem</key>
            <false/>
            <key>Generate</key>
            <false/>
        </dict>
    </dict>
    <key>Boot</key>
    <dict>
        <key>Arguments</key>
        <string>dart=0 darkwake=0</string>
        <key>Debug</key>
        <false/>
        <key>DefaultVolume</key>
        <string>Hackintosh HD</string>
        <key>Legacy</key>
        <string>PBR</string>
        <key>Log</key>
        <true/>
        <key>Secure</key>
        <false/>
        <key>Timeout</key>
        <integer>3</integer>
        <key>XMPDetection</key>
        <false/>
    </dict>
    <key>CPU</key>
    <dict>
        <key>UseARTFrequency</key>
        <false/>
    </dict>
    <key>Devices</key>
    <dict>
        <key>Audio</key>
        <dict>
            <key>Inject</key>
            <string>1</string>
        </dict>
        <key>FakeID</key>
        <dict>
            <key>ATI</key>
            <string>0x0</string>
            <key>IMEI</key>
            <string>0x0</string>
            <key>IntelGFX</key>
            <string>0x0</string>
            <key>LAN</key>
            <string>0x0</string>
            <key>NVidia</key>
            <string>0x0</string>
            <key>SATA</key>
            <string>0x0</string>
            <key>WIFI</key>
            <string>0x0</string>
            <key>XHCI</key>
            <string>0x0</string>
        </dict>
        <key>USB</key>
        <dict>
            <key>FixOwnership</key>
            <false/>
            <key>Inject</key>
            <false/>
        </dict>
    </dict>
    <key>DisableDrivers</key>
    <array>
        <string>Nothing</string>
    </array>
    <key>GUI</key>
    <dict>
        <key>Custom</key>
        <dict>
            <key>Entries</key>
            <array>
                <dict>
                    <key>AddArguments</key>
                    <string>root=UUID=0c64bcd5-d703-4026-ad95-b27e2d223db2 rw add_efi_memmap initrd=/EFI/Manjaro/intel-ucode.img initrd=/EFI/Manjaro/initramfs-4.4-x86_64-fallback.img nomodeset elevator=deadline rw quiet</string>
                    <key>CustomLogo</key>
                    <string>Alternate</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Hidden</key>
                    <false/>
                    <key>Ignore</key>
                    <false/>
                    <key>Path</key>
                    <string>\EFI\Manjaro\vmlinuz-4.4-x86_64</string>
                    <key>Title</key>
                    <string>Manjaro Fallback</string>
                    <key>Type</key>
                    <string>Linux</string>
                    <key>Volume</key>
                    <string>EE59D465-4301-48B8-8089-5E732456D49E</string>
                    <key>VolumeType</key>
                    <string>Internal</string>
                </dict>
                <dict>
                    <key>AddArguments</key>
                    <string>root=UUID=0c64bcd5-d703-4026-ad95-b27e2d223db2 rw add_efi_memmap initrd=/EFI/Manjaro/intel-ucode.img initrd=/EFI/Manjaro/initramfs-4.4-x86_64.img nomodeset elevator=deadline rw quiet</string>
                    <key>CustomLogo</key>
                    <string>Alternate</string>
                    <key>Disabled</key>
                    <false/>
                    <key>Hidden</key>
                    <false/>
                    <key>Ignore</key>
                    <false/>
                    <key>Path</key>
                    <string>\EFI\Manjaro\vmlinuz-4.4-x86_64</string>
                    <key>Title</key>
                    <string>Manjaro</string>
                    <key>Type</key>
                    <string>Linux</string>
                    <key>Volume</key>
                    <string>EE59D465-4301-48B8-8089-5E732456D49E</string>
                    <key>VolumeType</key>
                    <string>Internal</string>
                </dict>
            </array>
        </dict>
        <key>Hide</key>
        <array>
            <string>Windows</string>
            <string>\EFI\BOOT\BOOTX64.EFI</string>
        </array>
        <key>Language</key>
        <string>en:0</string>
        <key>Mouse</key>
        <dict>
            <key>DoubleClick</key>
            <integer>500</integer>
            <key>Enabled</key>
            <true/>
            <key>Mirror</key>
            <false/>
            <key>Speed</key>
            <integer>8</integer>
        </dict>
        <key>Scan</key>
        <dict>
            <key>Entries</key>
            <true/>
            <key>Legacy</key>
            <false/>
            <key>Linux</key>
            <true/>
            <key>Tool</key>
            <true/>
        </dict>
        <key>ScreenResolution</key>
        <string>1920x1080</string>
        <key>Theme</key>
        <string>ios7</string>
    </dict>
    <key>Graphics</key>
    <dict>
        <key>Inject</key>
        <dict>
            <key>ATI</key>
            <false/>
            <key>Intel</key>
            <true/>
            <key>NVidia</key>
            <false/>
        </dict>
        <key>NvidiaSingle</key>
        <false/>
    </dict>
    <key>KernelAndKextPatches</key>
    <dict>
        <key>AppleRTC</key>
        <true/>
        <key>AsusAICPUPM</key>
        <true/>
        <key>Debug</key>
        <false/>
        <key>DellSMBIOSPatch</key>
        <false/>
        <key>KernelCpu</key>
        <false/>
        <key>KernelHaswellE</key>
        <false/>
        <key>KernelLapic</key>
        <false/>
        <key>KernelPm</key>
        <true/>
        <key>KextsToPatch</key>
        <array>
            <dict>
                <key>Comment</key>
                <string>External icons patch</string>
                <key>Find</key>
                <data>
                RXh0ZXJuYWw=
                </data>
                <key>Name</key>
                <string>AppleAHCIPort</string>
                <key>Replace</key>
                <data>
                SW50ZXJuYWw=
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>Patch AppleTyMCEDriver to use MacPro5,1 name</string>
                <key>Find</key>
                <data>
                cgoATWFjUHJvNCwxAE1hY1BybzUsMQBY
                </data>
                <key>Name</key>
                <string>AppleTyMCEDriver</string>
                <key>Replace</key>
                <data>
                cgoAAAAAAAAAAAAAAAAAAAAAAAAAAABY
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.12-AppleHDA/Realtek ALC...</string>
                <key>Find</key>
                <data>
                ihnUEQ==
                </data>
                <key>Name</key>
                <string>AppleHDA</string>
                <key>Replace</key>
                <data>
                AAAAAA==
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.9-10.12-AppleHDA/Realtek ALC1150</string>
                <key>Find</key>
                <data>
                ixnUEQ==
                </data>
                <key>Name</key>
                <string>AppleHDA</string>
                <key>Replace</key>
                <data>
                AAnsEA==
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>AppleHDA/Resources/xml&gt;zml</string>
                <key>Find</key>
                <data>
                eG1sLnps
                </data>
                <key>Name</key>
                <string>AppleHDA</string>
                <key>Replace</key>
                <data>
                em1sLnps
                </data>
            </dict>
        </array>
    </dict>
    <key>RtVariables</key>
    <dict>
        <key>BooterConfig</key>
        <string>0x28</string>
        <key>CsrActiveConfig</key>
        <string>0x3</string>
    </dict>
    <key>SMBIOS</key>
    <dict>
        <key>BiosReleaseDate</key>
        <string>10/07/10</string>
        <key>BiosVendor</key>
        <string>Apple Inc.</string>
        <key>BiosVersion</key>
        <string>MP51.88Z.007F.B03.1010071432</string>
        <key>Board-ID</key>
        <string>Mac-F221BEC8</string>
        <key>BoardManufacturer</key>
        <string>Apple Inc.</string>
        <key>BoardType</key>
        <integer>11</integer>
        <key>ChassisAssetTag</key>
        <string>Pro-Enclosure</string>
        <key>ChassisManufacturer</key>
        <string>Apple Inc.</string>
        <key>ChassisType</key>
        <string>06</string>
        <key>Family</key>
        <string>Mac Pro</string>
        <key>Manufacturer</key>
        <string>Apple Inc.</string>
        <key>Mobile</key>
        <false/>
        <key>ProductName</key>
        <string>MacPro5,1</string>
        <key>SerialNumber</key>
        <string>G8127W9KGWR</string>
        <key>Trust</key>
        <false/>
        <key>Version</key>
        <string>1.0</string>
    </dict>
    <key>SystemParameters</key>
    <dict>
        <key>InjectKexts</key>
        <string>Yes</string>
        <key>InjectSystemID</key>
        <true/>
    </dict>
</dict>
</plist>

Screen Shots of Clover Configurator:
Screen%20Shot%202_zpsdanjdz4j.png

Screen%20Shot%201_zpsleks48wq.png

Screen Shot of EFI partition:

Screen%20Shot%203_zpsmuynzj1x.png
 
Thank you for the guide! Really good !
 
Status
Not open for further replies.
Back
Top