gnu: packages: remove g-golf and nomad

  • Done
  • quality assurance status badge
Details
3 participants
  • David Pirotte
  • Leo Famulari
  • pelzflorian (Florian Pelz)
Owner
unassigned
Submitted by
David Pirotte
Severity
normal

Debbugs page

David Pirotte wrote 3 weeks ago
(address . guix-patches@gnu.org)
20250217191255.0411a90b@tintin
Hello,

Attached is a patch to remove g-golf and nomad, the only package that
depends on g-golf (nomad was and still is reported to fail to build in
guix for quite a long time now, fwiw).

Please review and apply as soon as possible.

Thanks,
David
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEhCJlRZtBM3furJHe83T9k6MFetcFAmeztGcACgkQ83T9k6MF
etdQcAgAxha1rd+1ICeIMutYc4IWuFik0tu8cDY9J6ba6KVG3yKfNnojwTZxW380
pUXnKhdGGUXYeJ6KIh0Irly/qxa20GZIWbBOMbvsUpM9Zu1cPV9Al1pj6pcqEtIe
csDS2IhsDyj1cV36YjOfTfyuHlItRWa5bhsvf7OygSRl4IwUMH9uVudfrD19xq9a
RKHe5uMJF57gOwDM7GyR6O6jz6+HfyvV328PZ/ty+Qh2HNrEb0ONmDtH3099N7u2
GaP6qi1Fj27Zj4TsJjM2nqM3ebjxtklenpEM3jdGCZuVJeSx8vnXGYQMN3FXDZFJ
gXyOasMVeRZTQJU+Pl8tBS9kSpSEFg==
=z/Vm
-----END PGP SIGNATURE-----


pelzflorian (Florian Pelz) wrote 3 weeks ago
(name . David Pirotte)(address . david@altosw.be)(address . 76377-done@debbugs.gnu.org)
8734g6qp2v.fsf@pelzflorian.de
The context of this patch is a naming dispute.

David Pirotte, author of G-Golf, an excellent Guile interface to GTK,
Adwaita and GNOME libraries, insisted that Guix use the package name
g-golf when packaging his G-Golf project.

Guix currently uses the name guile-g-golf in accordance with its
not-written-down naming policy for pure Guile libraries, that should be
applied according to maintainers [1] and analogous to the written-down
policy for Python [2] and CommonLisp [3] and analogous to what its
semi-automatic package importers for other languages from CRAN, OPAM,
etc. do.

People suggested/discussed that David make a patch to just remove G-Golf
from Guix.

Gábor [5] and Maxim [6] proposed making g-golf an alias of guile-g-golf
(currently it is a deprecated alias)); Tobias [7] does not like but
would accept this compromise. David does not respond to the
suggestions, though, and private mails do not appear as if David intends
to respond.

In private mails, David announced his intention to put G-Golf in an
external Guix channel.

But this is not consensus. There is opposition to removing in [4].
Also I am myself a user of G-Golf for a tiny zenity-like Kodi launcher
in my Guix Home configuration and would like to keep it without some
third-party channel.

Further, lacking G-Golf in Guix would harm both Guix and G-Golf. G-Golf
should get more users and Guix should ship desired packages.

G-Golf is really a nicer interface to GTK, because it is in Guile and
well-maintained and has examples that I currently package [7], even
though I still recommend to understand GTK’s documentation for C even
when programming Guile.

Nomad does not build due to incompatibility with current Webkit, but I
still have hope someone might revive it.

Closing without apply.

Regards,
Florian

Closed
Leo Famulari wrote 2 weeks ago
Re: bug#76377: gnu: packages: remove g-golf and nomad
Z74GUoFxZ4Jtia3n@jasmine.lan
On Sat, Feb 22, 2025 at 10:57:28AM +0100, pelzflorian (Florian Pelz) wrote:
Toggle quote (1 lines)
> The context of this patch is a naming dispute.
[...]

This is bad for Guix. If the upstream developer of some software that we
package has a reasonable request for us, we should strongly consider
accepting their request.

It does not help the Guix project to be argumentative or ornery.

Let's work together to improve the world of free software, not dig in
our heels over minor issues like package names. It's a free software
project, not a package naming project.

Also, this would not be the first time we accept some kind of cosmetic
advice from upstream.
pelzflorian (Florian Pelz) wrote 2 weeks ago
(name . Leo Famulari)(address . leo@famulari.name)
87frk1i47j.fsf@pelzflorian.de
More context: Later on, we made a package named g-golf as an alternative
equally valid package but (in code comments) discouraged its use. This
was a unilateral “compromise”. Unilateral because David has not
accepted it and, in private mails, did not want to discuss it.

Leo Famulari <leo@famulari.name> writes:
Toggle quote (11 lines)
> On Sat, Feb 22, 2025 at 10:57:28AM +0100, pelzflorian (Florian Pelz) wrote:
>> The context of this patch is a naming dispute.
> [...]
>
> This is bad for Guix. If the upstream developer of some software that we
> package has a reasonable request for us, we should strongly consider
> accepting their request.
>
> It does not help the Guix project to be argumentative or ornery.
>

Yes, this was not consensus decision making, but IMO is not Guix’ fault.

But David’s request, that we make g-golf the name of the guile-g-golf
package, can hardly be encouraged by Guix. That is, logically, Guix
cannot encourage not following its policy.


Toggle quote (7 lines)
> Let's work together to improve the world of free software, not dig in
> our heels over minor issues like package names. It's a free software
> project, not a package naming project.
>
> Also, this would not be the first time we accept some kind of cosmetic
> advice from upstream.

The original request [1] suggested using package version
0.8.0-rc9-guile2.2 for the guile2.2 variant (well, likely without rc9
now), which would deviate much from the rest of Guix (and is version>?
than 0.8.0).

Regards,
Florian

Leo Famulari wrote 2 weeks ago
(name . pelzflorian (Florian Pelz))(address . pelzflorian@pelzflorian.de)
f8f77eb5-ad5f-4898-b1c4-d112738c91aa@app.fastmail.com
On Wed, Feb 26, 2025, at 01:56, pelzflorian (Florian Pelz) wrote:
Toggle quote (4 lines)
> But David’s request, that we make g-golf the name of the guile-g-golf
> package, can hardly be encouraged by Guix. That is, logically, Guix
> cannot encourage not following its policy.

Earlier, you described this policy as "not written down". That's not a policy, in my opinion.

And we should consider deviating from it when people have strong feelings about it.

Already, we seem to have alienated the author of a Guile package, which is tragically counterproductive.

And really, what's so bad about naming the package of the g-golf program "g-golf"? We've deviated from these informal guidelines before and the world kept turning.
David Pirotte wrote 2 weeks ago
(name . Leo Famulari)(address . leo@famulari.name)
20250226170728.6abcf970@tintin
Hi Leo,

Toggle quote (16 lines)
> > The context of this patch is a naming dispute.
> [...]

> This is bad for Guix. If the upstream developer of some software that
> we package has a reasonable request for us, we should strongly
> consider accepting their request.

> It does not help the Guix project to be argumentative or ornery.

> Let's work together to improve the world of free software, not dig in
> our heels over minor issues like package names. It's a free software
> project, not a package naming project.

> Also, this would not be the first time we accept some kind of cosmetic
> advice from upstream.

1+, for 'all the above'.

Please forward (or post) to guix-devel, and ask guix to name my package
g-golf, to deprecate and later remove guile-[X.Y-]g-golf pkgs.

Thanks,
David
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEhCJlRZtBM3furJHe83T9k6MFetcFAme/dIAACgkQ83T9k6MF
eteS0ggA30NzmyIV1xCshaLLckIC0YpJXiWWbaquB9+nH3WUC7QcFbfArJHnyNvI
0pE5Wq3sLwm/e9/bWhDYdPMm9hB1801lLT+6A5cHSDDC5Hi5Iy48xQBmSC2oXsXM
bPu75rtTaP3D0pgLqRxTbqRhVs7YI+urN/JyZkAQyw3nNmAIaWZjAQEThIVYNK7V
caXt94njYk939+HfQIeJt8WjbYocfabRW5bzitafINphxKo+dQc6HSCuZdsURHqL
okYpssvELku0jAllm5BuVzsRwWVIcHs5tOcq69u8h3XGv1v7KIZidSrBsnFoUxcD
V8rujb19e1A0OWaZszFgnb10KUkShw==
=pD/r
-----END PGP SIGNATURE-----


David Pirotte wrote 2 weeks ago
(name . Leo Famulari)(address . leo@famulari.name)
20250226174125.7f322cb7@tintin
Toggle quote (17 lines)
> > But David’s request, that we make g-golf the name of the
> > guile-g-golf package, can hardly be encouraged by Guix. That is,
> > logically, Guix cannot encourage not following its policy.

> Earlier, you described this policy as "not written down". That's not
> a policy, in my opinion.

> And we should consider deviating from it when people have strong
> feelings about it.

> Already, we seem to have alienated the author of a Guile package,
> which is tragically counterproductive.

> And really, what's so bad about naming the package of the g-golf
> program "g-golf"? We've deviated from these informal guidelines
> before and the world kept turning.

1+

The first (created) guix g-golf package was (properly) named g-golf.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEhCJlRZtBM3furJHe83T9k6MFetcFAme/fHUACgkQ83T9k6MF
etfP3gf+JmJS4t2rWIvCYfQd/wHpJuupriIPNzdzxLQfQDLHWi20TThRn1XMSvsO
m7oZBHrb4ppMwyvodfWZIa/kAAFvmrwuHpiEzmcpkRXiqSP45IP9wo6hU1+4HnWf
hkECJ/AK9B6/hZF/bEHe2umQlQNx6KjF190jGk8VU/qkNGjNYYugWNRhVrqSI3iQ
t5E18UmyZ8tdpSm+MuT3AD7V75t1U6hPxApssjK/wAwIH0zScdmARhsDka8MQ478
0ZVKD12V0MS+nhBiutf6Wgrtc065UFBI4v8QO0Hb9UszqlkYks1kFeoHtbT+QWn+
iCpBXqLlp9Kmkl279jsuOEoyUYfWIQ==
=MBtQ
-----END PGP SIGNATURE-----


pelzflorian (Florian Pelz) wrote 2 weeks ago
(name . Leo Famulari)(address . leo@famulari.name)
87r03j94u3.fsf@pelzflorian.de
Note that we are mostly discussing dependency lists when writing a
package

(inputs
(list adwaita-icon-theme
bash-minimal
libadwaita
(librsvg-for-system)
gtk
guile-3.0
guile-g-golf))

and the style of Guix source code. On the CLI,

guix shell --no-grafts g-golf gtk guile

is possible at this time without warning or discouragement, although on
equal terms with

guix shell --no-grafts guile-g-golf gtk guile

"Leo Famulari" <leo@famulari.name> writes:
Toggle quote (4 lines)
> And really, what's so bad about naming the package of the g-golf
> program "g-golf"? We've deviated from these informal guidelines before
> and the world kept turning.

gtk is named gtk, not libgtk, although gtk does have binaries, too.

GTK 3 library clutter is named clutter, not libclutter, so you have a
point there.

Is Leo right, that we deviate frequently and with precedent? If so, my
standing in for the policy crumbles. Better change the name now than
later.

Other opinions?

Preliminary diff attached. This reverts:

commit 694e31723788d811d026a047c9dea8e0d735362c
Author: Zhu Zihao <all_but_last@163.com>
Date: Thu Feb 3 22:35:10 2022 +0800

gnu: Deprecate the 'g-golf' variable.
g-golf now supports both Guile 3.0 and 2.2. Assign a new name to identify
the g-golf for different Guile version.
* gnu/packages/guile-xyz.scm (g-golf): Rename to guile-g-golf.
(g-golf): Define as deprecated by guile-g-golf.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>


Regards,
Florian
Toggle diff (97 lines)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 88bf074600..aa829e9215 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2547,9 +2547,9 @@ (define-public guile-sly
(home-page "https://dthompson.us/projects/sly.html")
(license license:gpl3+)))
-(define-public guile-g-golf
+(define-public g-golf
(package
- (name "guile-g-golf")
+ (name "g-golf")
(version "0.8.0")
(source
(origin
@@ -2637,6 +2637,11 @@ (define-public guile-g-golf
are unaffected.")
(license license:lgpl3+)))
+(define-public guile-g-golf
+ ;; Deprecated because of G-Golf author's explicit request for an exception
+ ;; from usual naming conventions. <https://bugs.gnu.org/76377>
+ (deprecated-package "guile-g-golf" g-golf))
+
(define-public g-golf
;; Use ‘guile-g-golf’ above in package inputs and other code. This alias
;; exists as a compromise, see
@@ -2647,16 +2652,16 @@ (define-public g-golf
(define-public guile2.2-g-golf
(package
- (inherit guile-g-golf)
+ (inherit g-golf)
(name "guile2.2-g-golf")
(inputs
- (modify-inputs (package-inputs guile-g-golf)
+ (modify-inputs (package-inputs g-golf)
(replace "guile" guile-2.2)
(replace "guile-lib" guile2.2-lib)))))
(define-public g-golf-gtk-4-examples
(package
- (inherit guile-g-golf)
+ (inherit g-golf)
(name "g-golf-gtk-4-examples")
(arguments
(list
@@ -2737,7 +2742,7 @@ (define-public g-golf-gtk-4-examples
(add-after 'install 'wrap-binaries
(lambda* (#:key inputs #:allow-other-keys)
(let* ((version (target-guile-effective-version))
- (g-golf (assoc-ref inputs "guile-g-golf"))
+ (g-golf (assoc-ref inputs "g-golf"))
(gcairo (assoc-ref inputs "guile-cairo-next"))
(adwaita-icons (assoc-ref inputs "adwaita-icon-theme"))
(scm (string-append "/share/guile/site/" version))
@@ -2816,7 +2821,7 @@ (define-public g-golf-gtk-4-examples
gtk
guile-3.0
guile-cairo-next
- guile-g-golf))
+ g-golf))
(native-inputs
(list pkg-config
which
@@ -2845,7 +2850,7 @@ (define-public g-golf-gtk-4-examples
(define-public g-golf-adw-1-examples
(package
- (inherit guile-g-golf)
+ (inherit g-golf)
(name "g-golf-adw-1-examples")
(build-system glib-or-gtk-build-system)
(arguments
@@ -2921,7 +2926,7 @@ (define-public g-golf-adw-1-examples
(add-after 'install 'wrap-binaries
(lambda* (#:key inputs #:allow-other-keys)
(let* ((version (target-guile-effective-version))
- (g-golf (assoc-ref inputs "guile-g-golf"))
+ (g-golf (assoc-ref inputs "g-golf"))
(adwaita-icons (assoc-ref inputs "adwaita-icon-theme"))
(libadwaita-icons (assoc-ref inputs "libadwaita"))
(scm (string-append "/share/guile/site/" version))
@@ -2967,7 +2972,7 @@ (define-public g-golf-adw-1-examples
(librsvg-for-system)
gtk
guile-3.0
- guile-g-golf))
+ g-golf))
(native-inputs (list `(,glib "bin") ;for glib-compile-resources
guile-3.0))
(propagated-inputs (list))

base-commit: 150df457d1e269790f184510c58d031ee00a9ebb
--
2.48.1
pelzflorian (Florian Pelz) wrote 2 weeks ago
Re: [bug#76377] gnu: packages: remove g-golf and nomad
(name . Leo Famulari)(address . leo@famulari.name)
87wmdbge59.fsf@pelzflorian.de
Both sides of the argument do not want to set precedent for funny
package names. One finds guile-g-golf is adulterated (I presume so
without knowing David’s reasons). But a package name g-golf does not
indicate that it is “just” Guile binding helper glue. Again, we are
talking about looking at dependency listings. We do have this
consistent naming for other Guile libraries like Sly or even Hoot.

Since the naming is generally consistent, I do not think Leo’s argument
that we are not strict about naming elsewhere holds. This naming policy
is written down for Perl, Python, CommonLisp, Elm, Rust and is applied
by importers. We are talking about naming of Guix packages in Guix
source code, after all. We are definitely no longer talking about names
of the G-Golf project.

Closing this bug again.

Regards,
Florian
Closed
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 76377@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 76377
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help