[PATCH 0/2] gnu: Add f3d.

OpenSubmitted by Paul A. Patience.
Details
2 participants
  • 宋文武
  • Paul A. Patience
Owner
unassigned
Severity
normal
P
P
Paul A. Patience wrote on 6 Jun 12:58 +0200
(address . guix-patches@gnu.org)(name . Paul A. Patience)(address . paul@apatience.com)
20220606105824.901227-1-paul@apatience.com
Paul A. Patience (2):
gnu: vtk: Enable the RenderingExternal module.
gnu: Add f3d.

gnu/packages/graphics.scm | 111 ++++++++++++++++++++++++++++++
gnu/packages/image-processing.scm | 1 +
2 files changed, 112 insertions(+)

--
2.36.0
P
P
Paul A. Patience wrote on 6 Jun 13:01 +0200
[PATCH 1/2] gnu: vtk: Enable the RenderingExternal module.
(address . 55819@debbugs.gnu.org)(name . Paul A. Patience)(address . paul@apatience.com)
20220606110125.902061-1-paul@apatience.com
* gnu/packages/image-processing.scm (vtk)[arguments]<#:configure-flags>:
Add -DVTK_MODULE_ENABLE_VTK_RenderingExternal=YES.
---
gnu/packages/image-processing.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (12 lines)
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm
index f4bf1724b4..249f916489 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -360,6 +360,7 @@ (define-public vtk
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_theora=ON"
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_tiff=ON"
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_zlib=ON"
+                           "-DVTK_MODULE_ENABLE_VTK_RenderingExternal=YES" ; For F3D
                            "-DVTK_WRAP_PYTHON=ON"
                            "-DVTK_PYTHON_VERSION:STRING=3"
                            )
--
2.36.0
P
P
Paul A. Patience wrote on 6 Jun 13:01 +0200
[PATCH 2/2] gnu: Add f3d.
(address . 55819@debbugs.gnu.org)(name . Paul A. Patience)(address . paul@apatience.com)
20220606110125.902061-2-paul@apatience.com
* gnu/packages/graphics.scm (f3d): New variable.
---
gnu/packages/graphics.scm | 111 ++++++++++++++++++++++++++++++++++++++
1 file changed, 111 insertions(+)

Toggle diff (126 lines)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 64286bf68d..d850a9cf06 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -30,6 +30,7 @@
 ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2022 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2054,3 +2055,113 @@ (define-public monado
 such as VR and AR on mobile, PC/desktop, and any other device.  Monado aims to be
 a complete and conforming implementation of the OpenXR API made by Khronos.")
     (license license:boost1.0)))
+
+(define-public f3d
+  ;; There have been many improvements since the last tagged version (1.2.1,
+  ;; released in December 2021), including support for the Alembic file
+  ;; format.
+  (let ((commit "d80fd4558f1851a31d13dfbb62d7648b7b2d36f8")
+        (revision "0"))
+    (package
+      (name "f3d")
+      (version (git-version "1.2.1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/f3d-app/f3d")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "11lj63rfhqp0zwifl2d3rlp7cfbxgr2jb3j7pqh8lhsr2pa94f6s"))))
+      (build-system cmake-build-system)
+      (arguments
+       (list
+        ;; Many tests require files supplied by git-lfs.
+        ;; Also, some tests segfault (after an exception?) but the tested
+        ;; behavior, i.e., when the program is run manually, does not (for
+        ;; example, TestNonExistentConfigFile and TestInvalidConfigFile).
+        ;; Upstream is aware of occasionally flaky tests (see
+        ;; https://github.com/f3d-app/f3d/issues/92) but the tests run in CI
+        ;; seem to be passing.
+        ;; Anyway, the program runs and is able to open at least STL files
+        ;; without issue.
+        #:tests? #f
+        #:configure-flags
+        #~(list (string-append "-DVTK_DIR=" #$output "/lib")
+                "-DBUILD_TESTING=OFF"
+                "-DF3D_MODULE_ALEMBIC=ON"
+                "-DF3D_MODULE_ASSIMP=ON"
+                "-DF3D_MODULE_OCCT=ON"
+                ;; Prefer Guix's versioned documentation directory to F3D's
+                ;; unversioned one.
+                (string-append "-DCMAKE_INSTALL_DOCDIR=" #$output
+                               "/share/doc/" #$name "-" #$version))
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'adjust-titles-and-descriptions
+              (lambda _
+                (substitute* '("CMakeLists.txt"
+                               "resources/f3d.desktop.in"
+                               "resources/io.github.f3d_app.f3d.metainfo.xml")
+                  (("A fast and minimalist 3D viewer")
+                   "Fast and minimalistic 3D viewer"))
+                (substitute* "resources/io.github.f3d_app.f3d.metainfo.xml"
+                  (("it is minimalist,")
+                   "it is minimalistic,")
+                  (("arguments in the command line\\.")
+                   "arguments on the command line."))
+                ;; Keep the title bar short.
+                (substitute* "application/F3DConfig.h.in"
+                  (("AppTitle = \"@PROJECT_DESCRIPTION@\";")
+                   "AppTitle = \"F3D\";"))))
+            (add-after 'unpack 'fix-typos
+              (lambda _
+                (substitute* '("application/F3DOptionsParser.cxx"
+                               "application/F3DStarter.cxx"
+                               "cmake/testing.cmake"
+                               "library/testing/TestSDKHelpers.h")
+                  (("does not exists")
+                   "does not exist"))))
+            ;; Skip checking for the relative-to-executable configuration file
+            ;; (located in ../../argv[0]) when the user configuration file
+            ;; doesn't exist, because the check fails and prints a warning
+            ;; message upon each invocation of the program.
+            ;; Besides, the usefulness of this configuration file is unclear,
+            ;; because F3D reads /etc/f3d/config.json as a fallback system
+            ;; configuration file.
+            (add-after 'unpack 'ignore-binary-config-file-dir
+              (lambda _
+                (substitute* "application/F3DOptionsParser.cxx"
+                  (("^ +filePath = .*->GetBinaryConfigFileDirectory\\(\\) .*")
+                   "")))))))
+      (inputs
+       (list alembic
+             assimp
+             double-conversion
+             eigen
+             expat
+             fontconfig
+             freetype
+             glew
+             hdf5
+             imath
+             jsoncpp
+             libjpeg-turbo
+             libpng
+             libtiff
+             libx11
+             lz4
+             netcdf
+             opencascade-occt
+             vtk
+             zlib))
+      (home-page "https://f3d-app.github.io/f3d/")
+      (synopsis "Fast and minimalistic 3D viewer")
+      (description "F3D (pronounced @samp{/fɛd/}) is a VTK-based 3D viewer
+following the KISS principle, so it is minimalistic, efficient, has no GUI,
+has simple interaction mechanisms and is fully controllable using arguments on
+the command line.  It supports a range of file formats (including animated
+glTF, STL, STEP, PLY, OBJ, FBX), and provides numerous rendering and texturing
+options.")
+      (license license:bsd-3))))
--
2.36.0
P
P
Paul A. Patience wrote on 6 Jun 21:57 +0200
[PATCH v2 0/2] gnu: Add f3d.
(address . 55819@debbugs.gnu.org)(name . Paul A. Patience)(address . paul@apatience.com)
20220606195650.1012196-1-paul@apatience.com
Removed VTK_DIR, which is actually superfluous (and was incorrectly set with
‘#$output’ rather than ‘#$(this-package-input)’).

Paul A. Patience (2):
gnu: vtk: Enable the RenderingExternal module.
gnu: Add f3d.

gnu/packages/graphics.scm | 110 ++++++++++++++++++++++++++++++
gnu/packages/image-processing.scm | 1 +
2 files changed, 111 insertions(+)

--
2.36.0
P
P
Paul A. Patience wrote on 6 Jun 21:57 +0200
[PATCH v2 1/2] gnu: vtk: Enable the RenderingExternal module.
(address . 55819@debbugs.gnu.org)(name . Paul A. Patience)(address . paul@apatience.com)
20220606195650.1012196-2-paul@apatience.com
* gnu/packages/image-processing.scm (vtk)[arguments]<#:configure-flags>:
Add -DVTK_MODULE_ENABLE_VTK_RenderingExternal=YES.
---
gnu/packages/image-processing.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (12 lines)
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm
index f4bf1724b4..249f916489 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -360,6 +360,7 @@ (define-public vtk
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_theora=ON"
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_tiff=ON"
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_zlib=ON"
+                           "-DVTK_MODULE_ENABLE_VTK_RenderingExternal=YES" ; For F3D
                            "-DVTK_WRAP_PYTHON=ON"
                            "-DVTK_PYTHON_VERSION:STRING=3"
                            )
--
2.36.0
P
P
Paul A. Patience wrote on 6 Jun 21:57 +0200
[PATCH v2 2/2] gnu: Add f3d.
(address . 55819@debbugs.gnu.org)(name . Paul A. Patience)(address . paul@apatience.com)
20220606195650.1012196-3-paul@apatience.com
* gnu/packages/graphics.scm (f3d): New variable.
---
gnu/packages/graphics.scm | 110 ++++++++++++++++++++++++++++++++++++++
1 file changed, 110 insertions(+)

Toggle diff (125 lines)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 64286bf68d..3b81f57e60 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -30,6 +30,7 @@
 ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2022 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2054,3 +2055,112 @@ (define-public monado
 such as VR and AR on mobile, PC/desktop, and any other device.  Monado aims to be
 a complete and conforming implementation of the OpenXR API made by Khronos.")
     (license license:boost1.0)))
+
+(define-public f3d
+  ;; There have been many improvements since the last tagged version (1.2.1,
+  ;; released in December 2021), including support for the Alembic file
+  ;; format.
+  (let ((commit "d80fd4558f1851a31d13dfbb62d7648b7b2d36f8")
+        (revision "0"))
+    (package
+      (name "f3d")
+      (version (git-version "1.2.1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/f3d-app/f3d")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "11lj63rfhqp0zwifl2d3rlp7cfbxgr2jb3j7pqh8lhsr2pa94f6s"))))
+      (build-system cmake-build-system)
+      (arguments
+       (list
+        ;; Many tests require files supplied by git-lfs.
+        ;; Also, some tests segfault (after an exception?) but the tested
+        ;; behavior, i.e., when the program is run manually, does not (for
+        ;; example, TestNonExistentConfigFile and TestInvalidConfigFile).
+        ;; Upstream is aware of occasionally flaky tests (see
+        ;; https://github.com/f3d-app/f3d/issues/92) but the tests run in CI
+        ;; seem to be passing.
+        ;; Anyway, the program runs and is able to open at least STL files
+        ;; without issue.
+        #:tests? #f
+        #:configure-flags
+        #~(list "-DBUILD_TESTING=OFF"
+                "-DF3D_MODULE_ALEMBIC=ON"
+                "-DF3D_MODULE_ASSIMP=ON"
+                "-DF3D_MODULE_OCCT=ON"
+                ;; Prefer Guix's versioned documentation directory to F3D's
+                ;; unversioned one.
+                (string-append "-DCMAKE_INSTALL_DOCDIR=" #$output
+                               "/share/doc/" #$name "-" #$version))
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'adjust-titles-and-descriptions
+              (lambda _
+                (substitute* '("CMakeLists.txt"
+                               "resources/f3d.desktop.in"
+                               "resources/io.github.f3d_app.f3d.metainfo.xml")
+                  (("A fast and minimalist 3D viewer")
+                   "Fast and minimalistic 3D viewer"))
+                (substitute* "resources/io.github.f3d_app.f3d.metainfo.xml"
+                  (("it is minimalist,")
+                   "it is minimalistic,")
+                  (("arguments in the command line\\.")
+                   "arguments on the command line."))
+                ;; Keep the title bar short.
+                (substitute* "application/F3DConfig.h.in"
+                  (("AppTitle = \"@PROJECT_DESCRIPTION@\";")
+                   "AppTitle = \"F3D\";"))))
+            (add-after 'unpack 'fix-typos
+              (lambda _
+                (substitute* '("application/F3DOptionsParser.cxx"
+                               "application/F3DStarter.cxx"
+                               "cmake/testing.cmake"
+                               "library/testing/TestSDKHelpers.h")
+                  (("does not exists")
+                   "does not exist"))))
+            ;; Skip checking for the relative-to-executable configuration file
+            ;; (located in ../../argv[0]) when the user configuration file
+            ;; doesn't exist, because the check fails and prints a warning
+            ;; message upon each invocation of the program.
+            ;; Besides, the usefulness of this configuration file is unclear,
+            ;; because F3D reads /etc/f3d/config.json as a fallback system
+            ;; configuration file.
+            (add-after 'unpack 'ignore-binary-config-file-dir
+              (lambda _
+                (substitute* "application/F3DOptionsParser.cxx"
+                  (("^ +filePath = .*->GetBinaryConfigFileDirectory\\(\\) .*")
+                   "")))))))
+      (inputs
+       (list alembic
+             assimp
+             double-conversion
+             eigen
+             expat
+             fontconfig
+             freetype
+             glew
+             hdf5
+             imath
+             jsoncpp
+             libjpeg-turbo
+             libpng
+             libtiff
+             libx11
+             lz4
+             netcdf
+             opencascade-occt
+             vtk
+             zlib))
+      (home-page "https://f3d-app.github.io/f3d/")
+      (synopsis "Fast and minimalistic 3D viewer")
+      (description "F3D (pronounced @samp{/fɛd/}) is a VTK-based 3D viewer
+following the KISS principle, so it is minimalistic, efficient, has no GUI,
+has simple interaction mechanisms and is fully controllable using arguments on
+the command line.  It supports a range of file formats (including animated
+glTF, STL, STEP, PLY, OBJ, FBX), and provides numerous rendering and texturing
+options.")
+      (license license:bsd-3))))
--
2.36.0
P
P
Paul A. Patience wrote on 14 Jul 19:06 +0200
[PATCH v3] gnu: Add f3d.
(name . 55819@debbugs.gnu.org)(address . 55819@debbugs.gnu.org)
FA5kZUe4R1C6dhGsdUQN1WONrIwssPQyO7IW3nAgitOqPoJGoX4ee5zcCXKsH3ZvXFMLtHejIUuMls9cHbvf986lHM4ZXTvoADxH4QVXZMc=@apatience.com
Updated to the latest commit.
From 588a8323e624caf46a94cf2eebf77dc3f5e16cec Mon Sep 17 00:00:00 2001
From: "Paul A. Patience" <paul@apatience.com>
Date: Mon, 6 Jun 2022 06:29:18 -0400
Subject: [PATCH v3 1/2] gnu: vtk: Enable the RenderingExternal module.

* gnu/packages/image-processing.scm (vtk)[arguments]<#:configure-flags>:
Add -DVTK_MODULE_ENABLE_VTK_RenderingExternal=YES.
---
gnu/packages/image-processing.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm
index bcb1d7a2f6..ccf9ac1b00 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -358,6 +358,7 @@ (define-public vtk
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_theora=ON"
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_tiff=ON"
                            "-DVTK_MODULE_USE_EXTERNAL_VTK_zlib=ON"
+                           "-DVTK_MODULE_ENABLE_VTK_RenderingExternal=YES" ; For F3D
                            "-DVTK_WRAP_PYTHON=ON"
                            "-DVTK_PYTHON_VERSION:STRING=3"
                            )
-- 
2.36.1
From f80bd6d46185b544271154a83ca42056f4e4f7ad Mon Sep 17 00:00:00 2001
From: "Paul A. Patience" <paul@apatience.com>
Date: Mon, 6 Jun 2022 06:33:27 -0400
Subject: [PATCH v3 2/2] gnu: Add f3d.

* gnu/packages/graphics.scm (f3d): New variable.
---
gnu/packages/graphics.scm | 110 ++++++++++++++++++++++++++++++++++++++
1 file changed, 110 insertions(+)

Toggle diff (127 lines)
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index c193be1efb..0ccb79e665 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2022 Zheng Junjie <873216071@qq.com>
 ;;; Copyright © 2022 Tobias Kortkamp <tobias.kortkamp@gmail.com>
+;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2120,3 +2121,112 @@ (define-public azpainter
 @end itemize
 ")
     (license license:gpl3+)))
+
+(define-public f3d
+  ;; There have been many improvements since the last tagged version (1.2.1,
+  ;; released in December 2021), including support for the Alembic file
+  ;; format.
+  (let ((commit "9cc79b65ed750b178f58012dbba091aa24722dab")
+        (revision "0"))
+    (package
+      (name "f3d")
+      (version (git-version "1.2.1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/f3d-app/f3d")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "041gqi2wfny2br4j68vhifg0bd18kbl0qsaallkz7yywk47njxfi"))))
+      (build-system cmake-build-system)
+      (arguments
+       (list
+        ;; Many tests require files supplied by git-lfs.
+        ;; Also, some tests segfault (after an exception?) but the tested
+        ;; behavior, i.e., when the program is run manually, does not (for
+        ;; example, TestNonExistentConfigFile and TestInvalidConfigFile).
+        ;; Upstream is aware of occasionally flaky tests (see
+        ;; https://github.com/f3d-app/f3d/issues/92) but the tests run in CI
+        ;; seem to be passing.
+        ;; Anyway, the program runs and is able to open at least STL files
+        ;; without issue.
+        #:tests? #f
+        #:configure-flags
+        #~(list "-DBUILD_TESTING=OFF"
+                "-DF3D_MODULE_ALEMBIC=ON"
+                "-DF3D_MODULE_ASSIMP=ON"
+                "-DF3D_MODULE_OCCT=ON"
+                ;; Prefer Guix's versioned documentation directory to F3D's
+                ;; unversioned one.
+                (string-append "-DCMAKE_INSTALL_DOCDIR=" #$output
+                               "/share/doc/" #$name "-" #$version))
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'adjust-titles-and-descriptions
+              (lambda _
+                (substitute* '("CMakeLists.txt"
+                               "resources/f3d.desktop.in"
+                               "resources/io.github.f3d_app.f3d.metainfo.xml")
+                  (("A fast and minimalist 3D viewer")
+                   "Fast and minimalistic 3D viewer"))
+                (substitute* "resources/io.github.f3d_app.f3d.metainfo.xml"
+                  (("it is minimalist,")
+                   "it is minimalistic,")
+                  (("arguments in the command line\\.")
+                   "arguments on the command line."))
+                ;; Keep the title bar short.
+                (substitute* "application/F3DConfig.h.in"
+                  (("AppTitle = \"@PROJECT_DESCRIPTION@\";")
+                   "AppTitle = \"F3D\";"))))
+            (add-after 'unpack 'fix-typos
+              (lambda _
+                (substitute* '("application/F3DOptionsParser.cxx"
+                               "application/F3DStarter.cxx"
+                               "cmake/testing.cmake"
+                               "library/testing/TestSDKHelpers.h")
+                  (("does not exists")
+                   "does not exist"))))
+            ;; Skip checking for the relative-to-executable configuration file
+            ;; (located in ../../argv[0]) when the user configuration file
+            ;; doesn't exist, because the check fails and prints a warning
+            ;; message upon each invocation of the program.
+            ;; Besides, the usefulness of this configuration file is unclear
+            ;; because F3D reads /etc/f3d/config.json as a fallback system
+            ;; configuration file.
+            (add-after 'unpack 'ignore-binary-config-file-dir
+              (lambda _
+                (substitute* "application/F3DOptionsParser.cxx"
+                  (("^ +filePath = .*->GetBinaryConfigFileDirectory\\(\\) .*")
+                   "")))))))
+      (inputs
+       (list alembic
+             assimp
+             double-conversion
+             eigen
+             expat
+             fontconfig
+             freetype
+             glew
+             hdf5
+             imath
+             jsoncpp
+             libjpeg-turbo
+             libpng
+             libtiff
+             libx11
+             lz4
+             netcdf
+             opencascade-occt
+             vtk
+             zlib))
+      (home-page "https://f3d-app.github.io/f3d/")
+      (synopsis "Fast and minimalistic 3D viewer")
+      (description "F3D (pronounced @samp{/fɛd/}) is a VTK-based 3D viewer
+following the KISS principle, so it is minimalistic, efficient, has no GUI,
+has simple interaction mechanisms and is fully controllable using arguments on
+the command line.  It supports a range of file formats (including animated
+glTF, STL, STEP, PLY, OBJ, FBX), and provides numerous rendering and texturing
+options.")
+      (license license:bsd-3))))
-- 
2.36.1
宋文武 wrote 6 days ago
Re: bug#55819: [PATCH 0/2] gnu: Add f3d.
(name . Paul A. Patience)(address . paul@apatience.com)(name . 55819@debbugs.gnu.org)(address . 55819@debbugs.gnu.org)
875yizrw3m.fsf_-_@envs.net
"Paul A. Patience" <paul@apatience.com> writes:

Hello, I had pushed those patches, with adjusted f3d synopsis and
description (remove "fast", "minimalistic", "KISS"), and also phases.

Toggle quote (40 lines)
> [...]
> + #:phases
> + #~(modify-phases %standard-phases
> + (add-after 'unpack 'adjust-titles-and-descriptions
> + (lambda _
> + (substitute* '("CMakeLists.txt"
> + "resources/f3d.desktop.in"
> + "resources/io.github.f3d_app.f3d.metainfo.xml")
> + (("A fast and minimalist 3D viewer")
> + "Fast and minimalistic 3D viewer"))
> + (substitute* "resources/io.github.f3d_app.f3d.metainfo.xml"
> + (("it is minimalist,")
> + "it is minimalistic,")
> + (("arguments in the command line\\.")
> + "arguments on the command line."))
> + ;; Keep the title bar short.
> + (substitute* "application/F3DConfig.h.in"
> + (("AppTitle = \"@PROJECT_DESCRIPTION@\";")
> + "AppTitle = \"F3D\";"))))
> + (add-after 'unpack 'fix-typos
> + (lambda _
> + (substitute* '("application/F3DOptionsParser.cxx"
> + "application/F3DStarter.cxx"
> + "cmake/testing.cmake"
> + "library/testing/TestSDKHelpers.h")
> + (("does not exists")
> + "does not exist"))))
> + ;; Skip checking for the relative-to-executable configuration file
> + ;; (located in ../../argv[0]) when the user configuration file
> + ;; doesn't exist, because the check fails and prints a warning
> + ;; message upon each invocation of the program.
> + ;; Besides, the usefulness of this configuration file is unclear
> + ;; because F3D reads /etc/f3d/config.json as a fallback system
> + ;; configuration file.
> + (add-after 'unpack 'ignore-binary-config-file-dir
> + (lambda _
> + (substitute* "application/F3DOptionsParser.cxx"
> + (("^ +filePath = .*->GetBinaryConfigFileDirectory\\(\\) .*")
> + "")))))))

I think those titles, descriptions, typos, and warning should go direct
to the upstream, since they don't change the function of f3d, so I pushed
this patch without those modifications first.


Thank you!
?