Re: Blog: Guix packaging tutorial

2018-10-22 Thread Divan Santana
Pierre Neidhardt writes: > Divan writes: >> Off topic, but how did you convert this? Guessing pandoc, but it seems >> converted better then the standard, =pandoc index.org -t gfm -o >> /tmp/index.md= would do. > > This is a very good question. Indeed, Org support in Pandoc is sub-par, so I >

Re: Blog: Guix packaging tutorial

2018-10-21 Thread Pierre Neidhardt
Divan writes: > Off topic, but how did you convert this? Guessing pandoc, but it seems > converted better then the standard, =pandoc index.org -t gfm -o > /tmp/index.md= would do. This is a very good question. Indeed, Org support in Pandoc is sub-par, so I did not use that. Instead, I've used

Re: Blog: Guix packaging tutorial

2018-10-20 Thread Divan
Pierre Neidhardt writes: > And here is the last version, in Markdown (hopefully the syntax is > right). Off topic, but how did you convert this? Guessing pandoc, but it seems converted better then the standard, =pandoc index.org -t gfm -o /tmp/index.md= would do.

Re: Blog: Guix packaging tutorial

2018-10-11 Thread Benjamin Slade
On 2018-10-11T07:39:41-0600, Ludovic Courtès wrote: > Perhaps one option would be to have a specific “Contributing > Packages” sub-section, where it’s simple to have an ordered list, and > then another subsection (“Contribution Guidelines” maybe?) with other > items such as gender-neutral

Re: Blog: Guix packaging tutorial

2018-10-11 Thread Ludovic Courtès
Hello, Benjamin Slade skribis: > So for me, the list at > > seems more like a list of `desired output conditions' and the numbering > doesn't really correspond directly to the temporal ordering of steps > (with some

Re: Blog: Guix packaging tutorial

2018-10-11 Thread Gábor Boskovits
Benjamin Slade ezt írta (időpont: 2018. okt. 11., Cs, 3:38): > > Hi Ludo', > > So for me, the list at > > seems more like a list of `desired output conditions' and the numbering > doesn't really correspond directly to

Re: Blog: Guix packaging tutorial

2018-10-10 Thread Benjamin Slade
Hi Ludo', So for me, the list at seems more like a list of `desired output conditions' and the numbering doesn't really correspond directly to the temporal ordering of steps (with some of the numbered items probably

Re: Blog: Guix packaging tutorial

2018-10-10 Thread Ricardo Wurmus
Pierre Neidhardt writes: >> This LGTM except ... the first paragraphs (quoted below) are an >> advertisement. This is out of place in a tutorial. So, IMO, they should >> simply be removed. > > It's a tutorial addressed to newcomers, so I believe it's important that we > mention (or remind?)

Re: Blog: Guix packaging tutorial

2018-10-10 Thread Pierre Neidhardt
> This LGTM except ... the first paragraphs (quoted below) are an > advertisement. This is out of place in a tutorial. So, IMO, they should > simply be removed. It's a tutorial addressed to newcomers, so I believe it's important that we mention (or remind?) what Guix can do, because this is

Re: Blog: Guix packaging tutorial

2018-10-10 Thread George Clemmer
This LGTM except ... the first paragraphs (quoted below) are an advertisement. This is out of place in a tutorial. So, IMO, they should simply be removed. > GNU Guix stands out as the *hackable* package manager, mostly because > it uses [GNU Guile](https://www.gnu.org/software/guile/), a

Re: Blog: Guix packaging tutorial

2018-10-10 Thread Ludovic Courtès
Hello Pierre, Pierre Neidhardt skribis: > And here is the last version, in Markdown (hopefully the syntax is right). > > title: A packaging tutorial for Guix > date: 2018-10-09 > author: Pierre Neidhardt > tags: Software development, Programming interfaces, Scheme API This LGTM so if there are

Re: Blog: Guix packaging tutorial

2018-10-10 Thread Ludovic Courtès
Hi Benjamin, Benjamin Slade skribis: > ...But I was thinking about something a bit like Pjotr's list, though > with a bit more detail. (E.g. things like using `git format-patch' to > create patches for submission.) Does the list at

Re: Blog: Guix packaging tutorial

2018-10-08 Thread Benjamin Slade
Hi Pierre, Maybe it really falls outside of the scope of this packaging tutorial since some of it is not about creating packages per se but about how to submit them ...But I was thinking about something a bit like Pjotr's list, though with a bit more detail. (E.g. things like using `git

Re: Blog: Guix packaging tutorial

2018-10-08 Thread Benjamin Slade
This will be extremely helpful, Pierre! Thanks for putting it together. I looked at an early version of this; I don't know if it has changed since, but one thing that would be useful to a brief checklist of steps outlined somewhere. —Ben -- Benjamin Slade - https://babbagefiles.xyz

Re: Blog: Guix packaging tutorial

2018-10-08 Thread Pierre Neidhardt
> > I assumed we would just build the package, not build and install. When > > packaging something, the common thing to do is to build, change, build > > again, … and in the end maybe install (or submit to the mailing list). > > Maybe you are right. I'll see if I can adjust this. Hmm... The

Re: Blog: Guix packaging tutorial

2018-10-08 Thread Ricardo Wurmus
Hi Pierre, > Ricardo Wurmus writes: >> * I wonder if maybe we should avoid using “guix package” for the first >> example and use “guix build” instead. The reason is that “guix >> package” might cause additional builds to be performed dependent on >> the state of the user’s default

Re: Blog: Guix packaging tutorial

2018-10-08 Thread Ricardo Wurmus
Hi Pierre, > Find the last revision attached. I've taken all comments into > consideration and I'm quite happy with the result. I like it! Thanks for your patience. Here are some more comments: * In the section “A "Hello World" package” you use the word “commandline”, but it should be

Re: Blog: Guix packaging tutorial

2018-10-08 Thread Ludovic Courtès
Hello Pierre, Pierre Neidhardt skribis: > Find the last revision attached. I've taken all comments into > consideration and I'm quite happy with the result. Neat! I like it too, I’d say we can go frmo here. > I've found a much better advanced example: libgit2. > The only thing is... it does

Re: Blog: Guix packaging tutorial

2018-10-03 Thread Pierre Neidhardt
> The Guile manual uses the arrow, > but that would be incorrect in the above example as “Hello world” is not > returned by “display” — it is merely a side effect. In the Guile manual > this would be indicated by “⊣”. Absolutely, and the distinction is not so useful in the context of this

Re: Blog: Guix packaging tutorial

2018-10-02 Thread Ricardo Wurmus
Pierre Neidhardt writes: > Apparently the formatting of the REPL was also confusing ("What is this > dollar thing, is it some result?" kind of confusion). > What about changing the formatting to > > --8<---cut here---start->8--- > (display (string-append

Re: Blog: Guix packaging tutorial

2018-10-02 Thread Pierre Neidhardt
Ludovic Courtès writes: > Or global variables in the build stage, to be more accurate. :-) > > It’s really a fine point though and shouldn’t block the whole tutorial! OK, I'll go ahead then. Another Guix user told me he got confused about the Guile example. `format` seemed confusing. I

Re: Blog: Guix packaging tutorial

2018-10-02 Thread Ludovic Courtès
Pierre Neidhardt skribis: >> ‘%build-inputs’ etc. are global variables of package derivation build >> scripts; see ‘build-expression->derivation’ in (guix derivations). >> >> To view the code of one of these scripts, open the file returned by: >> >> $ guix gc --references $(guix build -d

Re: Blog: Guix packaging tutorial

2018-09-30 Thread Pierre Neidhardt
> ‘%build-inputs’ etc. are global variables of package derivation build > scripts; see ‘build-expression->derivation’ in (guix derivations). > > To view the code of one of these scripts, open the file returned by: > > $ guix gc --references $(guix build -d coreutils) | grep builder >

Re: Blog: Guix packaging tutorial

2018-09-30 Thread Ludovic Courtès
Hello, Pierre Neidhardt skribis: > l...@gnu.org (Ludovic Courtès) writes: >> I’m not sure what you mean by “generated in scope”. >> >> The ‘%’ convention is just a convention (and Andy and I realized a while >> back we interpreted the convention differently :-)) so we shouldn’t draw >> too much

Re: Blog: Guix packaging tutorial

2018-09-30 Thread Pierre Neidhardt
l...@gnu.org (Ludovic Courtès) writes: > I’m not sure what you mean by “generated in scope”. > > The ‘%’ convention is just a convention (and Andy and I realized a while > back we interpreted the convention differently :-)) so we shouldn’t draw > too much from that. > > Regarding ‘%build-inputs’

Re: Blog: Guix packaging tutorial

2018-09-29 Thread Ricardo Wurmus
Hi Pierre, thank you for writing this draft! This is a good start. Below are some comments about the beginning and some general thoughts about the idea of a tutorial. > I'm not satisfied with the advanced example: I took ~mg~ because it has a lot > of > typical customization (snippets,

Re: Blog: Guix packaging tutorial

2018-09-29 Thread Ludovic Courtès
Hello! Pierre Neidhardt skribis: >> s/conventionally.*/typically used for read-only global variables/ > > But aren't they generated in scope? I think we should mention this, or else > new users try to access them out of scope. I’m not sure what you mean by “generated in scope”. The ‘%’

Re: Blog: Guix packaging tutorial

2018-09-27 Thread Pierre Neidhardt
Thanks for this thorough review, Ludovic! I've taken most of your comments into account. A few more questions: > s/conventionally.*/typically used for read-only global variables/ But aren't they generated in scope? I think we should mention this, or else new users try to access them out of

Re: Blog: Guix packaging tutorial

2018-09-27 Thread Ludovic Courtès
Hi Pierre, Thanks a lot for writing this tutorial! I think it’ll be very useful to many. Pierre Neidhardt skribis: > Let me know if it's approachable enough and if you find any missing/tangled > parts in the progression. I’m not in a good position to say if it’s approachable I’m afraid. :-)

Re: Blog: Guix packaging tutorial

2018-09-27 Thread Ludovic Courtès
Pierre Neidhardt skribis: > My understanding it that > > %output = (assoc-ref "out" %outputs) > > Is this correct? Yes! Ludo’.

Re: Blog: Guix packaging tutorial

2018-09-26 Thread Pierre Neidhardt
My understanding it that %output = (assoc-ref "out" %outputs) Is this correct? -- Pierre Neidhardt https://ambrevar.xyz/ signature.asc Description: PGP signature

Re: Blog: Guix packaging tutorial

2018-09-26 Thread Ludovic Courtès
Pierre Neidhardt skribis: > Err... Actually I see that a few packages like "mg" uses %output and not > %outputs. What's the difference? ‘%outputs’ is the recommended way, ‘%output’ is not. :-) Ludo’.

Re: Blog: Guix packaging tutorial

2018-09-24 Thread Pierre Neidhardt
Alright, here is a first draft! It's currently in Org, I'll export it to Markdown later. It's much longer than I expected. About 5000 words! I guess some parts could go, but I'm not sure which. Feedback would be very much appreciated here. Let me know if it's approachable enough and if you

Re: Blog: Guix packaging tutorial

2018-09-24 Thread Pierre Neidhardt
Err... Actually I see that a few packages like "mg" uses %output and not %outputs. What's the difference? -- Pierre Neidhardt https://ambrevar.xyz/ signature.asc Description: PGP signature

Re: Blog: Guix packaging tutorial

2018-09-14 Thread Pjotr Prins
On Fri, Sep 14, 2018 at 01:07:44PM +0200, Pierre Neidhardt wrote: > > https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org > > Wow, this is a fantastic document! Is it mentioned anywhere? I wish I had > known about this before. I guess you've done most of the work already. > I'll make

Re: Blog: Guix packaging tutorial

2018-09-14 Thread Pierre Neidhardt
> https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org Wow, this is a fantastic document! Is it mentioned anywhere? I wish I had known about this before. I guess you've done most of the work already. I'll make sure to mention your work and credit you in the blog article. I could spot

Re: Blog: Guix packaging tutorial

2018-09-13 Thread Andreas Enge
Hello Pierre, nice idea! I agree with Ricardo's suggestions. You could have a look at the slides of a talk I gave at GHM 2013 in the "maintenance" git repo, inside the talks/ghm-2013/andreas directory. Some things are outdated (we did not have the macros to manipulate build phases yet). There I

Re: Blog: Guix packaging tutorial

2018-09-13 Thread Pjotr Prins
On Thu, Sep 13, 2018 at 01:53:16PM +0200, Ricardo Wurmus wrote: > > 1. General > > Go through the various fields of the `package` record. > > GUIX_PACKAGE_PATH, `guix build` and `guix package`. > > I have mixed feelings about recommending GUIX_PACKAGE_PATH to new > contributors. I think that

Re: Blog: Guix packaging tutorial

2018-09-13 Thread Ricardo Wurmus
Hi Pierre, > I'd like to post a blog article which would serve as a packaging > tutorial. This is an excellent idea! > --8<---cut here---start->8--- > 0. Introduction > The perks of Guix, what it means to have a full-fledged programming > language at hand

Re: Blog: Guix packaging tutorial

2018-09-13 Thread Pjotr Prins
On Thu, Sep 13, 2018 at 12:50:58PM +0200, Pierre Neidhardt wrote: > Hi! > > I'd like to post a blog article which would serve as a packaging > tutorial. Great idea. I have some material on Guix-notes already you may want to reuse: https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org

Blog: Guix packaging tutorial

2018-09-13 Thread Pierre Neidhardt
Hi! I'd like to post a blog article which would serve as a packaging tutorial. A rough outline: --8<---cut here---start->8--- 0. Introduction The perks of Guix, what it means to have a full-fledged programming language at hand for package management (e.g.