MIT License

项目介绍

ryan4yin/nixos-rk3588 是一个托管在 GitHub 上的开源项目,主要使用 Nix 编写,采用 MIT License 许可证,目前获得 170 个 Star、51 次 Fork。

仓库全名
ryan4yin/nixos-rk3588
开源许可证
MIT License
Star 数
170
Fork 数
51
未关闭 Issue
13

README 摘要

NixOS running on RK3588/RK3588s :warning: Work in progress, use at your own risk... A minimal flake to run NixOS on RK3588/RK3588s based SBCs, support both UEFI & U-Boot. Default user: rk, default password: rk3588 Warning :warning: This project is no longer maintained. Please consider migrating to the actively maintained fork gnull/nixos-rk3588. Boards UEFI support: Singal Board Computer | Boot from SD card | Boot…

完整内容见 GitHub 原始 README 或本页 。

常见问题

nixos-rk3588 用什么语言开发?

主要使用 Nix 编写,采用 MIT License 许可证,目前有 170 个 Star。

nixos-rk3588 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 nixos-rk3588 的源码?

可以直接克隆仓库:git clone https://github.com/ryan4yin/nixos-rk3588.git,默认分支为 main;安装与运行步骤见仓库 README。

nixos-rk3588 最近还在维护吗?

仓库最近一次更新为 10月4日,当前有 13 个未关闭 Issue;Star 数为 170,可作为社区活跃度的参考。

关于

Minimal NixOS running on RK3588/RK3588s based SBC(Orange Pi 5 Plus, Orange Pi 5, Rock 5A, etc)

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

简要分析

热度分
273
价值分
116
活跃状态
归档

语言占比

Nix
Shell

Release

README

NixOS running on RK3588/RK3588s

:warning: Work in progress, use at your own risk…

A minimal flake to run NixOS on RK3588/RK3588s based SBCs, support both UEFI & U-Boot.

Default user: rk, default password: rk3588

Warning

:warning: This project is no longer maintained. Please consider migrating to the actively maintained fork gnull/nixos-rk3588.


Boards

UEFI support:

Singal Board Computer Boot from SD card Boot from SSD
Orange Pi 5 :heavy_check_mark: :heavy_check_mark:
Orange Pi 5 Plus :heavy_check_mark: :heavy_check_mark:
Rock 5A :no_entry_sign: :no_entry_sign:

U-Boot support:

Singal Board Computer Boot from SD card Boot from SSD
Orange Pi 5 :heavy_check_mark: :heavy_check_mark:
Orange Pi 5 Plus :heavy_check_mark: :no_entry_sign:
Rock 5A :heavy_check_mark: :no_entry_sign:

TODO

  • UEFI support for Rock 5A, Rock 5B, Orange Pi 5B, NanoPI R6C, NanoPi R6S.
  • verify all the hardware features available by RK3588/RK3588s
    • ethernet (rj45)
    • m.2 interface(pcie & sata)
    • wifi/bluetooth
    • audio
    • gpio
    • uart/ttl
    • gpu(mali-g610-firmware + panthor)
    • npu
    • …

Flash & Boot NixOS

For UEFI, see UEFI.md.

For U-Boot, see U-Boot.md.

Debug via serial port(UART)

See Debug.md

Custom Deployment

You can use this flake as an input to build your own configuration. Here is an example configuration that you can use as a starting point: Demo - Deployment

How this flake works

A complete Linux system typically consists of five components:

  1. Bootloader (typically U-Boot or EDKII)
  2. Linux kernel
  3. Device trees
  4. Firmwares
  5. Root file system (rootfs)

Among these, the bootloader, the kernel, device trees, and firmwares are hardware-related and require customization for different SBCs. On the other hand, the majority of content in the rootfs is hardware-independent and can be shared across different SBCs.

Hence, the fundamental approach here is to use the hardware-specific components(bootloader, kernel, and device trees, firmwares) provided by the vendor(orangepi/rockpi/…), and combine them with the NixOS rootfs to build a comprehensive system.

Regarding RK3588/RK3588s, a significant amount of work has been done by Armbian on their kernel, and device tree. Therefore, by integrating these components from Armbian with the NixOS rootfs, we can create a complete NixOS system.

The primary steps involved are:

  1. Bootloader: Since no customization is required for U-Boot or edk2-rk3588, it’s also possible to directly use the precompiled image from armbian, edk2-rk3588, or the hardware vendor.
  2. Build the NixOS rootfs using this flake, leveraging the kernel and device tree provided by armbian.
    • To make all the hardware features available, we need to add its firmwares to the rootfs. Since there is no customization required for the firmwares too, we can directly use the precompiled firmwares from Armbian & Vendor too.

Screenshots

Orange Pi 5 Plus Neofetch ROCK 5A Neofetch

References

And I also got a lot of help in the NixOS on ARM Matrix group!

评论

暂无评论