Skip to content

Use libgit2 to automatically update the pool of available scripts

Adrian Knagg-Baugh requested to merge gitscripts into master

Use libgit2 to maintain a local clone of the siril-scripts repository.

Enabling / disabling of the scripts repository functionality is done using a check box in Preferences / Scripts.

Only fast-forward merges are permitted. This is not intended to be a full fat git interface within Siril, it is only for synchronising updates from a remote repository. If users have more advanced uses for git in terms of maintaining changes to scripts in a local fork or submitting a merge request, they will need to do this in a separate local repository using tools outside Siril.

A toggle allows automatic synchronisation of the repository at startup. The benefit is you will have any bugfix updates to scripts and will automatically populate newer scripts; the downside is that automatic changes are made without your having specifically been asked. If automatic updates are disabled, a manual update button is still available in the Preferences / Scripts page. The manual update button shows a preview of any pending commit messages so the user can accept or cancel the merge.

When enabled, individual scripts can be selected and they will appear in the Scripts menu. When disabled, the repository will no longer update and scripts from the repository will be removed from the Scripts menu.

Double clicking on a script opens the text of it in a popup window. The format of a script should always have usage information in a comment at the top, but it also lets advanced users look at the scripts or easily copy / paste them into an editor for modification.

The selected scripts that appear in the menu are saved in the .ini file so they persist through application restarts.

The "Get Scripts" menu now opens Preferences / Scripts instead of pointing to the online documentation.

There is an accompanying documentation MR on siril-docs.

Edited by Adrian Knagg-Baugh

Merge request reports