guile-ssh 0.16 update (was Re: guile-ssh and libssh updates)

2022-12-20 Thread Vagrant Cascadian
On 2022-11-02, Ludovic Courtès wrote:
> Vagrant Cascadian  skribis:
>> On 2022-10-28, Vagrant Cascadian wrote:
>>> Updating guile-ssh to 0.16.0 actually went mostly smoothly, except
>>> guix-jupytertest suites fail.
...
>> For clarity, I used:
>>
>> ./pre-inst-env guix build --keep-going $(./pre-inst-env guix refresh 
>> --list-dependent libssh guile-ssh | cut -d : -f 2 | sed -e 
>> 's,guix-daemon,guix,g' | tr ' ' '\n' | grep -v kodi | grep -v jupyter)
>
> You can also test Guix SSH functionality, to be on the safe side, for
> example by running ‘guix copy’ on the ‘guix’ package built with these
> new versions.

Well, this being on the safe side has turned out to be quite the
adventure...


So, I attempted that in the newish wip-guile-ssh-0.16 branch, but
getting test suite failures even without the guile-ssh patches, so hard
to test that guix copy works...

Tried updating guix to bd6d76b7a

diff --git a/gnu/packages/package-management.scm 
b/gnu/packages/package-management.scm
index 2ffaa12247..6b3c47e5a1 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -165,7 +165,7 @@ (define-public guix
   ;; Note: the 'update-guix-package.scm' script expects this definition to
   ;; start precisely like this.
   (let ((version "1.4.0")
-(commit "8e2f32cee982d42a79e53fc1e9aa7b8ff0514714")
+(commit "bd6d76b8a44bb14dedaed070b7056f2f56c2e161")
 (revision 0))
 (package
   (name "guix")
@@ -182,7 +182,7 @@ (define-public guix
   (commit commit)))
 (sha256
  (base32
-  "042mipw2bp9lc75m9g5q6rdifrp8483cmk57kwrdps0i3vd590dl"))
+  "0hxv9p5zq4i4xfhd696n9jxrpslm7bf8i3c8zdgf79lvv9mbs43z"))
 (file-name (string-append "guix-" version "-checkout"
   (build-system gnu-build-system)
   (arguments

The test suite failues are a bit long, but in case this short clip helps...

FAIL: tests/guix-package


+ guix package --version
guix package (GNU Guix) 1.4.0
Copyright (C) 2022 the Guix authors
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
+ module_dir=t-guix-package-11599
+ profile=t-profile-11599
...
  /tmp/guix-tests/store/y4dirvvs7f7dpzgyzbwaf4x3ijzqvk92-gmp-6.2.1.drv
  /tmp/guix-tests/store/lp4rpsrvji0y5idkam7hxfkw95d6rmld-gmp-6.2.1.tar.xz.drv
  /tmp/guix-tests/store/7hhl5sa5w96qnwl7dqx6ycnz3sqz6rsp-gmp-6.2.1.tar.xz.drv
  /tmp/guix-tests/store/v3f6d36pvlh52mcfq3x6b3lx88kyk2cx-m4-1.4.18.drv
  /tmp/guix-tests/store/9s8fa4cpxcc45mh6q69c7kk927jpsnvr-m4-1.4.18.tar.xz.drv
++ guix package -L t-guix-package-11599 -s '^fileutils$'
++ grep '^name:'
+ test 'name: ocaml-fileutils' = ''
+ rm -f t-profile-11599 t-profile-11599.lock t-profile-11599-1-link 
t-guix-package-file-11599
+ rm -rf t-guix-package-11599 t-home-11599
FAIL tests/guix-package.sh (exit status: 1)


Is this at least the right approach? e.g. point guix at a commit where
guile-ssh is updated? Is there anything special with the revision? As
you can see from the wip-guile-ssh-0.16 branch, I tried revision "0.1"
and then switched back to "0" ... (fearing clobbering a real-world "1"
revision someday...). I pushed a wip branch just to be able to easily
pull to a commit not on master... as I don't know how to do that
locally.

Presuming I can get guix to build successfully, do i then need to
reconfigure the systems to use a guix-daemon with guile-ssh on both?
... and then run "guix copy" between the two systems?


live well,
  vagrant


signature.asc
Description: PGP signature


Re: guile-ssh and libssh updates

2022-12-11 Thread Vagrant Cascadian
On 2022-11-02, Ludovic Courtès wrote:
> Vagrant Cascadian  skribis:
>> On 2022-10-28, Vagrant Cascadian wrote:
>>> I've been poking at updating guile-ssh to 0.16.0 and libssh to 0.10.4 in
>>> guix, but hit a few blockers.
>>>
>>> Updating guile-ssh to 0.16.0 actually went mostly smoothly, except
>>> guix-jupytertest suites fail.
...
>>> Updating libssh to 0.10.4 mostly works, but breaks guile-ssh tests:
>>>
>>>   https://github.com/artyom-poptsov/guile-ssh/issues/34
>>>
>>> Updating libssh to 0.10.4 with tests disabled for guile-ssh,
>>> guix-jupyter and kodi and kodi-wayland fail to build...
>>
>> For clarity, I used:
>>
>> ./pre-inst-env guix build --keep-going $(./pre-inst-env guix refresh 
>> --list-dependent libssh guile-ssh | cut -d : -f 2 | sed -e 
>> 's,guix-daemon,guix,g' | tr ' ' '\n' | grep -v kodi | grep -v jupyter)

So regarding libssh... what I discovered is that libssh deprecates the
DSA key algorithm (it is of dubious strenth, after all), and 0.10.x
disables DSA by default. Passing -DWITH_DSA=on to re-enable DSA support
in the libssh build helps guile-ssh pass most tests, but some tests
still fail. Since libssh plans to entirely remove DSA support in future
versions, may as well adapt sooner than later...

For Debian at the moment, I've patched out the DSA code from the
guile-ssh test suites, and that seems to work fine.

More details on the upstream guile-ssh bug report referenced above...


> You can also test Guix SSH functionality, to be on the safe side, for
> example by running ‘guix copy’ on the ‘guix’ package built with these
> new versions.

Clearly this has been a blocker for me... I don't have any systems where
I use that functionality, and I haven't taken the time to set them up to
test myself.

Anyone willing to offer some "guix copy" testing to have greater
confidence in updating guile-ssh? :)


> And then feel free to push!  (Guix-Jupyter has been failing tests for
> unrelated reasons.)

So, here we are... :)


live well,
  vagrant


signature.asc
Description: PGP signature


Re: guile-ssh and libssh updates

2022-11-02 Thread Ludovic Courtès
Hi Vagrant,

Vagrant Cascadian  skribis:

> On 2022-10-28, Vagrant Cascadian wrote:
>> I've been poking at updating guile-ssh to 0.16.0 and libssh to 0.10.4 in
>> guix, but hit a few blockers.
>>
>> Updating guile-ssh to 0.16.0 actually went mostly smoothly, except
>> guix-jupytertest suites fail.
>>
>> Looking at guix-jupyter history, the last build of master was
>> successful, but it doesn't exactly look to have a reliable history of
>> building successfully:
>>
>>   https://ci.guix.gnu.org/search?query=guix-jupyter
>>
>> So I don't know if that should block updating guile-ssh?
>>
>>
>> Updating libssh to 0.10.4 mostly works, but breaks guile-ssh tests:
>>
>>   https://github.com/artyom-poptsov/guile-ssh/issues/34
>>
>> Updating libssh to 0.10.4 with tests disabled for guile-ssh,
>> guix-jupyter and kodi and kodi-wayland fail to build...
>
> For clarity, I used:
>
> ./pre-inst-env guix build --keep-going $(./pre-inst-env guix refresh 
> --list-dependent libssh guile-ssh | cut -d : -f 2 | sed -e 
> 's,guix-daemon,guix,g' | tr ' ' '\n' | grep -v kodi | grep -v jupyter)

You can also test Guix SSH functionality, to be on the safe side, for
example by running ‘guix copy’ on the ‘guix’ package built with these
new versions.

And then feel free to push!  (Guix-Jupyter has been failing tests for
unrelated reasons.)

Thanks,
Ludo’.



Re: guile-ssh and libssh updates

2022-10-28 Thread Vagrant Cascadian
On 2022-10-28, Vagrant Cascadian wrote:
> On 2022-10-28, Vagrant Cascadian wrote:
>> I've been poking at updating guile-ssh to 0.16.0 and libssh to 0.10.4 in
>> guix, but hit a few blockers.
>>
>> Updating guile-ssh to 0.16.0 actually went mostly smoothly, except
>> guix-jupytertest suites fail.
>>
>> Looking at guix-jupyter history, the last build of master was
>> successful, but it doesn't exactly look to have a reliable history of
>> building successfully:
>>
>>   https://ci.guix.gnu.org/search?query=guix-jupyter
>>
>> So I don't know if that should block updating guile-ssh?
>>
>>
>> Updating libssh to 0.10.4 mostly works, but breaks guile-ssh tests:
>>
>>   https://github.com/artyom-poptsov/guile-ssh/issues/34
>>
>> Updating libssh to 0.10.4 with tests disabled for guile-ssh,
>> guix-jupyter and kodi and kodi-wayland fail to build...
>
> For clarity, I used:
>
> ./pre-inst-env guix build --keep-going $(./pre-inst-env guix refresh 
> --list-dependent libssh guile-ssh | cut -d : -f 2 | sed -e 
> 's,guix-daemon,guix,g' | tr ' ' '\n' | grep -v kodi | grep -v jupyter)

This time kodi and whatnot built too, so:

  ./pre-inst-env guix build --keep-going $(./pre-inst-env guix refresh 
--list-dependent libssh guile-ssh | cut -d : -f 2 | sed -e 
's,guix-daemon,guix,g' | tr ' ' '\n'  | grep -v guix-jupyter)

So, really it's only guix-jupyter blocking updating guile-ssh, and the
upstream issue with guile-ssh blocking updating libssh. At least, while
the constellations are aligned in just this exact way...


live well,
  vagrant


signature.asc
Description: PGP signature


Re: guile-ssh and libssh updates

2022-10-28 Thread Vagrant Cascadian
On 2022-10-28, Vagrant Cascadian wrote:
> I've been poking at updating guile-ssh to 0.16.0 and libssh to 0.10.4 in
> guix, but hit a few blockers.
>
> Updating guile-ssh to 0.16.0 actually went mostly smoothly, except
> guix-jupytertest suites fail.
>
> Looking at guix-jupyter history, the last build of master was
> successful, but it doesn't exactly look to have a reliable history of
> building successfully:
>
>   https://ci.guix.gnu.org/search?query=guix-jupyter
>
> So I don't know if that should block updating guile-ssh?
>
>
> Updating libssh to 0.10.4 mostly works, but breaks guile-ssh tests:
>
>   https://github.com/artyom-poptsov/guile-ssh/issues/34
>
> Updating libssh to 0.10.4 with tests disabled for guile-ssh,
> guix-jupyter and kodi and kodi-wayland fail to build...

For clarity, I used:

./pre-inst-env guix build --keep-going $(./pre-inst-env guix refresh 
--list-dependent libssh guile-ssh | cut -d : -f 2 | sed -e 
's,guix-daemon,guix,g' | tr ' ' '\n' | grep -v kodi | grep -v jupyter)

live well,
  vagrant


signature.asc
Description: PGP signature


guile-ssh and libssh updates

2022-10-28 Thread Vagrant Cascadian
I've been poking at updating guile-ssh to 0.16.0 and libssh to 0.10.4 in
guix, but hit a few blockers.

Updating guile-ssh to 0.16.0 actually went mostly smoothly, except
guix-jupytertest suites fail.

Looking at guix-jupyter history, the last build of master was
successful, but it doesn't exactly look to have a reliable history of
building successfully:

  https://ci.guix.gnu.org/search?query=guix-jupyter

So I don't know if that should block updating guile-ssh?


Updating libssh to 0.10.4 mostly works, but breaks guile-ssh tests:

  https://github.com/artyom-poptsov/guile-ssh/issues/34

Updating libssh to 0.10.4 with tests disabled for guile-ssh,
guix-jupyter and kodi and kodi-wayland fail to build...

Patches for the two updates attached, though obviously need some work
before applying...


live well,
  vagrant
From 8635c5b9d5e3424331aa553a15811ef316654514 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian 
Date: Thu, 27 Oct 2022 13:13:28 -0700
Subject: [PATCH 1/2] gnu: guile-ssh: Update to 0.16.0.

* gnu/packages/ssh.scm (guile-ssh): Update to 0.16.0.
---
 gnu/packages/ssh.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 6a3779ee55..deec5fcc8f 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -318,7 +318,7 @@ (define-public openssh-sans-x
 (define-public guile-ssh
   (package
 (name "guile-ssh")
-(version "0.15.1")
+(version "0.16.0")
 (home-page "https://github.com/artyom-poptsov/guile-ssh;)
 (source (origin
   (method git-fetch)
@@ -328,7 +328,7 @@ (define-public guile-ssh
   (file-name (git-file-name name version))
   (sha256
(base32
-"0zzn5hsf97b35gixyg4z14sspl15qwnp52y4h89wra4y31l7467q"
+"1ka5ayrg7kysx3bi5d8s0z6n12sdc06qp9gc4k9h2mlw3vz187ny"
 (build-system gnu-build-system)
 (outputs '("out" "debug"))
 (arguments
-- 
2.35.1

From 76d628a097731cbfefc52f081c1cbf678df0de25 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian 
Date: Thu, 27 Oct 2022 13:18:46 -0700
Subject: [PATCH 2/2] gnu: libssh: Update to 0.10.4.

* gnu/packages/ssh.scm (libssh): Update to 0.10.4.
---
 gnu/packages/ssh.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index deec5fcc8f..966de32fce 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -130,7 +130,7 @@ (define-public hss
 (define-public libssh
   (package
 (name "libssh")
-(version "0.9.6")
+(version "0.10.4")
 (source (origin
   (method url-fetch)
   (uri (string-append "https://www.libssh.org/files/;
@@ -138,7 +138,7 @@ (define-public libssh
   "/libssh-" version ".tar.xz"))
   (sha256
(base32
-"16w2mc7pyv9mijjlgacbz8dgczc7ig2m6m70w1pld04vpn2zig46"
+"0zfr9fy4vg1bmz1k836hg9wi20mmaz2sgw61s6464iv1mda2qf87"
 (build-system cmake-build-system)
 (outputs '("out" "debug"))
 (arguments
-- 
2.35.1



signature.asc
Description: PGP signature