Subject: [bug#73981] [PATCH 2/4] gnu: Add libqrtr-glib.

From: Maxim Cournoyer <[email-masked]>
Date: Mon, 11 Nov 2024 23:28:55 +0900

Zheng Junjie <[email-masked]> writes:

> * gnu/packages/freedesktop.scm (libqrtr-glib): New variable.
>
> Change-Id: I84e26d0e8f69c8e5bc1c65925792aea296f6a97d
> ---
>  gnu/packages/freedesktop.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
> index a7c740f3d05..321ab2a1d1e 100644
> --- a/gnu/packages/freedesktop.scm
> +++ b/gnu/packages/freedesktop.scm
> @@ -1932,6 +1932,37 @@ (define-public libmbim
>       ;; The mbimcli tool is released under the GPLv2+ license.
>       (list license:lgpl2.0+ license:gpl2+))))
>  
> +(define-public libqrtr-glib
> +  (package
> +    (name "libqrtr-glib")
> +    (version "1.2.2")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://gitlab.freedesktop.org/mobile-broadband/libqrtr-glib")

Too wide of a line; you should break (source (origin ... as
 (source
  (origin ...))

Note that 'guix style' has issues in this regard, which I've reported to
our tracker.

> +                    (commit version)))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "0bfn5kfscli0rrxvmzdl6ix5ikh0kxia7ad83rmh1hksfcwynwlh"))))
> +    (build-system meson-build-system)
> +    (inputs
> +     (list libgudev libmbim))
> +    (native-inputs
> +     (list `(,glib "bin")
> +           gtk-doc
> +           pkg-config
> +           gobject-introspection
> +           bash-completion))

My package only had (native-inputs (list gobject-introspection gtk-doc pkg-config))

> +    (propagated-inputs
> +     (list glib))

When propagating inputs, we typically leave a comment as to why, as it
shouldn't be made without a good reason (it hurts composability in a
profile).  Typically something like a

 ;required by some-package.pc  

inline comment when pkg-config files list them in Requires or
Requires.private (the later is consulted when retrieving Cflags with
pkg-config... even when using dynamic linking).

In my package I had listed it as an 'input'; I hadn't checked for .pc
files, but didn't have problems building modem-manager with it.

-- 
Thanks,
Maxim