From mboxrd@z Thu Jan 1 00:00:00 1970 From: Catonano Subject: Re: not tarred source file Date: Mon, 16 May 2016 13:02:30 +0200 Message-ID: References: <878tzb11ll.fsf@gnu.org> <5738FC0C.1050506@uq.edu.au> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=047d7bdc0ce8943b7a0532f38f6a Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54985) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b2GIE-0003QK-Pn for help-guix@gnu.org; Mon, 16 May 2016 07:02:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b2GID-0008Ii-3q for help-guix@gnu.org; Mon, 16 May 2016 07:02:34 -0400 In-Reply-To: <5738FC0C.1050506@uq.edu.au> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Ben Woodcroft Cc: help-guix@gnu.org --047d7bdc0ce8943b7a0532f38f6a Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Ben and Ludovic, thank you 2016-05-16 0:45 GMT+02:00 Ben Woodcroft : > Hi there, > > On 16/05/16 06:57, Ludovic Court=C3=A8s wrote: > >> Hi! >> >> Catonano skribis: >> >> after having successfully packaged (locally) the Zenburn theme and >>> Smartparens, I am preparing the package for clojure-mode >>> >>> But for the first time it happens that the downloaded source code is no= t >>> tarred so tar fails and so does the unpack phase. >>> >>> How do I instruct the origin object not to attempt untarring my source = ? >>> >> It=E2=80=99s OK if the =E2=80=98origin=E2=80=99 denotes a file that is n= ot a tarball. >> >> However, the build procedure will have to pay attention for that. For >> instance, the default sequence of phases of =E2=80=98gnu-build-system=E2= =80=99 includes >> an =E2=80=98unpack=E2=80=99 phase, which is inappropriate here: >> >> https://www.gnu.org/software/guix/manual/html_node/Build-Systems.html >> >> There are a couple of examples, e.g., paredit in emacs.scm. Most of >> them use =E2=80=98trivial-build-system=E2=80=99, which requires explicit= ly writing the >> build/install operations. >> > Ludo, in fact, for my Zenburn theme package, I copied the build code from the paredit package. But then I noticed that other Emacs modules used the Emacs build system instead of the trivial one. > If it is a single file then I believe it is as simple as deleting the > unpack phase e.g. fasttree in bioinformatics.scm, I had thought it was > still good practice not to use the trivial build system where possible as > it omits some useful defaults. > That's what I thought too. If there's a build system made on purpose for Emacs modules, then that's the right module for me. Now, Ben, I copied from the fasttree package for my clojure mode and this is the relevant bit (build-system emacs-build-system) (inputs `(("emacs" ,emacs-no-x))) (arguments `(#:phases (modify-phases %standard-phases (delete 'unpack)))) Now the build succeeds but 2 weird thing happen: 1. in .guix-profile/share/emacs/site-lisp/guix.d/ there's a clojure mode autoloads file but there's NO clojure-mode file ! So I would say that the build wasn't so successful ! 2. During the build lots of packages were downloaded, including Emacs. But I explicitly indicated emacs-no-x in the recipe. This didn't happen with Smartparens (that also used the Emacs build system). It's as if modifying the standard phases messed up the build process Now, I could easily welcome Ludo's suggestion to use the trivial build system as I did with the Zenburn theme But I'd like to understand. If there's anyone wiling to inspect my clojure-mode recipe, I can paste it on pastebin or somewhere else. --047d7bdc0ce8943b7a0532f38f6a Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Ben and Ludovic,

thank you

2016-05-16 0:45 GMT+02:00 B= en Woodcroft <b.woodcroft@uq.edu.au>:
Hi there,

On 16/05/16 06:57, Ludovic Court=C3=A8s wrote:
Hi!

Catonano <catona= no@gmail.com> skribis:

after having successfully packaged (locally) the Zenburn theme and
Smartparens, I am preparing the package for clojure-mode

But for the first time it happens that the downloaded source code is not tarred so tar fails and so does the unpack phase.

How do I instruct the origin object not to attempt untarring my source ?
It=E2=80=99s OK if the =E2=80=98origin=E2=80=99 denotes a file that is not = a tarball.

However, the build procedure will have to pay attention for that.=C2=A0 For=
instance, the default sequence of phases of =E2=80=98gnu-build-system=E2=80= =99 includes
an =E2=80=98unpack=E2=80=99 phase, which is inappropriate here:

=C2=A0 =C2=A0https://www.gnu.or= g/software/guix/manual/html_node/Build-Systems.html

There are a couple of examples, e.g., paredit in emacs.scm.=C2=A0 Most of them use =E2=80=98trivial-build-system=E2=80=99, which requires explicitly = writing the
build/install operations.

Ludo, in fact, for my Zenburn theme package, I copied the build code= from the paredit package.

But then I noticed that other = Emacs modules used the Emacs build system instead of the trivial one.
<= /div>
=C2=A0
If it is a single file then I believe it is as simple as deleting the unpac= k phase e.g. fasttree in bioinformatics.scm, I had thought it was still goo= d practice not to use the trivial build system where possible as it omits s= ome useful defaults.

That&= #39;s what I thought too. If there's a build system made on purpose for= Emacs modules, then that's the right module for me.

Now, Ben, I copied from the fasttree package for my c= lojure mode and this is the relevant bit


=C2=A0 (build-system em= acs-build-system)
=C2=A0 (inputs `(("emacs" ,emacs-no-x)))
= =C2=A0 (arguments
=C2=A0=C2=A0 `(#:phases
=C2=A0=C2=A0=C2=A0=C2=A0 (m= odify-phases %standard-phases
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (d= elete 'unpack))))


Now the b= uild succeeds but 2 weird thing happen:

  1. in .guix-profile/sha= re/emacs/site-lisp/guix.d/ there's a clojure mode autoloads file but th= ere's NO clojure-mode file !

    So I would say that the build wasn= 't so successful !



  2. During the build lots of pac= kages were downloaded, including Emacs.

    But I explicitly indicated = emacs-no-x in the recipe.

    This didn't happen with Smartparens (= that also used the Emacs build system).

    It's as if modifying th= e standard phases messed up the build process

Now, I could easi= ly welcome Ludo's suggestion to use the trivial build system as I did w= ith the Zenburn theme

But I'd like to understand.

=

If there's anyone wiling to inspect my clojure-mode recipe, I ca= n paste it on pastebin or somewhere else.

--047d7bdc0ce8943b7a0532f38f6a--