Skip to content

Open Source

Violoop OS is built on free and open source software (FLOSS). The bootloader and the Linux kernel are licensed under the GNU General Public License, version 2 (GPL-2.0), and a large part of the userland (Debian 12) is under GPL-3.0 / LGPL-3.0 and other licenses.

This page tells you two things every owner is entitled to:

  1. Where to get the source for the GPL-2 bootloader and kernel.
  2. How to log in as admin and modify the GPL-3 software running on your device.

Baseline: Violoop OS on Rockchip RK3576, Debian 12 (arm64), BSP v0.3.3, Linux kernel 6.1.99. A machine-readable compliance notice (with the exact build commit of every component) also ships on the device at docs/OPEN-SOURCE-NOTICE.md, and the precise build SHAs are recorded in kernel/prebuilt/manifest.json.


Boot & Kernel source code (GPL-2.0)

The bootloader (U-Boot) and the Linux kernel are the two GPL-2 components at the heart of the system. Their complete corresponding source code, including every modification we made for the RK3576 platform, is published in public Git repositories, pinned to the exact commit used to build the shipped firmware:

ComponentLicenseSource repositoryBuild commit
Linux kernel 6.1.99GPL-2.0https://github.com/BvioTech/kernelc30a8bdb8e89b5308d93138d8a8a7c2f81af0996
U-Boot (bootloader)GPL-2.0+https://github.com/BvioTech/u-bootee0b6606df48838d04d450f63a836d4df02844be
AIC8800D80 Wi-Fi/BT driverGPL-2.0https://github.com/BvioTech/rkwifibt475dedc0c49bede76fe61cb791d9f0a445b7ed7a
Rockchip rkbin (blob sources)mixedhttps://github.com/BvioTech/rkbina05c861acc7ec3f82b0de830a0838ded74d9627e

Clone a repository and check out the matching commit to obtain the exact source used in this firmware:

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

What we changed: the kernel carries an added touchscreen driver (sw42000_touchscreen), several device-tree (DTS) adaptations, and configuration changes (overlayfs / squashfs-zstd / board driver options). U-Boot is built unmodified from the revision above. Each repository also ships the corresponding COPYING / LICENSE file; the GPL-2.0 text is at https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.

Boot logo — not covered by GPL-2

The logo shown on screen at power-on (the U-Boot splash logo.bmp and the kernel splash logo_kernel.bmp) is stored as a bitmap asset inside resource.img in the boot partition — packed alongside the kernel device tree, not compiled into the bootloader or kernel. These images are Violoop's own branding artwork: a proprietary asset, not part of the GPL-2.0 U-Boot or Linux source and not subject to its terms. Accordingly, the source-disclosure obligation above covers the bootloader and kernel code only; it does not extend to the logo artwork in resource.img.


Modifying the GPL-3 software on your device

The userland is Debian 12 (bookworm), which includes many components under GPL-3.0 and LGPL-3.0 (for example bash, coreutils, and the GNU toolchain). GPL-3 grants you, as the owner of the device, the right to install and run your own modified versions of that software — the anti-tivoization guarantee in section 6 of the license.

Violoop OS is designed so that this right is always usable: the admin account can always log in — locally and remotely — and can make persistent changes to the system.

Step 1 — Log in as admin

admin is the login/administration account. It is a member of the sudo group, so it has full root privileges via sudo.

  • Default credentials: username admin, password admin.
  • Production builds ship that password pre-expired: on your first login you are required to set a new password. The account is never locked and remote access is never removed — you simply choose your own password.

You can reach the account either way:

  • Locally — via an attached keyboard + display, or a serial console.
  • Over SSH — over the network, or over the device's USB gadget. By design, the admin user is always permitted to authenticate over SSH (an explicit Match User admin rule keeps both password and public-key auth open regardless of the hardening profile), so the owner is never locked out.
sh
ssh admin@<device-ip>
# password: admin  (production: you'll be prompted to set a new one on first login)

Step 2 — Understand the writable overlay

The root filesystem is a read-only squashfs base with a writable overlay backed by the data partition (ext4). This means the merged root you see at runtime is writable: files you change or packages you install land on the writable overlay and persist across reboots. You do not need to reflash the image to modify software.

Step 3 — Build and install a modified GPL-3 package

Fetch the source of the package you want to change, modify it, rebuild it, and install your build:

sh
# get the source of, e.g., coreutils (GPL-3.0)
sudo apt-get update
sudo apt-get source coreutils
sudo apt-get build-dep coreutils

# ... make your changes in the unpacked source tree ...

cd coreutils-*/
dpkg-buildpackage -us -uc -b        # produce a .deb

# install your modified build
sudo dpkg -i ../coreutils_*_arm64.deb

Your modified version now runs on the device. For a quick change you can also edit or replace an installed file directly (e.g. under /usr/bin) — because of the writable overlay the change persists.

Kernel note: the kernel and bootloader are GPL-2, which does not carry the anti-tivoization requirement, and production units use a verified (secure) boot chain. To run a modified kernel, rebuild from the kernel repository above; on secure-boot units a modified kernel image must be re-signed to boot. The GPL-3 anti-tivoization guarantee applies to the userland, which you can freely modify and run as shown above.


Debian userland source

The included Debian packages are unmodified. Their source is available per each package's license from the official Debian archive:


Written offer

In addition to the public repositories above, for three (3) years from the date you received the product you may request the complete corresponding source code of the included GPL/LGPL components. We will provide it on physical media or via a download link for no more than the cost of media and shipping.

This offer is valid to any third party in possession of a copy of the product, in accordance with GPL section 3(b).