Subject: libfive is broken since 0559a4b
From: "nomike (they/them)" <[email-masked]>
To: [email-masked], [email-masked]
Cc: Ludovic Courtès <[email-masked]>
Date: Fri, 18 Jul 2025 14:03:30 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi!

libfive doesn't build anymore.

I've hacked together a script which uses `guix time-machine` and binary 
search to
determine when something broke:
<https://codeberg.org/nomike/guix-binary-issue-search>

With this I was able to confirm that the build of libfive is broken 
starting from
commit 0559a4b5472f9dc4c88240c61e7ad49a95855d6f.

Commit comment:

```plaintext
Author: Nicolas Graves <[email-masked]>
Date:   Tue Jul 8 11:26:04 2025 +0200

     build-system: guile: Remove unused build defaults.

     Defaults should be set in guix/build-system/guile.scm rather than
     guix/build/guile-build-system.scm, to disambiguate at first sight
     where those defaults are set.

     * guix/build-system/guile.scm (guile-build)
       <#:not-compiled-file-regexp>: Add default.

     * guix/build/guile-build-system.scm (build): Remove unused keyword
       defaults.

     Signed-off-by: Ludovic Courtès <[email-masked]>
```

Error message during `guix build libfive`:

```plaintext
phase `build' succeeded after 334.2 seconds
starting phase `guile-build'
Compiling with Guile 3.0...
compile flags: #f
error: in phase 'guile-build': uncaught exception:
wrong-type-arg "make-regexp" "Wrong type argument in position ~A 
(expecting ~A): ~S" (1 "string" #f) (#f)
phase `guile-build' failed after 0.0 seconds
Backtrace:
           11 (primitive-load "/gnu/store/w97a3anggzr3iph22d0f07znhxi…")
In guix/build/gnu-build-system.scm:
     966:2 10 (gnu-build #:source _ #:outputs _ #:inputs _ #:phases . #)
In ice-9/boot-9.scm:
   1752:10  9 (with-exception-handler _ _ #:unwind? _ # _)
In srfi/srfi-1.scm:
     634:9  8 (for-each #<procedure 78dccc45db20 at guix/build/gnu-b…> …)
In ice-9/boot-9.scm:
   1752:10  7 (with-exception-handler _ _ #:unwind? _ # _)
In guix/build/gnu-build-system.scm:
    987:23  6 (_)
In guix/build/guile-build-system.scm:
    180:13  5 (build #:outputs _ #:inputs _ #:native-inputs _ # _ # _ …)
In guix/build/utils.scm:
    547:18  4 (find-files "." _ #:stat _ #:directories? _ # _)
    530:21  3 (file-name-predicate #f)
In unknown file:
            2 (make-regexp #f)
In ice-9/boot-9.scm:
   1685:16  1 (raise-exception _ #:continuable? _)
   1685:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
In procedure make-regexp: Wrong type argument in position 1 (expecting 
string): #f
build process 14 exited with status 256
builder for 
`/gnu/store/hlzpkqkgmr8f7rpq58hm1fn9q8cbs4ak-libfive-0-5.b1ea998.drv' 
failed with exit code 1
build of 
/gnu/store/hlzpkqkgmr8f7rpq58hm1fn9q8cbs4ak-libfive-0-5.b1ea998.drv failed
View build log at 
'/var/log/guix/drvs/hl/zpkqkgmr8f7rpq58hm1fn9q8cbs4ak-libfive-0-5.b1ea998.drv.gz'.
guix build: error: build of 
`/gnu/store/hlzpkqkgmr8f7rpq58hm1fn9q8cbs4ak-libfive-0-5.b1ea998.drv' failed
```

I want to finalize and submit a new package for PythonSCAD. a 
programmating 3D modelling tool but I'm now blocked
due to it's dependency on libfive.

@Nicolas: Could you (or someone else) have a look at this and fix it please?

Thanks

nomike