Skip to content

Delphinus.Info.json

Tino-T edited this page Oct 25, 2018 · 27 revisions

Delphinus.Info.json

The Delphinus.Info.json contains some meta-information of your package.

:warning: Because GitHub is case-sensitive all of the file names must match EXACTLY.

An example content looks like this:

{
    "id": "{420D1B9B-86DB-4B1F-8D84-9CAE0F0EB2F6}",
    "name": "alternative name",
    "picture": "Logo.jpg",
    "licenses":
    [
        {
          "type": "MIT",
          "file": "License.txt"
        }
    ],
    "platforms": "Win32;Win64",
    "package_compiler_min": 22,
    "package_compiler_max": 26,
    "compiler_min": 23,
    "compiler_max": 26,
    "first_version": "name of version",
    "report_url": "http://example.com",
    "dependencies":
     [
       {
         "id": "{4FDE0715-83BE-4A22-BCFC-7BE307CFBC8C}",
         "version_min": "1.0"
       }
     ]
}

id: Specifies the ID of your package. Once you have specified one, never ever change it. It's used to identify a package. If you change this ID afterwards, it becomes incompatible to previous versions, as it's recognized as a different one. To generate one, use the Delphi IDE by pressing CTRL+Shift+G in a source window or go to https://guidgenerator.com/

name: (Optional) An alternative name which is displayed instead of the regular one. Specify this one, if your repository name is just an arbitary working title or confusing. Otherwhise leave this blank, the repository name will be used automatically! However if you specify one, try to keep it short. Extended descriptive text goes into "description" of your REPOSITORY. Delphinus extracts the description and displays it.

Good Example for Name:

AsciiImage

Bad Example for Name

AsciiImage for Delphi

picture: (Optional) Specifies a relative path to an image file within your repository, which is presented in the Delphinus GUI for your package. Maximum and optimal size is 128*128 Pixel. Double-Backslashes work for subdirectories, eg. "picture": "Examples\\Media\\GR32.png". Supported file formats:

  • png
  • jpg

licenses

An array that allows you to specify the licenses used by this package. Each entry in the array has the properties type and file

type: Specifies the type of license. Use one of the identifiers of the SPDX-List (like GPL-2.0 or MIT): http://spdx.org/licenses/

file: Relative path within your repository to your license file (usually something like License, License.txt). This file is presented to a user when installing your package. Forward-slashes are required if the license resides in a subdirectory, eg. "license_file": "Source/License.txt".

platforms: Specifies platforms supported by your package, separated by semicolons. If nothing is specified, Win32 is assumed. Currently supported identifiers are:

  • Win32
  • Win64
  • OSX32
  • Android
  • IOSDevice32
  • IOSDevice64
  • Linux64

package_compiler_min: (Optional) Specifies the minimal supported compiler version, supported by your package in its current or past state. This is used do determine if the current or any of the past releases support a specific compiler and filter it out in the overview.

package_compiler_max: (Optional) Specifies the maximum supported compiler version, supported by your package in its current or past state. This is used do determine if the current or any of the past releases support a specific compiler and filter it out in the overview.

compiler_min: (Optional) Specifies the minimal supported compiler version, supported by your package in its current state. This is used to determine if a specific version of your package is compatible with a specific compiler and filter it out in the overview.

compiler_max: (Optional) Specifies the maximum supported compiler version, supported by your package in its current state. This is used to determine if a specific version of your package is compatible with a specific compiler and filter it out in the overview.

first_version: (Optional) Marks the first version, which supports Delphinus. This is useful, if your repository contains versions, which you created before Delphinus. Those older versions are not visible to the user through Delphinus.

Info: If you do not specify a min or max compiler version, it is assumed it runs on all versions (keep in mind that Delphinus is only supported for XE and up). You don't have to specify both. Mostly simply defining (package_)compiler_min is what you want, to give the minimum required compiler version for your package.

report_url:
(Optional)
If you use an external Bugtracker and not Githubs, you can use this field to provide the url to the external BugTracker.

dependencies

Describes a list of packages, and their required minimal version, which need to be installed before installing your package. If a dependency is not installed or at a lower version than required, it is installed/updated automatically. All fields must be given, you may not omit the version_min. A dependency without version_min is ignored. Therefore to add a package as dependency, it must have at least one version. Please contact the given package author if there is none (or wait for him to release one if the package is in early development).

id: The ID of the package which is required. You can see it if you use the Commandlines Info command on the package.

version_min: The minimal required version of the package. This field follows the same notation as described in Rules for naming Versions, which means you can omit any leading trash in front of a package release (and even omit trailing zeroes, eg. 1 is equal to 1.0.0).

You can’t perform that action at this time.