1

I have a new machine with two 1 TB nvme drives. My intended setup is a triple boot of

  • MacOS (opencore hackintosh)
  • nixos
  • Windows 10

I have installed nixos using half of one drive and MacOS on the other drive. Idea is to install Windows later on the unused half drive…

My problem right now is that I did these two installations independently with different EFI partitions:

Disk /dev/nvme0n1: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Samsung SSD 970 EVO Plus 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: B82F9B41-F608-4292-80D2-0FFF780579C2

Device          Start        End    Sectors   Size Type
/dev/nvme0n1p1     40     409639     409600   200M EFI System
/dev/nvme0n1p2 409640 1953525127 1953115488 931.3G unknown


Disk /dev/nvme1n1: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Samsung SSD 970 EVO Plus 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A926C80C-3BBF-4B3A-B6A9-3149DEFC5E61

Device              Start        End    Sectors   Size Type
/dev/nvme1n1p1    1048576 1031798783 1030750208 491.5G Linux filesystem
/dev/nvme1n1p2 1031798784 1048575999   16777216     8G Linux swap
/dev/nvme1n1p3       2048    1048575    1046528   511M EFI System

The first one is the MacOS and the second one nixos.

So the grub that I got with the nixos install is not aware of MacOS and similarly opencore is not aware of the nixos grub. Therefore I have to go through BIOS settings each time to select which physical drive to boot. It doesn't help that they're the same model :)

enter image description here

Is there a simple way to add either opencore into grub or vice versa? Bonus points, I would want the same for Windows 10 as well…

1
  • rEFInd should work nicely
    – gronostaj
    Mar 20, 2020 at 9:36

1 Answer 1

1

I added an extra manual entry to grub in my nixos config:

# Use the systemd-boot EFI boot loader.
  boot.loader = {
    #systemd-boot.enable = true;
    efi = {
      canTouchEfiVariables = true;
      efiSysMountPoint = "/boot";
    };
    grub = {
      devices = [ "nodev" ];
      efiSupport = true;
      enable = true;
      extraEntries = ''
        menuentry "Hackintosh BOOTx64" {
          insmod part_gpt
          insmod fat
          insmod search_fs_uuid
          insmod chain
          search --fs-uuid --set=root $UUID
          chainloader /EFI/BOOT/BOOTx64.efi
        }
      '';
      version = 2;
      #useOSProber = true;
    };
  };

where $UUID is the MacOs EFI partition UUID from sudo blkid.

So now I have grub2 as my primary boot and can boot into OpenCore from there.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .