Skip to content

开源说明

Violoop OS 构建于**自由与开源软件(FLOSS)**之上。引导加载器(U-Boot)与 Linux 内核以 GNU 通用公共许可证第 2 版(GPL-2.0) 授权,而用户态(Debian 12)中有相当一部分以 GPL-3.0 / LGPL-3.0 及其他许可证授权。

本页面向每一位设备所有者说明两件你有权做的事:

  1. 在哪里获取 GPL-2 引导加载器与内核的源代码。
  2. 如何以 admin 登录并修改设备上运行的 GPL-3 软件

版本基线:Violoop OS,Rockchip RK3576 平台,Debian 12(arm64),BSP v0.3.3,Linux 内核 6.1.99。 设备内还随附一份机器可读的合规声明(含每个组件的精确构建提交):docs/OPEN-SOURCE-NOTICE.md;各组件精确构建 SHA 亦记录于 kernel/prebuilt/manifest.json


Boot 与 Kernel 源代码(GPL-2.0)

引导加载器(U-Boot)与 Linux 内核是系统核心的两个 GPL-2 组件。它们的完整对应源代码——包含我们为 RK3576 平台所做的全部修改——已托管于公开 Git 仓库,并以精确提交锁定至出厂固件的实际构建版本:

组件许可证源码仓库构建提交
Linux 内核 6.1.99GPL-2.0https://github.com/BvioTech/kernelc30a8bdb8e89b5308d93138d8a8a7c2f81af0996
U-Boot(引导加载器)GPL-2.0+https://github.com/BvioTech/u-bootee0b6606df48838d04d450f63a836d4df02844be
AIC8800D80 Wi-Fi/蓝牙驱动GPL-2.0https://github.com/BvioTech/rkwifibt475dedc0c49bede76fe61cb791d9f0a445b7ed7a
Rockchip rkbin(blob 源)混合https://github.com/BvioTech/rkbina05c861acc7ec3f82b0de830a0838ded74d9627e

克隆仓库并检出对应提交,即为本固件所用的完整源码:

sh
git clone https://github.com/BvioTech/kernel
cd kernel && git checkout c30a8bdb8e89b5308d93138d8a8a7c2f81af0996

我们改了什么: 内核新增了触摸屏驱动 sw42000_touchscreen、若干设备树(DTS)适配,以及内核配置改动(overlayfs / squashfs-zstd / 板级驱动开关)。U-Boot 按上表版本原样构建、未做源码修改。各仓库内亦随附对应的 COPYING / LICENSE 文件;GPL-2.0 全文见 https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt

开机 Logo —— 不属于 GPL-2

开机时屏幕上显示的 Logo(U-Boot 启动画面 logo.bmp 与内核启动画面 logo_kernel.bmp)以位图素材的形式存放于 boot 分区内的 resource.img 中——与内核设备树一起打包,并未编译进引导加载器或内核。这些图片是 Violoop 自有的品牌美术素材:属于专有素材,不属于 GPL-2.0 的 U-Boot 或 Linux 源码,不受其条款约束。因此,上述源码开放义务仅覆盖引导加载器与内核的代码,并不延伸至 resource.img 中的 Logo 美术素材。


修改设备上的 GPL-3 软件

用户态基于 Debian 12(bookworm),其中包含大量 GPL-3.0LGPL-3.0 组件(例如 bashcoreutils 以及 GNU 工具链)。GPL-3 赋予你——作为设备所有者——安装并运行你自己修改版本的权利,即许可证第 6 条的「反 Tivo 化(anti-tivoization)」保障。

Violoop OS 的设计确保这项权利始终可用:admin 账户始终可以登录(本地与远程),并可对系统做持久修改。

第一步 —— 以 admin 登录

admin 是登录/管理账户,隶属 sudo 组,因此可经 sudo 获得完整 root 权限。

  • 默认凭据: 用户名 admin,口令 admin
  • 生产态固件出厂时该口令被置为**「已过期」**:你首次登录时会被强制设置新口令。账户永不锁定、远程访问权永不移除——你只是换成自己的口令而已。

登录方式任选其一:

  • 本地 —— 通过外接键盘 + 显示器,或串口控制台。
  • SSH —— 经网络,或经设备的 USB gadget。按设计,admin 用户始终允许通过 SSH 认证(一条显式的 Match User admin 规则无论加固档位如何都保持口令与公钥认证开启),所有者绝不会被锁在门外。
sh
ssh admin@<设备IP>
# 口令:admin (生产态:首次登录会提示你设置新口令)

第二步 —— 理解可写 overlay

根文件系统是只读的 squashfs 基底叠加一层可写 overlay(后端为 data 分区,ext4)。也就是说,你在运行时看到的合并根是可写的:你改动的文件、安装的软件包都会落在可写 overlay 上,并在重启后依然保留。修改软件无需重刷镜像。

第三步 —— 构建并安装修改后的 GPL-3 软件包

获取要修改的软件包源码,改动、重新构建,然后安装你的构建产物:

sh
# 以 coreutils(GPL-3.0)为例,获取源码
sudo apt-get update
sudo apt-get source coreutils
sudo apt-get build-dep coreutils

# …… 在解包后的源码树中做你的修改 ……

cd coreutils-*/
dpkg-buildpackage -us -uc -b        # 生成 .deb

# 安装你修改后的构建
sudo dpkg -i ../coreutils_*_arm64.deb

你修改后的版本即在设备上运行。若只是小改动,也可直接编辑或替换已安装的文件(如 /usr/bin 下的文件)——得益于可写 overlay,改动同样会保留。

关于内核: 内核与引导加载器为 GPL-2,不含反 Tivo 化要求,且生产设备采用验证(安全)启动链。若要运行修改后的内核,请从上文的内核仓库重新构建;在安全启动设备上,修改后的内核镜像需重新签名方可启动。GPL-3 的反 Tivo 化保障作用于用户态——如上所示,你可以自由修改并运行它。


Debian 用户态源码

所含 Debian 软件包未经修改。其源代码可依各包许可证从 Debian 官方归档获取:


书面要约(Written Offer)

除上述公开仓库外,自您收到本产品之日起 三(3)年内,您亦可来函索取所含 GPL/LGPL 组件的完整对应源代码。我们将以不超过介质与邮寄成本的费用,通过物理介质或下载链接向您提供。

本要约向任何持有本产品副本的第三方开放,符合 GPL 第 3(b) 条。