As I understand, when installing the package, what Delphinus does is
Get repository as a ZIP from GitHub
Unpack it
Look into Delphinus.Install.json to perform the installation (copy source folders, compile packages, add units to Delphi)
This feature request basically asks to add an option (button on the toolbar) to "Install from a directory".
User has to point to a directory that already contains both Delphinus.Info.json and Delphinus.Install.json.
Delphinus just performs "step 3" of the installation -- no need to download or unpack the zip, instead assume that the directory contains already downloaded (in whatever way) contents
Delphinus can also mark package as installed, looking into GUID in Delphinus.Info.json. For future purposes, Delphinus can (hopefully) even just forget that this package was installed from a local directory -- it should be equivalent to installing by downloading. If package with the same GUID is found by scanning GitHub, Delphinus can assume it is the same package.
Reasons for this feature:
Smaller reason, but not the only one, is to avoid waiting for Delphinus to download the repository. If I have it downloaded already (as a ZIP, or GIT clone) then Delphinus could just use it.
Bigger reason, important for Castle Game Engine: We would be able then to recommend people to download CGE from our standard installers (like a Windows installer linked on top of https://castle-engine.io/download ). These installers unpack the same thing as we have in GitHub repository (so whole source code, with Delphinus.{Info|Install}.json files) plus some more (precompiled tools, generated API docs, bundled FPC).
For CGE users, installing such already-downloaded directory using Delphinus has important benefit: Delphinus would modify Delphi unit paths (so that CGE units are automatically available) and make the Delphi packages built too. This is useful for us -- otherwise doing it manually is a pain for users, as CGE has many paths one has to add. (We have alternative approaches, where CGE editor manages to DPROJ with paths for you, but it's not suitable in all cases.)
As I understand, when installing the package, what Delphinus does is
Delphinus.Install.json
to perform the installation (copy source folders, compile packages, add units to Delphi)This feature request basically asks to add an option (button on the toolbar) to "Install from a directory".
Delphinus.Info.json
andDelphinus.Install.json
.Delphinus.Info.json
. For future purposes, Delphinus can (hopefully) even just forget that this package was installed from a local directory -- it should be equivalent to installing by downloading. If package with the same GUID is found by scanning GitHub, Delphinus can assume it is the same package.Reasons for this feature:
Smaller reason, but not the only one, is to avoid waiting for Delphinus to download the repository. If I have it downloaded already (as a ZIP, or GIT clone) then Delphinus could just use it.
Bigger reason, important for Castle Game Engine: We would be able then to recommend people to download CGE from our standard installers (like a Windows installer linked on top of https://castle-engine.io/download ). These installers unpack the same thing as we have in GitHub repository (so whole source code, with
Delphinus.{Info|Install}.json
files) plus some more (precompiled tools, generated API docs, bundled FPC).For CGE users, installing such already-downloaded directory using Delphinus has important benefit: Delphinus would modify Delphi unit paths (so that CGE units are automatically available) and make the Delphi packages built too. This is useful for us -- otherwise doing it manually is a pain for users, as CGE has many paths one has to add. (We have alternative approaches, where CGE editor manages to DPROJ with paths for you, but it's not suitable in all cases.)