GNU bug report logs - #34137
[PATCH 1/2] gnu: Add ghc-mtl.

Previous Next

Package: guix-patches;

Reported by: Gabriel Hondet <gabrielhondet <at> gmail.com>

Date: Sat, 19 Jan 2019 20:40:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 34137 in the body.
You can then email your comments to 34137 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#34137; Package guix-patches. (Sat, 19 Jan 2019 20:40:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Gabriel Hondet <gabrielhondet <at> gmail.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 19 Jan 2019 20:40:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Gabriel Hondet <gabrielhondet <at> gmail.com>
To: guix-patches <at> gnu.org
Subject: [PATCH 1/2] gnu: Add ghc-mtl.
Date: Sat, 19 Jan 2019 21:34:52 +0100
[Message part 1 (text/plain, inline)]
* gnu/packages/haskell.scm (ghc-mtl): New variable.
---
 gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index a3ce2a3e4..97616d451 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -11405,4 +11405,29 @@ from a shell.  The @code{tldr} pages are a community effort to simplify the
 man pages with practical examples.")
     (license license:bsd-3)))
 
+(define-public ghc-mtl
+  (package
+    (name "ghc-mtl")
+    (version "1.2.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://hackage.haskell.org/package/ghc-mtl/ghc-mtl-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "0h6r6gip9nsjlsq88wj105hhqliy7ac2dmmndsfzbjz07b03cklk"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-exceptions" ,ghc-exceptions)
+       ("ghc-extensible-exceptions" ,ghc-extensible-exceptions)))
+    (home-page "https://hub.darcs.net/jcpetruzza/ghc-mtl")
+    (synopsis
+     "Mtl compatible version of the Ghc-Api monads and monad-transformers")
+    (description "Provides an @code{mtl} compatible version of the @code{GhcT}
+monad-transformer defined in the @code{GHC-API} since version 6.10.1.")
+    (license license:bsd-3)))
+
 ;;; haskell.scm ends here
-- 
2.20.1
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#34137; Package guix-patches. (Sat, 19 Jan 2019 20:53:02 GMT) Full text and rfc822 format available.

Message #8 received at 34137 <at> debbugs.gnu.org (full text, mbox):

From: Gabriel Hondet <gabrielhondet <at> gmail.com>
To: 34137 <at> debbugs.gnu.org
Subject: [PATCH 2/2] gnu: Add ghc-libmpd.
Date: Sat, 19 Jan 2019 21:36:18 +0100
[Message part 1 (text/plain, inline)]
* gnu/packages/mpd.scm (ghc-libmpd): New variable.
---
 gnu/packages/mpd.scm | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index 3fe5d06f4..34fc9f6b7 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2015 Paul van der Walt <paul <at> denknerd.org>
 ;;; Copyright © 2016, 2018 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr>
+;;; Copyright © 2019 Gabriel Hondet <gabrielhondet <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -31,6 +32,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system haskell)
   #:use-module (gnu packages avahi)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages gcc)
@@ -47,6 +49,8 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages haskell)
+  #:use-module (gnu packages haskell-check)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
@@ -360,3 +364,39 @@ Daemon (MPD).  It supports playlists, multiple profiles (connecting to different
 MPD servers, search and multimedia key support.")
     (home-page "https://www.nongnu.org/sonata/")
     (license license:gpl3+)))
+
+(define-public ghc-libmpd
+  (package
+    (name "ghc-libmpd")
+    (version "0.9.0.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://hackage.haskell.org/package/libmpd/libmpd-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "1931m23iqb4wddpdidm4ph746zpaw41kkjzmb074j7yyfpk7x1jv"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-attoparsec" ,ghc-attoparsec)
+       ("ghc-mtl" ,ghc-mtl)
+       ("ghc-old-locale" ,ghc-old-locale)
+       ("ghc-text" ,ghc-text)
+       ("ghc-data-default-class" ,ghc-data-default-class)
+       ("ghc-network" ,ghc-network)
+       ("ghc-utf8-string" ,ghc-utf8-string)))
+    (native-inputs
+     `(("ghc-quickcheck" ,ghc-quickcheck)
+       ("ghc-hspec" ,ghc-hspec)
+       ("hspec-discover" ,hspec-discover)))
+    (arguments
+     '(#:tests? #f)) ;song parsing test fail
+    (home-page
+     "http://github.com/vimus/libmpd-haskell#readme")
+    (synopsis "MPD client library")
+    (description
+     "A client library for MPD, the Music Player Daemon.")
+    (license license:expat)))
-- 
2.20.1
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#34137; Package guix-patches. (Sun, 20 Jan 2019 16:28:02 GMT) Full text and rfc822 format available.

Message #11 received at 34137 <at> debbugs.gnu.org (full text, mbox):

From: Timothy Sample <samplet <at> ngyro.com>
To: Gabriel Hondet <gabrielhondet <at> gmail.com>
Cc: 34137 <at> debbugs.gnu.org
Subject: Re: [bug#34137] [PATCH 1/2] gnu: Add ghc-mtl.
Date: Sun, 20 Jan 2019 11:26:47 -0500
Hi Gabriel,

Gabriel Hondet <gabrielhondet <at> gmail.com> writes:

> * gnu/packages/haskell.scm (ghc-mtl): New variable.

Thank you very much for the patch!

GHC 8.4.3 has ghc-mtl built-in.  This means that we don’t need to have a
separate package for it.  We used to have a package for it, but it was
removed in commit f54f04756f6d90c9fb3b5e45f3947329287f9b05 as a part of
upgrading GHC.  We try to avoid having separate packages for Haskell
libraries that are built-in to GHC because they cause problems
(incompatibilities in the dependency graph).

You should be able to remove the “ghc-mtl” input from the MPD package
without any issue.

(Sadly, the importer is not clever enough to filter out built-in
libraries, so it has to be done manually.)

> [...]


-- Tim




Information forwarded to guix-patches <at> gnu.org:
bug#34137; Package guix-patches. (Mon, 21 Jan 2019 07:48:02 GMT) Full text and rfc822 format available.

Message #14 received at 34137 <at> debbugs.gnu.org (full text, mbox):

From: Gabriel Hondet <gabrielhondet <at> gmail.com>
To: Timothy Sample <samplet <at> ngyro.com>
Cc: 34137 <at> debbugs.gnu.org
Subject: Re: [bug#34137] [PATCH] gnu: Add ghc-libmp.
Date: Mon, 21 Jan 2019 08:46:50 +0100
[Message part 1 (text/plain, inline)]
Hi Timothy,

On Sun 20 Jan 2019 at 17:26 Timothy Sample wrote:

> You should be able to remove the “ghc-mtl” input from the MPD package
> without any issue.

Indeed and it works even better, so here is the new patch:

* gnu/packages/mpd.scm (ghc-libmpd): New variable.
---
 gnu/packages/mpd.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index 3fe5d06f4..df4f64470 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2015 Paul van der Walt <paul <at> denknerd.org>
 ;;; Copyright © 2016, 2018 Leo Famulari <leo <at> famulari.name>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr>
+;;; Copyright © 2019 Gabriel Hondet <gabrielhondet <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -31,6 +32,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system haskell)
   #:use-module (gnu packages avahi)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages gcc)
@@ -51,6 +53,8 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages haskell)
+  #:use-module (gnu packages haskell-check)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages video)
@@ -360,3 +364,34 @@ Daemon (MPD).  It supports playlists, multiple profiles (connecting to different
 MPD servers, search and multimedia key support.")
     (home-page "https://www.nongnu.org/sonata/")
     (license license:gpl3+)))
+
+(define-public ghc-libmpd
+  (package
+    (name "ghc-libmpd")
+    (version "0.9.0.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://hackage.haskell.org/package/libmpd/libmpd-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "1931m23iqb4wddpdidm4ph746zpaw41kkjzmb074j7yyfpk7x1jv"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-attoparsec" ,ghc-attoparsec)
+       ("ghc-old-locale" ,ghc-old-locale)
+       ("ghc-text" ,ghc-text)
+       ("ghc-data-default-class" ,ghc-data-default-class)
+       ("ghc-network" ,ghc-network)
+       ("ghc-utf8-string" ,ghc-utf8-string)))
+    (native-inputs
+     `(("ghc-quickcheck" ,ghc-quickcheck)
+       ("ghc-hspec" ,ghc-hspec)
+       ("hspec-discover" ,hspec-discover)))
+    (home-page "http://github.com/vimus/libmpd-haskell#readme")
+    (synopsis "MPD client library")
+    (description "A client library for MPD, the Music Player Daemon.")
+    (license license:expat)))
-- 
2.20.1

Thanks for your help!
Gabriel

[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#34137; Package guix-patches. (Wed, 23 Jan 2019 22:13:02 GMT) Full text and rfc822 format available.

Message #17 received at 34137 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Gabriel Hondet <gabrielhondet <at> gmail.com>
Cc: Timothy Sample <samplet <at> ngyro.com>, 34137 <at> debbugs.gnu.org
Subject: Re: [bug#34137] [PATCH] gnu: Add ghc-libmp.
Date: Wed, 23 Jan 2019 23:12:34 +0100
Hi Gabriel,

Gabriel Hondet <gabrielhondet <at> gmail.com> skribis:

> diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
> index 3fe5d06f4..df4f64470 100644
> --- a/gnu/packages/mpd.scm
> +++ b/gnu/packages/mpd.scm
> @@ -6,6 +6,7 @@
>  ;;; Copyright © 2015 Paul van der Walt <paul <at> denknerd.org>
>  ;;; Copyright © 2016, 2018 Leo Famulari <leo <at> famulari.name>
>  ;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr>
> +;;; Copyright © 2019 Gabriel Hondet <gabrielhondet <at> gmail.com>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -31,6 +32,7 @@
>    #:use-module (guix build-system gnu)
>    #:use-module (guix build-system meson)
>    #:use-module (guix build-system python)
> +  #:use-module (guix build-system haskell)
>    #:use-module (gnu packages avahi)
>    #:use-module (gnu packages boost)
>    #:use-module (gnu packages gcc)
> @@ -51,6 +53,8 @@
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages python-xyz)
> +  #:use-module (gnu packages haskell)
> +  #:use-module (gnu packages haskell-check)

In an effort to avoid pulling in all the Haskell package collection from
mpd.scm, could you move ghc-libmpd to haskell.scm or a new
haskell-audio.scm file?

Thanks!

Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#34137; Package guix-patches. (Thu, 24 Jan 2019 02:28:02 GMT) Full text and rfc822 format available.

Message #20 received at 34137 <at> debbugs.gnu.org (full text, mbox):

From: Timothy Sample <samplet <at> ngyro.com>
To: Gabriel Hondet <gabrielhondet <at> gmail.com>
Cc: 34137 <at> debbugs.gnu.org
Subject: Re: [bug#34137] [PATCH] gnu: Add ghc-libmp.
Date: Wed, 23 Jan 2019 21:27:42 -0500
Hi Gabriel,

Gabriel Hondet <gabrielhondet <at> gmail.com> writes:

> Hi Timothy,
>
> On Sun 20 Jan 2019 at 17:26 Timothy Sample wrote:
>
>> You should be able to remove the “ghc-mtl” input from the MPD package
>> without any issue.
>
> Indeed and it works even better, so here is the new patch:

Glad to hear it.  I checked the ghc-libmpd package, and have a few notes
(in addition to what Ludo said about moving it).

> * gnu/packages/mpd.scm (ghc-libmpd): New variable.
> ---
>  gnu/packages/mpd.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
> index 3fe5d06f4..df4f64470 100644
> --- a/gnu/packages/mpd.scm
> +++ b/gnu/packages/mpd.scm
> @@ -6,6 +6,7 @@
>  ;;; Copyright © 2015 Paul van der Walt <paul <at> denknerd.org>
>  ;;; Copyright © 2016, 2018 Leo Famulari <leo <at> famulari.name>
>  ;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr>
> +;;; Copyright © 2019 Gabriel Hondet <gabrielhondet <at> gmail.com>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -31,6 +32,7 @@
>    #:use-module (guix build-system gnu)
>    #:use-module (guix build-system meson)
>    #:use-module (guix build-system python)
> +  #:use-module (guix build-system haskell)
>    #:use-module (gnu packages avahi)
>    #:use-module (gnu packages boost)
>    #:use-module (gnu packages gcc)
> @@ -51,6 +53,8 @@
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages python-xyz)
> +  #:use-module (gnu packages haskell)
> +  #:use-module (gnu packages haskell-check)
>    #:use-module (gnu packages pulseaudio)
>    #:use-module (gnu packages sqlite)
>    #:use-module (gnu packages video)
> @@ -360,3 +364,34 @@ Daemon (MPD).  It supports playlists, multiple profiles (connecting to different
>  MPD servers, search and multimedia key support.")
>      (home-page "https://www.nongnu.org/sonata/")
>      (license license:gpl3+)))
> +
> +(define-public ghc-libmpd
> +  (package
> +    (name "ghc-libmpd")
> +    (version "0.9.0.9")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append
> +             "https://hackage.haskell.org/package/libmpd/libmpd-"
> +             version
> +             ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1931m23iqb4wddpdidm4ph746zpaw41kkjzmb074j7yyfpk7x1jv"))))
> +    (build-system haskell-build-system)
> +    (inputs
> +     `(("ghc-attoparsec" ,ghc-attoparsec)
> +       ("ghc-old-locale" ,ghc-old-locale)
> +       ("ghc-text" ,ghc-text)
> +       ("ghc-data-default-class" ,ghc-data-default-class)
> +       ("ghc-network" ,ghc-network)
> +       ("ghc-utf8-string" ,ghc-utf8-string)))
> +    (native-inputs
> +     `(("ghc-quickcheck" ,ghc-quickcheck)
> +       ("ghc-hspec" ,ghc-hspec)
> +       ("hspec-discover" ,hspec-discover)))
> +    (home-page "http://github.com/vimus/libmpd-haskell#readme")

Maybe drop the anchor here (the “#readme” part).  The linter complains
about it, and I don’t think it adds much.

> +    (synopsis "MPD client library")

This might be better if it mentions Haskell and spells out the
initialism: “Haskell client library for the Music Player Daemon (MPD)”.

> +    (description "A client library for MPD, the Music Player Daemon.")

We try to use complete sentences in the description.  Often, you just
need to add the words “this package provides” to the beginning.  For
this, I might write:

    This package provides a pure Haskell client library for the Music
    Player Daemon (MPD).

> +    (license license:expat)))

Other than that it looks good!


-- Tim




Information forwarded to guix-patches <at> gnu.org:
bug#34137; Package guix-patches. (Thu, 24 Jan 2019 19:17:01 GMT) Full text and rfc822 format available.

Message #23 received at 34137 <at> debbugs.gnu.org (full text, mbox):

From: Gabriel Hondet <gabrielhondet <at> gmail.com>
To: Timothy Sample <samplet <at> ngyro.com>, Ludovic Courtès
 <ludo <at> gnu.org>
Cc: 34137 <at> debbugs.gnu.org
Subject: Re: [bug#34137] [PATCH] gnu: Add ghc-libmpd.
Date: Thu, 24 Jan 2019 20:16:11 +0100
[Message part 1 (text/plain, inline)]
Hi,

Here is a new patch following your remarks.  I have also used
'mirror://' for hackage.

* gnu/packages/haskell.scm (ghc-libmpd): New variable.
---
 gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index b8ea36852..255e902e6 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -11461,4 +11461,36 @@ foreign imports by hand (or using hsc2hs), this ensures that C functions are
 imported with the correct Haskell types.")
     (license license:gpl2)))
 
+(define-public ghc-libmpd
+  (package
+    (name "ghc-libmpd")
+    (version "0.9.0.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "mirror://hackage/package/libmpd/libmpd-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "1931m23iqb4wddpdidm4ph746zpaw41kkjzmb074j7yyfpk7x1jv"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-attoparsec" ,ghc-attoparsec)
+       ("ghc-old-locale" ,ghc-old-locale)
+       ("ghc-text" ,ghc-text)
+       ("ghc-data-default-class" ,ghc-data-default-class)
+       ("ghc-network" ,ghc-network)
+       ("ghc-utf8-string" ,ghc-utf8-string)))
+    (native-inputs
+     `(("ghc-quickcheck" ,ghc-quickcheck)
+       ("ghc-hspec" ,ghc-hspec)
+       ("hspec-discover" ,hspec-discover)))
+    (home-page "https://github.com/vimus/libmpd-haskell")
+    (synopsis "Haskell client library for the Music Player Daemon")
+    (description "This package provides a pure Haskell client library for the
+Music Player Daemon.")
+    (license license:expat)))
+
 ;;; haskell.scm ends here
-- 
2.20.1
[signature.asc (application/pgp-signature, inline)]

Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Fri, 25 Jan 2019 13:07:02 GMT) Full text and rfc822 format available.

Notification sent to Gabriel Hondet <gabrielhondet <at> gmail.com>:
bug acknowledged by developer. (Fri, 25 Jan 2019 13:07:02 GMT) Full text and rfc822 format available.

Message #28 received at 34137-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Gabriel Hondet <gabrielhondet <at> gmail.com>
Cc: Timothy Sample <samplet <at> ngyro.com>, 34137-done <at> debbugs.gnu.org
Subject: Re: [bug#34137] [PATCH] gnu: Add ghc-libmpd.
Date: Fri, 25 Jan 2019 14:06:08 +0100
Hello,

Gabriel Hondet <gabrielhondet <at> gmail.com> skribis:

> Here is a new patch following your remarks.  I have also used
> 'mirror://' for hackage.
>
> * gnu/packages/haskell.scm (ghc-libmpd): New variable.

Applied, thanks!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 23 Feb 2019 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 62 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.