help-guix
[Top][All Lists]
Advanced

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

Are Guix and its install script incompatible with guix pack on purpose?


From: Denis 'GNUtoo' Carikli
Subject: Are Guix and its install script incompatible with guix pack on purpose?
Date: Thu, 24 Feb 2022 18:19:50 +0100

Hi,

In the installation script we have:
> if [[ -e "/var/guix" || -e "/gnu" ]]; then
>     _err "${ERR}A previous Guix installation was found. [...]
>     exit 1
> fi
> [...]
> mv "${tmp_path}/gnu" /

Guix pack also install its files in /gnu, so if we somehow installed
something built with guix pack we can't install Guix anymore.

I've no idea why it's done in this way though as the git history
doesn't tell and there is no comments either. 

Is installing software made with Guix pack incompatible with Guix on
purpose?

In the case where we do need both software made with guix pack and guix
in parallel what would be the best way to handle that?

My use case here is to be able to deploy matterbridge as safely as
possible on the Replicant server. To deploy an update I install Guix on
that server, build matterbridge with guix pack, and then remove Guix to
limit the attack surface, and install then install the update. 

Here being able to install Guix and produce a package with guix pack,
and to test it without having to remove /gnu would be useful.

In general, it would also be interesting to be able to test software
made with guix pack while still running Guix.

I guess that in these two cases, the packed software is probably not
handled by guix, so witout --localstatedir, guix gc would get rid of it?

And if --localstatedir is passed can both be installed in parallel
somehow?

I've tried to find information on that and the best I found was commits
referencing a bugreport[1] that I didn't understood, so I'm unsure if
it's related or not to the issue here.

Also how hard would it be to enable packages to run anywhere inside or
outside of Guix? There are utilities like chrpath that don't require
recompilation but they probably only work for ELF (so not for probably
not for .pyc, PE, etc) and it seems to also require an RPATH tag inside
the ELF files to work, so I'm unsure if/how it could fit into Guix.

References:
-----------
[1]https://debbugs.gnu.org/cgi/bugreport.cgi?bug=32184

Denis.

Attachment: pgpTfik78c2W7.pgp
Description: OpenPGP digital signature


reply via email to

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