all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Thiago Jung Bauermann via Bug reports for GNU Guix <bug-guix@gnu.org>
To: 48064@debbugs.gnu.org
Cc: Thiago Jung Bauermann <bauermann@kolabnow.com>
Subject: bug#48064: [PATCH core-updates] build-system/texlive: Change default format to pdftex
Date: Fri,  2 Jul 2021 13:00:10 -0300	[thread overview]
Message-ID: <20210702160010.246888-1-bauermann@kolabnow.com> (raw)
In-Reply-To: <871rav68km.fsf@inria.fr>

LuaTeX has a bug where sometimes it corrupts the heap and aborts. This
causes the build of texlive packages to fail at random. The problem is
being tracked at https://issues.guix.gnu.org/48064.

While a fix isn't found, switch the default TeX format (and consequently
also the engine) to pdftex to avoid the issue.

* guix/build-system/texlive.scm (texlive-build): Change default value of
the ‘tex-format’ key parameter to “pdftex”.
---
 guix/build-system/texlive.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Hello,

Originally I had a bigger patch which changed packages individually to
build with pdfTeX, because I thought the bug in LuaTeX was triggered only
by specific packages. As I changed more and more packages though, I
realized that any package can trigger the problem and the heap corruption
happens at random.

Therefore, to work around the LuaTeX bug we need to build all packages with
pdfTeX. I tested the patch with this script:

--8<---------------cut here---------------start------------->8---
#!/bin/bash

set -e

LOG_FILE="$1"
ROUNDS=$2

function verify_package() {
    local package="$1"
    local log_file="$2"

    if ! guix build "$package"; then
        echo "failure while building $package" >> "$log_file"
        return
    fi

    echo "success while building $package" >> "$log_file"

    if ! guix build --check --rounds=$ROUNDS "$package"; then
        echo "failure while checking $package" >> "$log_file"
        return
    fi

    echo "success while checking $package" >> "$log_file"

    return
}

guix describe >> "$LOG_FILE"
echo rounds = "$ROUNDS" >> "$LOG_FILE"
echo >> "$LOG_FILE"

for package in $(guix package --list-available='^texlive' | cut -f1)
do
    verify_package $package "$LOG_FILE"
done
--8<---------------cut here---------------end--------------->8---

and called it with `./verify-texlive-packages.sh verify-packages.log 5`.

I see some packages fail during `guix build --check` because they don't
build deterministically for some reason (which is a separate problem), but
I don't see any package failing to build anymore.

diff --git a/guix/build-system/texlive.scm b/guix/build-system/texlive.scm
index 0efa139fc124..00a36d5862d4 100644
--- a/guix/build-system/texlive.scm
+++ b/guix/build-system/texlive.scm
@@ -128,7 +128,7 @@ level package ID."
                         (tests? #f)
                         tex-directory
                         (build-targets #f)
-                        (tex-format "luatex")
+                        (tex-format "pdftex")
                         (phases '(@ (guix build texlive-build-system)
                                     %standard-phases))
                         (outputs '("out"))




  parent reply	other threads:[~2021-07-02 16:06 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-27 15:39 bug#48064: texlive-* packages fail to build non-deterministically Ludovic Courtès
2021-06-06  1:36 ` Thiago Jung Bauermann via Bug reports for GNU Guix
2021-06-29 14:02   ` Ludovic Courtès
2021-06-29 15:10     ` Ludovic Courtès
2021-06-30 11:53       ` bug#48064: [Dev-luatex] " luigi scarso
2021-07-02 15:11         ` Thiago Jung Bauermann via Bug reports for GNU Guix
2021-12-31 17:40           ` luigi scarso
2021-06-09  0:28 ` Thiago Jung Bauermann via Bug reports for GNU Guix
2021-06-30 10:05   ` Ludovic Courtès
2021-06-30 12:46     ` Thiago Jung Bauermann via Bug reports for GNU Guix
2021-06-30 14:54       ` Thiago Jung Bauermann via Bug reports for GNU Guix
2021-07-01 13:07         ` Ludovic Courtès
2021-07-02 15:17           ` Thiago Jung Bauermann via Bug reports for GNU Guix
2021-06-29 19:59 ` Thiago Jung Bauermann via Bug reports for GNU Guix
2021-07-05  8:42   ` Ludovic Courtès
2021-07-02 16:00 ` Thiago Jung Bauermann via Bug reports for GNU Guix [this message]
2021-07-05  9:20   ` Ludovic Courtès
2021-07-05 17:27     ` Thiago Jung Bauermann via Bug reports for GNU Guix

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210702160010.246888-1-bauermann@kolabnow.com \
    --to=bug-guix@gnu.org \
    --cc=48064@debbugs.gnu.org \
    --cc=bauermann@kolabnow.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.