Skip to main content

Blog

See important news from the RuyiSDK team at any time

Release notes for RuyiSDK 0.19

· 3 min read
xen0n
RuyiSDK 技术主管

RuyiSDK 0.19 is now released. The corresponding package manager version is also 0.19.0. You can download the RuyiSDK package manager from one of the following locations:

This update mainly consists of the following changes. Happy hacking!

RuyiSDK Package Manager

  • Fixed an issue where ruyi news list would crash when the environment locale configuration was invalid on the local machine. This is also the first contribution to the RuyiSDK package manager from an external contributor. Thanks to RekiDunois!
  • Added the ruyi admin format-manifest command for package developers to automatically format software package description files to ensure they conform to standard formats.
  • Added multi-toolchain support for ruyi venv: It's now possible to configure multiple toolchain packages with different target tuples for a single virtual environment.
  • Added the ruyi self clean command to clean up various data generated by Ruyi, freeing up storage space.
  • Provided means for distribution packagers to prevent users from accidentally running ruyi self uninstall when distributions directly redistribute RuyiSDK's officially compiled ruyi binary.
  • Implemented basic telemetry functionality, currently without data upload support. See the "Telemetry" section for details.

Telemetry

To help the RuyiSDK team better understand user habits and improve the experience, we have added basic telemetry functionality to the RuyiSDK package manager. There are 3 telemetry modes:

  • local: Only collects data, does not actively report. This is the default mode.
  • on: Collects data and reports periodically. Not yet implemented.
  • off: Completely disables telemetry.

Currently, we collect the following data:

  • When running ruyi for the first time, a small amount of device information is collected once:
    • A unique installation ID generated only from the system random number generator, unrelated to any system configuration or local data;
    • Whether the current running environment is one of several known CI services, such as GitHub Actions, GitLab CI, Travis CI, etc.;
    • Operating system kernel type and processor architecture;
    • C runtime library type and version (like glibc 2.40);
    • Linux distribution code name and version;
    • If the processor architecture is RISC-V, RISC-V-specific information such as the system model specified by the device tree and the number of CPU cores, microarchitecture, ISA string, etc. exposed by /proc/cpuinfo.
  • Each time ruyi is run, the type of command called is recorded, without parameters.
  • Each time a toolchain proxy in the Ruyi virtual environment is run, the name of the command being called is recorded.

If you do not wish to participate in telemetry, you can do one of the following two operations before running the new version of ruyi. Either ensure that the environment variable RUYI_TELEMETRY_OPTOUT=1 exists (note: not OUTPUT), or add the following to the configuration file ~/.config/ruyi/config.toml:

[telemetry]
mode = "off"

Before RuyiSDK fully supports telemetry data upload, we will inform you, and you can decide whether to delete previous telemetry data and whether to disable telemetry. You can use ruyi self clean --telemetry to delete all telemetry information, including device information.

Linux Distribution Packaging

RuyiSDK packages are now available for several major Linux distributions:

  • Debian 13 ("trixie")
  • Fedora 39, 40, 41
  • openEuler 24.03
  • Ubuntu 22.04 ("jammy"), 24.04 ("noble")
  • Arch Linux (via AUR)

We provide binaries for all three officially supported architectures: amd64, arm64, and riscv64, for all distributions except Fedora 39 and Fedora 41.