From: Giovanni Biscuolo <g@xelera.eu>
To: kiasoc5@disroot.org, help-guix@gnu.org
Subject: Re: How to install guix system from existing linux with guix package manager?
Date: Mon, 30 May 2022 11:14:32 +0200 [thread overview]
Message-ID: <87sforpekn.fsf@xelera.eu> (raw)
In-Reply-To: <49e9b7842da4af85f8608c95929c605d46c0c5a1@disroot.org>
[-- Attachment #1: Type: text/plain, Size: 3947 bytes --]
Hi kiasoc5,
kiasoc5@disroot.org writes:
[...]
>> 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...)
>
> Yes, I believe most Linuxes set the first created user to a UID and
> GID of 1000, so hopefully this is not an issue.
Automatic UID and GID assignemt works that way /but/ when
migrating/sharing an OS that's not deterministic and I strongly suggest
you to use the "source system" (arch in your case) UID and GID in your
target system (Guix System in your case)
>> 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.
>
> Should I make /var/guix a subvolume as well?
Oh yes, I forgot to mention this!
Both /gnu/store and /var/guix must be shared so you need a dedicated
block device: partition or LVM/btrfs (sub)volume. An alternative could
be to bind mount /gnu/store and /var/guix on the "target system" [1]
(Guix System in your case)... but IMHO the dedicated block device is
better for dual (multiple) boot systems like in your case
> ALso the only directory in /gnu is /gnu/store right? So I could just
> have an @gnu subvolume mounted on /gnu instead of a @gnu-store
> subvolume mounted on /gnu/store?
AFAIK /gnu is still not used by any other software to store files, but
it could be in the future... who knows? For this reason I'd share only
/gnu/store for Guix and nothing more, eventually sharing other
/gnu/folders in the future, IF needed.
>> 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/
>
> Thanks for the tip. What if I install another bootloader on Arch like
> systemd boot? Then there will not be a bootloader conflict and I can
> select one with efibootmgr.
Yes of course you can always select your preferred boot mamager with
efibootmgr, but I'm lazy and I like to have GRUB manage all my OSs :-)
> May 28, 2022, 10:51 AM, "Giovanni Biscuolo" <g@xelera.eu mailto:g@xelera.eu?to=%22Giovanni%20Biscuolo%22%20%3Cg%40xelera.eu%3E > wrote:
[...]
>> As a side note, you could also consider to switch to Guix System and
>> keep your foreign distro running as an LXC container sharing store and
>> state with the host, but you have to be familiar with LXC tooling [1]
>> AND know how to "convert" a "physical" machine to an LXC container [2],
>> giving the guests acces to the host GPU [3] for graphical applications
>> or using remote dektop applications like SPICE or VNC... it's a little
>> bit complex but pure fun!
>
> Would an LXC approach require two graphics cards? I only have an
> integrated GPU.
No, you can share your GPU with guests or connect to guests using remote
desktop, as mentioned above ;-)
Happy hacking! Gio'
[1] I'm using this technique in my LXC containers, excerpt from one
config:
--8<---------------cut here---------------start------------->8---
lxc.mount.entry=/gnu/store gnu/store none ro,bind 0 0
lxc.mount.entry=/var/guix var/guix none bind 0 0
--8<---------------cut here---------------end--------------->8---
--
Giovanni Biscuolo
Xelera IT Infrastructures
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 849 bytes --]
prev parent reply other threads:[~2022-05-30 9:15 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-26 22:21 How to install guix system from existing linux with guix package manager? kiasoc5
2022-05-27 10:03 ` Giovanni Biscuolo
2022-05-28 10:51 ` Giovanni Biscuolo
2022-05-28 19:56 ` kiasoc5
2022-05-30 9:14 ` Giovanni Biscuolo [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sforpekn.fsf@xelera.eu \
--to=g@xelera.eu \
--cc=help-guix@gnu.org \
--cc=kiasoc5@disroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).