Subject: [bug#40994] patch#40994 Programs With Movie Titles (PWMT)

From: Marius Bakke <[email-masked]>
Date: Wed, 06 May 2020 21:29:21 +0200

Hi Raghav,

Raghav Gururajan <[email-masked]> writes:

> Please find the attachments with this email, for moving stuffs. All the moved
> packages only refer to each other. So no need of altering any other package
> definitions.

I'm not convinced that moving these packages are worth the effort,
though I'm not opposed to it either.  What is the rationale?

I do have a few nits to pick though :-)

> From a05c5d174a9ee40e433a64c50f19c7f106381903 Mon Sep 17 00:00:00 2001
> From: Raghav Gururajan <[email-masked]>
> Date: Sat, 2 May 2020 11:16:04 -0400
> Subject: [PATCH 1/7] gnu: Move girara from gtk.scm to pwmt.scm.
>
> * gnu/packages/gtk.scm (girara): Move to [...]
> * gnu/packages/pwmt.scm (girara): [...] here.
> ---
>  gnu/packages/gtk.scm  | 49 -----------------------
>  gnu/packages/pwmt.scm | 91 +++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 91 insertions(+), 49 deletions(-)
>  create mode 100644 gnu/packages/pwmt.scm
>
> diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
> index bea4850d15..4d093a0e0a 100644
> --- a/gnu/packages/gtk.scm
> +++ b/gnu/packages/gtk.scm
> @@ -1445,55 +1445,6 @@ In addition to the low level layout rendering routines, Pango includes
>  and routines to assist in editing internationalized text.")
>      (license license:lgpl2.1+)))
>  
> -(define-public girara
> -  (package
> -    (name "girara")
> -    (version "0.3.4")
> -    (source
> -     (origin
> -       (method git-fetch)
> -       (uri (git-reference
> -             (url "https://git.pwmt.org/pwmt/girara")
> -             (commit version)))
> -       (file-name (git-file-name name version))
> -       (sha256
> -        (base32 "08rpw9hkaprm4r853xy1d35i2af1pji8c3mzzl01mmwmyr9p0x8k"))))
> -    (native-inputs `(("pkg-config" ,pkg-config)
> -                     ("check" ,check)
> -                     ("gettext" ,gettext-minimal)
> -                     ("glib:bin" ,glib "bin")
> -                     ("xorg-server" ,xorg-server-for-tests)))
> -    ;; Listed in 'Requires.private' of 'girara.pc'.
> -    (propagated-inputs `(("gtk+" ,gtk+)))
> -    (arguments
> -     `(#:phases (modify-phases %standard-phases
> -                  (add-before 'check 'start-xserver
> -                    ;; Tests require a running X server.
> -                    (lambda* (#:key inputs #:allow-other-keys)
> -                      (let ((xorg-server (assoc-ref inputs "xorg-server"))
> -                            (display ":1"))
> -                        (setenv "DISPLAY" display)
> -
> -                        ;; On busy machines, tests may take longer than
> -                        ;; the default of four seconds.
> -                        (setenv "CK_DEFAULT_TIMEOUT" "20")
> -
> -                        ;; Don't fail due to missing '/etc/machine-id'.
> -                        (setenv "DBUS_FATAL_WARNINGS" "0")
> -                        (zero? (system (string-append xorg-server "/bin/Xvfb "
> -                                                      display " &")))))))))
> -    (build-system meson-build-system)
> -    (home-page "https://pwmt.org/projects/girara/")
> -    (synopsis "Library for minimalistic gtk+3 user interfaces")
> -    (description "Girara is a library that implements a user interface that
> -focuses on simplicity and minimalism.  Currently based on GTK+, a
> -cross-platform widget toolkit, it provides an interface that focuses on three
> -main components: a so-called view widget that represents the actual
> -application, an input bar that is used to execute commands of the
> -application and the status bar which provides the user with current
> -information.")
> -    (license license:zlib)))
> -
>  (define-public gtk-doc
>    (package
>      (name "gtk-doc")
> diff --git a/gnu/packages/pwmt.scm b/gnu/packages/pwmt.scm
> new file mode 100644
> index 0000000000..8185cc40d9
> --- /dev/null
> +++ b/gnu/packages/pwmt.scm
> @@ -0,0 +1,91 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;;
> +;;; Copyright © 2015 Paul van der Walt <[email-masked]>
> +;;; Copyright © 2016 ng0 <[email-masked]>
> +;;; Copyright © 2017 2018 Marius Bakke <[email-masked]>
> +;;; Copyright © 2017 Kei Kebreau <[email-masked]>
> +;;; Copyright © 2018 2019 2020 Tobias Geerinckx-Rice <[email-masked]>
> +;;; Copyright © 2020 Raghav Gururajan <[email-masked]>

For each patch, please include the copyright information for that
package only.  I don't think all of these people worked on girara.

That makes it easier to track when someone decides to move these
packages to gtk.scm and pdf.scm in the future.  ;-)

> +(define-module (gnu packages pwmt)
> +  #:use-module (gnu packages)
> +  #:use-module (gnu packages check)
> +  #:use-module (gnu packages documentation)
> +  #:use-module (gnu packages gettext)
> +  #:use-module (gnu packages glib)
> +  #:use-module (gnu packages gnome)
> +  #:use-module (gnu packages gtk)
> +  #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages web)
> +  #:use-module (gnu packages xorg)
> +  #:use-module (gnu packages xdisorg)

Likewise for modules: gnome, web, xorg and xdisorg seems unused for
girara. 

> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix packages)
> +  #:use-module (guix download)

And (guix download).

> +  #:use-module (guix git-download)
> +  #:use-module (guix build-system gnu)

And gnu-build-system.

> +  #:use-module (guix build-system meson))
> +
> +(define-public girara
> +  (package
> +    (name "girara")
> +    (version "0.3.4")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://git.pwmt.org/pwmt/girara")
> +             (commit version)))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "08rpw9hkaprm4r853xy1d35i2af1pji8c3mzzl01mmwmyr9p0x8k"))))
> +    (native-inputs `(("pkg-config" ,pkg-config)
> +                     ("check" ,check)
> +                     ("gettext" ,gettext-minimal)
> +                     ("glib:bin" ,glib "bin")
> +                     ("xorg-server" ,xorg-server-for-tests)))
> +    ;; Listed in 'Requires.private' of 'girara.pc'.
> +    (propagated-inputs `(("gtk+" ,gtk+)))
> +    (arguments
> +     `(#:phases (modify-phases %standard-phases
> +                  (add-before 'check 'start-xserver
> +                    ;; Tests require a running X server.
> +                    (lambda* (#:key inputs #:allow-other-keys)
> +                      (let ((xorg-server (assoc-ref inputs "xorg-server"))
> +                            (display ":1"))
> +                        (setenv "DISPLAY" display)
> +
> +                        ;; On busy machines, tests may take longer than
> +                        ;; the default of four seconds.
> +                        (setenv "CK_DEFAULT_TIMEOUT" "20")
> +
> +                        ;; Don't fail due to missing '/etc/machine-id'.
> +                        (setenv "DBUS_FATAL_WARNINGS" "0")
> +                        (zero? (system (string-append xorg-server "/bin/Xvfb "
> +                                                      display " &")))))))))
> +    (build-system meson-build-system)
> +    (home-page "https://pwmt.org/projects/girara/")
> +    (synopsis "Library for minimalistic gtk+3 user interfaces")
> +    (description "Girara is a library that implements a user interface that
> +focuses on simplicity and minimalism.  Currently based on GTK+, a
> +cross-platform widget toolkit, it provides an interface that focuses on three
> +main components: a so-called view widget that represents the actual
> +application, an input bar that is used to execute commands of the
> +application and the status bar which provides the user with current
> +information.")
> +    (license license:zlib)))
> \ No newline at end of file

Also make sure that the files end with a newline, like all other files
in Guix.

For the remainder in this series, please also check whether module
imports can be removed from pdf.scm (that makes it worth it IMO).