bug#52073: remove Google support from GVFS?

2021-12-31 Thread Mark H Weaver
Earlier, I wrote:
> In fact, if you look at the commit log over the last few years, you'll
> see that 8 out of the last 10 non-micro updates of WebKitGTK have
> required additional changes to the build recipe.

Correction: it's actually 9 out of the last 10.  At first glance, the
following commit looked like a simple update, but in fact it required
additional changes.

   Mark

> commit 844cc6f876b8dcadf210398e68b3f3f824cb7144
> Author: Mark H Weaver 
> Date:   Sat Sep 22 19:17:02 2018 -0400
>
> gnu: webkitgtk: Add version 2.22.2.
> 
> * gnu/packages/webkit.scm (webkitgtk-2.22): New variable.

-- 
Disinformation flourishes because many people care deeply about injustice
but very few check the facts.  Ask me about .





bug#52073: remove Google support from GVFS?

2021-12-31 Thread Mark H Weaver
Hi Leo,

Leo Famulari  writes:

> My experience with WebKitGTK is that the build is quite reliable. That's
> why I pushed the broken update to begin with: it always worked in the
> past.

That might be true of _micro_ version updates of WebKitGTK, but it's
certainly false for non-micro updates.  I thought you would have known
to treat those two kinds of updates differently.

In fact, if you look at the commit log over the last few years, you'll
see that 8 out of the last 10 non-micro updates of WebKitGTK have
required additional changes to the build recipe.

   Mark


commit 3c5e1412e3ef769df8e4826d0aedabaa3aa0d631
Author: Leo Famulari 
Date:   Tue Mar 30 13:30:28 2021 -0400

gnu: WebKitGTK: Update to 2.32.0 [fixes CVE-2021-{1788,1844,1871}].

* gnu/packages/webkit.scm (webkitgtk): Update to 2.32.0.
[arguments]: Add -DENABLE_GAMEPAD=OFF to #:configure-flags.

commit e6b6e834903f001d4f2ae9bf0511bf7953c0f80b
Author: Mark H Weaver 
Date:   Sun Sep 20 14:41:29 2020 -0400

gnu: webkitgtk: Update to 2.30.0.

* gnu/packages/webkit.scm (webkitgtk): Update to 2.30.0.
[arguments]: Add "-DUSE_SYSTEMD=OFF" to the configure flags.

commit 3c9d89b5e2da2731ccc56a4cb745e1868175db79
Author: Leo Famulari 
Date:   Fri Mar 13 12:32:33 2020 -0400

gnu: WebKitGTK: Update to 2.28.0 [fixes CVE-2020-10018].

* gnu/packages/webkit.scm (webkitgtk): Update to 2.28.0.

commit 689b44bc3fe50de86c8c8b8c2ac503b2e82d7975
Author: Marius Bakke 
Date:   Thu Sep 26 16:40:18 2019 +0200

gnu: WebKitGTK: Update to 2.26.1.

* gnu/packages/webkit.scm (webkitgtk-2.24): Rename to ...
(webkitgtk-2.26): ... this.  Update to 2.26.1.
[inputs]: Add BUBBLEWRAP, LIBSECCOMP, LIBWPE, WPEBACKEND-FDO, and 
XDG-DBUS-PROXY.
* gnu/packages/gnome.scm (eolie, epiphany)[inputs]: Adjust for changed
variable name.
* gnu/packages/web-browsers.scm (next-gtk-webkit)[inputs]: Likewise.

commit 72663b48221668f30b7bdcc502c299757a647156
Author: Marius Bakke 
Date:   Wed Mar 13 15:00:03 2019 +0100

gnu: WebKitGTK: Update to 2.24.0.

* gnu/packages/webkit.scm (webkitgtk-2.22): Rename to ...
(webkitgtk-2.24): ... this.  Update to 2.24.0.
[inputs]: Add OPENJPEG.
* gnu/packages/gnome.scm (eolie, epiphany)[inputs]: Adjust accordingly.
* gnu/packages/web-browsers.scm (next-gtk-webkit)[inputs]: Likewise.

commit 844cc6f876b8dcadf210398e68b3f3f824cb7144
Author: Mark H Weaver 
Date:   Sat Sep 22 19:17:02 2018 -0400

gnu: webkitgtk: Add version 2.22.2.

* gnu/packages/webkit.scm (webkitgtk-2.22): New variable.

commit 86c9c0c11819f1e5ec6f821265a0492ddeaf83ee
Author: Tobias Geerinckx-Rice 
Date:   Wed Mar 14 10:24:08 2018 +0100

gnu: webkitgtk: Update to 2.20.0.

* gnu/packages/webkit.scm (webkitgtk): Update to 2.20.0.
[arguments]: (Re-)disable WOFF2 web font support.

commit a54bf725fcb35052120dc6e82c951d4d7873
Author: Mark H Weaver 
Date:   Fri Sep 15 13:10:56 2017 -0400

gnu: webkitgtk: Update to 2.18.0.

* gnu/packages/webkit.scm (webkitgtk): Update to 2.18.0.
[arguments]: Add -DUSE_GSTREAMER_GL=OFF to configure-flags.
[inputs]: Add libtasn1.

commit c38685524956a9451ce254da80f6819be53ead6c
Author: Leo Famulari 
Date:   Mon Mar 27 12:52:42 2017 -0400

gnu: webkitgtk: Update to 2.16.0.

WebKitGTK+ 2.16.0 is the first stable release of WebKitGTK+ that uses 
libgcrypt
instead of GnuTLS for some cryptographic functions:




* gnu/packages/webkit.scm (webkitgtk): Update to 2.16.0.
[inputs]: Replace gnutls with libgcrypt.

-- 
Disinformation flourishes because many people care deeply about injustice
but very few check the facts.  Ask me about .





bug#52906: python-biopython conflicts with python-numpy

2021-12-31 Thread Ricardo Wurmus


zimoun  writes:

> Hi,
>
> On Fri, 31 Dec 2021 at 13:44, Ricardo Wurmus  wrote:
>
>> I just realized that switching over to the new numpy is going to cause
>> more than a 1000 rebuilds.  So I’ll apply your patch on the master
>> branch and build out the numpy upgrade on a separate branch.
>
> Thanks!  A separate wip-* branch?

Yes, I wanted to build this out on wip-upgrade-numpy or something
similar.  I’d like to avoid entangling this with other upgrades on a
core-updates or staging branch.

-- 
Ricardo





bug#52904: nmtui - user authorisation

2021-12-31 Thread Josselin Poiret via Bug reports for GNU Guix
Hello,
raingloom  writes:

> On Wed, 29 Dec 2021 11:04:39 +
> Paul Jewell  wrote:
>
>> On 29/12/2021 00:50, raingloom wrote:
>> > On Tue, 28 Dec 2021 18:39:52 +
>> > Paul Jewell  wrote:
>> >  
>> >> On 27/12/2021 23:20, Leo Famulari wrote:  
>> >>> On Mon, Dec 27, 2021 at 10:07:17PM +, Paul Jewell wrote:  
>>  Solved this - nmtui needs to be run as root; my script which
>>  invoked the program didn't consider that. Changing it to run as
>>  sudo gives me an opportunity to enter my password, and then
>>  successfully setup the wifi interface details.  
>> >>> Another option is to add nmtui to the list of programs that are
>> >>> setuid. That way, any user on your system could configure wifi,
>> >>> which may be more ergonomic.
>> >>>
>> >>> https://guix.gnu.org/manual/devel/en/html_node/Setuid-Programs.html
>> >>> 
>> >> This option did work as expected. The only additional point for
>> >> anyone else coming across this post with the same issue: remember
>> >> to add the
>> >>
>> >> #:use-module (gnu system setuid)
>> >>
>> >> so the setuid record is known.
>> >>
>> >> Thanks Leo!  
>> > Uhm, I'm pretty sure NetworkManager lets any user modify networking
>> > settings as long as they are in a certain group?
>> > https://wiki.archlinux.org/title/NetworkManager#Set_up_PolicyKit_permissions
>> >
>> > At least that's how it is on postmarketOS and I'm also fairly
>> > certain I never needed root access to set up WiFi under Guix
>> > either, but I don't have a system at hand to verify that on.  
>> 
>> I did also think this, but I couldn't identify which group would let 
>> this happen. I thought it would be the netdev group, but my user
>> account is already a member of that group. The network group is
>> unknown to the system (as in I had an error when trying to add the
>> user to the supplementary group) so I added it, but it didn't have
>> any effect (after rebooting). If there is another group I should be
>> in, I am not sure how to find out. At the moment, the setuid approach
>> seems to work OK (although I would prefer a group solution!).
>> 
>> I am interested in anyone else's experience!
>
> It might be that everyone else is including some default configuration
> for NetworkManager and we aren't. At the very least it should be
> documented how to set it up to use groups.
>
> CC-ing bugs-guix 

NetworkManager uses dbus to communicate with its root-run service, and
Polkit to check for permissions.  By default, the NetworkManager actions
are pretty permissive, you can do most of them without reauthenticating,
except for a couple specific ones.

More in detail, Polkit works by looking up the PID of processes that
ask for specific actions, and then asking systemd-logind/elogind which
session that process is attached to.  Then, there are three different
cases:
* the session is active (not locked, I think that means in logind
parlance).  In this case, Polkit looks at the `allow_active` rule.
* the session is inactive (or locked).  Then, Polkit looks at the
`allow_inactive`.
* there is no session attached to the process (possible for eg. system
services).  Then, Polkit looks at the `allow_any` rule.

Now, if you look at network-manager's
/share/polkit-1/actions/org.freedesktop.NetworkManager.policy, you can
see that some actions are possible for active sessions, while impossible
for inactive sessions, or even processes not attached to the session.

So, I think the issue is that you are trying to do some actions outside
of a session, or in an inactive session, and Polkit refuses to let you
do that.  I don't think there is a way to circumvent that, since there
is no `allow_any` rule for many actions, but I don't know what this
entails (if it is an implicit `no`, `auth_admin`, etc...).

Note that we have a catch-all rule defined at `polkit-wheel` in
gnu/services/desktop.scm that says that administrative users are exactly
the users in the group `wheel`.  That means that when Polkit needs to
authenticate an administrative user, it will ask for your own password
if you're in the `wheel` group, but you still need to reauthenticate,
you cannot bypass that check.

I hope this clears up how Polkit works, and why the action is denied.

-- 
Josselin Poiret





bug#52919: Hidden "disk-image-rw" files aren't deleted after use, filling $tmpdir

2021-12-31 Thread Leo Famulari
I noticed that files such as
".gk8hqaqb6z4q1gmk678sixjbc9r7kd9g-disk-image-rw" are filling up my
$TMPDIR when building ISO images with Guix.

This is new. I think the issue was introduced with recent work on (gnu
system image), perhaps from this commit:

https://git.savannah.gnu.org/cgit/guix.git/commit/?id=da924796744bbb7b035a986fe5d28d8d613ff6af





bug#52073: remove Google support from GVFS?

2021-12-31 Thread Leo Famulari
On Fri, Dec 31, 2021 at 01:24:55PM +0100, Liliana Marie Prikler wrote:
> Given that we have GNOME 40/41 on master right now with GVFS supporting
> Google as it did before, is this still relevant?

Since the bug report was a reaction to WebKitGTK being broken, and it's
no longer broken, I'm closing the ticket [0].

When packages break occasionally, we have to decide if we should remove
them from the distro or if we can should try maintain the status quo.

My experience with WebKitGTK is that the build is quite reliable. That's
why I pushed the broken update to begin with: it always worked in the
past. There's no need to rewrite the dependency graph just because I was
lazy and don't have a very fast computer.

[0] Anyone can reopen it by sending a message with "reopen 52073" to
.
https://debbugs.gnu.org/server-control.html





bug#48064: [Dev-luatex] bug#48064: texlive-* packages fail to build non-deterministically

2021-12-31 Thread luigi scarso
On Fri, Jul 2, 2021 at 5:11 PM Thiago Jung Bauermann 
wrote:

> Em quarta-feira, 30 de junho de 2021, às 08:53:41 -03, luigi scarso
> escreveu:
> > On Wed, Jun 30, 2021 at 8:20 AM Ludovic Courtès  wrote:
> > > Hi,
> > >
> > > Ludovic Courtès  skribis:
> > > > While investigating luatex crashes in the TeX Live 2020 package of
> > > > GNU Guix¹, we identified the following heap corruption reported by
> > >
> > > > Valgrind (this is on GNU/Linux, with glibc 2.33):
> > > This time with debug info for luatex:
> > Thank you for the report, I will check asap.
>
> Thanks! I was able to run Valgrind on LuaTeX 1.13.0, which is the latest
> one in TeX Live 2021.
>
> The invalid reads and writes don’t happen on every run. I had to re-run
> the
> command 3 or 4 times until I got the result below (which matches our
> experience with the build failures in Guix packages)
>
> --
> Thanks,
> Thiago
>

Until now I was not able to reproduce the issue.

-- 
luigi


bug#52539: Fwd: Comments in /etc/passwd don't get updated

2021-12-31 Thread Ludovic Courtès
Hi Jacob,

Jacob First  skribis:

> Thanks for the explanation. This rationale sounds reasonable to me. If
> someone with proper permission has modified a user account's comment,
> it could be important to preserve that customization.
>
> As I pointed out in an earlier message, I believe this behavior
> contradicts the documentation of the `user-account' data type pretty
> strongly. So it appears there is at least a "doc bug" here.
>
> FWIW, I actually reported the present behavior as a bug not because of
> the doc issue, but based on an assumption that "purely declarative"
> implied the result of applying a given configuration should not depend
> on any preexisting system state like a user comment. Sorry for not
> making that clear: it seemed obvious, but I think it's actually a
> misconception (even if user accounts are one of the few areas, AFAICT,
> where the property doesn't hold true).

I clarified this and ensures ‘chfn’ is actually usable in commit
c76775263e56a10cc1b84d03a5827f42436afe40.

Thanks!

Ludo’.





bug#52652: FreeCAD requires write access to store for parsetab.py

2021-12-31 Thread Jacob Hrbek

I started building it after the patch was merged, it finished now and
the presented issue is no longer present.

On 12/31/21 11:44, Guillaume Le Vaillant wrote:

Hi,

With Guix at b7078d5d49d72cb5e5356d698b99540612b4d6c4, I tried to
reproduce the issue, but I didn't get any error.

I started FreeCAD with:

--8<---cut here---start->8---
guix shell freecad openscad -- FreeCAD
--8<---cut here---end--->8---

Then I selected "OpenSCAD" in the box, then the "OpenSCAD -> Add
OpenSCAD Element" menu item, then I typed "cube();", clicked "Add", and
it created a cube without any error message (I tried with the "mesh" box
ticked and unticked).

Can you still reproduce the issue on your side?


--
-- Jacob Hrbek



publickey - kreyren@rixotstudio.cz - 1677db82.asc
Description: application/pgp-keys


signature.asc
Description: OpenPGP digital signature


bug#52652: FreeCAD requires write access to store for parsetab.py

2021-12-31 Thread Guillaume Le Vaillant
Jacob Hrbek  skribis:

> I started building it after the patch was merged, it finished now and
> the presented issue is no longer present.

Ok, thanks for confirming.
Closing.


signature.asc
Description: PGP signature


bug#52906: python-biopython conflicts with python-numpy

2021-12-31 Thread zimoun
Hi,

On Fri, 31 Dec 2021 at 13:44, Ricardo Wurmus  wrote:

> I just realized that switching over to the new numpy is going to cause
> more than a 1000 rebuilds.  So I’ll apply your patch on the master
> branch and build out the numpy upgrade on a separate branch.

Thanks!  A separate wip-* branch?


Cheers,
simon





bug#52906: python-biopython conflicts with python-numpy

2021-12-31 Thread Ricardo Wurmus


zimoun  writes:

> Attached a proposed patch.

I applied it with a small change: I also had to override the name as
“python-numpy” in the derived packages.

Thanks!

-- 
Ricardo





bug#52906: python-biopython conflicts with python-numpy

2021-12-31 Thread Ricardo Wurmus


zimoun  writes:

> Hi Ricardo,
>
> On Fri, 31 Dec 2021 at 11:18, Ricardo Wurmus  wrote:
>> zimoun  writes:
>
>> Back then we reverted to numpy 1.20.x as the default because of numba,
>> which did not work with 1.21.  I’m now upgrading numba (and llvmlite) to
>> a more recent release candidate, which should bring compatibility with
>> numpy 1.21.
>>
>> If that works we’ll make python-numpy-next the new python-numpy.
>
> I think that it could nice to have "python-numpy-next".  Now, because
> we are right after a core-updates, the last Numpy version and the one
> we use as scientific Python stack are really close.  But it will not
> necessary the case between 2 core-updates merges.  Well, my point is
> to have the core-updates package python-numpy used by all the
> scientific Python stack and the leaf package python-numpy-next where
> updates can happen on master, it can be used with transformations
> etc., especially by scientific Python developper.

Yes, it’s a good idea to have it anyway.

I just realized that switching over to the new numpy is going to cause
more than a 1000 rebuilds.  So I’ll apply your patch on the master
branch and build out the numpy upgrade on a separate branch.

Thank you!

-- 
Ricardo





bug#52073: remove Google support from GVFS?

2021-12-31 Thread Liliana Marie Prikler
Hi,

Given that we have GNOME 40/41 on master right now with GVFS supporting
Google as it did before, is this still relevant?

Cheers





bug#50299: [PATCH v4 07/25] gnu: swi-prolog: Don't use 'cc'.

2021-12-31 Thread Maxime Devos
* gnu/packages/prolog.scm
  (swi-prolog)[arguments]<#:configure-flags>: Set CMAKE_HOST_CC to gcc when
  cross-compiling.
---
 gnu/packages/prolog.scm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index 8d940530d8..fc3956b17b 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -103,7 +103,9 @@ manner.  It also features an interactive interpreter.")
;; Set this manually, otherwise CMake would need to
;; run a cross-compiled binary, which it can't do.
;; These values were found on a Linux system.
-   '("-DBSD_SIGNALS=1" "-DQSORT_R_GNU=1")
+   '("-DBSD_SIGNALS=1" "-DQSORT_R_GNU=1"
+ ;; If absent, the non-existent 'cc' is used.
+ "-DCMAKE_HOST_CC=gcc"
'())
  "-DINSTALL_DOCUMENTATION=ON"
  "-DSWIPL_INSTALL_IN_LIB=OFF") ; FIXME: Breaks RUNPATH validation.
-- 
2.30.2






bug#50299: [PATCH v4 06/25] gnu: swi-prolog: Make configuration wok when cross-compiling.

2021-12-31 Thread Maxime Devos
* gnu/packages/prolog.scm
  (swi-prolog)[arguments]<#:configure-flags>: Set BSD_SIGNALS and QSORT_R_GNU
  when cross-compiling.
---
 gnu/packages/prolog.scm | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index be5a3c5bf8..8d940530d8 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013 Mark H Weaver 
 ;;; Copyright © 2020 Brett Gilio 
 ;;; Copyright © 2021 Efraim Flashner 
+;;; Copyright © 2021 Maxime Devos 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -98,7 +99,13 @@ manner.  It also features an interactive interpreter.")
 (arguments
  `(#:parallel-build? #t
#:configure-flags
-   (list "-DINSTALL_DOCUMENTATION=ON"
+   (list ,@(if (%current-target-system)
+   ;; Set this manually, otherwise CMake would need to
+   ;; run a cross-compiled binary, which it can't do.
+   ;; These values were found on a Linux system.
+   '("-DBSD_SIGNALS=1" "-DQSORT_R_GNU=1")
+   '())
+ "-DINSTALL_DOCUMENTATION=ON"
  "-DSWIPL_INSTALL_IN_LIB=OFF") ; FIXME: Breaks RUNPATH validation.
#:phases
(modify-phases %standard-phases
-- 
2.30.2






bug#50299: [PATCH v4 02/25] gnu: lean: Don't run tests when cross-compiling.

2021-12-31 Thread Maxime Devos
It still fails to cross-compile though.

* gnu/packages/lean.scm (lean)[arguments]<#:tests?>: Set to #false
  when cross-compiling.
---
 gnu/packages/lean.scm | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/lean.scm b/gnu/packages/lean.scm
index 6ac7f1668a..fa36d282d7 100644
--- a/gnu/packages/lean.scm
+++ b/gnu/packages/lean.scm
@@ -46,10 +46,10 @@
;; XXX: Test phases currently fail on 32-bit sytems.
;; Tests for those architectures have been temporarily
;; disabled, pending further investigation.
-   #:tests? ,(let ((arch (or (%current-target-system)
-  (%current-system
-   (not (or (string-prefix? "i686" arch)
-(string-prefix? "armhf" arch
+   #:tests? ,(and (not (%current-target-system))
+  (let ((arch (%current-system)))
+(not (or (string-prefix? "i686" arch)
+ (string-prefix? "armhf" arch)
#:phases
(modify-phases %standard-phases
  (add-after 'patch-source-shebangs 'patch-tests-shebangs
-- 
2.30.2






bug#50299: [PATCH v4 10/25] gnu: swi-prolog: Correct reference to 'bin/swi-prolog'.

2021-12-31 Thread Maxime Devos
* gnu/packages/prolog.scm
  (swi-prolog)[arguments]<#:phases>{fix-cross-references}: New phase.
---
 gnu/packages/prolog.scm | 37 -
 1 file changed, 24 insertions(+), 13 deletions(-)

diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index 00f09b49cc..86ac2c2bb1 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -120,19 +120,30 @@ manner.  It also features an interactive interpreter.")
"-DINSTALL_DOCUMENTATION=ON"
"-DSWIPL_INSTALL_IN_LIB=OFF") ; FIXME: Breaks RUNPATH validation.
#:phases
-   (modify-phases %standard-phases
- ;; XXX: Delete the test phase that attempts to write to the
- ;; immutable store.
- (add-after 'unpack 'delete-failing-tests
-   (lambda _
- (substitute* "src/CMakeLists.txt"
-   ((" save") ""))
- (substitute* "src/test.pl"
-   (("testdir\\('Tests/save'\\).") ""))
- (with-directory-excursion "src/Tests"
-   (for-each delete-file-recursively
- '("save")))
- #t)
+   ,#~(modify-phases %standard-phases
+;; XXX: Delete the test phase that attempts to write to the
+;; immutable store.
+(add-after 'unpack 'delete-failing-tests
+  (lambda _
+(substitute* "src/CMakeLists.txt"
+  ((" save") ""))
+(substitute* "src/test.pl"
+  (("testdir\\('Tests/save'\\).") ""))
+(with-directory-excursion "src/Tests"
+  (for-each delete-file-recursively
+'("save")))
+#t))
+#$@(if (%current-target-system)
+   ;; Prevent man_server.pl and swipl-lfr.pl from keeping a
+   ;; reference to the native swi-prolog.
+   ;; FIXME: libswipl.so and swipl-ld keep a reference to the
+   ;; cross-compiler.
+   #~((add-after 'install 'fix-cross-references
+(lambda _
+  (define bin `(,(string-append #$output "/bin")))
+  (for-each (lambda (file) (patch-shebang file bin))
+(find-files #$output ".pl$")
+   #~()
 (native-inputs
  `(,@(if (%current-target-system)
  (begin
-- 
2.30.2






bug#50299: [PATCH v4 22/25] gnu: pjproject: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/telephony.scm (pjproject)[arguments]: Remove #:tests?
  instead of unconditionally setting it to #t.
---
 gnu/packages/telephony.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index 426ccad723..0dc86fd02d 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -764,8 +764,7 @@ your calls and messages.")
 (build-system gnu-build-system)
 (outputs '("out" "debug" "static"))
 (arguments
- `(#:tests? #t
-   #:test-target "selftest"
+ `(#:test-target "selftest"
#:configure-flags
(list "--enable-shared"
  "--with-external-speex"
-- 
2.30.2






bug#50299: [PATCH v4 15/25] gnu: ecl: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/lisp.scm
  (ecl)[arguments]<#:tests?>: Move comment about failing tests to ...
  (ecl)[arguments]<#:phases>{check}: ... this deleted phase.
  (ecl)[arguments]: Remove #:tests? instead of unconditionally setting it to
  #t.
---
 gnu/packages/lisp.scm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 5b1100a61c..3736e1450f 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -269,12 +269,11 @@ interface to the Tk widget system.")
  (list gmp libatomic-ops libgc libffi))
 (arguments
  `(#:configure-flags '("--without-rt")
-   ;; FIXME: As of version 20.4.24, we pass 17995 tests and fail 7.
-   ;; 2-3 tests may be due to FHS assumptions.
-   #:tests? #t
#:parallel-tests? #f
#:phases
(modify-phases %standard-phases
+ ;; FIXME: As of version 20.4.24, we pass 17995 tests and fail 7.
+ ;; 2-3 tests may be due to FHS assumptions.
  (delete 'check)
  (add-after 'unpack 'replace-asdf
;; Use system ASDF instead of bundled one.
-- 
2.30.2






bug#50299: [PATCH v4 11/25] gnu: ruby-yard-with-tests: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/ruby.scm (ruby-yard-with-tests)[arguments]:
  Remove #:tests? instead of setting unconditionally setting it to #t.
---
 gnu/packages/ruby.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 9d1a414914..e04302a5e3 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -8252,8 +8252,8 @@ definitions.")
 (inherit ruby-yard)
 (name "ruby-yard-with-tests")
 (arguments
- (substitute-keyword-arguments (package-arguments ruby-yard)
-   ((#:tests? _ #t) #t)
+ (substitute-keyword-arguments
+ (strip-keyword-arguments '(#:tests?) (package-arguments ruby-yard))
((#:test-target _ "default") "default")
((#:phases phases '%standard-phases)
 `(modify-phases ,phases
-- 
2.30.2






bug#50299: [PATCH v4 12/25] gnu: ruby-ffi-rzmq: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/ruby.scm (ruby-ffi-rzmq)[arguments]:
  Remove #:tests? instead of setting unconditionally setting it to #t.
---
 gnu/packages/ruby.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index e04302a5e3..be773c7a61 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -7349,8 +7349,7 @@ library.")
 (base32
  "14a5kxfnf8l3ngyk8hgmk30z07aj1324ll8i48z67ps6pz2kpsrg"
 (build-system ruby-build-system)
-(arguments '(#:tests? #t
- #:phases (modify-phases %standard-phases
+(arguments '(#:phases (modify-phases %standard-phases
 (replace 'check
   (lambda _
 (invoke "rspec"))
-- 
2.30.2






bug#50299: [PATCH v4 03/25] gnu: lean: Add bash-minimal.

2021-12-31 Thread Maxime Devos
Explicitely adding this input is required for cross-compilation.

* gnu/packages/lean.scm (lean)[inputs]: Add 'bash-minimal'.
---
 gnu/packages/lean.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/lean.scm b/gnu/packages/lean.scm
index fa36d282d7..7f4cd507f8 100644
--- a/gnu/packages/lean.scm
+++ b/gnu/packages/lean.scm
@@ -19,6 +19,7 @@
 ;;; along with GNU Guix.  If not, see .
 
 (define-module (gnu packages lean)
+  #:use-module (gnu packages bash)
   #:use-module (gnu packages multiprecision)
   #:use-module (guix build-system cmake)
   #:use-module ((guix licenses) #:prefix license:)
@@ -40,7 +41,7 @@
 "09mklc1p6ms1jayg2f89hqfmhca3h5744lli936l38ypn1d00sxx"
 (build-system cmake-build-system)
 (inputs
- (list gmp))
+ (list bash-minimal gmp))
 (arguments
  `(#:build-type "Release"   ; default upstream build type
;; XXX: Test phases currently fail on 32-bit sytems.
-- 
2.30.2






bug#50299: [PATCH v4 14/25] gnu: go-1.16: Don't run tests when cross-compiling.

2021-12-31 Thread Maxime Devos
* gnu/packages/golang.scm (go-1.16)[arguments]:
  Remove #:tests? instead of unconditionally setting it to #t.
---
 gnu/packages/golang.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index de0f5a695e..e139ba6f36 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -473,8 +473,8 @@ in the style of communicating sequential processes 
(@dfn{CSP}).")
 (base32
  "06c8dcmni38za638ma069izd9kbxr6ii6ccflbibgc6k54lpc3fb"
 (arguments
- (substitute-keyword-arguments (package-arguments go-1.14)
-   ((#:tests? _) #t)
+ (substitute-keyword-arguments
+ (strip-keyword-arguments '(#:tests?) (package-arguments go-1.14))
((#:phases phases)
 `(modify-phases ,phases
(add-after 'unpack 'remove-unused-sourcecode-generators
-- 
2.30.2






bug#50299: [PATCH v4 09/25] gnu: swi-prolog: Set PROG_SWIPL when cross-compiling.

2021-12-31 Thread Maxime Devos
* gnu/packages/prolog.scm
  (swi-prolog)[arguments]<#:configure-flags>: Set PROG_SWIPL and
  SWIPL_NATIVE_FRIEND when cross-compiling and make this a G-expression.
  (swi-prolog)[native-inputs]: Add 'this-package' when cross-compiling.
---
 gnu/packages/prolog.scm | 35 ++-
 1 file changed, 26 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index 3eaec533d7..00f09b49cc 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -22,11 +22,13 @@
 
 (define-module (gnu packages prolog)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
+  #:use-module (guix utils)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages compression)
@@ -100,16 +102,23 @@ manner.  It also features an interactive interpreter.")
 (arguments
  `(#:parallel-build? #t
#:configure-flags
-   (list ,@(if (%current-target-system)
-   ;; Set this manually, otherwise CMake would need to
-   ;; run a cross-compiled binary, which it can't do.
-   ;; These values were found on a Linux system.
-   '("-DBSD_SIGNALS=1" "-DQSORT_R_GNU=1"
+   ,#~(list
+   #$@(if (%current-target-system)
+  ;; Set this manually, otherwise CMake would need to
+  ;; run a cross-compiled binary, which it can't do.
+  ;; These values were found on a Linux system.
+  #~("-DBSD_SIGNALS=1" "-DQSORT_R_GNU=1"
  ;; If absent, the non-existent 'cc' is used.
  "-DCMAKE_HOST_CC=gcc"
-   '())
- "-DINSTALL_DOCUMENTATION=ON"
- "-DSWIPL_INSTALL_IN_LIB=OFF") ; FIXME: Breaks RUNPATH validation.
+ ;; swi-prolog needs a native copy of itself for
+ ;; cross-compilation.
+ "-DSWIPL_NATIVE_FRIEND=/nowhere"
+ (string-append "-DPROG_SWIPL="
+#+(this-package-native-input "swi-prolog")
+"/bin/swipl"))
+  #~())
+   "-DINSTALL_DOCUMENTATION=ON"
+   "-DSWIPL_INSTALL_IN_LIB=OFF") ; FIXME: Breaks RUNPATH validation.
#:phases
(modify-phases %standard-phases
  ;; XXX: Delete the test phase that attempts to write to the
@@ -125,7 +134,15 @@ manner.  It also features an interactive interpreter.")
  '("save")))
  #t)
 (native-inputs
- `(("texinfo" ,texinfo)
+ `(,@(if (%current-target-system)
+ (begin
+   (unless (equal? (target-64bit?)
+   (target-64bit? (%current-system)))
+ (error "swi-prolog requires --system and --target to have \
+the same word size"))
+   `(("swi-prolog" ,this-package)))
+ '())
+   ("texinfo" ,texinfo)
("perl" ,perl)
("pkg-config" ,pkg-config)))
 (inputs
-- 
2.30.2






bug#50299: [PATCH v4 23/25] gnu: tdlib: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/messaging.scm (tdlib)[arguments]: Remove #:tests?
  instead of unconditionally setting it to #t.
---
 gnu/packages/messaging.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 52b01c8f87..365dfe4090 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -2608,8 +2608,7 @@ replacement.")
  (file-name (git-file-name name version
   (build-system cmake-build-system)
   (arguments
-   `(#:tests? #t
- #:configure-flags
+   `(#:configure-flags
  (list "-DCMAKE_BUILD_TYPE=Release"
"-DTD_ENABLE_LTO=OFF")   ; FIXME: Get LTO to work.
  #:phases
-- 
2.30.2






bug#50299: [PATCH v4 20/25] gnu: lablgtk: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/ocaml.scm (lablgtk)[arguments]: Remove #:tests?
  instead of unconditionally setting it to #t.
---
 gnu/packages/ocaml.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index e6001ca37b..01cf348e54 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7090,8 +7090,7 @@ support for Mparser.")))
 "11qfc39cmwfwfpwmjh6wh98zwdv6p73bv8hqwcsss869vs1r7gmn"
 (build-system dune-build-system)
 (arguments
- `(#:tests? #t
-   #:test-target "."
+ `(#:test-target "."
#:phases
(modify-phases %standard-phases
  (add-before 'build 'make-writable
-- 
2.30.2






bug#50299: [PATCH v4 25/25] gnu: ghc-bsb-http-chunked: Don't run tests when cross-compiling.

2021-12-31 Thread Maxime Devos
* gnu/packages/haskell-web.scm
  (ghc-bsb-http-chunked)[arguments]<#:tests?>: Set to #false when
  cross-compiling.
---
 gnu/packages/haskell-web.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 34dd2556be..70a4eccce6 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -603,8 +603,9 @@ Haskell's Web Application Interface (WAI).")
 (arguments
  `(;; XXX: As of 0.0.4, one property test ("Identical output as Blaze")
;; fails on i686-linux.
-   #:tests? ,(not (string-prefix? "i686" (or (%current-target-system)
- (%current-system
+   #:tests? ,(and (not (%current-target-system))
+  (not (string-prefix? "i686" (or (%current-target-system)
+  (%current-system)
#:cabal-revision
("3" "15hg352id2f4x0dnvv47bdiz6gv5hp5a2mki9yzmhc7ajpk31mdd")))
 (native-inputs
-- 
2.30.2






bug#50299: [PATCH v4 01/25] lint: check-tests-true: Allow #:tests? #t for some build systems.

2021-12-31 Thread Maxime Devos
emacs-build-system sets #:tests? #f by default, so the linter
shouldn't warn if #:tests? #t is set for packages using
emacs-build-system.  Likewise for texlive-build-system

* guix/lint.scm (check-tests-true): Do not warn if the build system
  is emacs-build-system or texlive-build-system.
* tests/lint.scm
  ("tests-true: #:tests? #t acceptable for emacs packages")
  ("tests-true: #:tests? #t acceptable for texlive packages"): New tests.

Fixes: 
Reported-by: Maxim Cournoyer 
---
 guix/lint.scm  | 11 +++
 tests/lint.scm | 21 +
 2 files changed, 32 insertions(+)

diff --git a/guix/lint.scm b/guix/lint.scm
index 379bd0e80b..8655f3aea7 100644
--- a/guix/lint.scm
+++ b/guix/lint.scm
@@ -34,6 +34,7 @@
   #:use-module (guix store)
   #:autoload   (guix base16) (bytevector->base16-string)
   #:use-module (guix base32)
+  #:use-module (guix build-system)
   #:use-module (guix diagnostics)
   #:use-module (guix download)
   #:use-module (guix ftp-client)
@@ -279,6 +280,16 @@ superfluous when building natively and incorrect when 
cross-compiling."
  (eq? tests? #t))
(package-arguments package)))
   (if (and (tests-explicitly-enabled?)
+   ;; emacs-build-system sets #:tests? #f by default, therefore
+   ;; writing #:tests? #t in package definitions using
+   ;; emacs-build-system is reasonable.  Likewise for
+   ;; texlive-build-system.
+   ;;
+   ;; Compare the name of the build system instead of the build system
+   ;; itself to avoid loading unnecessary modules when only a few
+   ;; modules are linted.
+   (not (memq (build-system-name (package-build-system package))
+  '(emacs texlive)))
;; Some packages, e.g. gnutls, set #:tests?
;; differently depending on whether it is being
;; cross-compiled.
diff --git a/tests/lint.scm b/tests/lint.scm
index 76c2a70b3a..6bb24370da 100644
--- a/tests/lint.scm
+++ b/tests/lint.scm
@@ -35,6 +35,8 @@
   #:use-module (guix tests http)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix build-system texlive)
+  #:use-module (guix build-system emacs)
   #:use-module (guix build-system gnu)
   #:use-module (guix packages)
   #:use-module (guix lint)
@@ -338,6 +340,25 @@
  `(#:tests? ,(not (%current-target-system)))
 (check-tests-true pkg)))
 
+;; The emacs-build-system sets #:tests? #f by default.
+(test-equal "tests-true: #:tests? #t acceptable for emacs packages"
+  '()
+  (let ((pkg (dummy-package "x"
+(build-system emacs-build-system)
+(arguments
+ `(#:tests? #t)
+(check-tests-true pkg)))
+
+;; Likewise, though the 'check' phase is deleted by default,
+;; so #:tests? #t won't be useful by itself.
+(test-equal "tests-true: #:tests? #t acceptable for texlive packages"
+  '()
+  (let ((pkg (dummy-package "x"
+(build-system texlive-build-system)
+(arguments
+ `(#:tests? #t)
+(check-tests-true pkg)))
+
 (test-equal "inputs: pkg-config is probably a native input"
   "'pkg-config' should probably be a native input"
   (single-lint-warning-message
-- 
2.30.2






bug#50299: [PATCH v4 18/25] gnu: python2-empy: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/python-xyz.scm (python2-empy)[arguments]: Remove #:tests?
  instead of unconditionally setting it to #t.
---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 02aa58dcf0..be69b563ad 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -2742,8 +2742,8 @@ commands.")
 (define-public python2-empy
   (let ((base (package-with-python2 (strip-python2-variant python-empy
 (package/inherit base
-  (arguments `(,@(package-arguments base)
-   #:tests? #t)
+  (arguments (strip-keyword-arguments '(#:tests?)
+  (package-arguments base))
 
 (define-public python2-element-tree
   (package
-- 
2.30.2






bug#50299: [PATCH v4 00/25] Fix 'check-tests-true' linter and some packages

2021-12-31 Thread Maxime Devos
Hi,

The following changes from v3 were made:

  * rebased on latest master
  * in the swi-prolog patch, a use of %build-host-inputs
has been replaced by #$(this-package-native-input ...)
  * The patch 'gnu: swi-prolog: Correct reference to 'bin/swi-prolog' is new.
  * Commit messages are made more consistent.
E.g., patches removing ‘#:tests? #t’ are now named
‘gnu: ...: Run tests conditionally’
and ‘Don't run tests when cross-compiling.’ is reserved for patches that
actually look at %current-target-system.

Maxime Devos (25):
  lint: check-tests-true: Allow #:tests? #t for some build systems.
  gnu: lean: Don't run tests when cross-compiling.
  gnu: lean: Add bash-minimal.
  gnu: swi-prolog: Move native-inputs to inputs where appropriate.
  gnu: swi-prolog: Run tests conditionally.
  gnu: swi-prolog: Make configuration wok when cross-compiling.
  gnu: swi-prolog: Don't use 'cc'.
  gnu: swi-prolog: Use cross-compiled bash in shebangs.
  gnu: swi-prolog: Set PROG_SWIPL when cross-compiling.
  gnu: swi-prolog: Correct reference to 'bin/swi-prolog'.
  gnu: ruby-yard-with-tests: Run tests conditionally.
  gnu: ruby-ffi-rzmq: Run tests conditionally.
  gnu: ruby-ffi-rzmq: Respect #:tests?.
  gnu: go-1.16: Don't run tests when cross-compiling.
  gnu: ecl: Run tests conditionally.
  gnu: perl-unicode-utf8: Run tests conditionally.
  gnu: libicns: Run tests conditionally.
  gnu: python2-empy: Run tests conditionally.
  gnu: python2-promise: Run tests conditionally.
  gnu: lablgtk: Run tests conditionally.
  gnu: belcard: Run tests conditionally.
  gnu: pjproject: Run tests conditionally.
  gnu: tdlib: Run tests conditionally.
  gnu: extra-cmake-modules: Don't run tests when cross-compiling.
  gnu: ghc-bsb-http-chunked: Don't run tests when cross-compiling.

 gnu/packages/golang.scm |  4 +-
 gnu/packages/haskell-web.scm|  5 ++-
 gnu/packages/image.scm  |  2 -
 gnu/packages/kde-frameworks.scm |  3 +-
 gnu/packages/lean.scm   | 11 ++---
 gnu/packages/linphone.scm   |  3 +-
 gnu/packages/lisp.scm   |  5 +--
 gnu/packages/messaging.scm  |  3 +-
 gnu/packages/ocaml.scm  |  3 +-
 gnu/packages/perl.scm   |  3 +-
 gnu/packages/prolog.scm | 79 -
 gnu/packages/python-xyz.scm |  8 ++--
 gnu/packages/ruby.scm   | 12 ++---
 gnu/packages/telephony.scm  |  3 +-
 guix/lint.scm   | 11 +
 tests/lint.scm  | 21 +
 16 files changed, 122 insertions(+), 54 deletions(-)


base-commit: a4eb287e5e978719b0a736a587ceafb3686882ec
-- 
2.30.2






bug#52836: "guix import pypi" fails with "Failed to extract file from wheel" and "no requires.txt file found"

2021-12-31 Thread bbb ee
> Is it a bug on Guix side or upstream?  Because it seems that upstream
> does not provide metadata information, at least, as usually expected.

`pip install PyPortfolioOpt`, `poetry add PyPortfolioOpt` runs for me. If
other python package installer can run, I suppose the upstream is correct.
Unless Guix is not as powerful as other python package installers, and
cannot work for certain type of PyPi packages. In this case, can this be
considered an improvement to be made?

Le mer. 29 déc. 2021 à 18:09, zimoun  a écrit :

> Hi,
>
> On Mon, 27 Dec 2021 at 22:10, bbb ee  wrote:
>
> > ```
> > guix import: warning: Failed to extract file:
> > PyPortfolioOpt-1.5.1.dist-info/METADATA from wheel.
> > guix import: warning: Cannot guess requirements from source archive: no
> > requires.txt file found.
> > ```
>
> Is it a bug on Guix side or upstream?  Because it seems that upstream
> does not provide metadata information, at least, as usually expected.
>
> Well, I have not yet inspected the PyPI package but it seems possible
> that it is incorrectly packaged with the Setuptools standard.
>
>
> > ## additional information
> > This user has encountered a similar issue for "guix import pypi httpie"
> > https://www.mail-archive.com/bug-guix@gnu.org/msg14277.html
> >
> > However "guix import pypi httpie" runs for my version of guix.
>
> Well, “guix import pypi httpie” works for me.
>
>
> Cheers,
> simon
>


bug#50299: [PATCH v4 08/25] gnu: swi-prolog: Use cross-compiled bash in shebangs.

2021-12-31 Thread Maxime Devos
* gnu/packages/prolog.scm (swi-prolog)[inputs]: Add 'bash-minimal'.
---
 gnu/packages/prolog.scm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index fc3956b17b..3eaec533d7 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -28,6 +28,7 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages backup)
+  #:use-module (gnu packages bash)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages image)
@@ -128,7 +129,8 @@ manner.  It also features an interactive interpreter.")
("perl" ,perl)
("pkg-config" ,pkg-config)))
 (inputs
- `(("zlib" ,zlib)
+ `(("bash-minimal" ,bash-minimal) ; for some scripts in 'lib'
+   ("zlib" ,zlib)
("gmp" ,gmp)
("readline" ,readline)
("libarchive" ,libarchive)
-- 
2.30.2






bug#50299: [PATCH v4 05/25] gnu: swi-prolog: Run tests conditionally.

2021-12-31 Thread Maxime Devos
Tests are enabled by default (except when cross-compiling).
Running tests when cross-compiling is rarely possible.

* gnu/packages/prolog.scm (swi-prolog)[arguments]<#:tests>: Remove it.
---
 gnu/packages/prolog.scm | 1 -
 1 file changed, 1 deletion(-)

diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index 7857fdff68..be5a3c5bf8 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -97,7 +97,6 @@ manner.  It also features an interactive interpreter.")
 (build-system cmake-build-system)
 (arguments
  `(#:parallel-build? #t
-   #:tests? #t
#:configure-flags
(list "-DINSTALL_DOCUMENTATION=ON"
  "-DSWIPL_INSTALL_IN_LIB=OFF") ; FIXME: Breaks RUNPATH validation.
-- 
2.30.2






bug#50299: [PATCH v4 24/25] gnu: extra-cmake-modules: Don't run tests when cross-compiling.

2021-12-31 Thread Maxime Devos
* gnu/packages/kde-frameworks.scm
  (extra-cmake-modules)[arguments]<#:tests?>: Set to #false when
  cross-compiling.
---
 gnu/packages/kde-frameworks.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 65937f8970..aa88d140f5 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -106,7 +106,8 @@
  '()
  `(("qtbase" ,qtbase-5;for tests (needs qmake)
 (arguments
- `(#:tests? ,(not (null? (package-native-inputs this-package)))
+ `(#:tests? ,(and (not (%current-target-system))
+  (not (null? (package-native-inputs this-package
#:phases
(modify-phases %standard-phases
  (add-after 'unpack 'fix-lib-path
-- 
2.30.2






bug#50299: [PATCH v4 04/25] gnu: swi-prolog: Move native-inputs to inputs where appropriate.

2021-12-31 Thread Maxime Devos
* gnu/package/prolog.scm (swi-prolog)
  [native-inputs]: Keep 'texinfo', 'perl' and 'pkg-config' and move the rest
  to ...
  [inputs]: ... here.
---
 gnu/packages/prolog.scm | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index 4eb0f4d3b6..7857fdff68 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -116,17 +116,18 @@ manner.  It also features an interactive interpreter.")
  '("save")))
  #t)
 (native-inputs
+ `(("texinfo" ,texinfo)
+   ("perl" ,perl)
+   ("pkg-config" ,pkg-config)))
+(inputs
  `(("zlib" ,zlib)
("gmp" ,gmp)
("readline" ,readline)
-   ("texinfo" ,texinfo)
("libarchive" ,libarchive)
("libunwind" ,libunwind)
("libjpeg" ,libjpeg-turbo)
("libxft" ,libxft)
("fontconfig" ,fontconfig)
-   ("perl" ,perl)
-   ("pkg-config" ,pkg-config)
("openssl" ,openssl)))
 (home-page "https://www.swi-prolog.org/;)
 (synopsis "ISO/Edinburgh-style Prolog interpreter")
-- 
2.30.2






bug#50299: [PATCH v4 21/25] gnu: belcard: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/linphone.scm (belcard)[arguments]: Remove #:tests?
  instead of unconditionally setting it to #t.
---
 gnu/packages/linphone.scm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/gnu/packages/linphone.scm b/gnu/packages/linphone.scm
index 285ecb58fd..1536597f1d 100644
--- a/gnu/packages/linphone.scm
+++ b/gnu/packages/linphone.scm
@@ -260,8 +260,7 @@ IETF.")
 (build-system cmake-build-system)
 (outputs '("out" "debug" "tester"))
 (arguments
- `(#:tests? #t
-   #:configure-flags '("-DENABLE_STATIC=OFF")
+ `(#:configure-flags '("-DENABLE_STATIC=OFF")
#:phases
(modify-phases %standard-phases
  (add-after 'unpack 'patch-vcard-grammar-location
-- 
2.30.2






bug#50299: [PATCH v4 19/25] gnu: python2-promise: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/python-xyz.scm (python2-promise)[arguments]: Remove #:tests?
  instead of unconditionally setting it to #t.
---
 gnu/packages/python-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index be69b563ad..cfd1b28384 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -13196,8 +13196,8 @@ concurrent.futures package from Python 3.2")
   (let ((promise (package-with-python2
(strip-python2-variant python-promise
 (package/inherit promise
-  (arguments (substitute-keyword-arguments (package-arguments promise)
-   ((#:tests? _) #t)))
+  (arguments (strip-keyword-arguments '(#:tests?)
+  (package-arguments promise)))
   (native-inputs
`(("python2-futures" ,python2-futures)
  ("python2-pytest" ,python2-pytest)
-- 
2.30.2






bug#50299: [PATCH v4 16/25] gnu: perl-unicode-utf8: Run tests conditionally.

2021-12-31 Thread Maxime Devos
* gnu/packages/perl.scm (perl-unicode-utf8)[arguments]<#:tests?>:
  Set to #false when cross-compiling.
---
 gnu/packages/perl.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index c6d63ce041..2b33d2dce4 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -10861,7 +10861,8 @@ defined by Annex #11 is used to determine breaking 
positions.")
 (build-system perl-build-system)
 ;; FIXME: Tests fail on 32-bit architectures:
 ;; .
-(arguments `(#:tests? ,(target-64bit?)))
+(arguments `(#:tests? ,(and (not (%current-target-system))
+(target-64bit?
 (native-inputs
  (list perl-test-fatal perl-test-leaktrace perl-variable-magic
perl-test-pod))
-- 
2.30.2






bug#50299: [PATCH v4 13/25] gnu: ruby-ffi-rzmq: Respect #:tests?.

2021-12-31 Thread Maxime Devos
* gnu/packages/ruby.scm (ruby-ffi-rzmq)[arguments]<#:phases>:
  Only invoke "rspec" if #:tests? is true.
---
 gnu/packages/ruby.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index be773c7a61..a94270ecfa 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -7351,8 +7351,9 @@ library.")
 (build-system ruby-build-system)
 (arguments '(#:phases (modify-phases %standard-phases
 (replace 'check
-  (lambda _
-(invoke "rspec"))
+  (lambda* (#:key tests? #:allow-other-keys)
+(when tests?
+  (invoke "rspec")))
 (native-inputs
  (list ruby-rspec))
 (propagated-inputs
-- 
2.30.2






bug#50299: [PATCH v4 17/25] gnu: libicns: Run tests conditionally.

2021-12-31 Thread Maxime Devos
The #:tests? #t is actually harmless here, because there are no
tests (though there is a trivial 'check' target).  The ‘; No tests.’
comment might be confusing though.

* gnu/packages/image.scm (libicns)[arguments]: Remove.
---
 gnu/packages/image.scm | 2 --
 1 file changed, 2 deletions(-)

diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 6cf171a410..a8a77f7767 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -563,8 +563,6 @@ maximum quality factor.")
 (build-system gnu-build-system)
 (inputs
  (list libpng jasper))
-(arguments
- `(#:tests? #t)) ; No tests.
 (home-page "http://icns.sourceforge.net/;)
 (synopsis "Library for handling Mac OS icns resource files")
 (description
-- 
2.30.2






bug#52836: "guix import pypi" fails with "Failed to extract file from wheel" and "no requires.txt file found"

2021-12-31 Thread zimoun
Hi,

On Fri, 31 Dec 2021 at 11:15, bbb ee  wrote:

> > Is it a bug on Guix side or upstream?  Because it seems that upstream
> > does not provide metadata information, at least, as usually expected.
>
> `pip install PyPortfolioOpt`, `poetry add PyPortfolioOpt` runs for me. If 
> other python package installer can run, I suppose the upstream is correct.

Hum, not necessary.  Well, I do not think that 'pip' uses all the
metadata from PyPI to install.  'pip' does dirty things and yes it
just works :-)  But this does not imply that PyPortfolioOpt is
correctly packaged as it is defined by PyPI standards.  I do not know
'poetry'.

Anyway. :-)  I am not finding the PEP defining the Python packaging
and the structure for a PyPI package.  Because it is not clear for me
if it is a bug on Guix side or upstream.


Cheers,
simon





bug#52652: FreeCAD requires write access to store for parsetab.py

2021-12-31 Thread Guillaume Le Vaillant
Hi,

With Guix at b7078d5d49d72cb5e5356d698b99540612b4d6c4, I tried to
reproduce the issue, but I didn't get any error.

I started FreeCAD with:

--8<---cut here---start->8---
guix shell freecad openscad -- FreeCAD
--8<---cut here---end--->8---

Then I selected "OpenSCAD" in the box, then the "OpenSCAD -> Add
OpenSCAD Element" menu item, then I typed "cube();", clicked "Add", and
it created a cube without any error message (I tried with the "mesh" box
ticked and unticked).

Can you still reproduce the issue on your side?


signature.asc
Description: PGP signature


bug#52906: python-biopython conflicts with python-numpy

2021-12-31 Thread zimoun
Hi Ricardo,

On Fri, 31 Dec 2021 at 11:18, Ricardo Wurmus  wrote:
> zimoun  writes:

> Back then we reverted to numpy 1.20.x as the default because of numba,
> which did not work with 1.21.  I’m now upgrading numba (and llvmlite) to
> a more recent release candidate, which should bring compatibility with
> numpy 1.21.
>
> If that works we’ll make python-numpy-next the new python-numpy.

I think that it could nice to have "python-numpy-next".  Now, because
we are right after a core-updates, the last Numpy version and the one
we use as scientific Python stack are really close.  But it will not
necessary the case between 2 core-updates merges.  Well, my point is
to have the core-updates package python-numpy used by all the
scientific Python stack and the leaf package python-numpy-next where
updates can happen on master, it can be used with transformations
etc., especially by scientific Python developper.


Cheers,
simon





bug#52606: FreeCAD - Missing dependency python-ply

2021-12-31 Thread Guillaume Le Vaillant
Fixed in b7078d5d49d72cb5e5356d698b99540612b4d6c4.
Closing.


signature.asc
Description: PGP signature


bug#52906: python-biopython conflicts with python-numpy

2021-12-31 Thread Ricardo Wurmus


zimoun  writes:

> Hi,
>
> Using 7022eb6, the package ’python-biopython’ propagates
> ’python-numpy’, i.e., python-numpy@1.20.

Back then we reverted to numpy 1.20.x as the default because of numba,
which did not work with 1.21.  I’m now upgrading numba (and llvmlite) to
a more recent release candidate, which should bring compatibility with
numpy 1.21.

If that works we’ll make python-numpy-next the new python-numpy.

Your patch is an acceptable workaround.  Arguably this should have been
done when I made numpy 1.20 the default on the core-updates-frozen
branch.  I’ll apply your patch later today unless the switch to numpy
1.21 as the default is successful.

-- 
Ricardo





bug#52853: Error when trying to upgrade packages

2021-12-31 Thread Guillaume Le Vaillant
Closing.
I opened bug#52913 for the failing 0ad package.


signature.asc
Description: PGP signature


bug#52913: 0ad only builds fine with a specific version of mozjs

2021-12-31 Thread Guillaume Le Vaillant
The 0ad package checks the version of mozjs and throws an error if it is
not exactly the version it expects. This check is done in
"source/scriptinterface/ScriptTypes.h" and it currently requires version
78.6 of mozjs. As Guix has mozjs 78.15 instead, 0ad fails to build.

Patching "ScriptTypes.h" to remove the check and compile with mozjs 78.15
doesn't work, the build phase fails with:

--8<---cut here---start->8---
../../../source/scriptinterface/ScriptContext.cpp: In member function ‘void 
ScriptContext::UnRegisterRealm(JS::Realm*)’:
../../../source/scriptinterface/ScriptContext.cpp:146:39: error: cannot convert 
‘JS::Zone*’ to ‘JSContext*’
  146 |  JS::PrepareZoneForGC(js::GetRealmZone(realm));
  |   ^~~
  |   |
  |   JS::Zone*
In file included from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/Value.h:25,
 from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/CallArgs.h:74,
 from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/jsapi.h:31,
 from ../../../source/scriptinterface/ScriptTypes.h:63,
 from ../../../source/scriptinterface/ScriptContext.h:21,
 from ../../../source/scriptinterface/ScriptContext.cpp:20:
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/GCAPI.h:539:55:
 note:   initializing argument 1 of ‘void JS::PrepareZoneForGC(JSContext*, 
JS::Zone*)’
  539 | extern JS_PUBLIC_API void PrepareZoneForGC(JSContext* cx, Zone* zone);
  |~~~^~
In file included from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/TraceKind.h:12,
 from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/jspubtd.h:18,
 from ../../../source/scriptinterface/ScriptTypes.h:62,
 from ../../../source/scriptinterface/ScriptContext.h:21,
 from ../../../source/scriptinterface/ScriptContext.cpp:20:
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/TypeDecls.h:55:21:
 note: class type ‘JS::Zone’ is incomplete
   55 | class JS_PUBLIC_API Zone;
  | ^~~~
../../../source/scriptinterface/ScriptContext.cpp: In member function ‘void 
ScriptContext::PrepareZonesForIncrementalGC() const’:
../../../source/scriptinterface/ScriptContext.cpp:264:40: error: cannot convert 
‘JS::Zone*’ to ‘JSContext*’
  264 |   JS::PrepareZoneForGC(js::GetRealmZone(realm));
  |^~~
  ||
  |JS::Zone*
In file included from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/Value.h:25,
 from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/CallArgs.h:74,
 from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/jsapi.h:31,
 from ../../../source/scriptinterface/ScriptTypes.h:63,
 from ../../../source/scriptinterface/ScriptContext.h:21,
 from ../../../source/scriptinterface/ScriptContext.cpp:20:
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/GCAPI.h:539:55:
 note:   initializing argument 1 of ‘void JS::PrepareZoneForGC(JSContext*, 
JS::Zone*)’
  539 | extern JS_PUBLIC_API void PrepareZoneForGC(JSContext* cx, Zone* zone);
  |~~~^~
In file included from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/TraceKind.h:12,
 from 
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/jspubtd.h:18,
 from ../../../source/scriptinterface/ScriptTypes.h:62,
 from ../../../source/scriptinterface/ScriptContext.h:21,
 from ../../../source/scriptinterface/ScriptContext.cpp:20:
/gnu/store/gzsa3jrlhgcr3mr6i170lhgfsxsmpcps-mozjs-78.15.0/include/mozjs-78/js/TypeDecls.h:55:21:
 note: class type ‘JS::Zone’ is incomplete
   55 | class JS_PUBLIC_API Zone;
  | ^~~~
make[1]: *** [scriptinterface.make:146: 
obj/scriptinterface_Release/ScriptContext.o] Error 1
--8<---cut here---end--->8---

What would be the best way to fix this?
 - keep a mozjs-78.6 package around just for 0ad
 - patch 0ad to fix the compatibility issues with mozjs 78.15
 - use the mozjs version bundled in the 0ad sources

WDYT?


signature.asc
Description: PGP signature