help-guix
[Top][All Lists]
Advanced

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

Re: leaky pipelines and Guix


From: Ludovic Courtès
Subject: Re: leaky pipelines and Guix
Date: Fri, 12 Feb 2016 15:04:56 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Ricardo Wurmus <address@hidden> skribis:

> So, how could I package something like that?  Is packaging the wrong
> approach here and should I really just be using “guix environment” to
> prepare a suitable environment, run the pipeline, and then exit?

Maybe packages are the wrong abstraction here?

IIUC, a pipeline is really a function that takes inputs and produces
output(s).  So it can definitely be modeled as a derivation.

Perhaps as a first step you could try and write a procedure and a CLI
around it that simply runs a given pipeline:

  $ guix biopipeline foo frog.dna human.dna
  …
  /gnu/store/…-freak.dna

The procedure itself would be along the lines of:

  (define (foo-pipeline input1 input2)
    (gexp->derivation "result"
                      #~(begin
                          (setenv "PATH" "/foo/bar")
                          (invoke-make-and-co #$input1 #$input2
                                              #$output))))

Once you’ve done this exercise for a couple of pipelines, perhaps you’ll
find a higher-level abstraction that captures properties common to all
bioinfo pipelines?

HTH,
Ludo’.



reply via email to

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