Hi Kevin,

> When I do:
>
> $ guix system image --image-type=tarball operating-system.scm
>
> I get:
>
> guix system: error: failed to load 'operating-system.scm':
> ice-9/boot-9.scm:3330:6: In procedure resolve-interface:
> no code for module (home-environments)

Right, it is indeed not enough. It's more a Guile problem (language) than a 
guix problem here. Basically, `operating-system.scm` depends on other modules 
(namely `home-environments`, present in the file `home-environments.scm`). 
However, you need to hint Guile to search for folders where it can find these 
modules (by default, it doesn't look for the current directory). Since you 
don't launch them with Guile but with `guix`, `guix` provide you with the 
`--load-path` option. So the following should work.

$> guix system image --load-path=. --image-type=tarball operating-system.scm

That said, you may not need `home-environments` at all. This brings `guix home` 
into the game. `guix home` is not needed to handle your home, and even less for 
setting up an OS.You can even use `guix home` in an independent way once the OS 
is installed. So might want to first have a working OS before digging more into 
`guix home`.

To remove `guix home` from the equation, you can edit `operating-system.scm` 
and remove the lines importing the module `home-environment` (`use-module` at 
the top), then the `guix home` service lines 233-234.

> (service guix-home-service-type
> `(("woshilapin" ,woshilapin-home-environment)))

> I just did a guix pull in a (default) WSL2 Debian environment.

Yes, that's actually a good idea and the way I did it too.

> Any ideas?

I hope this will help.

> I'm definitely not at expert level with guix yet. Learning it is one of the 
> reasons I need to get this running.
>
> TIA,
> -Kevin

--
Jean (aka woshilapin)

Reply via email to