0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

deepin适配Apple M1的过程(上)

深度操作系统 来源:深度操作系统 2023-07-15 11:22 次阅读

告诉大家一个令人兴奋的消息:在已经发布的deepin V23 beta版本中,深度操作系统正式适配Apple Mac mini M1啦!

Mac mini M1是苹果于2020年11月发布的迷你电脑主机芯片,它搭载了最高3.2GHz主频的8核M1处理器,带有两个雷电接口,两个USB 3.0 Type A、HDMI 2.0和一个3.5mm耳机接口。由于和同系列的Macbook Air M1、Macbook Pro M1采用了同款处理器,本次适配也为今后这两台机器的移植工作奠定了基础。

今天,我们就带着大家从Apple M1适配方案的选择、适配流程、适配工作准备三个部分,一起了解我们的适配之旅!

适配方案的选择

由于Mac M1机器采用了与普通x86_64兼容机不同的一套引导系统,所以,要移植普通PC的操作系统到它上面,首先就要解决引导系统方案的问题。由于自研一套这样的解决方案过于复杂,需要深入调研Mac M1的引导系统,甚至逆向关键硬件的驱动,最终我们选择使用了基于已经成熟且证明可靠了的Asahi Linux项目来推进我们的适配工作。

Asahi Linux是一个旨在将Linux适配到Apple Silicon平台的项目和社区。在这个社区中,已经有了一些被成功适配了的Linux发行版,例如Alpine Linux、Debian、Fedora、 Gentoo、Ubuntu等。

cd4bf5b4-1a5a-11ee-962d-dac502259ad0.png

适配流程

为了让大家了解我们的适配大致做了哪些工作,首先为大家介绍我们在Apple Silicon平台上使用Asahi Linux项目来安装和启动Linux的流程:

STEP 1

首先,在Mac OS上运行安装脚本。这个安装脚本会拉取安装配置和rootfs安装包,对剩余磁盘空间进行分区,刷写bootloader (m1n1和UBoot)和rootfs,以便后续安装流程的进行。

STEP 2

然后,关机后再启动,进入刷好的启动项。这时,会进行将所安装的Linux发行版设置成默认启动项的工作。

STEP 3

重启电脑后,系统会进入已刷写的bootloader,也就是m1n1。m1n1会根据设定,加载下一个UEFI系统的bootloader,通常是UBoot。UBoot会按照配置文件,决定是直接启动操作系统,还是启动Grub。从这里开始,后续的流程就和普通的UEFI系统类似。

STEP 4

最后,根据不同发行版的安装方式,第一次启动可能会进入配置向导中。比如官方的ArchlinuxARM,会启动到它们特别定制的calamares安装器中。

适配工作准备

针对当前的deepin M1适配项目,deepin社区团队综合考量了Asahi Linux官方安装器和

现有的deepin arm64软件仓库,在结合m1-debian项目及justforlxz之前做过的deepin-m1项目之后,在m1-debian项目的基础之上做了适配工作。

将deepin移植到m1平台,需要完成以下准备:

1.提供Mac上执行的Linux安装脚本;

2.搭建提供安装脚本,安装配置及rootfs的文件服务器。(可选http或ftp);

3.bootloader (m1n1+uboot);

4.带M1 Mac相关驱动的内核;

5.适配M1 GPU的Mesa;

6.打包/更新一些关键软件包。

因为Apple M1也是ARM架构,所以我们依旧可以利用现有的deepin arm64仓库。对于上述准备工作提到的关键组件,我们需要进行单独打包建仓。比如M1用的内核和Mesa。目前,deepin-m1项目已经公开发布在GitHub上,感兴趣的朋友可以去试一试。如果希望直接在Mac上安装,也可以直接使用脚本。

适配M1未来目标

DDE桌面环境是深度操作系统的核心项目之一。如何在Mac M1设备上提供像其他机器一样友好的交互体验,是我们未来适配的核心目标。当前,为了解决启动系统及桌面环境的问题,deepin-m1 SIG已经自行打包了M1相关的组件,并提供了我们的deepin-m1的安装脚本和安装仓库。

当前阶段,尽管已经能够实现在Mac Mini M1上正常启动deepin系统,但还没有达到可以日常使用的阶段,存在着诸多适配问题。例如:系统缺少软件应用,第一次启动无设置向导,声音和GPU硬件加速不可用等问题。目前我们正在积极着手解决这些问题。

我们也衷心希望这次深度操作系统的适配能够为Apple Silicon项目,乃至ARM上的Linux生态注入新活力,也期待对deepin-m1或deepin-arm移植感兴趣的朋友加入我们的SIG,与我们一起,为完善开源软件生态而努力。

最后,非常感谢deepin相关SIG的开发者,非常感谢你们在Asahi Linux及m1-debian项目的协助与支持。正是由于你们的贡献开源、参与开源,deepin越来越好。再次谢谢你们!

在下篇中,我们将重点介绍适配过程解决的问题,欢迎大家关注。

关于我们

deepin.org

作为国内首个桌面操作系统根社区,深度开源社区一直秉承产品创新、技术开放、过程透明、伙伴共创的理念,坚定地成为连接内部开发者和产品,外部开发者和用户的纽带。致力于打造中国主导、具有国际影响力的桌面操作系统根社区,保障操作系统供应链安全,筑牢数字基础设施安全底座。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18275

    浏览量

    222158
  • Apple
    +关注

    关注

    1

    文章

    882

    浏览量

    52529
  • usb
    usb
    +关注

    关注

    59

    文章

    7432

    浏览量

    258164
  • 操作系统
    +关注

    关注

    37

    文章

    6284

    浏览量

    121877
  • 移植
    +关注

    关注

    1

    文章

    367

    浏览量

    27854

原文标题:deepin成功适配Apple M1,我们的适配之旅!(上篇)

文章出处:【微信号:linux_deepin,微信公众号:深度操作系统】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    求助 Nano pi M1 如何安装安卓 app

    已到手 Nano pi M1, 已安装 Andoird 镜像,但这个安卓什么也不能干,插上无线网卡也无法识别,请问怎么办,因为有一个 安卓apk 需要在 Nano pi M1 验证
    发表于 07-18 13:04

    【NanoPi M1申请】RFID实验

    申请理由:项目描述:1.研究SPI URAT 总线协议2.学习NanoPi M1 的简单应用3.进行RFID 实验4.在论坛发布试用报告并分享心得体会
    发表于 08-02 18:40

    【NanoPi M1试用体验】开箱评测

    `前天收到客服的短信,说审请通过了,让我高兴了半天,然后急不可奈的等待着快递的到来,快递果然给力。昨天就到了,晚上下班,拿到了NanoPi M1。下面来看看NanoPi M1登场: 1、NanoPi
    发表于 08-07 12:33

    Nanopi M1 RFID

    。-----------------------------------------发文动力:正想在nanopi m1尝试下用SPI去连接RFID-RC522,搜寻了一下资料,在论坛里找到了到一篇打着【NanoPi M1试用体
    发表于 02-17 07:21

    山灵M1无损播放器评测

    距离山灵 M1 无损播放器的众筹也已经过去了一段时间,这款小巧的无损播放器可以说是吸引了不少用户为其买单,在 9 月份的广州 HiFi 耳机展,山灵展台上的 M1 可以说是一大热门试听设备之一
    发表于 08-16 15:26

    基于ARM架构设计的M1芯片

    Apple M1是苹果设计生产的首款专为 Mac 打造的芯片,带来了格外强大的性能、量身打造的技术,以及令人惊叹的能效表现。Apple M1与 macOS Big Sur 系统配合默契
    发表于 07-23 09:02

    在MacOs M1如何去安装Homebrew

    MacOs M1安装Homebrew 在国内最简单方法前言安装错误完事前言之前写过一篇在intel芯片的Mac安装Homebrew的文章,现在更换了M1芯片的Mac后,发现以前的方法用不了。经过
    发表于 07-29 08:37

    【天启教育M1开发板试用体验】天启M1和Micro:Bit的对比

    天启M1和Micro:Bit的对比天启M1主板的设置和麦昆小车中采用Micro:Bit主板基本相同,下面从如下几个角度对比一下这两款主板。# 基本外观对比从外观可见,他们的外形尺寸是相同的(产品尺寸
    发表于 09-13 15:44

    STM32CubeIDE是否针对新MAC中的Apple M1芯片进行了优化?

    STM32CubeIDE 是否针对新 MAC 中的 Apple M1 芯片进行了优化(具有 AArch64 和 x86 的通用二进制文件)?还是当前版本会使用 Rosetta 2 x86 仿真运行?有人试过 M1 Mac 吗?
    发表于 12-02 09:11

    Apple MacBook Pro安装STM32CubeMX失败如何解决呢

    我无法在配备 M1 max 芯片(在 Monterey 下)的新款 Apple MacBook Pro 安装 STM32CubeMX。求解答
    发表于 12-23 06:27

    RISC-V新进展!deepin 成功适配VisionFive 2

    的设计、完整的工具链、易于移植Unix系统,以及大量的开源实现和流片案例。 近期,deepin官方RISC-V SIG组成功在VisionFive 2开发板适配deepin操作系统,
    发表于 07-10 09:23

    Zoom适配M1 Mac的本机版本正在更新中

    据外媒消息,Zoom适配M1 Mac的本机版本即将在假期推出。此前,Zoom在M1 Mac和MacBooks上虽然可用,但只能间接使用。 macOS应用程序当然是为基于Intel的Mac开发的,但稍后可以通过Rosetta转换
    的头像 发表于 12-21 16:24 2272次阅读

    deepin WSL安装教程

    看完《deepin V23成功适配WSL,我们做了什么?》,大家是不是迫不及待地想试一试?接下来,我们简单演示一下deepin WSL的安装。
    的头像 发表于 07-15 11:17 792次阅读
    <b class='flag-5'>deepin</b> WSL安装教程

    deepin V23 beta适配WSL的过程

    在已经发布的deepin V23 beta版本中,深度操作系统正式适配了WSL!
    发表于 07-15 11:19 336次阅读

    deepin适配Apple M1过程(下)

    在上篇中,我们介绍了deepin适配M1的方案选择以及方案介绍,让大家了解了我们在适配前的一些思路。本篇中,我们主要让大家了解一下我们在适配
    的头像 发表于 07-15 11:23 657次阅读
    <b class='flag-5'>deepin</b><b class='flag-5'>适配</b><b class='flag-5'>Apple</b> <b class='flag-5'>M1</b>的<b class='flag-5'>过程</b>(下)