flathub / org.frescobaldi.Frescobaldi

https://flathub.org/apps/details/org.frescobaldi.Frescobaldi
1 stars 3 forks source link

Removing bundled LilyPond unstable binary? #11

Open fedelibre opened 2 years ago

fedelibre commented 2 years ago

Rephrasing this issue to make clear that the stable LilyPond must be bundled and only the development version might be removed in the future.

For a while I've been thinking of the idea of removing the LilyPond binaries the unstable LilyPond binary bundled in the flatpak app. The advantages would be:

Reasons to keep the unstable bundle:

hfiguiere commented 2 years ago
  1. Speed up the build of Frescobaldi flatpak.

This argument is irrelevant.

jeanas commented 2 years ago

@hahnjo does Gitlab have a aarch64 machine?

I don't see anything like that on https://docs.gitlab.com/ee/ci/runners/saas/linux_saas_runner.html

I like the idea that Frescobaldi flatpak is ready to go as soon as you install it (as regular DEB or RPM packages do).

I do too.

hahnjo commented 2 years ago

@hahnjo does Gitlab have a aarch64 machine?

This is also not really the relevant question because the current procedure is that I build the binaries "locally", in VMs or via SSH to MacStadium. So what I would need is direct access to an AArch64 machine, or somebody has to invest the effort of automating the binary creation (which I'm not even sure I'm a fan of, as I said in prior discussions). Combined with the relatively low demand, I don't think this will happen for 2.24

jeanas commented 1 year ago

I think there are two options being conflated in this issue: not bundling LilyPond at all and letting Frescobaldi auto-install it (soon to become possible), or bundling the latest stable and possibly unstable LilyPond but use the official binaries instead of building LilyPond from source in the Flatpak manifest. @fedelibre Your reason (2) for not changing the current setup doesn't apply if we just use the official LilyPond binaries.

For my part, I'm very much in favor of doing either one, because it will simplify maintenance as you said, and because building LilyPond in the Flatpak is duplicate effort in a sense.

(BTW, I don't think build speed is irrelevant — right now, each build of the Flatpak takes >1 hour, which makes it relatively painful to test changes. I'm willing to bet most of the time can be attributed to Guile, which is glacial to build because of all the byte compilation bootstrapping.)

I'm relatively indifferent as to whether we should include LilyPond preinstalled or not. I think a good compromise could be to include the latest stable version but not the latest unstable version, and let people auto-install the latter through Frescobaldi if they want to. That way, we're close to getting the better of both worlds: make the Flatpak immediately usable, but also obviate the update of LilyPond each time a new development version is released, which is much more frequent than stable releases.

jeanas commented 1 year ago

Regarding arm64, I'm indeed not sure many people would need it... I guess they can also use a distro — I would expect someone using Linux on arm64 to be technically savvier than an average Ubuntu user, but maybe I'm wrong. Are there download stats of x86-64 vs. arm64 for the Frescobaldi Flatpak?

fedelibre commented 1 year ago

I'm relatively indifferent as to whether we should include LilyPond preinstalled or not. I think a good compromise could be to include the latest stable version but not the latest unstable version, and let people auto-install the latter through Frescobaldi if they want to. That way, we're close to getting the better of both worlds: make the Flatpak immediately usable, but also obviate the update of LilyPond each time a new development version is released, which is much more frequent than stable releases.

I totally agree with this approach!

I want to keep the bundled stable LilyPond for a number of reasons, but I'm very happy to not build the latest unstable. I think that the average user is quite annoyed of the frequent updates to get an unstable release he/she probably won't use.

fedelibre commented 9 months ago

Regarding arm64, I'm indeed not sure many people would need it... I guess they can also use a distro — I would expect someone using Linux on arm64 to be technically savvier than an average Ubuntu user, but maybe I'm wrong. Are there download stats of x86-64 vs. arm64 for the Frescobaldi Flatpak?

https://flathub.org/stats/2023/

Choose a day and a json file, click on refs, then search for Frescobaldi and check which architectures have been downloaded. Or use wget and grep for a complete search.

I think we can ignore arm64 and see if any users will complain.

hfiguiere commented 9 months ago

I think we can ignore arm64 and see if any users will complain.

No.

fedelibre commented 9 months ago

We are talking about the development version of LilyPond. Most users don't need this. The stable version will be kept of course and it will be available for both x86-64 and arm64 architectures.

It would be interesting to know the number of arm64 users.

fedelibre commented 6 months ago

For the records, the update of LilyPond development versions is now automated. (well, the first test - pull #50 - required an extra commit by myself but normally this should not happen)