RR: redpill’s preinstallation and recovery environment
GitHub Repo
GPL-V3
July 23, 2026 at 08:22 PM
0 views

RR: redpill’s preinstallation and recovery environment

@RROrgProject Author

logo

RR: redpill’s preinstallation and recovery environment

The ultimate solution to self-centralized Synology DSM OS on any local machine with any x86/x64 CPU architecture via a single flash of bootload pre-installation process and a recovery environment. This blog post dives into what RR is, how it works, its components, and how you can contribute or get involved.

GitHub Release GitHub Downloads (all assets, all releases) GitHub Issues or Pull Requests by label

Introduction and Vision

RR stands for redpill’s preinstallation and recovery environment. It is designed for enthusiasts and professionals who want a self-contained path to running the Synology DSM experience on hardware that is not a genuine Synology device. The core idea is to provide a bootloader pre-installation workflow that can be flashed once and then used in a recovery environment to boot, install, and manage a DSM-like setup on any compatible x86/x64 machine. The project emphasizes education, experimentation, and learning rather than commercial deployment.

[Display image for engagement]

Disclaimer

  • Hardware/hard-drives are priced while data is priceless. Any modification to boot configuration or prebuilt bootloader images carries risk of data loss. RR and its maintainers do not assume liability for data destruction or any personal losses arising from use.
  • The project is intended for educational and learning purposes. Commercial use of the software is strictly prohibited under the stated terms.

Documentation & FAQ

RR offers a variety of resources to help users get started, troubleshoot, and understand the ecosystem:

  • RRManager: a companion tool for management tasks.
  • rr-tools: a collection of utilities to assist with builds, tests, and packaging.
  • blog: a hub for updates, tutorials, and community experiences.
  • docs: official documentation for in-depth guidance and references.
  • 📣 Discussions: a channel to discuss ideas, issues, and improvements.

Key community channels provide a path to help and collaboration, including language-specific discussions and translations.

Components: What makes RR work

During the compilation and setup process, an important note is that the system often requires an active Internet connection to fetch model and version information and to download the corresponding ROM. If an internet connection is not available, the project provides a path to build a pre-compiled bootloader via RR-CUSTOM.

  • Models: models.xlsx lists supported DSM models and configurations.

  • PATs: pats.xlsx contains portable activation tokens or parameterized settings used in workflows.

  • Addons: addons.xlsx houses optional enhancements that can be integrated into the build.

  • Modules: modules.xlsx captures modular pieces of functionality that can be included or excluded.

  • Driver Lookup: a resource to identify and map drivers for diverse hardware.

  • Proxmox VE One Click Install:

  • A quickstart command to install a DSM-like environment on Proxmox Virtual Environment using a bootloader and a virtual disk.

  • Optional Parameters:

    • --onboot <0|1> Enable VM on boot, default 1 (enable)
    • --efi < 0|1> Enable UEFI boot, default 1 (enable)
    • --bltype Bootloader disk type, default sata
    • --storage Storage name for images, as local-lvm, default auto get
    • --v9ppath Set to /path/to/9p to mount virtio 9p share
    • --vfsdirid Set to to mount virtio fs share
    • --tag Image tag, download latest release if not set
    • --img Local image path, use local image if set
  • Docker Compose snippet (illustrative example):

  • Please download the rr.img file from the latest release and replace the path with your actual rr.img.

  • A typical setup includes a QEMU image, a container name, and environment variables for boot, RAM, CPU, and disk configurations.

  • The example below shows how to spin up an RR-enabled environment using docker-compose:

  version: "3.9"
  services:
    rr:
      image: qemux/qemu:latest
      container_name: rr
      environment:
        BOOT: ""
        RAM_SIZE: "4G" # >= 4G recommended for DSM
        CPU_CORES: "2"
        DISK_FMT: "qcow2"
        DISK_TYPE: "sata"
        DISK_SIZE: "32G" # data disk size
        ARGUMENTS: "-device nec-usb-xhci,id=usb0,multifunction=on -drive file=/rr.img,media=disk,format=raw,if=none,id=udisk1 -device usb-storage,bus=usb0.0,port=1,drive=udisk1,bootindex=999,removable=on"
      devices:
        - /dev/kvm
        - /dev/net/tun
      cap_add:
        - NET_ADMIN
      ports:
        - 5000:5000 # For DSM management
        - 5001:5001 # For DSM management
        - 7681:7681 # For RR management
        - 7304:7304 # For RR management
        - 7080:7080 # For RR management
        - 8006:8006 # For QEMU management
      volumes:
        - ./rr.img:/rr.img
        - ./data:/storage
      restart: always
  • GPU options:
  • vGPU resources and drivers exist for certain hardware configurations, with links to community resources and patches.
  • iGPU support covers Intel-based setups, with various backports and patches available through community projects and blogs.

GPU and hardware notes

  • vGPU resources
  • The ecosystem contains resources like蔚然小站 and gpu-driver patches that enable Nvidia or other GPU virtualization on DSM-like environments.
  • iGPU resources
  • Intel iGPU support can be pursued via patches and backports from community repositories.
  • These resources may help accelerate certain tasks within the virtualized environment.

Contributing: How to participate

If you want to contribute to localization and internationalization, a practical guide is provided. The workflow uses gettext to extract translatable strings and generate language templates, followed by populating language-specific PO files.

  • Practical steps (simplified):
  • Install gettext and clone the repository.
  • Extract strings from shell scripts into a pot file.
  • Convert the pot file to language templates for zh_CN and other locales.
  • Merge translations into existing PO files and generate MO files.
  • Suggested translation maintainers and teams for languages include:
    • de_DE: @Tim Krämer
    • en_US: @rrorg
    • ja_JP: @andatoshiki & @toshikidev
    • ko_KR: @EXP : jeong1986
    • ru_RU: @Alex
    • tr_TR: @miraç bahadır öztürk
    • vi_VN: @Ngọc Anh Trần
    • zh_CN: @rrorg
    • zh_HK: @rrorg
    • zh_TW: @March Fun (豪客幫)
  • Translation workflow (illustrative commands):
  sudo apt install gettext
  git clone https://github.com/rrorg/rr.git
  cd files/initrd/opt/rr
  xgettext -L Shell --keyword=TEXT *.sh -o lang/rr.pot
  sed -i 's/charset=CHARSET/charset=UTF-8/' lang/rr.pot
  mkdir -p lang/zh_CN/LC_MESSAGES
  msginit -i lang/rr.pot -l zh_CN.UTF-8 -o lang/zh_CN/LC_MESSAGES/rr.po
  for I in $(find lang -path *rr.po); do msgmerge --width=256 -U ${I} lang/rr.pot; done
  for I in $(find lang -path *rr.po); do msgfmt ${I} -o ${I/.po/.mo}; done
  • The project welcomes PRs for new language translations, and community maintainers are credited across the supported languages.

Acknowledgment & Credits

  • ARPL: @fbelavenuto
  • Redpill: core contributors include @RedPill-TTG, @pocopico, @jim3ma, @fbelavenuto, @MoetaYuko
  • RedPill-TTG, redpill-lkm5, linuxdsmepyc7002
  • Frameworks and tools:
  • Buildroot
  • Eudev
  • Grub
  • Addons contributors: @xbl3, @wirgen, @007revad, @PeterSuh-Q3, @jim3ma, @jinlife
  • Additional projects and patches:
  • synocodectool-patch
  • Synology HDD DB
  • nvme-cache
  • Synology enable M2 volume
  • Synology installation with NVMe disks only
  • Synology Photos Face Patch
  • Modules maintainers: @jim3ma, @MoetaYuko
  • Additional projects:
  • synology-igc
  • intel-gpu-i915-backports

Links, Community, and Collaboration

  • Group chats and channels:
  • QQ Group 1: 21609194
  • QQ Group 2: 73119176
  • QQ Group 3: 51929774
  • QQ Group 4: 49756829
  • QQ Group 5: 30267817
  • QQ Group 6: 68640297
  • QQ Channel: RROrg
  • Telegram Channel: RROrg

Sponsoring and Support

  • Sponsoring: supported by community sponsorships
  • A dedicated sponsorship banner is visible here: Buy me a coffee

License

  • GPL-V3. The project is released under the GNU General Public License version 3.

How to Use RR in Practice

  • Getting started often involves preparing a bootloader, flashing it to a USB or other bootable media, and booting a system into the pre-installation environment.
  • The recovery environment allows you to install, configure, and manage a DSM-like setup on your hardware.
  • Documentation and community resources guide you through model-specific adjustments, driver lookups, and hardware-specific considerations.
  • The Proxmox and Docker Compose configurations demonstrate how to run RR in virtualized environments for testing, experimentation, and education.

Notes on Safety and Best Practices

  • Always back up critical data before attempting any bootloader modifications or OS installations.
  • When using offline builds or precompiled bootloaders, ensure you use trusted sources and verify checksums to avoid corruption or security risks.
  • If you are contributing translations or code, follow the project guidelines, run linting and tests, and submit changes through pull requests for review.

A Final Word

RR represents a concerted effort by a diverse community to empower users to explore, learn, and experiment with DSM-like environments on non-Synology hardware. By combining bootloader pre-installation, a recovery environment, modular components, and active community support, RR provides a practical and educational pathway to understanding how DSM-like systems can be deployed outside of official hardware ecosystems. Whether you are a hobbyist looking to tinker with virtualization, a student seeking hands-on experience with firmware and boot processes, or a professional exploring alternative deployment options, RR invites you to dive in, contribute, and participate in a collaborative, open-source journey.

Enjoying this project?

Discover more amazing open-source projects on TechLogHub. We curate the best developer tools and projects.

Project
rr-preinstallation-recovery-environment
Created
July 23
Last Updated
July 16, 2026 at 11:54 AM

Maintain RR: redpill’s preinstallation and recovery environment? Add the badge to your README

Show that the project is featured on TechLogHub and send readers to this write-up.

Featured on TechLogHub
[![Featured on TechLogHub](https://techloghub.com/badge-neutral.svg)](https://techloghub.com/open-source/rr-preinstallation-recovery-environment?utm_source=techloghub_badge&utm_medium=referral&utm_campaign=readme)

Find more projects like this

One email a week: new and trending developer tools, fresh comparisons, and what shipped. Unsubscribe in one click.