[Top][All Lists]

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

Re: How to add custom channels to ISO

From: Elais Player
Subject: Re: How to add custom channels to ISO
Date: Tue, 03 Aug 2021 14:41:42 -0600
User-agent: mu4e 1.4.15; emacs 28.0.50

I don't know if it's something that should be put in the manual because I'm not really sure about the security implications of adding the channels file to the store. Though honestly I think its a neat solution because doing things this way you don't even have to create a =channels.scm= file. You can use the =scheme-file= procedure to just embed scheme code in a file like object and deliver it to the destination. Also when I asked on the IRC [1] ludo raised some concerns because there may be some issues with creating the =/etc/guix/= directory but I haven't run into any on three machines where I've done this.

Also glad I could help.

phodina <> writes:

Thanks Elais. This is exactly what I need.

Also you're right regarding the ISO running out of space (memory) as I ran =guix pull= once before the store was setup and mounted on the target system.

Also pinning the channels is useful to get "identical" os installed across the machines.

This might be a neat code excerpt and note in the manual perhaps. Would you agree?

Of course, once the system is setup then there is =guix deploy=.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐

On Friday, July 30th, 2021 at 6:15 PM, Elais Player <> wrote:

You could add the custom channels file as an

=extra-special-file=1 in the =os-configuration=.

It would look something like this:

#+BEGIN_SRC scheme

(define %my-installation-os


(inherit installation-os)





(local-file "/path/to/my/channels.scm"))

(operating-system-services installation-os)))))


Plus side is you now have a global channels file from which all

you need to do is run =guix pull= to have all your channels up to

date. You may also want to pin those channels to certain commits

just in case. Down side is running =guix pull= will start filling

up your disk or memory on an ISO and you can easily run out of

space. (I would advise not running =guix pull= until after

partitioning and setting up the target system), and this file will

be added to the store (but if you're creating a channels file in

=/etc= shouldn't matter honestly).

phodina via writes:

> Hello,
> I'm migrating to a newer machine and I'm taking my GuixSD
> configuration with me.
> So the first logical step I did was to create an ISO image > based
> on this section 1. As I use my custom channel with modified
> packages I added them to the configuration to make them
> available on the new machine.
> Or so I thought. I booted and partitioned the new machine > then
> ran
> guix system init /root/configurations.scm /mnt to install > Guix
> there.
> However, after reboot turns out that the packages are not > from
> my channel but from public Guix repository without
> modifications.
> Therefore my question is if it's possible to specify also
> channels in the configuration file so that they are used > during
> installation?
> Reading the manual I came to a nice command guix system > describe
> 2 which gives me the current configuration with the
> channels. Could that be used to build an ISO which would then
> also know about the additional channels?
> Kind regards
> Petr

reply via email to

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