Subject: Re: [bug#64120] [PATCH WIP] gnu: cambalache: Update to 0.12.0.

From: Liliana Marie Prikler <[email-masked]>
Date: Sat, 17 Jun 2023 06:43:06 +0200

Am Freitag, dem 16.06.2023 um 20:31 -0400 schrieb Maxim Cournoyer:
> Hello,
> 
> Liliana Marie Prikler <[email-masked]> writes:
> 
> > * gnu/packages/gnome.scm (cambalache): Update to 0.12.0.
> > [arguments]<#:tests?>: Disable.
> > <#:phases>: Adjust ‘patch-build’ accordingly.  Add ‘fake-cc’.
> > [inputs]: Add gtksourceview-4 and python-pycairo.
> > Replace webkitgtk-with-libsoup2 with webkitgtk and webkitgtk-next.
> 
> Just with webkitgtk-next, no?
No, it actually needs both.

> > [native-inputs]: Add weston.
> > ---
> >  gnu/packages/gnome.scm | 28 ++++++++++++++++++++++------
> >  1 file changed, 22 insertions(+), 6 deletions(-)
> > 
> > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> > index a698fdf274..21a5ad424d 100644
> > --- a/gnu/packages/gnome.scm
> > +++ b/gnu/packages/gnome.scm
> > @@ -3303,7 +3303,7 @@ (define-public blueprint-compiler
> >  (define-public cambalache
> >    (package
> >      (name "cambalache")
> > -    (version "0.10.3")
> > +    (version "0.12.0")
> >      (source (origin
> >                (method git-fetch)
> >                (uri (git-reference
> > @@ -3311,7 +3311,7 @@ (define-public cambalache
> >                      (commit version)))
> >                (file-name (git-file-name name version))
> >                (sha256
> > -               (base32
> > "1nq9bvly4dm1xnh90z3b4c5455qpdgm3jgz2155vg2ai23f22vsy"))))
> > +               (base32
> > "12dhc7mx04cpc9qwcvqiplphh3mar7wy6cbkv208j7pcg5fzkqh0"))))
> >      (build-system meson-build-system)
> >      (arguments
> >       (list
> > @@ -3321,6 +3321,7 @@ (define-public cambalache
> >        #:modules '((guix build meson-build-system)
> >                    ((guix build python-build-system) #:prefix
> > python:)
> >                    (guix build utils))
> > +      #:tests? #f                       ; XXX: tests spawn a
> > socket...
> >        #:phases
> >        #~(modify-phases %standard-phases
> >            (add-after 'unpack 'patch-source
> > @@ -3331,8 +3332,16 @@ (define-public cambalache
> >                                    inputs (string-append "bin/"
> > cmd)))))))
> >            (add-after 'unpack 'patch-build
> >              (lambda _
> > +              (substitute* "meson.build"
> > +                (("find_program\\('gtk-update-icon-cache'.*\\)")
> > "")
> > +                (("find_program\\('update-desktop-database'.*\\)")
> > ""))
> >                (substitute* "postinstall.py"
> > +                (("gtk-update-icon-cache") "true")
> >                  (("update-desktop-database") "true"))))
> > +          (add-after 'unpack 'fake-cc
> 
> Nitpick: what is 'fake' here?  I'd just call the phase 'patch-cc'.
'Fake', because cc doesn't exist as a binary.  'patch-cc' follows the
'patch-given-input-file' pattern, which I don't want to imply is
happening here.

> > +            (lambda _
> > +              (substitute* "tools/cmb_init_dev.py"
> > +                (("\"cc") (string-append "\"" #$(cc-for-
> > target))))))
> >            (add-after 'wrap 'python-wrap (assoc-ref
> > python:%standard-phases 'wrap))
> >            (delete 'check)
> >            (add-after 'install 'add-install-to-pythonpath
> > @@ -3372,18 +3381,25 @@ (define-public cambalache
> >             adwaita-icon-theme hicolor-icon-theme
> >             gsettings-desktop-schemas
> >             gtk
> > +           gtksourceview-4
> >             `(,gtk+ "bin")               ; broadwayd
> >             `(,gtk "bin")
> >             libadwaita
> >             libhandy
> >             (librsvg-for-system)
> >             python
> > +           python-pycairo
> >             python-pygobject
> >             python-lxml
> > -           webkitgtk-with-libsoup2))
> > -    (native-inputs (list `(,glib "bin") gobject-introspection
> > -                         gettext-minimal pkg-config
> > -                         python-pytest xorg-server-for-tests))
> > +           webkitgtk
> > +           webkitgtk-next))
> > +    (native-inputs (list `(,glib "bin")
> > +                         gobject-introspection
> > +                         gettext-minimal
> > +                         pkg-config
> > +                         python-pytest
> > +                         weston
> > +                         xorg-server-for-tests))
> > 
> 
> Maybe re-indent as
> 
>  (native-inputs
>   (list one
>         two
>         ...))
Sure.

Cheers