guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: graphviz: Enable Guile library.


From: Roel Janssen
Subject: Re: [PATCH] gnu: graphviz: Enable Guile library.
Date: Tue, 17 May 2016 23:31:14 +0200
User-agent: mu4e 0.9.17; emacs 25.1.50.1

Ludovic Courtès writes:

> Roel Janssen <address@hidden> skribis:
>
>> Ludovic Courtès writes:
>>
>>> Roel Janssen <address@hidden> skribis:
>>>
>>>> Ludovic Courtès writes:
>>>>
>>>>> Roel Janssen <address@hidden> skribis:
>>>>>
>>>>>> From 704d5eba566af8d90ec7f53e7fc11d989f85c5e6 Mon Sep 17 00:00:00 2001
>>>>>> From: Roel Janssen <address@hidden>
>>>>>> Date: Tue, 10 May 2016 15:54:01 +0200
>>>>>> Subject: [PATCH 1/2] gnu: graphviz: Enable Guile library.
>>>>>>
>>>>>> * gnu/packages/graphviz.scm (graphviz): Compile with Guile support.
>>>>>
>>>>> Cool, applied with minor changes.
>>>>>
>>>>>> From a73293cb66f3978e60e1244124cd28b623d6c30c Mon Sep 17 00:00:00 2001
>>>>>> From: Roel Janssen <address@hidden>
>>>>>> Date: Tue, 10 May 2016 15:55:52 +0200
>>>>>> Subject: [PATCH 2/2] gnu: graphviz: Add graphviz-guile.
>>>>>>
>>>>>> * gnu/packages/graphviz.scm (graphviz): New variable.
>>>>>
>>>>> [...]
>>>>>
>>>>>> +    (name "graphviz-guile")
>>>>>> +    (version "1.0")
>>>>>> +    (source (origin
>>>>>> +              (method url-fetch)
>>>>>> +              (uri (string-append
>>>>>> +                    "https://github.com/roelj/graphviz-guile/archive/v";
>>>>>> +                    version ".tar.gz"))
>>>>>> +              (sha256
>>>>>> +               (base32 
>>>>>> "1ccmr4isj85j7djg9m56n54rqq1z94bjmrrs6vv4qdcp6ihv3c3r"))
>>>>>> +              (file-name (string-append name "-" version ".tar.gz"))))
>>>>>
>>>>> I think this is cheating a bit.  :-)
>>>>
>>>> Just a bit :-).
>>>>
>>>> Other than getting it upstream, I don't see how else I could've done this.
>>>>
>>>>>> Do you think they would be interested in this?  I kind of get the
>>>>>> feeling that the language bindings are something generated
>>>>>> automatically, and manually adding things is not desired (for upstream).
>>>>>
>>>>> If it’s a single file, it’s worth trying IMO.
>>>>
>>>> Alright.  At the moment, their website seems to be down (graphviz.org),
>>>> and their IRC channel very quiet.  Do you know the mailing list address
>>>> for graphviz?
>>>
>>> I don’t!  Hopefully the web site will come back soon.
>>
>> I found the mailing list address with a bit of Ducking around:
>> https://duckduckgo.com/?q=graphviz-devel+mailing+list
>>
>> Unfortunately, this list doesn't seem to exist anymore, because my
>> e-mail bounced.
>>
>> I cannot download the source code, because that is/was hosted on
>> graphviz.org as well.  The header files do not contain contact
>> information of a developer, so I guess we have to wait until it comes
>> back online.
>
> Bah.  :-/
>
>> Or do you think we can move along now and update the graphviz-guile
>> package whenever we get it in upstream?
>
> The problem is relying on something which zero other distros, including
> upstream’s source distro, provide.  I’m uncomfortable with that.

I understand.  In the meantime, the website is back online so I can attempt
to add it to upstream.

>> I am definitely interested in adding an option to directly output an
>> SVG in the graph subcommand, for which graphviz-guile is a
>> prerequisite.
>
> It’s definitely tempting, but on the downside, note that we’d have to
> support the case where the Graphviz Guile bindings are missing, provide
> additional command-line options to tweak the output, etc. when in fact,
> the only visible benefit would be that one can type:
>
>   guix graph --format=pdf foo > foo.pdf
>
> instead of:
>
>   guix graph foo | dot -Tpdf > foo.pdf
>
> (The latter is one character shorter, even!  ;-))

Well, we could go for:

  guix graph foo --file=foo.pdf

Even shorter! ;-)  The default can stay the same, so one can still tweak
using the dot program.

More importantly, by using the graphviz library we don't need the user
to install dot to convert it to a graphics format.  However, at that
point the graphviz library becomes a dependency of Guix.  Making it a
dependency of Guix opens the possibility of moving the Guile module file
into guix/graphviz.scm and make it part of Guix.

> So, thinking more about it, I think that in the case of ‘guix graph’,
> it’s a bit of trouble for little in return.
>
> WDYT?  :-)
>
> Ludo’.

I think it depends on whether it would be a problem to add the graphviz
library as a dependency to Guix.  The return is not so much the shorter
(or longer ;-)) command, but more the completeness of Guix to produce a
graphical output rather than a text file that can be used by another
program to generate graphical output.

If you think I should put my energy elsewhere on the project, I can and
will respect that ;-).

Kind regards,
Roel Janssen



reply via email to

[Prev in Thread] Current Thread [Next in Thread]