guix-devel
[Top][All Lists]
Advanced

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

Re: [outreach] Help trying to create R package


From: Björn Höfling
Subject: Re: [outreach] Help trying to create R package
Date: Thu, 18 Oct 2018 08:54:24 +0200

Hi Laura,

On Wed, 17 Oct 2018 22:36:02 -0300
Laura Lazzati <address@hidden> wrote:


> > https://www.gnu.org/software/guix/manual/en/html_node/Contributing.html#Contributing
> >   
> I have already read this chapter, but I am messed up. I have already
> cloned from git, but I have some questions:
> 1) Do I need to install everything from the git repo in my distro?

I'm not sure if I understand you right. You ask if you "need to install
everything from the git in my distro?". I don't get that. Let me tell
what I mean:

You cloned that one, right?

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

That is the source code of Guix. I.e. when you do a

guix package -i hello

then you use the binary "guix" command that you installed in the
beginning. And the repository you cloned is just the source code, there
is nothing in there that you need to install.


Maybe you ment the list of software that is written here:

https://www.gnu.org/software/guix/manual/en/guix.html#Building-from-Git

When building Guix from a checkout, the following packages are required in 
addition to those mentioned in the installation instructions (see Requirements).

    GNU Autoconf;
    GNU Automake;
    GNU Gettext;
    GNU Texinfo;
    Graphviz;
    GNU Help2man (optional). 

So, yeah. In order to compile Guix from source, you need all these.

But wait, read the next sentence. You have guix already installed. Guix
provides a VERY nice command, `guix envirionment <PACKAGE>`. With that,
Guix prepares an "environment" that can be directly used to build
<PACKAGE>.

So, if you enter:

guix environment guix

then Guix will know best what software in which version it needs in
order to build guix (in this case, itself, don't get trapped by that
self-circularity :-))

When you are in, you can just follow the next steps described:

./bootstrap
./configure --localstatedir=/var
make

When that went all through well, you can install the "hello"
application:

./pre-inst-env guix package -i hello

The "./pre-inst-env" tells that you want to use the guix command that
you just built, not the one that is somewhere else on your path.

Now you just go on:

> 2) How do I convert my template into a package? I can't figure out
> that part.

You don't have to CONVERT. That template IS a package:

> > (define-public r-aspi
> > (package
> >   (name "r-aspi")

What you do is you just open the file gnu/packages/r.scm and add your
"(define... " at the end.

Ehh, wait, there is no file r.scm. It is either cran.scm or
bioinformatics.scm.

Then you are done. Try to build it:

./pre-inst-env guix build r-aspi

Björn



Attachment: pgpxLmyDgRYC3.pgp
Description: OpenPGP digital signature


reply via email to

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