ReaBoot installation link builder

Let's create an installation link, so that you can easily share REAPER packages or complete REAPER distributions!

1. Enter the recipe, an URL to a recipe or just a package URL

Scroll down to learn more about these terms.

Explanations

ReaBoot Recipe

The installer can be customized with a so-called recipe. A recipe describes which packages should be installed and gives the installer a sort of branding.

Here's a very simple example recipe in JSON format:

{
    "name": "ReaLearn",
    "sub_title": "by Helgoboss Projects",
    "website": "https://www.helgoboss.org/projects/realearn/",
    "required_packages": [
        "https://github.com/helgoboss/reaper-packages/raw/master/index.xml#p=Extensions/ReaLearn-x64&v=latest"
    ]
}

At startup, the installer checks whether the clipboard contains such a recipe. If yes, it pre-configures itself with the data in the recipe. As an alternative, it accepts a package URL or an URL that points to a recipe.

Here's a more complicated recipe which demonstrates the use of optional features:

{
    "name": "Helgo's random tool collection",
    "description": "This is just an example recipe for ReaBoot in order to demonstrate how to share a complete collection of packages and make some of them optional.",
    "sub_title": "by helgoboss",
    "website": "https://www.reaboot.com/",
    "required_packages": [
        "https://raw.githubusercontent.com/ReaTeam/Extensions/master/index.xml#p=API/reaper_imgui.ext"
    ],
    "features": {
        "sws": {
            "name": "SWS/S&M Extension",
            "default": true,
            "description": "Popular and established extension that adds a variety of smaller features to REAPER. Considered as must-have by many.",
            "packages": [
                "https://raw.githubusercontent.com/ReaTeam/Extensions/master/index.xml#p=Extensions/reaper-oss_SWS.ext&v=latest-pre"
            ]
        },
        "libraries": {
            "name": "Common libraries",
            "description": "Frequently used libraries that provide functions for ReaScripts",
            "packages": [
                "https://github.com/Ultraschall/ultraschall-lua-api-for-reaper/raw/master/ultraschall_api_index.xml#p=Ultraschall-API-category/Ultraschall%20API%20package",
                "https://github.com/ReaTeam/ReaScripts/raw/master/index.xml#p=Development/Lokasenna_GUI%20library%20v2.lua",
                "https://github.com/ReaTeam/ReaScripts/raw/master/index.xml#p=Development/Lokasenna_Scythe%20library%20v3.lua"
            ]
        },
        "realearn": {
            "name": "ReaLearn",
            "description": "The \"Swiss Army Knife\" among the REAPER controller integration tools",
            "packages": [
                "https://github.com/helgoboss/reaper-packages/raw/master/index.xml#p=Extensions/ReaLearn-x64&v=latest"
            ]
        }
    }
}

Package URL

A package URL is a URL that uniquely identifies a ReaPack package. It has the following structure:

REPOSITORY_URL#p=PACKAGE_CATEGORY/PACKAGE_NAME&v=VERSION_REF

VERSION_REF can be latest, latest-pre or a specific version name. This part is optional and defaults to latest.

Examples:

https://github.com/helgoboss/reaper-packages/raw/master/index.xml#p=Extensions/ReaLearn-x64
https://github.com/ReaTeam/ReaScripts/raw/master/index.xml#p=Various/rodilab_Color%20palette.lua&v=latest