Umi Zatō is a fork of oceanix. This project provides a basic to manage OpenCore bootloader configuration using the Nix package manager.
Note
This project is not designed to simplify or make setting up OpenCore easier, the main goal is to make maintaining the OpenCore's configuration less painful.
To get started with Hackintosh and OpenCore, I highly recommend reading Dortania's guide.
- Automatically validate
Config.plistwithocvalidate - Compile *.dsl patches to *.aml
- Dependency resolution
- Modules to configure the kexts
Warning
This section is unfinished. Check out my personal config as an example instead.
- Install nix and enable flake support.
- Create a new flake with
flake.nixlike
{
description = "My OpenCore config managed by oceanix";
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
inputs.utils.url = "github:numtide/flake-utils";
inputs.oceanix.url = "github:null2264/oceanix";
outputs = { self, nixpkgs, utils, oceanix, ... }:
utils.lib.eachSystem [ "x86_64-linux" "x86_64-darwin" ] (system:
{
packages = rec {
x1c7 = (oceanix.lib.OpenCoreConfig {
pkgs = import nixpkgs {
inherit system;
overlays = [ oceanix.overlays.default ];
};
modules = [
./modules/x1c7
];
}).efiPackage;
default = x1c7;
};
});
}- Write your configuration
- Run
nix build
To test the project you just to run nix flake check
Use the provided nix-update shell script to fetch new version of certain Kexts or OpenCore itself. For example: ./nix-update --argstr package oc.voodoops2.
This project is licensed under the terms of the GPL-3.0 license.