[PATCH 0/5] gnu: iwd: Build from Git; update to 1.23.

  • Done
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • Maxime Devos
  • Simon South
Owner
unassigned
Submitted by
Simon South
Severity
normal

Debbugs page

Simon South wrote 3 years ago
(address . guix-patches@gnu.org)
cover.1643988584.git.simon@simonsouth.net
Here's a patch series that aims to improve the iwd package by

- Migrating its "native-inputs" field to the new, label-less style;

- Building the package from revision control rather than a bootstrapped
tarball, which involves copying into the source tree two private header
files it shares with ell;[0]

- Updating ell itself to version 0.48, removing from its package definition
its own input labels as well as the "fix-dbus-tests" phase that was
obsoleted with upstream commit 49bb10f7b5;[1] and

- Updating iwd to 1.23.

Note there is an unavoidable dependency issue here: iwd 1.20 doesn't build
with ell 0.48, so a future time-traveller that arrives between the last two
commits will find the repository partially broken. Unfortunately expanding
this into a longer series of commits doesn't help, as iwd 1.21 also doesn't
build with ell 0.48 while iwd 1.22 doesn't build with ell 0.47. I don't see a
way around this that doesn't involve merging these two commits into one.

On x86-64, with these patches applied I've been able to build both packages
and all of their 40-odd dependents, and everything appears to be fine.

On AArch64, both packages and their one immediate dependent, network-manager,
build fine, as do the sub-dependent packages I can identify that don't rely on
Rust (currently unavailable on AArch64).

[0] As explained in passing at

--
Simon South
simon@simonsouth.net


Simon South (5):
gnu: iwd: Remove input labels.
gnu: iwd: Build from Git sources.
gnu: ell: Remove input labels.
gnu: ell: Update to 0.48.
gnu: iwd: Update to 1.23.

gnu/packages/linux.scm | 19 +++-------------
gnu/packages/networking.scm | 43 ++++++++++++++++++++++++++-----------
2 files changed, 33 insertions(+), 29 deletions(-)


base-commit: 8f585083277e64ea1e9a0848ef3c49f12327618c
--
2.34.0
Simon South wrote 3 years ago
[PATCH 3/5] gnu: ell: Remove input labels.
(address . 53779@debbugs.gnu.org)
fbe4e45b03ae23b21cd9a782998993e80ae29687.1643988584.git.simon@simonsouth.net
* gnu/packages/linux.scm (ell)[native-inputs]: Remove input labels.
---
gnu/packages/linux.scm | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

Toggle diff (18 lines)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index e496b5e2b2..aabf759592 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -8380,10 +8380,7 @@ (define-public ell
(inputs
(list dbus))
(native-inputs
- `(("autoconf" ,autoconf)
- ("libtool" ,libtool)
- ("pkgconfig" ,pkg-config)
- ("automake" ,automake)))
+ (list autoconf automake libtool pkg-config))
(home-page "https://01.org/ell")
(synopsis "Embedded Linux Library")
(description "The Embedded Linux* Library (ELL) provides core, low-level
--
2.34.0
Simon South wrote 3 years ago
[PATCH 1/5] gnu: iwd: Remove input labels.
(address . 53779@debbugs.gnu.org)
97c63d45240ce29586d92a4b90e6eff3aecf9284.1643988584.git.simon@simonsouth.net
* gnu/packages/networking.scm (iwd)[native-inputs]: Remove input labels.
---
gnu/packages/networking.scm | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

Toggle diff (18 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 3aa3e9b8e9..064248600e 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -3581,10 +3581,7 @@ (define-public iwd
(inputs
(list dbus ell readline))
(native-inputs
- `(("pkgconfig" ,pkg-config)
- ("python" ,python)
- ("rst2man" ,python-docutils)
- ("openssl" ,openssl)))
+ (list pkg-config python python-docutils openssl))
(arguments
`(#:configure-flags
(let ((dbus (assoc-ref %outputs "out")))
--
2.34.0
Simon South wrote 3 years ago
[PATCH 5/5] gnu: iwd: Update to 1.23.
(address . 53779@debbugs.gnu.org)
6d1cd66fca04b3acda4d20d1e7316958d970b18d.1643988584.git.simon@simonsouth.net
* gnu/packages/networking.scm (iwd): Update to 1.23.
---
gnu/packages/networking.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index dc42ec4d73..45184f8181 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -3567,7 +3567,7 @@ (define-public bird
(define-public iwd
(package
(name "iwd")
- (version "1.20")
+ (version "1.23")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3576,7 +3576,7 @@ (define-public iwd
(file-name (git-file-name name version))
(sha256
(base32
- "0xlbnsgw9giakfj0xr526i7mcwyaryb18g66mv90njnrm8radjhr"))))
+ "0hb01cn5gyna3zgqzjzz5zqn94cd1q9i00n4dmc1ms4w4s25q4a1"))))
(build-system gnu-build-system)
(inputs
(list dbus ell (package-source ell) readline))
--
2.34.0
Simon South wrote 3 years ago
[PATCH 4/5] gnu: ell: Update to 0.48.
(address . 53779@debbugs.gnu.org)
5d2a8148b044618d620be88837a54ba19476badf.1643988584.git.simon@simonsouth.net
* gnu/packages/linux.scm (ell): Update to 0.48.
[arguments]: Remove obsolete "fix-dbus-tests" phase.
---
gnu/packages/linux.scm | 14 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)

Toggle diff (35 lines)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index aabf759592..8ae19855d7 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -8356,7 +8356,7 @@ (define-public wireplumber
(define-public ell
(package
(name "ell")
- (version "0.46")
+ (version "0.48")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -8365,18 +8365,8 @@ (define-public ell
(file-name (git-file-name name version))
(sha256
(base32
- "15hwqicmll23cbrj13h3wd4lgrby416ap7l6w0434jsza4s4yv82"))))
+ "0lxjizby3zdyhzad5a0gbz4m2pp44jf1j4l1pn18d04rw9mr2gqy"))))
(build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-dbus-tests
- (lambda _
- (substitute* '("unit/test-dbus-message-fds.c"
- "unit/test-dbus-properties.c"
- "unit/test-dbus.c")
- (("/usr/bin/dbus-daemon") (which "dbus-daemon")))
- #t)))))
(inputs
(list dbus))
(native-inputs
--
2.34.0
Simon South wrote 3 years ago
[PATCH 2/5] gnu: iwd: Build from Git sources.
(address . 53779@debbugs.gnu.org)
6ec2d0a5b769bdbd66a99f9c0240363964f66ee0.1643988584.git.simon@simonsouth.net
* gnu/packages/networking.scm (iwd)[source]: Use "git-fetch" and
"git-file-name".
[inputs]: Add ell source code.
[native-inputs]: Add autoconf, automake, libtool.
[arguments]<#:phases>: Add "copy-ell-header-files" phase to copy shared header
files from ell source into source tree.
---
gnu/packages/networking.scm | 38 ++++++++++++++++++++++++++++---------
1 file changed, 29 insertions(+), 9 deletions(-)

Toggle diff (70 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 064248600e..dc42ec4d73 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -47,6 +47,7 @@
;;; Copyright © 2021 Milkey Mouse <milkeymouse@meme.institute>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2022 Simon South <simon@simonsouth.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3568,20 +3569,25 @@ (define-public iwd
(name "iwd")
(version "1.20")
(source (origin
- ;; FIXME: We're using the bootstrapped sources because
- ;; otherwise using an external ell library is impossible.
- ;; How to bootstrap with Guix?
- (method url-fetch)
- (uri (string-append "https://www.kernel.org/pub/linux/network"
- "/wireless/iwd-" version ".tar.xz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.kernel.org/pub/scm/network/wireless/iwd.git")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "03q5scahyg86h4bdxqxm32shyssgpmfp5b3183j01ig7mg6f4lbx"))))
+ "0xlbnsgw9giakfj0xr526i7mcwyaryb18g66mv90njnrm8radjhr"))))
(build-system gnu-build-system)
(inputs
- (list dbus ell readline))
+ (list dbus ell (package-source ell) readline))
(native-inputs
- (list pkg-config python python-docutils openssl))
+ (list autoconf
+ automake
+ libtool
+ pkg-config
+ python
+ python-docutils
+ openssl))
(arguments
`(#:configure-flags
(let ((dbus (assoc-ref %outputs "out")))
@@ -3596,6 +3602,20 @@ (define-public iwd
dbus "/share/dbus-1/system-services")))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'copy-ell-header-files
+ ;; Copy into the source tree two of ell's private header files that
+ ;; it shares with iwd, as is required to build with the
+ ;; "--enable-external-ell" configure option.
+ ;; See the definition of "ell_shared" in iwd's Makefile.am.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((ell-header-dir (search-input-directory inputs "/ell"))
+ (target-dir "ell"))
+ (mkdir target-dir)
+ (for-each
+ (lambda (file-name)
+ (copy-file (string-append ell-header-dir "/" file-name)
+ (string-append target-dir "/" file-name)))
+ '("asn1-private.h" "useful.h")))))
(add-after 'configure 'patch-Makefile
(lambda _
(substitute* "Makefile"
--
2.34.0
Maxime Devos wrote 3 years ago
Re: [bug#53779] [PATCH 1/5] gnu: iwd: Remove input labels.
e356d5c48aa0a5f182fc65839eabda21b7e715e6.camel@telenet.be
Simon South schreef op vr 04-02-2022 om 10:43 [-0500]:
Toggle quote (5 lines)
> +     (list pkg-config python python-docutils openssl))
>      (arguments
>       `(#:configure-flags
>         (let ((dbus (assoc-ref %outputs "out")))

While you're at it, could you remove the %outputs that is being phased
out in favour of the G-exp equivalent?

#:configure-flags
,#~(let ((dbus #$output))
...)

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYf+d7xccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7s4UAP0RDLarihb4PnJkIkNRu9lQHMyU
5QbnEaSN7x3uXz5qfQEAgiHDfT+zp+V6cWu7oLpe+eQO3gnGDpfmxFP6pprBMQ8=
=5MF6
-----END PGP SIGNATURE-----


Simon South wrote 3 years ago
[PATCH v2 2/6] gnu: iwd: Remove reference to %outputs.
(address . 53779@debbugs.gnu.org)
fc4732e5453d3f1023025e59cce9d3557084550d.1644243309.git.simon@simonsouth.net
* gnu/packages/networking.scm (iwd)[arguments]: Remove reference to %outputs
by using a gexp.
---
gnu/packages/networking.scm | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 4258a14968..ef0ae12e49 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -3580,16 +3580,15 @@ (define-public iwd
(list pkg-config python python-docutils openssl))
(arguments
`(#:configure-flags
- (let ((dbus (assoc-ref %outputs "out")))
- (list "--disable-systemd-service"
- "--enable-external-ell"
- "--enable-hwsim"
- "--enable-tools"
- "--enable-wired"
- "--localstatedir=/var"
- (string-append "--with-dbus-datadir=" dbus "/share/")
- (string-append "--with-dbus-busdir="
- dbus "/share/dbus-1/system-services")))
+ ,#~(list "--disable-systemd-service"
+ "--enable-external-ell"
+ "--enable-hwsim"
+ "--enable-tools"
+ "--enable-wired"
+ "--localstatedir=/var"
+ (string-append "--with-dbus-datadir=" #$output "/share/")
+ (string-append "--with-dbus-busdir="
+ #$output "/share/dbus-1/system-services"))
#:phases
(modify-phases %standard-phases
(add-after 'configure 'patch-Makefile
--
2.34.0
Simon South wrote 3 years ago
[PATCH v2 4/6] gnu: ell: Remove input labels.
(address . 53779@debbugs.gnu.org)
c9345e94949439d8e0da7983be1c0acea1d7a9bb.1644243309.git.simon@simonsouth.net
* gnu/packages/linux.scm (ell)[native-inputs]: Remove input labels.
---
gnu/packages/linux.scm | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

Toggle diff (18 lines)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 2e2d01c656..138eab5ed2 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -8386,10 +8386,7 @@ (define-public ell
(inputs
(list dbus))
(native-inputs
- `(("autoconf" ,autoconf)
- ("libtool" ,libtool)
- ("pkgconfig" ,pkg-config)
- ("automake" ,automake)))
+ (list autoconf automake libtool pkg-config))
(home-page "https://01.org/ell")
(synopsis "Embedded Linux Library")
(description "The Embedded Linux* Library (ELL) provides core, low-level
--
2.34.0
Simon South wrote 3 years ago
[PATCH v2 0/6] gnu: iwd: Build from Git; update to 1.24.
(address . 53779@debbugs.gnu.org)
cover.1644243309.git.simon@simonsouth.net
Here's an updated patch series that additionally

- Removes a reference to "%outputs" in the iwd package using a gexp, following
Maxime's request; and

- Updates iwd to version 1.24, which was released in the last few days, rather
than 1.23.

Everything else is unchanged from the original.

On x86-64, all of iwd's dependents reported by "guix refresh" build fine for
me with the updated patchset applied.

On AArch64, ell, iwd and their one immediate dependency, network-manager, all
build fine as well.

The cover letter from the original patch series follows.


Here's a patch series that aims to improve the iwd package by

- Migrating its "native-inputs" field to the new, label-less style;

- Building the package from revision control rather than a bootstrapped
tarball, which involves copying into the source tree two private header
files it shares with ell;[0]

- Updating ell itself to version 0.48, removing from its package definition
its own input labels as well as the "fix-dbus-tests" phase that was
obsoleted with upstream commit 49bb10f7b5;[1] and

- Updating iwd to 1.23.

Note there is an unavoidable dependency issue here: iwd 1.20 doesn't build
with ell 0.48, so a future time-traveller that arrives between the last two
commits will find the repository partially broken. Unfortunately expanding
this into a longer series of commits doesn't help, as iwd 1.21 also doesn't
build with ell 0.48 while iwd 1.22 doesn't build with ell 0.47. I don't see a
way around this that doesn't involve merging these two commits into one.

On x86-64, with these patches applied I've been able to build both packages
and all of their 40-odd dependents, and everything appears to be fine.

On AArch64, both packages and their one immediate dependent, network-manager,
build fine, as do the sub-dependent packages I can identify that don't rely on
Rust (currently unavailable on AArch64).

[0] As explained in passing at

--
Simon South
simon@simonsouth.net


Simon South (6):
gnu: iwd: Remove input labels.
gnu: iwd: Remove reference to %outputs.
gnu: iwd: Build from Git sources.
gnu: ell: Remove input labels.
gnu: ell: Update to 0.48.
gnu: iwd: Update to 1.24.

gnu/packages/linux.scm | 19 ++----------
gnu/packages/networking.scm | 62 +++++++++++++++++++++++--------------
2 files changed, 42 insertions(+), 39 deletions(-)


base-commit: 67817299808a03e2750cfb630dc09fe8eb99c468
--
2.34.0
Simon South wrote 3 years ago
[PATCH 1/6] gnu: iwd: Remove input labels.
(address . 53779@debbugs.gnu.org)
b7a9d2d39b4daa8e6afd2ac700d0a6429710471e.1644243309.git.simon@simonsouth.net
* gnu/packages/networking.scm (iwd)[native-inputs]: Remove input labels.
---
gnu/packages/networking.scm | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

Toggle diff (18 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 3ae255e093..4258a14968 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -3577,10 +3577,7 @@ (define-public iwd
(inputs
(list dbus ell readline))
(native-inputs
- `(("pkgconfig" ,pkg-config)
- ("python" ,python)
- ("rst2man" ,python-docutils)
- ("openssl" ,openssl)))
+ (list pkg-config python python-docutils openssl))
(arguments
`(#:configure-flags
(let ((dbus (assoc-ref %outputs "out")))
--
2.34.0
Simon South wrote 3 years ago
[PATCH v2 3/6] gnu: iwd: Build from Git sources.
(address . 53779@debbugs.gnu.org)
0093dadfa3d4c1d82aa7464415870f9f0149ea85.1644243309.git.simon@simonsouth.net
* gnu/packages/networking.scm (iwd)[source]: Use "git-fetch" and
"git-file-name".
[inputs]: Add ell source code.
[native-inputs]: Add autoconf, automake, libtool.
[arguments]<#:phases>: Add "copy-ell-header-files" phase to copy shared header
files from ell source into source tree.
---
gnu/packages/networking.scm | 38 ++++++++++++++++++++++++++++---------
1 file changed, 29 insertions(+), 9 deletions(-)

Toggle diff (70 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index ef0ae12e49..382b4cf96d 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -47,6 +47,7 @@
;;; Copyright © 2021 Milkey Mouse <milkeymouse@meme.institute>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2022 Simon South <simon@simonsouth.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3564,20 +3565,25 @@ (define-public iwd
(name "iwd")
(version "1.20")
(source (origin
- ;; FIXME: We're using the bootstrapped sources because
- ;; otherwise using an external ell library is impossible.
- ;; How to bootstrap with Guix?
- (method url-fetch)
- (uri (string-append "https://www.kernel.org/pub/linux/network"
- "/wireless/iwd-" version ".tar.xz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.kernel.org/pub/scm/network/wireless/iwd.git")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "03q5scahyg86h4bdxqxm32shyssgpmfp5b3183j01ig7mg6f4lbx"))))
+ "0xlbnsgw9giakfj0xr526i7mcwyaryb18g66mv90njnrm8radjhr"))))
(build-system gnu-build-system)
(inputs
- (list dbus ell readline))
+ (list dbus ell (package-source ell) readline))
(native-inputs
- (list pkg-config python python-docutils openssl))
+ (list autoconf
+ automake
+ libtool
+ pkg-config
+ python
+ python-docutils
+ openssl))
(arguments
`(#:configure-flags
,#~(list "--disable-systemd-service"
@@ -3591,6 +3597,20 @@ (define-public iwd
#$output "/share/dbus-1/system-services"))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'copy-ell-header-files
+ ;; Copy into the source tree two of ell's private header files that
+ ;; it shares with iwd, as is required to build with the
+ ;; "--enable-external-ell" configure option.
+ ;; See the definition of "ell_shared" in iwd's Makefile.am.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((ell-header-dir (search-input-directory inputs "/ell"))
+ (target-dir "ell"))
+ (mkdir target-dir)
+ (for-each
+ (lambda (file-name)
+ (copy-file (string-append ell-header-dir "/" file-name)
+ (string-append target-dir "/" file-name)))
+ '("asn1-private.h" "useful.h")))))
(add-after 'configure 'patch-Makefile
(lambda _
(substitute* "Makefile"
--
2.34.0
Simon South wrote 3 years ago
[PATCH v2 6/6] gnu: iwd: Update to 1.24.
(address . 53779@debbugs.gnu.org)
143a77fb4f1ae53a5e3a273b1d9662352462fc59.1644243309.git.simon@simonsouth.net
* gnu/packages/networking.scm (iwd): Update to 1.24.
---
gnu/packages/networking.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 382b4cf96d..4d260249d7 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -3563,7 +3563,7 @@ (define-public bird
(define-public iwd
(package
(name "iwd")
- (version "1.20")
+ (version "1.24")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3572,7 +3572,7 @@ (define-public iwd
(file-name (git-file-name name version))
(sha256
(base32
- "0xlbnsgw9giakfj0xr526i7mcwyaryb18g66mv90njnrm8radjhr"))))
+ "1sdi7008j5jhlg2rqpczh1pzb8zay6mc9dpnjjsmdnsmrcr3v7wi"))))
(build-system gnu-build-system)
(inputs
(list dbus ell (package-source ell) readline))
--
2.34.0
Simon South wrote 3 years ago
[PATCH v2 5/6] gnu: ell: Update to 0.48.
(address . 53779@debbugs.gnu.org)
3ee4b75424261845377ff6eef04cac61c5e8b88b.1644243309.git.simon@simonsouth.net
* gnu/packages/linux.scm (ell): Update to 0.48.
[arguments]: Remove obsolete "fix-dbus-tests" phase.
---
gnu/packages/linux.scm | 14 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)

Toggle diff (35 lines)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 138eab5ed2..1c76d37166 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -8362,7 +8362,7 @@ (define-public wireplumber
(define-public ell
(package
(name "ell")
- (version "0.46")
+ (version "0.48")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -8371,18 +8371,8 @@ (define-public ell
(file-name (git-file-name name version))
(sha256
(base32
- "15hwqicmll23cbrj13h3wd4lgrby416ap7l6w0434jsza4s4yv82"))))
+ "0lxjizby3zdyhzad5a0gbz4m2pp44jf1j4l1pn18d04rw9mr2gqy"))))
(build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-dbus-tests
- (lambda _
- (substitute* '("unit/test-dbus-message-fds.c"
- "unit/test-dbus-properties.c"
- "unit/test-dbus.c")
- (("/usr/bin/dbus-daemon") (which "dbus-daemon")))
- #t)))))
(inputs
(list dbus))
(native-inputs
--
2.34.0
Ludovic Courtès wrote 3 years ago
Re: bug#53779: [PATCH 0/5] gnu: iwd: Build from Git; update to 1.23.
(name . Simon South)(address . simon@simonsouth.net)(address . 53779-done@debbugs.gnu.org)
87czjxa635.fsf_-_@gnu.org
Hi,

Simon South <simon@simonsouth.net> skribis:

Toggle quote (7 lines)
> Note there is an unavoidable dependency issue here: iwd 1.20 doesn't build
> with ell 0.48, so a future time-traveller that arrives between the last two
> commits will find the repository partially broken. Unfortunately expanding
> this into a longer series of commits doesn't help, as iwd 1.21 also doesn't
> build with ell 0.48 while iwd 1.22 doesn't build with ell 0.47. I don't see a
> way around this that doesn't involve merging these two commits into one.

Merging into one is the right thing in this case, IMO. I did that on
your behalf.

Toggle quote (11 lines)
> On x86-64, with these patches applied I've been able to build both packages
> and all of their 40-odd dependents, and everything appears to be fine.
>
> On AArch64, both packages and their one immediate dependent, network-manager,
> build fine, as do the sub-dependent packages I can identify that don't rely on
> Rust (currently unavailable on AArch64).
>
> [0] As explained in passing at
> https://lists.01.org/hyperkitty/list/iwd@lists.01.org/thread/2YCWIA63EFCKQ7AYRSGIDMUO7GEMC4CW/
> [1] https://git.kernel.org/pub/scm/libs/ell/ell.git/commit/?id=49bb10f7b5e4b97d74210cb72cc47a337ae64cad

OK.

Toggle quote (7 lines)
> gnu: iwd: Remove input labels.
> gnu: iwd: Remove reference to %outputs.
> gnu: iwd: Build from Git sources.
> gnu: ell: Remove input labels.
> gnu: ell: Update to 0.48.
> gnu: iwd: Update to 1.24.

Applied. Thanks for the code and for the explanations!

Ludo’.
Closed
Ludovic Courtès wrote 3 years ago
(name . Simon South)(address . simon@simonsouth.net)(address . 53779@debbugs.gnu.org)
87zgn17z61.fsf_-_@gnu.org
Hi again,

Simon South <simon@simonsouth.net> skribis:

Toggle quote (3 lines)
> * gnu/packages/linux.scm (ell): Update to 0.48.
> [arguments]: Remove obsolete "fix-dbus-tests" phase.

I noticed this test failure on powerpc64le-linux:

Toggle snippet (37 lines)
================================
ell 0.48: ./test-suite.log
================================

# TOTAL: 40
# PASS: 38
# SKIP: 0
# XFAIL: 0
# FAIL: 2
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: unit/test-dbus-message-fds
================================

launching dbus-daemon
dbus-daemon process 16430 created
dbus-daemon[16430]: Failed to start message bus: Failed to bind socket "/tmp/ell-test-bus": Address already in use
process 16430 terminated with status=256

Disconnected from DBus
FAIL unit/test-dbus-message-fds (exit status: 134)

FAIL: unit/test-dbus-properties
===============================

launching dbus-daemon
dbus-daemon process 16445 created
dbus-daemon[16445]: Failed to start message bus: Failed to bind socket "/tmp/ell-test-bus": Address already in use
process 16445 terminated with status=256

Disconnected from DBus
FAIL unit/test-dbus-properties (exit status: 134)


This makes me think that perhaps we need #:parallel-tests? #f, WDYT?

Ludo’.
Simon South wrote 3 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 53779@debbugs.gnu.org)
87sfss6qks.fsf@simonsouth.net
Ludovic Courtès <ludo@gnu.org> writes:
Toggle quote (2 lines)
> This makes me think that perhaps we need #:parallel-tests? #f, WDYT?

That seems right; I can reproduce the failure by building just the three
D-Bus-related tests together in parallel.

I'll follow up with a patch.

--
Simon South
simon@simonsouth.net
Simon South wrote 3 years ago
[PATCH] gnu: ell: Disable parallel tests.
(address . ludo@gnu.org)(address . 53779@debbugs.gnu.org)
20220209145459.5536-1-simon@simonsouth.net
* gnu/packages/linux.scm (ell)[arguments]: Disable parallel tests.
---
gnu/packages/linux.scm | 2 ++
1 file changed, 2 insertions(+)

Toggle diff (17 lines)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 08ef82efaf..e9db731614 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -8358,6 +8358,8 @@ (define-public ell
(base32
"0lxjizby3zdyhzad5a0gbz4m2pp44jf1j4l1pn18d04rw9mr2gqy"))))
(build-system gnu-build-system)
+ (arguments
+ '(#:parallel-tests? #f))
(inputs
(list dbus))
(native-inputs

base-commit: ad9cd004c81a01e33a605221a102f4d20abe442d
--
2.34.0
Ludovic Courtès wrote 3 years ago
(name . Simon South)(address . simon@simonsouth.net)(address . 53779@debbugs.gnu.org)
87h7964f71.fsf@gnu.org
Hi,

Simon South <simon@simonsouth.net> skribis:

Toggle quote (16 lines)
> * gnu/packages/linux.scm (ell)[arguments]: Disable parallel tests.
> ---
> gnu/packages/linux.scm | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
> index 08ef82efaf..e9db731614 100644
> --- a/gnu/packages/linux.scm
> +++ b/gnu/packages/linux.scm
> @@ -8358,6 +8358,8 @@ (define-public ell
> (base32
> "0lxjizby3zdyhzad5a0gbz4m2pp44jf1j4l1pn18d04rw9mr2gqy"))))
> (build-system gnu-build-system)
> + (arguments
> + '(#:parallel-tests? #f))

I added a comment and applied it.

Thanks,
Ludo’.
?
Your comment

This issue is archived.

To comment on this conversation send an email to 53779@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 53779
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help