# Imager oslist.json schema

Type: object Default: {}

oslist.json format.

No Additional Properties
Example:

    {
        "imager": {
            "latest_version": "1.6",
            "url": "https://www.raspberrypi.org/software/",
            "default_os": "Raspberry Pi OS (32-bit)",
            "embedded_default_os": "Raspberry Pi OS (32-bit)",
            "embedded_default_destination": "/dev/mmcblk0p1"
        },
        "os_list": [
            {
                "name": "Raspberry Pi OS (32-bit)",
                "description": "A port of Debian Bullseye with the Raspberry Pi Desktop (Recommended)",
                "icon": "https://downloads.raspberrypi.org/raspios_armhf/Raspberry_Pi_OS_(32-bit).png",
                "url": "https://downloads.raspberrypi.org/raspios_armhf/images/raspios_armhf-2022-01-28/2022-01-28-raspios-bullseye-armhf.zip",
                "extract_size": 4236247040,
                "extract_sha256": "ceb7d7489847ed811e7746fa779837f78fc06d43663148a696280e6a1cfe00e3",
                "image_download_size": 1306588543,
                "release_date": "2022-01-28",
                "init_format": "systemd"
            },
            {
                "name": "Ubuntu Server 21.10 (RPi 3/4/400)",
                "description": "64-bit server OS for arm64 architectures",
                "icon": "https://assets.ubuntu.com/v1/85a9de76-ubuntu-icon.svg",
                "url": "http://cdimage.ubuntu.com/releases/impish/release/ubuntu-21.10-preinstalled-server-arm64+raspi.img.xz",
                "extract_size": 4068480000,
                "extract_sha256": "4cf06429e0367f0a59b890819d1792b0d816bc531fcb5bd092e441d8d6a942b9",
                "image_download_size": 921117368,
                "release_date": "2021-10-14",
                "website": "https://ubuntu.com/raspberry-pi/server",
                "init_format": "cloudinit"
            },
            {
                "name": "Bootloader",
                "description": "Restore the factory default settings and change boot priority",
                "icon": "https://downloads.raspberrypi.org/raspios_armhf/Raspberry_Pi_OS_(32-bit).png",
                "subitems_url": "https://downloads.raspberrypi.org/eeprom_recovery.json",
                "website": "https://www.raspberrypi.org/"
            },
            {
                "name": "Raspberry Pi OS (other)",
                "description": "Other Raspberry Pi OS based images",
                "icon": "icons/cat_raspberry_pi_os.png",
                "subitems": [
                    {
                        "name": "Raspberry Pi OS (64-bit)",
                        "description": "A port of Debian Bullseye with the Raspberry Pi Desktop (Compatible with Raspberry Pi 3/4/400)",
                        "icon": "https://downloads.raspberrypi.org/raspios_arm64/Raspberry_Pi_OS_(64-bit).png",
                        "url": "https://downloads.raspberrypi.org/raspios_arm64/images/raspios_arm64-2022-01-28/2022-01-28-raspios-bullseye-arm64.zip",
                        "extract_size": 4156555264,
                        "extract_sha256": "6939d39cbbfbe85c68dae55f1b2375f17e21fe047b8dc1f84aa7d3c002047afb",
                        "image_download_size": 1189750489,
                        "release_date": "2022-01-28",
                        "init_format": "systemd"
                    }
                ]
            }
        ]
    }

##

Type: object Default: {}

ONLY USED IN TOP-LEVEL OS_LIST.JSON. Not for Linux distributions linked by subitems url.

No Additional Properties
Example:

    {
        "latest_version": "1.6",
        "url": "https://www.raspberrypi.org/software/",
        "default_os": "Raspberry Pi OS (32-bit)",
        "embedded_default_os": "Raspberry Pi OS (32-bit)",
        "embedded_default_destination": "/dev/mmcblk0p1"
    }

##

Type: string Default: ""

If version mentioned here is newer than the Imager that is currently being run, user is prompted for update.

Example:

    "1.6"

##

Type: string Default: ""

If user accepts the update, a browser is opened to this address.

Example:

    "https://www.raspberrypi.org/software/"

##

Type: string Default: ""

Optional. If set this OS will be selected automatically, without the user having to press 'CHOOSE OS'

Example:

    "Raspberry Pi OS (32-bit)"

##

Type: string Default: ""

Optional. Same as default_os but only applied if user is running the embedded Imager edition.

Example:

    "Raspberry Pi OS (32-bit)"

##

Type: string Default: ""

Optional. If set and the user is running the embedded Imager edition, this device will be automatically selected as destination drive.

Example:

    "/dev/mmcblk0p1"

##

Type: array Default: []

List of operating systems available.

#### Each item of this array must be:

## Any of

Type: object Default: {}

An entry for an OS.

Example:

    {
        "name": "Raspberry Pi OS (32-bit)",
        "description": "A port of Debian Bullseye with the Raspberry Pi Desktop (Recommended)",
        "icon": "https://downloads.raspberrypi.org/raspios_armhf/Raspberry_Pi_OS_(32-bit).png",
        "url": "https://downloads.raspberrypi.org/raspios_armhf/images/raspios_armhf-2022-01-28/2022-01-28-raspios-bullseye-armhf.zip",
        "extract_size": 4236247040,
        "extract_sha256": "ceb7d7489847ed811e7746fa779837f78fc06d43663148a696280e6a1cfe00e3",
        "image_download_size": 1306588543,
        "release_date": "2022-01-28",
        "init_format": "systemd"
    }

##

Type: string Default: ""

Name of operating system as shown in the 'CHOOSE OS' list.

Example:

    "Raspberry Pi OS (32-bit)"

##

Type: string Default: ""

Description of operating system as shown in the 'CHOOSE OS' list.

Example:

    "A port of Debian Bullseye with the Raspberry Pi Desktop (Recommended)"

##

Type: string Default: ""

Icon of the operating system as shown in the 'CHOOSE OS' list

Example:

    "https://downloads.raspberrypi.org/raspios_armhf/Raspberry_Pi_OS_(32-bit).png"

##

Type: string Default: ""

Download URL. Can be .zip, .gz, .xz (since Imager 1.7 also .zstd, but for compatibility with older versions, better not use it)

Example:

    "https://downloads.raspberrypi.org/raspios_armhf/images/raspios_armhf-2022-01-28/2022-01-28-raspios-bullseye-armhf.zip"

##

Type: integer Default: 0

The size of the image after extraction. Used to check if the storage is large enough to accomdate the image.

Example:

    4236247040

##

Type: string Default: ""

SHA256 of image after extraction. Must be correct or Imager will for security purposes abort and will not write the first MB of image (effectively invalidating parititon table)

Example:

    "ceb7d7489847ed811e7746fa779837f78fc06d43663148a696280e6a1cfe00e3"

##

Type: integer Default: 0

Size of the compressed image.

Example:

    1306588543

##

Type: string Default: ""

Release date of OS image. Shown in 'CHOOSE OS' list

Example:

    "2022-01-28"

##

Type: string Default: ""

If set 'advanced settings' button will be shown. If 'initformat' is set to 'systemd', OS customization will be done by creating a firstrun.sh with shell commands on the SD card, and cmdline.txt will be modified to instruct systemd to execute /boot/firstrun.sh. THIS WILL ONLY WORK IF THE FAT PARTITION IS MOUNTED AT /boot in your /etc/fstab. If 'initformat' is set to 'cloudinit' a cloud-init 'user-data' file will be created on the FAT partition instead.

Example:

    "systemd"

##

Type: string Default: ""

Optional. If set a (I)nfo icon will be shown in the 'CHOOSE OS' list. Clicking it will cause a browser to be opened to the website listed.

Example:

    "https://ubuntu.com/raspberry-pi/server"

##

Additional Properties of any type are allowed.

Type: object
Type: object Default: {}

Allows linking to subitems listed in an external .json file.

Example:

    {
        "name": "Bootloader",
        "description": "Restore the factory default settings and change boot priority",
        "icon": "https://downloads.raspberrypi.org/raspios_armhf/Raspberry_Pi_OS_(32-bit).png",
        "subitems_url": "https://downloads.raspberrypi.org/eeprom_recovery.json",
        "website": "https://www.raspberrypi.org/"
    }

##

Type: string Default: ""

Name as shown in the 'CHOOSE OS' list.

Example:

    "Bootloader"

##

Type: string Default: ""

Description as shown in the 'CHOOSE OS' list.

Example:

    "Restore the factory default settings and change boot priority"

##

Type: string Default: ""

Icon as shown in the 'CHOOSE OS' list.

Example:

    "https://downloads.raspberrypi.org/raspios_armhf/Raspberry_Pi_OS_(32-bit).png"

##

Type: string Default: ""

URL of the file with the subitems.

Example:

    "https://downloads.raspberrypi.org/eeprom_recovery.json"

##

Type: string Default: ""

Optional. If set a (I)nfo icon will be shown in the 'CHOOSE OS' list. Clicking it will cause a browser to be opened to the website listed.

Example:

    "https://www.raspberrypi.org/"

##

Additional Properties of any type are allowed.

Type: object
Type: object Default: {}

List of subitems listed in the same .json file. AVOID USE DUE TO BUG WHEN NESTED SUBITEMS ARE USED IN IMAGER VERSIONS PRIOR TO 1.7

Example:

    {
        "name": "Raspberry Pi OS (other)",
        "description": "Other Raspberry Pi OS based images",
        "icon": "icons/cat_raspberry_pi_os.png",
        "subitems": [
            {
                "name": "Raspberry Pi OS (64-bit)",
                "description": "A port of Debian Bullseye with the Raspberry Pi Desktop (Compatible with Raspberry Pi 3/4/400)",
                "icon": "https://downloads.raspberrypi.org/raspios_arm64/Raspberry_Pi_OS_(64-bit).png",
                "url": "https://downloads.raspberrypi.org/raspios_arm64/images/raspios_arm64-2022-01-28/2022-01-28-raspios-bullseye-arm64.zip",
                "extract_size": 4156555264,
                "extract_sha256": "6939d39cbbfbe85c68dae55f1b2375f17e21fe047b8dc1f84aa7d3c002047afb",
                "image_download_size": 1189750489,
                "release_date": "2022-01-28",
                "init_format": "systemd"
            }
        ]
    }

##

Type: string Default: ""

Name as shown in the 'CHOOSE OS' list.

Example:

    "Raspberry Pi OS (other)"

##

Type: string Default: ""

Description as shown in the 'CHOOSE OS' list.

Example:

    "Other Raspberry Pi OS based images"

##

Type: string Default: ""

Icon as shown in the 'CHOOSE OS' list.

Example:

    "icons/cat_raspberry_pi_os.png"

##

Type: array Default: []

Inline subitems.

#### Each item of this array must be:

Type: object
Example:

    [
        {
            "name": "Raspberry Pi OS (64-bit)",
            "description": "A port of Debian Bullseye with the Raspberry Pi Desktop (Compatible with Raspberry Pi 3/4/400)",
            "icon": "https://downloads.raspberrypi.org/raspios_arm64/Raspberry_Pi_OS_(64-bit).png",
            "url": "https://downloads.raspberrypi.org/raspios_arm64/images/raspios_arm64-2022-01-28/2022-01-28-raspios-bullseye-arm64.zip",
            "extract_size": 4156555264,
            "extract_sha256": "6939d39cbbfbe85c68dae55f1b2375f17e21fe047b8dc1f84aa7d3c002047afb",
            "image_download_size": 1189750489,
            "release_date": "2022-01-28",
            "init_format": "systemd"
        }
    ]

##

Additional Properties of any type are allowed.

Type: object
Example:

    [
        {
            "name": "Raspberry Pi OS (32-bit)",
            "description": "A port of Debian Bullseye with the Raspberry Pi Desktop (Recommended)",
            "icon": "https://downloads.raspberrypi.org/raspios_armhf/Raspberry_Pi_OS_(32-bit).png",
            "url": "https://downloads.raspberrypi.org/raspios_armhf/images/raspios_armhf-2022-01-28/2022-01-28-raspios-bullseye-armhf.zip",
            "extract_size": 4236247040,
            "extract_sha256": "ceb7d7489847ed811e7746fa779837f78fc06d43663148a696280e6a1cfe00e3",
            "image_download_size": 1306588543,
            "release_date": "2022-01-28",
            "init_format": "systemd"
        },
        {
            "name": "Ubuntu Server 21.10 (RPi 3/4/400)",
            "description": "64-bit server OS for arm64 architectures",
            "icon": "https://assets.ubuntu.com/v1/85a9de76-ubuntu-icon.svg",
            "url": "http://cdimage.ubuntu.com/releases/impish/release/ubuntu-21.10-preinstalled-server-arm64+raspi.img.xz",
            "extract_size": 4068480000,
            "extract_sha256": "4cf06429e0367f0a59b890819d1792b0d816bc531fcb5bd092e441d8d6a942b9",
            "image_download_size": 921117368,
            "release_date": "2021-10-14",
            "website": "https://ubuntu.com/raspberry-pi/server",
            "init_format": "cloudinit"
        }
    ]