[PATCH] gnu: godot: Update to 4.1. Rename godot@3 to godot-lts.

  • Done
  • quality assurance status badge
Details
2 participants
  • John Kehayias
  • Ludovic Courtès
Owner
unassigned
Submitted by
John Kehayias
Severity
normal
J
J
John Kehayias wrote on 7 Jul 2023 18:27
(name . Guix-patches)(address . guix-patches@gnu.org)
875y6vlmaw.fsf@protonmail.com
Hi Guixers,

Here's a patch to add Godot 4! I've tested it builds and can load some sophisticated examples, working with the new Vulkan support. There is no longer a headless build so that has been removed as an output. The previous version, godot@3 is an LTS release now (and in need of an update I see) so I kept that as godot-lts.

I wasn't sure how best to break this up in commits, let me know if these should be separate and how (1. rename godot to godot-lts and 2. add godot@4?). I did my best to put in all the changes in the package definition from 3 to 4 in the changelog, but please do check. Due to the amount and scope of changes I didn't think godot-lts could easily inherit from godot.

Thanks!
John
L
L
Ludovic Courtès wrote on 11 Jul 2023 15:51
(name . John Kehayias)(address . john.kehayias@protonmail.com)(address . 64519@debbugs.gnu.org)
87r0pe4kug.fsf@gnu.org
Hi John,

John Kehayias <john.kehayias@protonmail.com> skribis:

Toggle quote (23 lines)
> From 287373c727c5292e5778f60aacf3685a4feddeca Mon Sep 17 00:00:00 2001
> Message-Id: <287373c727c5292e5778f60aacf3685a4feddeca.1688747031.git.john.kehayias@protonmail.com>
> From: John Kehayias <john.kehayias@protonmail.com>
> Date: Fri, 7 Jul 2023 12:05:39 -0400
> Subject: [PATCH] gnu: godot: Update to 4.1. Rename godot@3 to godot-lts.
>
> * gnu/packages/game-development.scm (godot): Update to 4.1.
> [source]: Update snippet: remove embree and enet; add amd-fsr, astcenc,
> basis_universal, brotli, linuxbsd_headers, etcpak, meshoptimizer, msdfgen,
> noise, openxr, rvo2, spirv-reflect, thorvg, volk, vulkan.
> [arguments]: Remove #:scons. Update #:scons-flags to unbundle more
> libraries.
> [phases]: Remove 'build-headless phase (headless is no longer has a separate
> build). Add 'fix-dl-open-paths and 'unbundle-xkbcommon phases. In 'install
> phase, remove headless output. Update 'wrap phase to remove eudev.
> [outputs]: Remove headless.
> [inputs]: Add dbus, embree, enet, fontconfig, glslang, libpng, harfbuzz,
> icu4c, libxkbcommon, openxr, speech-dispatcher, vulkan-loader, zlib. Remove
> bullet. Rename freetype to freetype-brotli.
> (godot-lts): New variable. godot@3 is the LTS release.
> * gnu/packages/games.scm (superstarfighter)[native-inputs]: Use it.
> [inputs]: Use it.

[...]

Toggle quote (13 lines)
> +(define-public godot-lts
> (package
> (name "godot")
> (version "3.4.2")
> @@ -1982,6 +1988,253 @@ (define-public godot
> scripted in a Python-like language.")
> (license license:expat)))
>
> +(define-public godot
> + (package
> + (name "godot")
> + (version "4.1")

Looks like the arguments and snippet are too different to be factorized
via inheritance. However, one could still inherit from the other to
factorize license/synopsis/description?

Apart from this minor issue, LGTM!

Thanks,
Ludo’.
J
J
John Kehayias wrote on 11 Jul 2023 18:19
Re: bug#64519: [PATCH] gnu: Add freetype-brotli.
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 64519@debbugs.gnu.org)
87sf9u1kvm.fsf@protonmail.com
Hi Ludo,

On Tue, Jul 11, 2023 at 03:51 PM, Ludovic Courtès wrote:

Toggle quote (3 lines)
> Hi John,
>

[snip]

Toggle quote (5 lines)
> Looks like the arguments and snippet are too different to be factorized
> via inheritance. However, one could still inherit from the other to
> factorize license/synopsis/description?
>

Yes, thought of that afterwards and made that change locally now.

Toggle quote (3 lines)
> Apart from this minor issue, LGTM!
>

I completely forgot there is another patch needed here, one to add freetype-brotli. That is just our freetype package with brotli added as a propagated-input for WOFF font support (if I recall). Attaching the patch now.

Actually I think our freetype package should do that as well, but since has nearly 18k dependents that should be grouped with other large changes. I brought this up on guix-devel [0] but didn't get any responses about this change. I think it is not controversial, just how to manage the rebuilds. Perhaps on the next mesa/related branch?


Thanks!
John
From f5622c12a84d208efefc53af88fe5f284485f2ff Mon Sep 17 00:00:00 2001
Message-Id: <f5622c12a84d208efefc53af88fe5f284485f2ff.1689091993.git.john.kehayias@protonmail.com>
From: John Kehayias <john.kehayias@protonmail.com>
Date: Fri, 7 Jul 2023 12:05:16 -0400
Subject: [PATCH] gnu: Add freetype-brotli.
* gnu/packages/fontutils.scm (freetype-brotli): New variable.
---
gnu/packages/fontutils.scm | 9 +++++++++
1 file changed, 9 insertions(+)
Toggle diff (31 lines)
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 1b4e0064f4..ab81499dcb 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2022 Felipe Balbi <balbi@kernel.org>
;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -124,6 +125,14 @@ (define-public freetype
(license license:freetype) ; some files have other licenses
(home-page "https://freetype.org/")))
+(define-public freetype-brotli
+ (package
+ (inherit freetype)
+ (name "freetype-brotli")
+ (propagated-inputs
+ (modify-inputs (package-propagated-inputs freetype)
+ (prepend brotli)))))
+
(define-public opentype-sanitizer
(package
(name "opentype-sanitizer")
base-commit: 7179d09d0d9762e7463c053ea958832944801ab0
--
2.40.1
J
J
John Kehayias wrote on 12 Jul 2023 21:09
(name . John Kehayias)(address . john.kehayias@protonmail.com)
87jzv50wwy.fsf@protonmail.com
Hello,

On Tue, Jul 11, 2023 at 12:13 PM, John Kehayias wrote:

Toggle quote (15 lines)
>
> I completely forgot there is another patch needed here, one to add
> freetype-brotli. That is just our freetype package with brotli added
> as a propagated-input for WOFF font support (if I recall). Attaching
> the patch now.
>
> Actually I think our freetype package should do that as well, but
> since has nearly 18k dependents that should be grouped with other
> large changes. I brought this up on guix-devel [0] but didn't get any
> responses about this change. I think it is not controversial, just how
> to manage the rebuilds. Perhaps on the next mesa/related branch?
>
> [0] <https://lists.gnu.org/r/guix-devel/2023-06/msg00113.html>
>

Maybe it should be called 'freetype-with-brotli' actually, in the
interim of being folded into freetype proper?

John
L
L
Ludovic Courtès wrote on 14 Jul 2023 15:25
(name . John Kehayias)(address . john.kehayias@protonmail.com)(address . 64519@debbugs.gnu.org)
87r0pawrpg.fsf@gnu.org
Hi,

John Kehayias <john.kehayias@protonmail.com> skribis:

Toggle quote (2 lines)
> I completely forgot there is another patch needed here, one to add freetype-brotli. That is just our freetype package with brotli added as a propagated-input for WOFF font support (if I recall). Attaching the patch now.

OK.

Toggle quote (2 lines)
> Actually I think our freetype package should do that as well, but since has nearly 18k dependents that should be grouped with other large changes. I brought this up on guix-devel [0] but didn't get any responses about this change. I think it is not controversial, just how to manage the rebuilds. Perhaps on the next mesa/related branch?

Yes, you should check on IRC or guix-devel whether this change can be
piggybacked on an existing mass-rebuild branch.

Toggle quote (8 lines)
> From f5622c12a84d208efefc53af88fe5f284485f2ff Mon Sep 17 00:00:00 2001
> Message-Id: <f5622c12a84d208efefc53af88fe5f284485f2ff.1689091993.git.john.kehayias@protonmail.com>
> From: John Kehayias <john.kehayias@protonmail.com>
> Date: Fri, 7 Jul 2023 12:05:16 -0400
> Subject: [PATCH] gnu: Add freetype-brotli.
>
> * gnu/packages/fontutils.scm (freetype-brotli): New variable.

[...]

Toggle quote (5 lines)
> +(define-public freetype-brotli
> + (package
> + (inherit freetype)
> + (name "freetype-brotli")

Maybe ‘freetype-with-brotli’ as you suggested. Also please add a TODO
about the eventual merge of this into ‘freetype’.

Thanks!

Ludo’.
J
J
John Kehayias wrote on 14 Jul 2023 17:12
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 64519-done@debbugs.gnu.org)
87ilam1q9h.fsf@protonmail.com
Hi,

On Fri, Jul 14, 2023 at 03:25 PM, Ludovic Courtès wrote:

Toggle quote (4 lines)
> Hi,
>
> John Kehayias <john.kehayias@protonmail.com> skribis:
>
[snip]
Toggle quote (11 lines)
>> Actually I think our freetype package should do that as well, but
>> since has nearly 18k dependents that should be grouped with other
>> large changes. I brought this up on guix-devel [0] but didn't get
>> any responses about this change. I think it is not controversial,
>> just how to manage the rebuilds. Perhaps on the next mesa/related
>> branch?
>
> Yes, you should check on IRC or guix-devel whether this change can be
> piggybacked on an existing mass-rebuild branch.
>

I'll see what is next. mesa-updates is built, but if that needs a
rebuild or other updates I can put it there. Otherwise the next large
branch job.

Toggle quote (20 lines)
>> From f5622c12a84d208efefc53af88fe5f284485f2ff Mon Sep 17 00:00:00 2001
>> Message-Id:
>> <f5622c12a84d208efefc53af88fe5f284485f2ff.1689091993.git.john.kehayias@protonmail.com>
>> From: John Kehayias <john.kehayias@protonmail.com>
>> Date: Fri, 7 Jul 2023 12:05:16 -0400
>> Subject: [PATCH] gnu: Add freetype-brotli.
>>
>> * gnu/packages/fontutils.scm (freetype-brotli): New variable.
>
> [...]
>
>> +(define-public freetype-brotli
>> + (package
>> + (inherit freetype)
>> + (name "freetype-brotli")
>
> Maybe ‘freetype-with-brotli’ as you suggested. Also please add a TODO
> about the eventual merge of this into ‘freetype’.
>

Done.

Pushed as 49b0a5ee5f908d8efa8e792f8635f723fd1d26ed and 09e73683a2c303016fa57bf5d84a8e997d4c0a30

Thanks!
John
Closed
?