GithubHelp home page GithubHelp logo

hduoduo / redpill-load Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pocopico/redpill-load

0.0 0.0 0.0 114.72 MB

RedPill Loader Generator

License: GNU General Public License v3.0

Shell 88.64% PHP 11.36%

redpill-load's Introduction

RedPill Loader Builder

This project is a complete package which is able to generate RedPill loader images.

Is it stable?

No. It is not yet stable. DO NOT use it if you're not ready for random crashes and potentially loosing your data (it didn't happen to us but hey...).

How to use it?

  1. Make sure you're running Linux

  2. Compile RedPill LKM and place it in ext/rp-lkm/redpill-linux-<VERSION>.ko (see platform config for details)

  3. Create user_config.json which contains at minimum (for USB boot):

    {
      "extra_cmdline": {
        "vid": "<fill me>",
        "pid": "<fill me>",
        "sn": "<fill me>",
        "mac1": "<fill me>"
      }
    }
  • We cannot help you obtain the S/N
  • VID/PID correspond to your USB stick vendor id and product id (google: vid pid usb drive)
  • If you're running QEmu-based virtualization (e.g. Proxmox or VirtualBox) set vid to 0x46f4 and pid to 0x0001
  • If you're running SATA-based boot you can skip vid and pid fields (just remove them)
  • mac1 is the MAC address of your first ethernet interface
  • If you want to add more ethernet cards simply put mac2/mac3/mac4 and netif_num to the number of card
  • synoinfo is a key=>value structure where you can override any synoinfo options (e.g. "SataPortMap": "...")
  • If you want to see all options available take a look at user_config.FULL-EXAMPLE.json
  1. Run ./build-loader.sh <hw_version> <os_version> (e.g. ./build-loader.sh 'DS918+' '6.2.4-25556')
    It will download all files needed and complain if something isn't right

  2. Burn the image onto a USB stick
    When asked for PAT file during OS installation you can use PAT file from cache/ directory - it's downloaded from the official CDN automatically to build the loader anyway.

Extension

In the current state a simple extension system is provided. See the documentation document for details.

Architecture

The loader builder is very flexible and derives most of its behavior from config files. There are two main files used while the code is run: platform config (config/<hardware>/<OS version>/config.json) and user config (./user_config.json). Most of the stuff is self-explanatory.

For more detailed information go to FOR_DEVS.md.

Rough TODO

  • RP modules should be downloaded automatically from GH releases [or actually RP-LKM should be an extension]
  • Full docs
  • Included Docker support
  • Add functions to GRUB config to avoid duplication in configs
  • Add info screen to GRUB boot

redpill-load's People

Contributors

pocopico avatar dogodefi avatar jumkey avatar ttg-public avatar ranydb avatar hduoduo avatar orpheegt avatar tossp avatar unknown-o avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.