[Top][All Lists]

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

Re: Scripting for installing a module

From: Zelphir Kaltstahl
Subject: Re: Scripting for installing a module
Date: Sun, 3 Jul 2022 16:52:42 +0000

On 7/3/22 09:35, James Crake-Merani wrote:
On 22/07/02 07:43pm, Zelphir Kaltstahl wrote:
On 7/2/22 10:46, James Crake-Merani wrote:
On 22/07/02 09:11am, adriano wrote:
Il giorno ven, 01/07/2022 alle 18.15 +0100, James Crake-Merani ha

I was just wondering what approach people tend to take when writing a
script which installs a module onto the load-path. I understand this
path might be different on different machines so how do you make sure
the module is installed in the right path? Would you use something
like a Makefile?
not only a Makefile

The whole Autotools chain

There are 2 options:

1) you write the and (or however they're called)
by hand and you deal with the Autotools directly, by hand

2) You use guile-hall and it will wrap the Autotools making the
experience a bit less frustrating


I wonder: why you want to install your module ?

You might want to distribute it as a simple handful of source files

Guile will compile it automagically at need

If your module has no dependencies, that could be an easy option

If it _has_ dependencies, then the Autotools might be of help

Did you think about this ?

I hate to second guess your question

I understand it might be perceived as rude and I'm sorry for that

I just think these distinctions in use cases are not clear at all, in
the manual and in general

So this could be an easy pitfall

Don't worry, you didn't come across as rude at all. My use case was simply that 
I wrote some modules that I wanted to distribute, and I thought that if I'm 
going to distribute them, I probably ought to put some sort of script in so 
users can install them as well. The modules in question are just a simple 
project which tests your conformance to a certain political ideology (which is 
not sophisticated at all because it was more of a joke between friends that I 
thought would make a good programming exercise). After seeing Guile Hall 
recommended by yourself, and Jeremy I thought this might be appropriate. My 
modules have no dependencies aside from those already part of Guile although I 
do intend to write another module which will depend on the previous module.

So if I were to take the latter approach of just distributing the source code 
then I presume users would have to load the file manually, or install it 
manually unless I'm missing something. In that case, I would've thought using 
something like Guile Hall would be more appropriate but again I might be 
missing something.

I have just found the manual pages detailing Guile Hall which I was not 
originally aware of. After reading them, it does seem to me that Hall would be 
appropriate for this but of course I would be willing to hear about 
alternatives to distributing the code.

Thanks for your response.
Hello James!

If your code is Guile code exclusively, then you might not need Guile Hall
for packaging your code. You can make a GNU Guix package without Guile Hall.
That is not to say, that Guile Hall does not work well, but I had a project,
which I wanted to package and ultimately I did not want to depend on all the
autotools machinery, which I do not understand. It has been a while, since I
have packaged anything (I should really clean the repo a bit …), but the
project I have is I think
tag 0.2.1 should contain a valid guix.scm. This repo also still has files
from previous Guile Hall attempts. However, you might have to study the docs
to get things working for your own project and how to test it with guix. I
remember, that I used a VM for testing installation of the package.
Somewhere I have a repository, which describes the process.




The reason why I have been a bit reluctant to use GNU Guix for this sort of 
thing is that the distro I use is not Guix but rather Arch Linux. I do intend 
to try out GNU Guix in the future but at the moment I have lots of other things 
to do. I am aware Guix does work on foreign distros but I will need to learn 
how to use it first.

I understand what you say regarding Guile Hall. I too do not understand the 
autotools machinery but it did seem simple to setup without that understanding. 
Thanks for sharing your repository.

I think for now I will probably end up using Guile Hall although I might 
experiment with just purely Guix, and see if I can get that to work how I want 
it as well.


Hi James!

You might already know this, but just in case you don't: You can also use Guix package manager without running the Guix distribution. This is called "Guix on foreign distro". For me this works well. If you already knew, nevermind : )



reply via email to

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