Message ID | 20220524132642.14122-1-higashi@taiju.info |
---|---|
Headers | show |
Series | Update guile-hall to 0.4.1. | expand |
Taiju HIGASHI schreef op di 24-05-2022 om 22:26 [+0900]: > Since I wanted to update guile-hall to 0.4.1, I tried to update the dependent > library guile-config to 0.5.0. However, the incompatible change of > guile-config 0.5.0 made it impossible to build gwl. Therefore, I would like to > address this by temporarily adding a variant called guile-config-0.5. Would it be feasible to make gwl compatible with 0.5.0? Otherwise, it becomes impossible to install 'guile-hall' and the dependencies of 'gwl' in the same profile due to propagation conflicts, which can be rather inconvenient Greetings, Maxime.
Hi Maxime, Thanks for your reply. I see. So separating the packages doesn't solve anything because of the conflicts that occur? I'll see if I can fix gwl to solve this. Cheers
Taiju HIGASHI schreef op di 24-05-2022 om 23:20 [+0900]: > I see. So separating the packages doesn't solve anything because of the > conflicts that occur? Depends on how things are used. If you install two applications (*) 'foo' and 'bar' in the same profile that use different versions of guile-config: no problem. If you are developing both 'foo' and 'bar' in the same session, e.g. with "guix shell -D foo -D bar", then there's a problem because the profile can contain only a single version of their dependency guile-config (**). Some other problematic variations are possible too. (*) Normally applications don't propagate anything, they just put things in 'inputs' and use sufficient amount of wrapping to avoid propagation. (**) IIUC, "guix shell -D" currently silently picks one version or the other
Hi Maxime, Thanks! I did not know that installing both packages in the same profile would not cause problems. It doesn't seem to be a problem in my usual use cases, but it is not desirable. I wrote a patch for gwl to fix building errors. However, I'm not confident that patch, because I'm not familiar with gwl much, so I ask in the gwl-devel mailing list whether my patch not have any problems.
Hi, Taiju HIGASHI <higashi@taiju.info> skribis: > Thanks for your reply. > I see. So separating the packages doesn't solve anything because of the > conflicts that occur? > I'll see if I can fix gwl to solve this. Indeed, I get this: --8<---------------cut here---------------start------------->8--- $ guix build gwl --with-latest=guile-config guix build: warning: cannot authenticate source of 'guile-config', version 0.5.1 updating checkout of 'https://gitlab.com/a-sassmannshausen/guile-config'... retrieved commit 6a00702d044663fef6d6d619f4aeb75417e1b10b substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://guix.bordeaux.inria.fr'... 100.0% The following derivations will be built: /gnu/store/9xnjw36mzhshqh3x7vmwi6q45v10i7rc-gwl-0.4.0.drv /gnu/store/0mwhz53h7whs3nahiv6d8drclqajz282-guile-config-0.5.1.drv /gnu/store/z9vkfyxlsnh1v2v4mmbdymxwza1dwmd3-guile-config-0.5.1-checkout.drv […] starting phase `build' GEN guix/extensions/workflow.scm mv -f "guix/extensions/workflow.scm-t" "guix/extensions/workflow.scm" GEN gwl/config.go ice-9/boot-9.scm:1685:16: In procedure raise-exception: Syntax error: gwl/config.scm:66:8: argument: extraneous field initializers (optional?) in form (argument (name (quote file)) (optional? #f) (test file-exists?) (handler identity) (example "/path/to/my-workflow.w")) make: *** [Makefile:1574: gwl/config.go] Error 1 error: in phase 'build': uncaught exception: %exception #<&invoke-error program: "make" arguments: ("GUILE_AUTO_COMPILE=0") exit-status: 2 term-signal: #f stop-signal: #f> phase `build' failed after 0.3 seconds command "make" "GUILE_AUTO_COMPILE=0" failed with status 2 builder for `/gnu/store/9xnjw36mzhshqh3x7vmwi6q45v10i7rc-gwl-0.4.0.drv' failed with exit code 1 --8<---------------cut here---------------end--------------->8--- How about one of these two options: 1. Provide both versions of guile-config, use the old one in GWL, at the risk of preventing installation of guile-hall + gwl in the same profile (which is probably not much of a problem in practice). 2. Patch GWL so it works with the latest guile-config. That should unblock the situation. WDYT? Thanks, Ludo’.
Hi Ludovic, Thank you for the comment! >How about one of these two options: > > 1. Provide both versions of guile-config, use the old one in GWL, at > the risk of preventing installation of guile-hall + gwl in the same > profile (which is probably not much of a problem in practice). > > 2. Patch GWL so it works with the latest guile-config. > >That should unblock the situation. WDYT? The second option is preferable and is currently being worked on. I have the patch reviewed for adequacy. https://lists.gnu.org/archive/html/gwl-devel/2022-05/msg00010.html https://lists.gnu.org/archive/html/gwl-devel/2022-06/msg00000.html Cheers, -- Taiju
The GWL now supports guile-config 0.5.x. My apologies for the delay. Taiju Higashi, could you please update your patch so that it updates to guile-config 0.5.1? Once ready I can apply it. Thanks! (The GWL should get a new release soon, but that shouldn’t block this issue.)