all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Controling requirements when packaging haskell modules
@ 2018-05-11 18:22 Ton
  2018-05-12 13:54 ` Ricardo Wurmus
  0 siblings, 1 reply; 7+ messages in thread
From: Ton @ 2018-05-11 18:22 UTC (permalink / raw)
  To: help-guix@gnu.org

[-- Attachment #1: Type: text/plain, Size: 1542 bytes --]

Hi,

I'm trying to package ghc-sdl2, but have hit a problem with requirements I
don't understand how to get past.

The work so far can be seen and downloaded from
https://notabug.org/thomassgn/guixsd-configuration/src/master/modules/ton-haskell.scm

As you can see I have made some hackery with versions, e.g. the
'ghc-test-framework-quickcheck2-w-qc-2.9' package. And this is where I am
stuck now.

The thing is that somewhere down the line I get (this is from 'guix build
ghc-linear'):
-----
src/Linear/V1.hs:132:10: error:
    • No instance for
(semigroupoids-5.1:Data.Semigroup.Foldable.Class.Foldable1 V1)
        arising from the superclasses of an instance declaration
-----

So I packaged semigroupoids-5.2.2 which has this thing the error above is
pointing at. But semigroupoids-5.1 is still pulled in and used by something
else in my buildgraph.

So first I need to figure out what. And then I need some way of making that
thing use semigroupoids-5.2.2 instead.

Or maybe there is something else entirely I can or should do to solve this.

I don't know much haskell. Started packaging this for someone asking on IRC
some weeks ago. Very interesting and rewarding until I ht this wall, but hope
I can get past it now :)
-- 
I use gpg to sign my emails. All the symbols you may see at the bottom
of this mail is my cryptographic signature. It can be ignored, or used
to check that it really is me sending this email. Learn more by asking
me or see: https://u.fsf.org/zb or https://ssd.eff.org/

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Controling requirements when packaging haskell modules
  2018-05-11 18:22 Controling requirements when packaging haskell modules Ton
@ 2018-05-12 13:54 ` Ricardo Wurmus
  2018-05-14  9:26   ` Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: Ricardo Wurmus @ 2018-05-12 13:54 UTC (permalink / raw)
  To: Ton; +Cc: help-guix@gnu.org


Ton <tonton@riseup.net> writes:

> I'm trying to package ghc-sdl2, but have hit a problem with requirements I
> don't understand how to get past.
>
> The work so far can be seen and downloaded from
> https://notabug.org/thomassgn/guixsd-configuration/src/master/modules/ton-haskell.scm

You should not package ghc-array, ghc-containers, or ghc-binary — these
are all provided by GHC itself.  It is possible that there are some more
packages for which this applies (possibly including semigroupoids).

The next thing you should check is that you’re packaging only those
versions of Haskell packages that are part of LTSHaskell or Stackage.
Do not package the latest versions.

-- 
Ricardo

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Controling requirements when packaging haskell modules
  2018-05-12 13:54 ` Ricardo Wurmus
@ 2018-05-14  9:26   ` Ludovic Courtès
  2018-05-14 11:20     ` Ricardo Wurmus
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2018-05-14  9:26 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix@gnu.org

Hello,

Ricardo Wurmus <rekado@elephly.net> skribis:

> Ton <tonton@riseup.net> writes:
>
>> I'm trying to package ghc-sdl2, but have hit a problem with requirements I
>> don't understand how to get past.
>>
>> The work so far can be seen and downloaded from
>> https://notabug.org/thomassgn/guixsd-configuration/src/master/modules/ton-haskell.scm
>
> You should not package ghc-array, ghc-containers, or ghc-binary — these
> are all provided by GHC itself.  It is possible that there are some more
> packages for which this applies (possibly including semigroupoids).

Oops, I pushed ghc-array and ghc-containers just yesterday.  Should I
revert?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Controling requirements when packaging haskell modules
  2018-05-14  9:26   ` Ludovic Courtès
@ 2018-05-14 11:20     ` Ricardo Wurmus
  2018-05-14 12:11       ` Tonton
  2018-05-17 14:18       ` Ludovic Courtès
  0 siblings, 2 replies; 7+ messages in thread
From: Ricardo Wurmus @ 2018-05-14 11:20 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: help-guix@gnu.org


Ludovic Courtès <ludo@gnu.org> writes:

>> You should not package ghc-array, ghc-containers, or ghc-binary — these
>> are all provided by GHC itself.  It is possible that there are some more
>> packages for which this applies (possibly including semigroupoids).
>
> Oops, I pushed ghc-array and ghc-containers just yesterday.  Should I
> revert?

Yes, these packages better should not exist.  You can revert the commits
adding them and modify the package definitions of whatever new packages
refer to them.

We removed them some time ago when we cleaned up and updated most of the
Haskell packages.

--
Ricardo

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Controling requirements when packaging haskell modules
  2018-05-14 11:20     ` Ricardo Wurmus
@ 2018-05-14 12:11       ` Tonton
  2018-05-17 14:18       ` Ludovic Courtès
  1 sibling, 0 replies; 7+ messages in thread
From: Tonton @ 2018-05-14 12:11 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix@gnu.org

[-- Attachment #1: Type: text/plain, Size: 1131 bytes --]

On Mon, 14 May 2018 13:20:48 +0200
Ricardo Wurmus <rekado@elephly.net> wrote:

> Ludovic Courtès <ludo@gnu.org> writes:
> 
> >> You should not package ghc-array, ghc-containers, or ghc-binary — these
> >> are all provided by GHC itself.  It is possible that there are some more
> >> packages for which this applies (possibly including semigroupoids).  
> >
> > Oops, I pushed ghc-array and ghc-containers just yesterday.  Should I
> > revert?  
> 
> Yes, these packages better should not exist.  You can revert the commits
> adding them and modify the package definitions of whatever new packages
> refer to them.
> 
> We removed them some time ago when we cleaned up and updated most of the
> Haskell packages.
> 
> --
> Ricardo
> 
> 

Hi, I saw this message yesterday and thought I'd change and fix my patches,
but had other things at that time. I should have sent a short message to the
bug containing the patches.

I'm going to clean up and send new patches without the ghc-array and so on.
(I tested several of the requirements/dependencies and I think I isolated
what needs to be declared).

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Controling requirements when packaging haskell modules
  2018-05-14 11:20     ` Ricardo Wurmus
  2018-05-14 12:11       ` Tonton
@ 2018-05-17 14:18       ` Ludovic Courtès
  2018-05-17 18:08         ` Tonton
  1 sibling, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2018-05-17 14:18 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix@gnu.org

Hello,

Ricardo Wurmus <rekado@elephly.net> skribis:

> Ludovic Courtès <ludo@gnu.org> writes:
>
>>> You should not package ghc-array, ghc-containers, or ghc-binary — these
>>> are all provided by GHC itself.  It is possible that there are some more
>>> packages for which this applies (possibly including semigroupoids).
>>
>> Oops, I pushed ghc-array and ghc-containers just yesterday.  Should I
>> revert?
>
> Yes, these packages better should not exist.  You can revert the commits
> adding them and modify the package definitions of whatever new packages
> refer to them.
>
> We removed them some time ago when we cleaned up and updated most of the
> Haskell packages.

Right.  I’ve removed them again now, sorry for the mess.

Ton, could you update your patch series at:

  https://bugs.gnu.org/31422
  https://bugs.gnu.org/31423

?

TIA!

Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Controling requirements when packaging haskell modules
  2018-05-17 14:18       ` Ludovic Courtès
@ 2018-05-17 18:08         ` Tonton
  0 siblings, 0 replies; 7+ messages in thread
From: Tonton @ 2018-05-17 18:08 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: help-guix@gnu.org

[-- Attachment #1: Type: text/plain, Size: 1337 bytes --]

On Thu, 17 May 2018 16:18:49 +0200
ludo@gnu.org (Ludovic Courtès) wrote:

...

> Ton, could you update your patch series at:
> 
>   https://bugs.gnu.org/31422
>   https://bugs.gnu.org/31423
> 
> ?
> 
> TIA!
> 
> Ludo’.

Will do, trying to finish and send them now.

On a related note: I started packaging these to get haskells sdl2 bindings.
But I can't figure out how to get through the problem of requirements,
building ghc-linear currently gives me:

Configuring linear-1.20.7...
Warning: This package indirectly depends on multiple versions of the same
package. This is highly likely to cause a compile failure.
package lens-4.15.4 requires semigroupoids-5.1
package kan-extensions-5.0.1 requires semigroupoids-5.1
package free-4.12.4 requires semigroupoids-5.1
package adjunctions-4.3 requires semigroupoids-5.1
package linear-1.20.7 requires semigroupoids-5.2.2
phase `configure' succeeded after 1.6 seconds

And then the build fails a little later because of what
looks like a missing feature of semigroupoids-5.1...

My code for both ghc-linear and ghc-sdl2 is available[1], but can't build
because of this. Not sure I'll work more on solving it either, as I'm not
going to use them myself.

[1]:https://notabug.org/thomassgn/guixsd-configuration/src/master/modules/ton-haskell.scm#L59

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-05-17 18:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-11 18:22 Controling requirements when packaging haskell modules Ton
2018-05-12 13:54 ` Ricardo Wurmus
2018-05-14  9:26   ` Ludovic Courtès
2018-05-14 11:20     ` Ricardo Wurmus
2018-05-14 12:11       ` Tonton
2018-05-17 14:18       ` Ludovic Courtès
2018-05-17 18:08         ` Tonton

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.