unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* Help making a GNU Guix package for pure GNU Guile library
@ 2021-01-30 17:17 Zelphir Kaltstahl
  2021-01-30 17:55 ` Jérémy Korwin-Zmijowski
                   ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Zelphir Kaltstahl @ 2021-01-30 17:17 UTC (permalink / raw)
  To: Guile User

Hello Guilers!

For some time now I wanted to be able to make Guix package of some of my
Guile projects or at least understand and know how to do that, write a
guide for it and so on, to be able to do it whenever I need it and also
to be able to contribute better to the Guile community and enable others
to read how to create Guile packages and contribute. People would not
have to clone any repo from me directly, but could use Guix to install
stuff.

A few weeks ago I asked in the Guile IRC channel about how to approach
learning the required things. There people recommended me to look at
guile-haunt as an example, because it is also a pure Guile program,
which is packaged for Guix already. So that i what I started doing.

There is a whole jungle of stuff, that I do not yet understand in depth.
Many of those things are GNU Autotools / GNU Automake or GNU M4 related.
I have taken a detailed look at guile-haunt's Makeile.am and documented
anything I understand about it in a plaintext org-mode file. In that
file I wrote "TODO", for example "TODO: explain x" for anything, that I
did not yet understand.

I also have some more general questions, which I want to ask, but first
I want to post the links to what I am referring to:

* guile-haunt repository
Makefile.am: https://github.com/guildhall/guile-haunt/blob/c67e8e924c664ae4035862cc7b439cd7ec4bcef6/Makefile.am

* my own notes about the Makefile.am:
https://notabug.org/ZelphirKaltstahl/guix-package-manager-tutorials/src/01cc6af019862bd6a588c4e376f07bad9f5fb1f3/make-a-package/autotools-usage/guile-haunt.org
(Should I be pasting all the TODO items as separate questions in this
e-mail, or is posting a permalink to the document OK?)

Perhaps you can already see from the TODO things I wrote down there,
that my knowledge about the tooling is quite limited. I've never done a
lot of C programming or other ones, where one often sees Makefiles and
the usual stuff. So if you reply, please keep in mind my beginner
knowledge about these things.

Can you help me out filling the remining gaps in understanding?

Also I have another question, which I will try to answer myself:

Why does guile-haunt use Makefile.am? Why is a simple Makefile not
sufficient?

My own attempt at an answer: Autotools seem to try to be a compatibility
layer for many different systems and perform loads of checks, to
ultimately generate a working Makefile for each system on which the
Makefile.am is processed. This is important for Guix, as Guix is
supposed to work on any GNU/Linux distribution. So by using GNU
Autotools instead of GNU Make directly, I would be making my package
more stable on various systems, on which the defaults may differ from my
own system.

And ultimately: Should I be asking this question on the Guix mailing
list, instead of here?

Best regards,
Zelphir

-- 
repositories: https://notabug.org/ZelphirKaltstahl




^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2021-02-04  0:09 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-30 17:17 Help making a GNU Guix package for pure GNU Guile library Zelphir Kaltstahl
2021-01-30 17:55 ` Jérémy Korwin-Zmijowski
2021-01-30 19:56   ` divoplade
2021-01-31  3:26   ` Zelphir Kaltstahl
2021-01-30 18:35 ` John Cowan
2021-01-30 19:43   ` Dr. Arne Babenhauserheide
2021-01-30 20:16     ` divoplade
2021-01-30 21:15 ` Ricardo Wurmus
2021-01-31  0:26   ` build system for pure Guile library (was Re: Help making a GNU Guix package for pure GNU Guile library) pelzflorian (Florian Pelz)
2021-01-31  6:29     ` Ricardo Wurmus
2021-01-31 14:16       ` Zelphir Kaltstahl
2021-01-31 15:38         ` Dr. Arne Babenhauserheide
2021-02-03 23:07           ` Zelphir Kaltstahl
2021-02-04  0:09             ` Ricardo Wurmus
2021-02-03 18:31         ` Adriano Peluso
2021-01-31  3:19   ` Help making a GNU Guix package for pure GNU Guile library Zelphir Kaltstahl
2021-02-03 18:43     ` Adriano Peluso
2021-02-03 23:12       ` Zelphir Kaltstahl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).