* Package name : guile-fluidsynth Version : 0.20.0 Upstream Contact: David Pirotte <david@altosw.be> * URL : https://www.gnu.org/software/g-golf/ * License : LGPL Programming Lang: Scheme Description : Guile bindings to the fluidsynth library With this library, you can play sheet music in Guile. The upstream author uses the package. The package is used by the (yet to be published) package GNU Tonic, whose author is David Pirotte, too. I'm going to maintain the package by publishing new upstream versions in Debian. I don't need co-maintainers but I need a sponsor.
I'm happy to review and sponsor the upload if you would agree to team-maintain it in the debian-scheme@lists.debian.org team. The URL below seems wrong? Btw, the g-golf and guile-cairo packages would be nice to team maintain as well! /Simon Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi> writes:
Simon Josefsson kirjoitti 15.5.2026 klo 8.48: Ok, agreed. The correct URL is <https://savannah.nongnu.org/projects/guile-fluidsynth/>. I'll think about g-golf and guile-cairo later. - Tommi
Tommi Höynälänmaa <tommi.hoynalanmaa@gmail.com> writes: Is your guile-fluidsynth packaging on Salsa? /Simon
Simon Josefsson kirjoitti 15.5.2026 klo 10.38: I'll upload the software to Salsa after I have packaged it. Currently the source code is on Savannah. See https://savannah.nongnu.org/projects/guile-fluidsynth/ https://cgit.git.savannah.nongnu.org/cgit/guile-fluidsynth.git - Tommi
Tommi, My understanding is that your packaging is blocked by the availability of nyacc 3.04.6 on debian? Perhaps you can file a bug using reportbug on the nyacc package and add that as a blocker on this ITP? When my work for nyacc gets reviewed and sponsored, it will automatically update this ITP. This just my thought process, I'd be grateful if Simon could weigh in on this idea.
Hello Shriram Ravindranathan kirjoitti 15.5.2026 klo 11.18: Yes. Package guile-fluidsynth requires nyacc version >= 3.00.0. I filed bug #1136726 and added it as a blocker. - Tommi
Thank you. I've added the changelog entry for closing that bug (#1136726) and pushed it to salsa. https://salsa.debian.org/s20n/nyacc Regards, Shriram Ravindranathan
Shriram Ravindranathan kirjoitti 15.5.2026 klo 13.27: Tx. - Tommi
On Fri, 15 May 2026 08:17:12 +0300 =?utf-8?b?VG9tbWkgSMO2eW7DpGzDpG5tYWE=?= <tommi.hoynalanmaa@iki.fi> wrote: > Package: wnpp > Severity: wishlist > Owner: Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi> > X-Debbugs-Cc: debian-devel@lists.debian.org, david@altosw.be, tommi.hoynalanmaa@iki.fi > > * Package name : guile-fluidsynth > Version : 0.20.0 The correct version number is 0.2.0. > Upstream Contact: David Pirotte <david@altosw.be> > * URL : https://www.gnu.org/software/g-golf/ > * License : LGPL > Programming Lang: Scheme > Description : Guile bindings to the fluidsynth library > > With this library, you can play sheet music in Guile. > > The upstream author uses the package. > > The package is used by the (yet to be published) package GNU Tonic, > whose author is David Pirotte, too. > > I'm going to maintain the package by publishing new upstream versions > in Debian. I don't need co-maintainers but I need a sponsor. - Tommi
Here are corrections to the original ITP: On Fri, 15 May 2026 08:17:12 +0300 =?utf-8?b?VG9tbWkgSMO2eW7DpGzDpG5tYWE=?= <tommi.hoynalanmaa@iki.fi> wrote: > Package: wnpp > Severity: wishlist > Owner: Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi> > X-Debbugs-Cc: debian-devel@lists.debian.org, david@altosw.be, tommi.hoynalanmaa@iki.fi > > * Package name : guile-fluidsynth > Version : 0.20.0 0.2.0 > Upstream Contact: David Pirotte <david@altosw.be> > * URL : https://www.gnu.org/software/g-golf/ https://savannah.nongnu.org/projects/guile-fluidsynth/ > * License : LGPL LGPL v2+ > Programming Lang: Scheme > Description : Guile bindings to the fluidsynth library > > With this library, you can play sheet music in Guile. With this library, you can make and play sounds. > > The upstream author uses the package. > > The package is used by the (yet to be published) package GNU Tonic, > whose author is David Pirotte, too. > > I'm going to maintain the package by publishing new upstream versions > in Debian. I don't need co-maintainers but I need a sponsor.
Hello I was able to create Salsa project scheme-team/guile-fluidsynth but I could not upload contents there. I get the following error from git:--- Connection closed by 209.87.16.82 port 22 fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. --- - Tommi
Hello I have uploaded Guile Fluidsynth to Salsa. I have to wait for nyacc to be updated in Debian unstable before I can upload Guile Fluidsynth to Debian unstable. See <https://salsa.debian.org/scheme-team/guile-fluidsynth>. - Tommi
Tommi Höynälänmaa <tommi.hoynalanmaa@gmail.com> writes: Quick review: - Add d/upstream/metadata - Send d/patches/ upstream, and mark them as Forwarded. - Fix licenserecon warnings about d/copyright -- there are many copyright notices in the sources not present in d/copyright. - Is it possible to write some non-superficial debian/tests/? Based on the manual maybe? Upstream really ought to have a test-suite as part of 'make check', so maybe ask upstream. - Use d/watch v5 - upstream signs git tags, so I suggest adding a d/upstream/signing-key.asc and using a debian/watch like this: Version: 5 Source: https://https.git.savannah.gnu.org/git/guile-fluidsynth.git Matching-Pattern: refs/tags/v@ANY_VERSION@ Mode: git Pgpmode: gittag - Update Standards-Version, dropping Priority and Rules-Requires-Root. - I see no need for a versioned dependency on texinfo in d/control. - What is the purpose of this in debian/rules? export DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) - Consider adding sign-tags=True and upstream-vcs-tag = v%(version%~%-)s to debian/gbp.conf. /Simon
Hello Simon suggests writing a test suite in the upstream package. ChatGPT suggests uncommenting AC_PROG_CC and LT_INIT in configure.ac. What do you think? - Tommi Tommi Höynälänmaa <tommi.hoynalanmaa@gmail.com> writes: Quick review: - Add d/upstream/metadata - Send d/patches/ upstream, and mark them as Forwarded. - Fix licenserecon warnings about d/copyright -- there are many copyright notices in the sources not present in d/copyright. - Is it possible to write some non-superficial debian/tests/? Based on the manual maybe? Upstream really ought to have a test-suite as part of 'make check', so maybe ask upstream. - Use d/watch v5 - upstream signs git tags, so I suggest adding a d/upstream/signing-key.asc and using a debian/watch like this: Version: 5 Source: https://https.git.savannah.gnu.org/git/guile-fluidsynth.git Matching-Pattern: refs/tags/v@ANY_VERSION@ Mode: git Pgpmode: gittag - Update Standards-Version, dropping Priority and Rules-Requires-Root. - I see no need for a versioned dependency on texinfo in d/control. - What is the purpose of this in debian/rules? export DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) - Consider adding sign-tags=True and upstream-vcs-tag = v%(version%~%-)s to debian/gbp.conf. /Simon
Hello It says in INSTALL that guile-fluidsynth needs makeinfo >= 6.6. Is there some reason for the version in the dependency? - Tommi
Hello A patch to am/guile.mk to be forwarded upstream is attached. I have checked that it works for non-Debian builds, too. - Tommi
Hello Shall I use my own GPG key as the signing key? - Tommi Simon Josefsson kirjoitti 18.5.2026 klo 10.32:
Tommi Höynälänmaa <tommi.hoynalanmaa@gmail.com> writes: Yes -- although nothing checks upstream/x.y.z git signatures today, but I still find it nice to GPG sign things when possible. If it is not convenient for you, then merely disregard this. But sometimes there is no real cost involved, beyond setting gbp sign-tags variable, if you normally have a GPG setup working. /Simon
Simon Josefsson kirjoitti 18.5.2026 klo 15.44: I'll use my own key. - Tommi
Hello Please check if the attached file debian/upstream/metadata is OK for you. - Tommi
I suppose that these fields are unnecessary as Guile-Fluidsynth does not use C compiler or libtool. - Tommi
Tommi Höynälänmaa <tommi.hoynalanmaa@gmail.com> writes: I see no *.c files in guile-fluidsynth, so that sounds right. Why was the patch added to debian/patches/ in the first place? OTOH I think the f-synth/ffi/*.scm files should be re-generated from source code using 'guile compile-ffi' during build-time. Preferably the generated files shouldn't even be in git. To make sure we can rebuild everything from source code. /Simon
Simon Josefsson kirjoitti 18.5.2026 klo 16.31: ChatGPT suggested it. I'll remove the configure.ac patch (0002) entirely as it is not needed.
Simon Josefsson kirjoitti 18.5.2026 klo 16.31: .... IMHO all that is needed for this is to remove the f-synth/ffi/*.scm files from the source package. David, can you do that? - Tommi
On Mon, 18 May 2026 16:55:18 +0300 =?UTF-8?B?VG9tbWkgSMO2eW7DpGzDpG5tYWE=?= <tommi.hoynalanmaa@gmail.com> wrote: > > IMHO all that is needed for this is to remove the f-synth/ffi/*.scm > files from the source package. David, can you do that? This is not so simple. The makefiles have to be edited, too. - Tommi
Hello I rewrote debian/copyright and the new file is attached. Is the file OK? Notes: - lrc (licensecheck) prints LGPL for files f-synth/* even though the files contain license LGPL-2.1+ except files f-synth/ffi/*.scm that don't have license at all. - ChatGPT complained about the license of the debian/* files (LGPL-3+). Is it correct? - Tommi
Hello Tommi, Yes, that is correct. David
Right, I'll comment or remove those lines upstream, asap. David
Hello, I'll take care of this upstream as well, asap. David
Hello, Prior to 6.6, duplicate titles were not allowed, which I (have to) use in G-Golf - see commit eb6dd79 in g-golf git tree. I don't think I have duplicate titles in Guile-Fluidsynth (yet), but because I extensively use goops, this could very well happen in the future, so i'd rather keep it, though we could remove it for now: is this a 'real' problem? David
Hi Tommi, I use the same guile.mk file in all projects I work on, including g-golf, for which you di not proposed this patch - which afaict, doesn't 'fix anything' - what's in there works perfectly fine 'as well' - is this really worth changing? David
Hello, Those lines are commented, I don't see the need to remove them, as I keep them if I need a C lib in the future. This needs a more complicated autotool chain setting, and imo, it's unnecessary, as all generated upstream will always work fine 'for all' - is this really a problem? David
Hello David Pirotte kirjoitti 19.5.2026 klo 4.24: I wrote patches for the FFI .scm file generation. Is it ok for you to merge these to the upstream code? The patches involved a minor change to am/guile.mk, but the change should not break any existing code. The patches are attached. - Tommi
Hello The test case and the soundfont file it uses are attached. I’ve also included the |.wav| file used to generate the |.sf2| file. - Tommi
Attached. - Tommi
Hello, I did say it was ok, but I double check and would prefer that bugs being reported to: guile-user@gnu.org Thanks, David
Hi Tommi, reproduces tests that are part of libfluidsynth and nyacc themselves. Also, I use (unit-test) from guile-lib, as you know, which imnsho is quite superior to sfrfi-64, as it uses goops and therefore is entirely customizable. Last, I somehow (very much) doubt you wrote these tests by yourself: for info, I wont' accept any AI generated code in any of my projects. Just be a little patient here, I'll write a test suite, a simple test suite - because there is no need for a complicated one - that covers what needs to be covered in Guile-Fluisynth, but not 'more'. All that needs to be tested is the higher level api that guile-fluidsynth provides - in short, what the example in the manual proposes - if that works, everything thing works fine, in particular (but none exhaustive list): 1- can it import the init module - then it found libfluisynth - it found the default soundfont file 2- can it make a synthesizer - then all settings related lower level functions are running fine, as well as the guilie-fluisynth goops higher level api 3- can it play a note dito, the guilie-fluisynth goops higher level api to play a soiund work fine I'll ping you as soon as I will have written the test suite. Thanks, David
Hello David Pirotte kirjoitti 20.5.2026 klo 1.48: Ok. What is wrong with using AI? I did use ChatGPT to generate a draft for the test case. What about the change I wrote to the .ffi file compilation? - Tommi
I'll fix this. - Tommi David Pirotte kirjoitti 20.5.2026 klo 1.02:
Hello, I don't want to discuss this subject, sorry. Please never ever send me AI generated code and/or patch, tx. Also, so you save some of your precious time, I suggest you ask me if I need/want some code/patch before 'doing anything' - most of the time, I do/will prefer to do it myself. I suspect this patch was also AI generated. But nonetheless, I'll write a patch myself, thanks. David
David Pirotte kirjoitti 20.5.2026 klo 22.56: Ok. Ok. I didn't use AI with it, though. - Tommi
Hello I pushed guile-fluidsynth version 0.2.0-2 to Salsa. See <https://salsa.debian.org/scheme-team/guile-fluidsynth>. Here is the changelog entry:--- guile-fluidsynth (0.2.0-2) unstable; urgency=medium * Removed 0002-Modify-configure-for-Debian.patch. * Marked 0001-Fix-install-dirs.patch as forwarded. * Added debian/upstream/metadata. * Updated debian/watch. * Added debian/upstream/signing-key.asc. * Changed Standards-Version to 4.7.4 in debian/control. * Removed Priority and Rules-Requires-Root from debian/control. * Removed DEB_HOST_MULTIARCH setting from debian/rules and updated file debian/guile-fluidsynth.install. * Added fields sign-tags and upstream-vcs-tag into debian/gbp.conf. * Fixed debian/copyright. -- Tommi Höynälänmaa <tommi.hoynalanmaa@iki.fi> Thu, 21 May 2026 08:04:16 +0300--- - Tommi