all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Catonano <catonano@gmail.com>
To: Ricardo Wurmus <rekado@elephly.net>
Cc: guix-devel <guix-devel@gnu.org>,
	"Ludovic Courtès" <ludovic.courtes@inria.fr>,
	"guix-hpc@gnu.org" <guix-hpc@gnu.org>
Subject: Re: [rb-general] Paper preprint: Reproducible genomics analysis pipelines with GNU Guix
Date: Fri, 11 May 2018 11:39:16 +0200	[thread overview]
Message-ID: <CAJ98PDwVYaSH6-aSpyOcBvPyBw_k4ZaGsXe-6_9neJkDO-QBFQ@mail.gmail.com> (raw)
In-Reply-To: <87603ufvth.fsf@elephly.net>

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

2018-05-11 10:19 GMT+02:00 Ricardo Wurmus <rekado@elephly.net>:

>
> Ludovic Courtès <ludovic.courtes@inria.fr> writes:
>
> > Perhaps we could add to Autoconf-Archive (if it doesn’t have such things
> > already) macros to deal with the R and Python stuff you had to deal
> > with?  And then publish a simple template that people could use as a
> > starting point.
>
> I submitted my macros for R packages (and they have been accepted), but
> I actually don’t really like them because they are not as useful as it
> may seem.  While they do check for R packages in the environment at
> configure time, nothing is done to record the environment necessary to
> access these packages.
>
> That’s a general problem for software that depends on search path
> environment variables.  I can’t just record the location of each
> individual R package that was detected and use that to set up the
> environment at runtime.  The R packages have other runtime dependencies
> that would also need to be recorded.
>
> It’s not ideal.
>
> --
> Ricardo
>
>
>

Ricardo, I don't understand the problem you're raising here (I didn't read
the article yet, though)

Would you mind to elaborate on that ?

Why would you want to record the environment ?

I have this tiny prototype that checks for the availability of the Guile
module "sqlite3" at configure time and writes this csexp (
https://gitlab.com/dustyweb/guile-csexps ) in a file

(7:sqlite32:no)
(7:sqlite33:yes)

The first line is produced in an environment in which sqlite3 is not
available
The second one is produced in an environment in which sqlite3 is, well
guess what, available

I produce such environments with the Guix "environment" command

I think csexps are cool because they are readable to humans

A user creating their pipeline can easily inspect the result of the
configuration phase

They could even paste excerpts of text on mailing lists, should they want
to ask for help

In my idea a build tool doesn't attempt at managing an environment

You could have sqlite3 because you set up a Guix environment, or because
you installed it with apt-get or dnf or manually

The build tool only worries about the availabilty, not how it's achieved

If every dependency is available (anyhow) it just builds

Because building and package management are supposed to be differrent
concerns.

If you have Guix, fine.
If you haven't Guix, then you're on your own, if you can manage, fine

This should address your concern to let people treat their pipelines as
packages

Doesn't it ?

Is this approach not enough for you ?

May I ask why ?

For now it only tests Guile modules but it could be obviously generalized
to test for more things (libs versions, data structures availability, along
the lines of what Autoconf does)

I'd love to be able to set up my (Guile) packages without having to deal
with the Autotools 😯

[-- Attachment #2: Type: text/html, Size: 4068 bytes --]

  reply	other threads:[~2018-05-11  9:39 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-11 12:18 Paper preprint: Reproducible genomics analysis pipelines with GNU Guix Ricardo Wurmus
2018-04-11 18:30 ` [rb-general] " Holger Levsen
2018-04-11 18:40   ` Ricardo Wurmus
2018-04-11 19:00     ` Holger Levsen
2018-04-11 18:31 ` Holger Levsen
2018-04-11 21:16 ` Roel Janssen
2018-04-15  7:50   ` Amirouche Boubekki
2018-04-23  8:20 ` [rb-general] " Ludovic Courtès
     [not found]   ` <87fu30fsra.fsf@elephly.net>
2018-05-11  8:10     ` Ludovic Courtès
2018-05-11  8:19       ` Ricardo Wurmus
2018-05-11  9:39         ` Catonano [this message]
2018-05-13  5:07           ` Ricardo Wurmus
2018-05-13  8:58             ` Catonano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAJ98PDwVYaSH6-aSpyOcBvPyBw_k4ZaGsXe-6_9neJkDO-QBFQ@mail.gmail.com \
    --to=catonano@gmail.com \
    --cc=guix-devel@gnu.org \
    --cc=guix-hpc@gnu.org \
    --cc=ludovic.courtes@inria.fr \
    --cc=rekado@elephly.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.