On Sat, Nov 26, 2022 at 11:07 PM Jonas Hahnfeld <hah...@hahnjo.de> wrote:
> On Sat, 2022-11-26 at 22:25 +0100, Paolo Prete wrote: > > Hello, > > > > The new releases of LilyPond show how simple it is currently to install > the > > program: it is simply a matter of unpacking an archive wherever you want. > > > > This is very powerful and it means that any application (see: editors) > > using LilyPond is potentially able to install it automagically, without > > forcing the user to do this task manually, by downloading the archive > from > > the download page and unpacking it in some internal directory . > > > > However, I notice a problem with this: the download page for new releases > > is currently only on GitLab. I don't know if these download links are > > stable enough or suitable to be used by a program that relies on them in > > order to install the application. > > Yes, the (binary) releases being on GitLab only is intentional because > it saves "us" from hosting them on lilypond.org. The download paths > shown on the release page should (hopefully) be stable, at least we > tell GitLab explicitly that we want them to have that filename under > downloads/. They should also be easily constructible, that's what we do > to link them on the website. > What seems to me possibly against link stability is that GitLab is a platform focused on the development of a project, and not specifically a repository of releases, although, of course it does include releases of the programs it hosts through the package registry. In this sense I see GitLab being used in various cases specifically for source code releases and intentionally not for binaries (see e.g. Inkscape). Systems like PyPI, HomeBrew, Chocolatey etc. ensure a supply of releases through a simple command: "package-manager program version". And cdnjs ensures that the download link structure will always be the same, because cdnjs relies specifically on HTTP links. But I'm not sure if this also applies to GitLab download links - surely GitLab ensures stability for the git infrastructure. But what can we say for HTTP? It is true that the project link tree will surely be the same: you will always see a "release download" page with a sorted list of releases. But I don't know if even the links will always be the same and if this system is suitable enough for the automagically installation of LilyPond as a "package", from another program. Maybe mine is a false problem, but I'd like to understand something more.