GNU bug report logs - #57611
rust-once-cell (alacritty dependency) build failure

Previous Next

Package: guix;

Reported by: "bdju" <bdju <at> tilde.team>

Date: Tue, 6 Sep 2022 12:08:02 UTC

Severity: normal

To reply to this bug, email your comments to 57611 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#57611; Package guix. (Tue, 06 Sep 2022 12:08:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "bdju" <bdju <at> tilde.team>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 06 Sep 2022 12:08:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "bdju" <bdju <at> tilde.team>
To: <bug-guix <at> gnu.org>
Subject: rust-once-cell (alacritty dependency) build failure
Date: Tue, 06 Sep 2022 07:07:50 -0500
Looks like alacritty can't be built because rust-wayland-commons and 
rust-wayland-client can't be built because rust-once-cell can't be built.

rust-once-cell build log: http://sprunge.us/8t8VaQ

p.s. my guix --version output still shows guix (GNU Guix) 0




Information forwarded to bug-guix <at> gnu.org:
bug#57611; Package guix. (Wed, 07 Sep 2022 16:08:04 GMT) Full text and rfc822 format available.

Message #8 received at 57611 <at> debbugs.gnu.org (full text, mbox):

From: Ben Van Sleen <benvansleen <at> gmail.com>
To: 57611 <at> debbugs.gnu.org
Subject: RE: rust-once-cell (alacritty dependency) build failure
Date: Tue, 6 Sep 2022 18:15:32 -0500
[Message part 1 (text/plain, inline)]
rust-once-cell-1 can't be built because it now depends on
rust-parking-lot-core-0.9. This can't be built because it now requires
rust-windows-sys-0.36 according to the crates page (
https://crates.io/crates/parking_lot_core/0.9.3/dependencies). This package
definition can be found in the guix channel that Must Not Be Named (right
next to firefox), and is not present in the main guix repo.

I would guess the reasoning behind this is that rust-windows-sys requires
some kind of nonfree code in its dependencies (perhaps
rust-windows-aarch64-msvc-0.36?). If I'm wrong about this and the package
does meet the Guix repo standards, then the alacritty problem can be fixed
by incorporating the rust-windows-sys-0.36 package definition into (gnu
packages crates-io). Would be happy to add them, but I've never submitted a
patch before (would love to start if someone wouldn't mind guiding me!) and
I'm new to the mailing list style of repo management. (I notice the
rust-windows-sys-0.28 package is included, so I assume bumping the version
up to 0.36 will be acceptable. Am testing this locally.)

Otherwise, I believe the guix-repo-only solution requires rolling back the
update to rust-once-cell in commit af39bd88a27e33c43df8324202cfebaeeb77437a.
[Message part 2 (text/html, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#57611; Package guix. (Wed, 07 Sep 2022 18:45:01 GMT) Full text and rfc822 format available.

Message #11 received at 57611 <at> debbugs.gnu.org (full text, mbox):

From: Maxime Devos <maximedevos <at> telenet.be>
To: Ben Van Sleen <benvansleen <at> gmail.com>, 57611 <at> debbugs.gnu.org
Subject: Re: bug#57611: rust-once-cell (alacritty dependency) build failure
Date: Wed, 7 Sep 2022 20:44:27 +0200
[Message part 1 (text/plain, inline)]
On 07-09-2022 01:15, Ben Van Sleen wrote:
> Subject:
> bug#57611: rust-once-cell (alacritty dependency) build failure
> From:
> Ben Van Sleen <benvansleen <at> gmail.com>
> Date:
> 07-09-2022 01:15
>
> To:
> 57611 <at> debbugs.gnu.org
>
>
> rust-once-cell-1 can't be built because it now depends on 
> rust-parking-lot-core-0.9. This can't be built because it now requires 
> rust-windows-sys-0.36 according to the crates page 
> (https://crates.io/crates/parking_lot_core/0.9.3/dependencies). This 
> package definition can be found in the guix channel that Must Not Be 
> Named (right next to firefox), and is not present in the main guix repo.
>
> I would guess the reasoning behind this is that rust-windows-sys 
> requires some kind of nonfree code in its dependencies (perhaps 
> rust-windows-aarch64-msvc-0.36?).
AFAICT it is free, though whoever maintains that package forgot to 
include a copy of the license text.
> If I'm wrong about this and the package does meet the Guix repo 
> standards, then the alacritty problem can be fixed by incorporating 
> the rust-windows-sys-0.36 package definition into (gnu packages 
> crates-io).

Another solution would be to remove the dependency rust-windows-sys from 
rust-parking-lot-core-0.9 by patching the Cargo.toml appropriately (this 
dependency is only required for compiling to Windows targets).

Greetings,
MAxime.

[Message part 2 (text/html, inline)]
[OpenPGP_0x49E3EE22191725EE.asc (application/pgp-keys, attachment)]
[OpenPGP_signature (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#57611; Package guix. (Thu, 08 Sep 2022 02:10:02 GMT) Full text and rfc822 format available.

Message #14 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ben Van Sleen <benvansleen <at> gmail.com>
To: guix-patches <at> gnu.org
Subject: [PATCH] Addressing bug#57611 by updating rust-wayland-client and
 rust-wayland-scanner dependencies
Date: Wed, 7 Sep 2022 16:57:03 -0500
[Message part 1 (text/plain, inline)]
Hi,

This is my first patch to Guix (and my first time submitting a patch by
mailing list), so I'd love whatever feedback y'all have to offer!

Trying to address the alacritty build issue. As of now, alacritty won't
build because rust-wayland-scanner can't be built. After chasing many
dependencies, rust-parking-lot-core now requires rust-windows-sys-0.36.
rust-windows-sys-0.28 currently exists in the repo, so I've added packages
to bump the versions to 0.36.

After applying these patches, Alacritty now builds.

Best,
Ben Van Sleen

From 682b335058c6dff1ea48165762ec8bbc0e469803 Mon Sep 17 00:00:00 2001
From: Ben Van Sleen <benvansleen <at> gmail.com>
Date: Wed, 7 Sep 2022 16:32:00 -0500
Subject: [PATCH 1/4] rust-windows-sys-0.36: Added package (updating existing
 package from 0.28 -> 0.36). Also added definitions for dependencies
 rust-windows-*-0.36

---
 gnu/packages/crates-io.scm | 86 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a03f02e868..a9d8bd5669 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -74075,6 +74075,19 @@ (define-public rust-windows-x86-64-msvc-0.32
 crate.")
     (license (list license:expat license:asl2.0))))

+(define-public rust-windows-x86-64-msvc-0.36
+  (package
+    (inherit rust-windows-x86-64-msvc-0.32)
+    (name "rust-windows-x86-64-msvc")
+    (version "0.36.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "windows_x86_64_msvc" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+
 "103n3xijm5vr7qxr1dps202ckfnv7njjnnfqmchg8gl5ii5cl4f8"))))))
+
 (define-public rust-windows-x86-64-gnu-0.28
   (package
     (name "rust-windows-x86-64-gnu")
@@ -74114,6 +74127,19 @@ (define-public rust-windows-x86-64-gnu-0.32
 crate.")
     (license (list license:expat license:asl2.0))))

+(define-public rust-windows-x86-64-gnu-0.36
+  (package
+    (inherit rust-windows-x86-64-gnu-0.32)
+    (name "rust-windows-x86-64-gnu")
+    (version "0.36.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "windows_x86_64_gnu" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+
 "1qfrck3jnihymfrd01s8260d4snql8ks2p8yaabipi3nhwdigkad"))))))
+
 (define-public rust-windows-i686-msvc-0.28
   (package
     (name "rust-windows-i686-msvc")
@@ -74153,6 +74179,19 @@ (define-public rust-windows-i686-msvc-0.32
 crate.")
     (license (list license:expat license:asl2.0))))

+(define-public rust-windows-i686-msvc-0.36
+  (package
+    (inherit rust-windows-i686-msvc-0.32)
+    (name "rust-windows-i686-msvc")
+    (version "0.36.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "windows_i686_msvc" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+
 "097h2a7wig04wbmpi3rz1akdy4s8gslj5szsx8g2v0dj91qr3rz2"))))))
+
 (define-public rust-windows-i686-gnu-0.28
   (package
     (name "rust-windows-i686-gnu")
@@ -74192,6 +74231,19 @@ (define-public rust-windows-i686-gnu-0.32
 crate.")
     (license (list license:expat license:asl2.0))))

+(define-public rust-windows-i686-gnu-0.36
+  (package
+    (inherit rust-windows-i686-gnu-0.32)
+    (name "rust-windows-i686-gnu")
+    (version "0.36.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "windows_i686_gnu" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+
 "1dm3svxfzamrv6kklyda9c3qylgwn5nwdps6p0kc9x6s077nq3hq"))))))
+
 (define-public rust-windows-aarch64-msvc-0.28
   (package
     (name "rust-windows-aarch64-msvc")
@@ -74231,6 +74283,19 @@ (define-public rust-windows-aarch64-msvc-0.32
 crate.")
     (license (list license:expat license:asl2.0))))

+(define-public rust-windows-aarch64-msvc-0.36
+  (package
+    (inherit rust-windows-aarch64-msvc-0.32)
+    (name "rust-windows-aarch64-msvc")
+    (version "0.36.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "windows_aarch64_msvc" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+
 "0ixaxs2c37ll2smprzh0xq5p238zn8ylzb3lk1zddqmd77yw7f4v"))))))
+
 (define-public rust-windows-implement-0.32
   (package
     (name "rust-windows-implement")
@@ -74282,6 +74347,27 @@ (define-public rust-windows-sys-0.28
 if they were just another Rust module.")
     (license (list license:expat license:asl2.0))))

+(define-public rust-windows-sys-0.36
+  (package
+    (inherit rust-windows-sys-0.28)
+    (name "rust-windows-sys")
+    (version "0.36.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "windows-sys" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1lmqangv0zg1l46xiq7rfnqwsx8f8m52mqbgg2mrx7x52rd1a17a"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs (("rust-windows-aarch64-msvc"
,rust-windows-aarch64-msvc-0.36)
+                       ("rust-windows-i686-gnu"
,rust-windows-i686-gnu-0.36)
+                       ("rust-windows-i686-msvc"
,rust-windows-i686-msvc-0.36)
+                       ("rust-windows-x86-64-gnu"
,rust-windows-x86-64-gnu-0.36)
+                       ("rust-windows-x86-64-msvc"
,rust-windows-x86-64-msvc-0.36))))))
+
 (define-public rust-windows-gen-0.9
   (package
     (name "rust-windows-gen")
-- 
2.37.3


From 28d3ff0d247eb1b96ad58e120a4e099cb9ba397f Mon Sep 17 00:00:00 2001
From: Ben Van Sleen <benvansleen <at> gmail.com>
Date: Wed, 7 Sep 2022 16:34:26 -0500
Subject: [PATCH 2/4] rust-parking-lot-core-0.9: Updated dependency list to
 include rust-windows-sys-0.36 as requested by package's cargo.toml

---
 gnu/packages/crates-io.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a9d8bd5669..4440997287 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -41735,7 +41735,8 @@ (define-public rust-parking-lot-core-0.9
         ("rust-petgraph" ,rust-petgraph-0.6)
         ("rust-redox-syscall" ,rust-redox-syscall-0.2)
         ("rust-smallvec" ,rust-smallvec-1)
-        ("rust-thread-id" ,rust-thread-id-4))))
+        ("rust-thread-id" ,rust-thread-id-4)
+        ("rust-windows-sys" ,rust-windows-sys-0.36))))
     (home-page "https://github.com/Amanieu/parking_lot")
     (synopsis "API for creating custom synchronization primitives")
     (description "This package provides an advanced API for creating custom
-- 
2.37.3


From dbe1102c50ca7644a35205a5da739bbef350f1eb Mon Sep 17 00:00:00 2001
From: Ben Van Sleen <benvansleen <at> gmail.com>
Date: Wed, 7 Sep 2022 16:36:49 -0500
Subject: [PATCH 3/4] rust-wayland-scanner: Bumped *-0.29 from v0.28.3 to
 v0.28.6 and *-0.28 from v0.28.3 to v0.28.6

---
 gnu/packages/crates-graphics.scm | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/crates-graphics.scm
b/gnu/packages/crates-graphics.scm
index c5d9555599..35e4f4eb5b 100644
--- a/gnu/packages/crates-graphics.scm
+++ b/gnu/packages/crates-graphics.scm
@@ -2903,17 +2903,20 @@ (define-public rust-wayland-protocols-0.21
 (define-public rust-wayland-scanner-0.29
   (package
     (name "rust-wayland-scanner")
-    (version "0.29.4")
+    (version "0.29.5")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "wayland-scanner" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1q7r764z8k922xf51fj56b1xm29ffi9ap8jnf4c478gp8cqyv89r"))))
+        (base32 "0lxx3i2kxnmsk421qx87lqqc9kd2y1ksjxcyg0pqbar2zbc06hwg"))))
     (build-system cargo-build-system)
-    (inputs
-     (list rust-proc-macro2-1 rust-quote-1 rust-xml-rs-0.8))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-xml-rs" ,rust-xml-rs-0.8))))
     (home-page "https://github.com/smithay/wayland-rs")
     (synopsis "Generate Rust APIs from XML Wayland protocol files")
     (description
@@ -2927,16 +2930,15 @@ (define-public rust-wayland-scanner-0.28
   (package
     (inherit rust-wayland-scanner-0.29)
     (name "rust-wayland-scanner")
-    (version "0.28.3")
+    (version "0.28.6")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "wayland-scanner" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0g8ky63qk27in7zajycj3fyydsxlj19hanfcvr8d7z5kcxbvl43h"))))
-    (inputs
-     (list rust-proc-macro2-1 rust-quote-1 rust-xml-rs-0.8))))
+        (base32
+         "1w839jsh7nrni4f2x5bkapf98w7kddxyqmpks4rf67dnvsr3x4nf"))))))

 (define-public rust-wayland-scanner-0.23
   (package
-- 
2.37.3



From 70d6222e6891743506a42b42412a6358441fe15c Mon Sep 17 00:00:00 2001
From: Ben Van Sleen <benvansleen <at> gmail.com>
Date: Wed, 7 Sep 2022 16:38:11 -0500
Subject: [PATCH 4/4] rust-wayland-client-0.28: Moved rust-wayland-scanner to
 cargo-dependency as specified by its cargo.toml

---
 gnu/packages/crates-graphics.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/crates-graphics.scm
b/gnu/packages/crates-graphics.scm
index 35e4f4eb5b..19b3972365 100644
--- a/gnu/packages/crates-graphics.scm
+++ b/gnu/packages/crates-graphics.scm
@@ -2553,7 +2553,8 @@ (define-public rust-wayland-client-0.28
         ("rust-downcast-rs" ,rust-downcast-rs-1)
         ("rust-libc" ,rust-libc-0.2)
         ("rust-nix" ,rust-nix-0.18)
-        ("rust-scoped-tls" ,rust-scoped-tls-1))
+        ("rust-scoped-tls" ,rust-scoped-tls-1)
+        ("rust-wayland-scanner" ,rust-wayland-scanner-0.28))
        #:cargo-development-inputs
        (("rust-tempfile" ,rust-tempfile-3))))
     (inputs
@@ -2563,7 +2564,6 @@ (define-public rust-wayland-client-0.28
            rust-nix-0.18
            rust-scoped-tls-1
            rust-wayland-commons-0.28
-           rust-wayland-scanner-0.28
            rust-wayland-sys-0.28))))

 (define-public rust-wayland-client-0.23
-- 
2.37.3
[Message part 2 (text/html, inline)]
[0003-rust-wayland-scanner-Bumped-0.29-from-v0.28.3-to-v0..patch (text/x-patch, attachment)]
[0001-rust-windows-sys-0.36-Added-package-updating-existin.patch (text/x-patch, attachment)]
[0002-rust-parking-lot-core-0.9-Updated-dependency-list-to.patch (text/x-patch, attachment)]
[0004-rust-wayland-client-0.28-Moved-rust-wayland-scanner-.patch (text/x-patch, attachment)]

This bug report was last modified 1 year and 203 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.