V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
LEXUGE
V2EX  ›  分享创造

Oceanix, 基于 Nix 的 OpenCore 配置管理工具

  •  1
     
  •   LEXUGE ·
    LEXUGE · 2022-08-29 09:56:12 +08:00 · 1835 次点击
    这是一个创建于 843 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近做了一个实现了一个基于 Nix 的 OpenCore 管理框架,名为 oceanix.

    主要功能有:

    1. 根据 Sample.plist 自动设置 defaults oceanix 会读取对应版本的 OpenCore 的 Sample.plist 并以此补全合适的 section 作为 defaults 。这样配置时只需要编写 dortania guide 说明需要修改的部分来覆盖 defaults 即可。此外,在 OpenCore 更新时,这些 defaults 也会自动更新,所以在更新 OpenCore 时用户基本不需要干预。
    2. 可编程的配置 因为 oceanix 基于 Nix, 所以你可以实现在配置里写函数,写注释,分离配置等操作。比如你可以抽离敏感部分并加密,也可以根据本地环境不同自动更改配置。
    3. 包管理 Oceanix 对常用的 Kexts, Drivers 等做了打包,因此你可以非常方便的引入 Kexts ,而不需要下载解压复制等操作。此外,升级 /降级 Kexts 也异常简单,只需要修改一下需要引入的包名即可。
    4. 依赖解析 Oceanix 会自动引入 Kexts, Drivers, ACPI patches 并对 Kexts 做依赖解析来保证导入顺序的正确性。你也可以非常方便的启用 /关闭某个 Kexts 和其所有子插件。
    5. 可重现 基于 Nix, oceanix 可以 bit-by-bit 地保证你的 EFI 可重现性。

    未来可能会支持:

    1. 自动 ocvalidate ,保证每次配置修改都是正确可靠的
    2. 自动进行 OC vaulting 来签名并保证配置的 integrity

    最后,这是我基于 oceanix 的 OpenCore 配置: https://github.com/LEXUGE/opencore-cfg

    项目还在非常初期阶段,文档不完善也可能有一些 Bugs ,如果你使用 Nix 并对 OpenCore 感兴趣,或是 OpenCore 用户但未接触过 Nix ,不妨来尝试一下

    第 1 条附言  ·  2022-08-29 10:34:21 +08:00
    链接有误,repo 地址为 https://github.com/LEXUGE/oceanix
    3 条回复    2022-08-30 12:12:23 +08:00
    yzld2002
        1
    yzld2002  
       2022-08-29 10:46:45 +08:00
    强,已 star
    yangbin9317
        2
    yangbin9317  
       2022-08-29 14:00:54 +08:00
    强,已 star
    sxiaojian
        3
    sxiaojian  
       2022-08-30 12:12:23 +08:00
    支持一下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1449 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 17:12 · PVG 01:12 · LAX 09:12 · JFK 12:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.