从源代码构建 Darwin 16.6?
Building Darwin 16.6 from source?
简而言之,我的系统需要一个基础,因为它是在 mac 上构建的OS Darwin 似乎是合乎逻辑的选择,因为它需要最少的移植工作。我知道您可以从 Apple 下载 Darwin 8.0.1,完整的源代码树可用于 10.0,但是 v8 太旧并且缺少许多标准的现代功能(即不限制 root 用户的密码系统到 10 个字符,或支持区分大小写的 HFS+ 版本)。我尝试使用 darwinbuild
从源代码构建 Darwin 9/10/11/12,但由于各种服务器端原因,它总是失败。
必须有某种方法来创建相当于原始 Darwin 16 图像的方法。也许获取 macOS 的现有副本并剥离所有封闭源代码的东西?构建 Apple 在 Apple Open Source Repository 提供的源代码并用来自另一个 BSD 发行版的源代码替换 OS 所需的其余软件包?使用现有的 FreeBSD 副本并用 XNU
替换内核?必须有一些方法。欢迎对我提出的想法提出任何想法或想法。谢谢
最后一个 xnu build instructions 是针对 El Capitan(达尔文 15)的,但您也许可以关注 Sierra(达尔文 16)。在撰写本文时可用的最新源是 10.12.4,并不过分过时。
这为您提供了 macOS 的大部分内核。它不会为您提供驱动程序堆栈 - 特别是 SATA/AHCI 堆栈不是开源的,这可能是个问题。 (这些天我会抽出时间发布我们完整的 virtio 驱动程序堆栈,包括 virtio-blk 和 virtio-scsi 驱动程序,你应该能够 运行 至少在 Qemu/KVM 中没有 SATA。 )
我不知道如何让一个有用的用户区运行 - macOS/OSX 使用 launchd
作为它的 "init" 进程,并且 last published source code for that 已经有些年头了。我不知道是否需要进行一些调整才能使其在较新的内核上运行。
简而言之,我的系统需要一个基础,因为它是在 mac 上构建的OS Darwin 似乎是合乎逻辑的选择,因为它需要最少的移植工作。我知道您可以从 Apple 下载 Darwin 8.0.1,完整的源代码树可用于 10.0,但是 v8 太旧并且缺少许多标准的现代功能(即不限制 root 用户的密码系统到 10 个字符,或支持区分大小写的 HFS+ 版本)。我尝试使用 darwinbuild
从源代码构建 Darwin 9/10/11/12,但由于各种服务器端原因,它总是失败。
必须有某种方法来创建相当于原始 Darwin 16 图像的方法。也许获取 macOS 的现有副本并剥离所有封闭源代码的东西?构建 Apple 在 Apple Open Source Repository 提供的源代码并用来自另一个 BSD 发行版的源代码替换 OS 所需的其余软件包?使用现有的 FreeBSD 副本并用 XNU
替换内核?必须有一些方法。欢迎对我提出的想法提出任何想法或想法。谢谢
最后一个 xnu build instructions 是针对 El Capitan(达尔文 15)的,但您也许可以关注 Sierra(达尔文 16)。在撰写本文时可用的最新源是 10.12.4,并不过分过时。
这为您提供了 macOS 的大部分内核。它不会为您提供驱动程序堆栈 - 特别是 SATA/AHCI 堆栈不是开源的,这可能是个问题。 (这些天我会抽出时间发布我们完整的 virtio 驱动程序堆栈,包括 virtio-blk 和 virtio-scsi 驱动程序,你应该能够 运行 至少在 Qemu/KVM 中没有 SATA。 )
我不知道如何让一个有用的用户区运行 - macOS/OSX 使用 launchd
作为它的 "init" 进程,并且 last published source code for that 已经有些年头了。我不知道是否需要进行一些调整才能使其在较新的内核上运行。