help-guix
[Top][All Lists]
Advanced

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

Re: How to install guix system from existing linux with guix package man


From: Giovanni Biscuolo
Subject: Re: How to install guix system from existing linux with guix package manager?
Date: Fri, 27 May 2022 12:03:48 +0200

Hello kiasoc5,

IMHO what you are trying to do is an interesting path to... ascension
:-)

For my desktop and laptop I'm still using Guix on top of a foreign
distro (Debian) because... I'm conservative :-D, so I'd very much like
to have a way to try to slowly switch to Guix System with the "safety
net" to be able to boot my current system if I'm in trouble; this way
also I can spare some cash avoiding to buy a new dedicated machine for
this experiments.

kiasoc5@disroot.org writes:

[...]

> @guix-root is mounted on / on guix system
> @gnu-store is mounted on /gnu/store on guix system and shared between
> arch and guix
> @home is mounted on /home and shared between arch and guix
>
> So I think the steps are as follows:
> 0. backup data (just in case)

Also backup /var/guix so you should be able to restore a working Guix
status (with working I mean in your current foreign distro)

> 1. move /gnu/store to subvolume
> 2. install Guix system manually with the following file systems:
>
> (mapped-devices
>   (list (mapped-device
>     (source (uuid "my-uuid"))
>     (target "cryptroot")
>     (type luks-device-mapping))))
>
> (file-systems (append
>                (list (file-system

[...]

>                %base-file-systems))

In your snippet config you missed to mount /home ;-)
(you also need to configure GRUB for dual boot, but I guess you know)

> 3. configure uefi to boot guix grub by default
>
> WDYT? any tips/suggestions?

I never tried this, but beware that the UID and GID of user(s) in
your new Guix System sould be the very same of the arch system to be
able to access homes, /including/ Guix profiles of users (stored in
/home/$USER...)

Important: if you want to be able to share the store between the two
systems you should also share the /status/ of Guix, stored in
LOCALSTATEDIR/guix/ (usually /var/guix), since it contains a lot of
useful data and AFAIU it must be kept in sync between the foreign distro
and the Guix System [1].  This is the most critical part about being
able to share Guix between two different host operating systems.

Last but not least, once you have installed Guix System you have to
decide what manages your GRUB configuraton: Guix System or arch, you
cannot share the grub config between the two; Guix System have a
stateless GRUB config (and it' good and fair) so I suggest you to use it
for GRUB configuration, but if you decide to keep using arch this is a
good tip: https://yhetil.org/guix/20181031125428.GA814@doom/

There's nothing else it comes to my mind now regarding this "migrate and
share path"

AFAIU with the above caveats, you should be able to "share Guix" between
the two systems in dual boot.

Please let me know your progresses, I'm interested!

Happy Hacking! Gio'

-- 
Giovanni Biscuolo

Xelera IT Infrastructures

Attachment: signature.asc
Description: PGP signature


reply via email to

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