[Bio-packaging] testing out guix

Ben Woodcroft b.woodcroft at uq.edu.au
Tue Jun 9 13:45:21 UTC 2015


Hey,

I think I might have run out of time for getting this patch ready in the 
correct format. This one works from my own one, I'm guessing it works 
when patched in, you are welcome to it.

I'm thinking that the mailing list method is foreign to most 
bioinformaticians so a github for collating them would be useful, yeh.

One thing that I'm trying to understand. Is there any way you can 
configure guix to be able to serve different versions of the same 
software a la module systems on clusters? I'm told there's a video at 
http://www.gnu.org/software/guix/ where at the end someone asks this 
question and the presenter effectively says no to this.

(define-public orfm
   (package
     (name "orfm")
     (version "0.3.2")
     (source (origin
              (method url-fetch)
              (uri (string-append
                "https://github.com/wwood/OrfM/releases/download/v" version
                "/orfm-" version ".tar.gz"))
              (sha256
               (base32 
"00jqvlspj9662ni9r4n1snxfnwkzc02i46g5nk1kwjshi6v3vgg3"))
              (file-name (string-append name "-" version ".tar.gz"))
             ))
     (build-system gnu-build-system)
     (inputs `(("zlib" ,zlib)))
     (synopsis "Simple and not slow open reading frame (ORF) caller")
     (description "An ORF caller finds stretches of DNA that when 
translated are
not interrupted by stop codons.  OrfM finds and prints these ORFs.")
     (home-page "https://github.com/wwood/OrfM")
     (license license:lgpl3+)))

On 08/06/15 20:11, Pjotr Prins wrote:
> Awesome :) That was quick.
>
> For non-core developers submit a patch to the Guix-dev ML.
>
>    * Making a patch
>
>    A patch can be sent to the mailing list. Use git rebase --interactive
>    to merge and squash patches into one. Next use the GNU ChangeLog
>    format which is a header with a filewise change description:
>
>      gnu: Add Ruby.
>      * gnu/packages/ruby.scm (Ruby): New file.
>      * guix/licenses.scm: Add Ruby license information.
>
>    Use git format-patch to send a patch to the mailing list. See also
>    the HACKING document in the Guix git repo.
>
> It is a bit elaborate - but usually you get good feedback from the ML.
> So that is a win.
>
> Good stuff Ben!
>
> Pj.
>
> On Mon, Jun 08, 2015 at 08:01:22PM +1000, Ben Woodcroft wrote:
>> Thanks, figured it out.
>>
>> Forgot
>>    #:use-module (gnu packages compression)
>>
>> At the top. The funky error message was because zlib is a license as
>> well as a package.
>>
>> win. What's the procedure for contributing this?
>>
>> On 08/06/15 19:50, Pjotr Prins wrote:
>>> I grepped the package tree.
>>>
>>> If you check /gnu/packages/scheme.scm you can see
>>>
>>>     #:use-module (gnu packages zip))
>>>
>>> that probably does the trick. I found the python.scm particularly
>>> enlightning.
>>>
>>> Pj.
>>>
>>> On Mon, Jun 08, 2015 at 07:37:06PM +1000, Ben Woodcroft wrote:
>>>> Thanks guys,
>>>>
>>>> I managed to get further now, I think. But not quite there yet.
>>>>
>>>> ben at u:~/git/OrfM$ GUIX_PACKAGE_PATH=/home/ben/guix/ guix package -i
>>>> orfm --no-substitutes
>>>> warning: failed to install locale: Invalid argument
>>>> guix package: error: ben/packages/my.scm:8:2: package `orfm-0.3.0'
>>>> has an invalid input: ("zlib" #<<license> name: "Zlib" uri:
>>>> "http://www.gzip.org/zlib/zlib_license.html" comment:
>>>> "https://www.gnu.org/licenses/license-list#ZLib">)
>>>>
>>>> Package file (~/guix/ben/packages/my.scm):
>>>> (define-module (ben packages my)
>>>>    #:use-module (guix packages)
>>>>    #:use-module (guix download)
>>>>    #:use-module (guix build-system gnu)
>>>>    #:use-module (guix licenses))
>>>>
>>>> (define-public orfm
>>>>    (package
>>>>      (name "orfm")
>>>>      (version "0.3.0")
>>>>      (source (origin
>>>>               (method url-fetch)
>>>>               (uri (string-append
>>>> "file:///home/ben/git/OrfM/orfm-0.3.0.tar.gz"))
>>>>               (sha256
>>>>                (base32
>>>> "18h0mywf87s2dphh0p9mc79li7j44004cz0jg5bmz3pgxi1zshbi"))
>>>>               (file-name (string-append name "-" version ".tar.gz"))
>>>>              ))
>>>>      (build-system gnu-build-system)
>>>>      (arguments `(#:configure-flags '("--enable-silent-rules")))
>>>>      (inputs `(("zlib" ,zlib)))
>>>>      (synopsis "Simple and not slow open reading frame (ORF) caller")
>>>>      (description "An ORF caller finds stretches of DNA that when
>>>> translated are not interrupted by stop codons.  OrfM finds and
>>>> prints these ORFs.")
>>>>      (home-page "https://github.com/wwood/OrfM")
>>>>      (license lgpl3+)))
>>>>
>>>>
>>>> I installed zlib separately without issue, so doesn't seem to be any
>>>> problem there.
>>>>
>>>> Thanks again,
>>>> ben
>>>>
>>>> On 08/06/15 18:31, Pjotr Prins wrote:
>>>>> Adding OSX support will be quite a bit of work, I expect. Better to
>>>>> focus on bioinformatics packages for now. We'll get it at some point.
>>>>>
>>>>> Pj.
>>>>>
>>>>> On Mon, Jun 08, 2015 at 09:31:57AM +0200, Ricardo Wurmus wrote:
>>>>>> Pjotr Prins <pjotr.public66 at thebird.nl> writes:
>>>>>>
>>>>>>>> * OSX support seems like it would be very pertinent for
>>>>>>>> bioinformaticians, does/will guix support?
>>>>>>> Nix has OSX support, and there is also little in Guix that can not be
>>>>>>> ported to OSX (GNU Guix has multiple targets and even supports the
>>>>>>> Hurd!). I expect someone will do it. The project is only gaining
>>>>>>> momentum, so once someone competent has the itch to scratch...
>>>>>> Actually, I just found out that I *do* have a spare OSX machine lying
>>>>>> around here (it was just returned).  I'll need to check with Ludo about
>>>>>> how to approach porting and see if I can make time for it.
>>>>>>
>>>>>> I have *never* used a Mac before, so it'll all be very new to me, but
>>>>>> with some help and sufficient hints I might be able to get the bootstrap
>>>>>> stuff compiled.
>>>>>>
>>>>>>>> * Installing from gnu hydra is way slow on the underside of the
>>>>>>>> planet, I'm getting DL speeds of 70KB/s. There's no mirrors?
>>>>>>> We need to create mirrors. I don't think it is hard to do. Ricardo,
>>>>>>> what do you think?
>>>>>> I know that it's possible to add machines to the Guix build farm.
>>>>>> Alternatively, one could run Hydra on a couple of dedicated machines and
>>>>>> offer an additional build farm (maybe limited to x86_64) which could
>>>>>> then be authorized.  I don't think "dumb" rsync mirrors are possible at
>>>>>> this point, but I'm not the right person to ask, I'm afraid.
>>>>>>
>>>>>> ~~ Ricardo
>>>>>>



More information about the bio-packaging mailing list