Created attachment 602248 [details, diff] Proposed patch for devilution-1.0.0.ebuild Devilution requires the "CharisSILB.ttf" font file which is bundled in the source package and the git tree: Packaging/resources/CharisSILB.ttf (OFL-1.1 licensed) One possibility would be system-wide installation, since a bug [1] preventing that has been fixed. (As opposed to requiring symlinking the file from e.g. /usr/share/games/devilution to the directory containing the diabdat.mpq in post-install) Additionally, a .desktop file and icons are also provided in the sources. I've attached a proposed patch for the current devilutionx-1.0.0.ebuild adding the font and icons. [1] https://github.com/diasurgical/devilutionX/issues/333
I'd rather make the ebuild RDEPEND on media-fonts/sil-charis package to be honest... is there any compelling reason to use the bundled fonts instead? What about file collisions with media-fonts/sil-charis package?
Created attachment 602288 [details, diff] Revised proposed patch for devilution-1.0.0.ebuild TBH, I didn't see the existing ebuild for the font. There are however no collisions, since the font is installed in a subfolder. Devilution is looking for "CharisSILB.ttf" whereas the font ebuild provides "CharisSIL-B.ttf" (additional dash). I think it is cleaner to patch the sources and add the font dependency
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a1e8a4363f135e88b95d2f0d080e85fe878b76d commit 0a1e8a4363f135e88b95d2f0d080e85fe878b76d Author: Meik Frischke <meik.frischke@gmail.com> AuthorDate: 2020-01-02 11:47:32 +0000 Commit: Lars Wendler <polynomial-c@gentoo.org> CommitDate: 2020-01-02 11:49:08 +0000 games-engines/devilutionx: Use CharisSIL-B.ttf font Install desktop icons and improved .desktop entry Closes: https://bugs.gentoo.org/704508 Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> games-engines/devilutionx/devilutionx-1.0.0-r1.ebuild | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
During the bump of v1.1.0, the patch from commit 0a1e8a4363f135e88b95d2f0d080e85fe878b76d was missing and the new ebuild installs its copy of Charis fontset into /usr/share/fonts/truetype/CharisSILB.ttf instead of pulling in media-fonts/sil-charis. Mind you, the game works fine and all, but the bundled Charis fontset triggers all sort of funny sandbox violations for any Portage ebuilds that invoke fontconfig utils. Example: >>> Source compiled. * --------------------------- ACCESS VIOLATION SUMMARY --------------------------- * LOG FILE: "/var/tmp/portage/media-gfx/gimp-2.10.20-r3/temp/sandbox.log" * VERSION 1.0 FORMAT: F - Function called FORMAT: S - Access Status FORMAT: P - Path as passed to function FORMAT: A - Absolute Path (not canonical) FORMAT: R - Canonical Path FORMAT: C - Command Line F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-error.png -o 64/gimp-error.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-info.png -o 64/gimp-info.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-question.png -o 64/gimp-question.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-warning.png -o 64/gimp-warning.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-frame.png -o 64/gimp-frame.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-texture.png -o 64/gimp-texture.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-error.png -o 64/gimp-error.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-info.png -o 64/gimp-info.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-question.png -o 64/gimp-question.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-warning.png -o 64/gimp-warning.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-frame.png -o 64/gimp-frame.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-texture.png -o 64/gimp-texture.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-error.png -o 64/gimp-error.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-info.png -o 64/gimp-info.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-warning.png -o 64/gimp-warning.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-question.png -o 64/gimp-question.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-frame.png -o 64/gimp-frame.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1.5 cast-format input-format=RGBA float output-format=R'G'B'A float F: mkostemp S: deny P: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX A: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX R: /usr/share/fonts/truetype/.uuid.TMP-XXXXXX C: /usr/bin/gegl-0.4 ../../icons/Symbolic/64/gimp-texture.png -o 64/gimp-texture.png -- cast-format input-format=R'G'B'A float output-format=RGBA float brightness-contrast contrast=-1.5 cast-format input-format=RGBA float output-format=R'G'B'A float * -------------------------------------------------------------------------------- Unmerging games-engines/devilutionx avoided the sandbox violations.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c10ee37782c5045e949a2758cdb5fd0e6dbe8aa2 commit c10ee37782c5045e949a2758cdb5fd0e6dbe8aa2 Author: Lars Wendler <polynomial-c@gentoo.org> AuthorDate: 2021-01-17 23:18:08 +0000 Commit: Lars Wendler <polynomial-c@gentoo.org> CommitDate: 2021-01-17 23:20:15 +0000 games-engines/devilutionx: Avoid bundled font again Bug: https://bugs.gentoo.org/704508 Package-Manager: Portage-3.0.13, Repoman-3.0.2 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> .../devilutionx/devilutionx-1.1.0-r1.ebuild | 65 ++++++++++++++++++++++ .../files/devilutionx-1.1.0-no_bundled_font.patch | 51 +++++++++++++++++ 2 files changed, 116 insertions(+)