From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id KB4HOimLlGJVCQEAbAwnHQ (envelope-from ) for ; Mon, 30 May 2022 11:15:22 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id GMcOOimLlGJuTwEA9RJhRA (envelope-from ) for ; Mon, 30 May 2022 11:15:21 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 6F84B3E789 for ; Mon, 30 May 2022 11:15:21 +0200 (CEST) Received: from localhost ([::1]:57984 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nvbUe-0002uB-01 for larch@yhetil.org; Mon, 30 May 2022 05:15:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33538) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nvbUJ-0002te-K8 for help-guix@gnu.org; Mon, 30 May 2022 05:14:59 -0400 Received: from ns13.heimat.it ([46.4.214.66]:56634) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nvbUH-0008UN-Hg for help-guix@gnu.org; Mon, 30 May 2022 05:14:59 -0400 Received: from localhost (ip6-localhost [127.0.0.1]) by ns13.heimat.it (Postfix) with ESMTP id 5C41B300F9C; Mon, 30 May 2022 09:14:54 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at ns13.heimat.it Received: from ns13.heimat.it ([127.0.0.1]) by localhost (ns13.heimat.it [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YY1kjt2V9a_H; Mon, 30 May 2022 09:14:34 +0000 (UTC) Received: from bourrache.mug.xelera.it (unknown [93.56.171.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by ns13.heimat.it (Postfix) with ESMTPSA id 32B56300E26; Mon, 30 May 2022 09:14:34 +0000 (UTC) Received: from roquette.mug.biscuolo.net (roquette [10.38.2.14]) by bourrache.mug.xelera.it (Postfix) with SMTP id B750C1B24549; Mon, 30 May 2022 11:14:33 +0200 (CEST) Received: (nullmailer pid 25564 invoked by uid 1000); Mon, 30 May 2022 09:14:33 -0000 From: Giovanni Biscuolo To: kiasoc5@disroot.org, help-guix@gnu.org Subject: Re: How to install guix system from existing linux with guix package manager? In-Reply-To: <49e9b7842da4af85f8608c95929c605d46c0c5a1@disroot.org> Organization: Xelera.eu References: <45a3b0f65ad8a06985a6ae12289136da21c03dee@disroot.org> <87czfzqol7.fsf@xelera.eu> <49e9b7842da4af85f8608c95929c605d46c0c5a1@disroot.org> Date: Mon, 30 May 2022 11:14:32 +0200 Message-ID: <87sforpekn.fsf@xelera.eu> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Received-SPF: pass client-ip=46.4.214.66; envelope-from=g@xelera.eu; helo=ns13.heimat.it X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: "Help-Guix" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1653902121; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=KnjYRh6Cmy4zGBNOq50VmOhjwkEhvwTVt/rI99ajK0w=; b=hBU9sTRdIRFo6JQM2Y7spYrhetw30jkxDxnVW56zII02mDakUExieYh4KCOt20NO+DFpu9 kgEtyiHGZJbhce2dgOShy+S3n2NJXRHzxnZvVIjfoaELpkRORW7An8WKl0x1a3LINODmDu x7PiA/hOy3GsloZ3Qa6XasEWp6ehE0vUf5+aECxGb5DLjSFYvNMXbbdFPqRgMMB/IsYGJX 2lmZ3imanekmQArZxh38GkPqGg0eqnvN52C8fUw/nJnXbmxcpN/a4ynoChJCcE5Y6ldkK3 Sm9coA7FFIREQr3zBTvInuhFAYyilrZTHLsKJP3oUYdfKPq+hCBbXbTp6Qsbyw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1653902121; a=rsa-sha256; cv=none; b=Xv2qIdCIQzyfJ/gU+CHO6JwlE+mfO+UV973TAiUqyscEa5XJ81llZaeESTr/lvv+16fz7b SJH5P1aA0Zc6PuM0XetBFg44LMdCD8TrWrCNPfxlpK+mQUoUjGs+uieUCwKemvIbgxas0G 1QUsmGCKnYPe1CSe7GD6ocp+Xq/WxHej3EvSYzAdVKm2cEo6+/PeGRfvvZM8KvcsSK16f4 FNysZ56q0o2e+S2VdVlacsB9QFR9Bz4256O6ewn91c3iUuicyBzBCV/OhsduUYfKV12HwO Ftq3y/66Ra20G9pFvxnvr6PixREXP9zHNPyISv5+f6vbqhRujXUFw7St5o2ymQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -3.43 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 6F84B3E789 X-Spam-Score: -3.43 X-Migadu-Scanner: scn1.migadu.com X-TUID: q6xRUcmok4ZX --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable 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" 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: =2D-8<---------------cut here---------------start------------->8--- lxc.mount.entry=3D/gnu/store gnu/store none ro,bind 0 0 lxc.mount.entry=3D/var/guix var/guix none bind 0 0 =2D-8<---------------cut here---------------end--------------->8--- =2D-=20 Giovanni Biscuolo Xelera IT Infrastructures --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQJABAEBCgAqFiEERcxjuFJYydVfNLI5030Op87MORIFAmKUivgMHGdAeGVsZXJh LmV1AAoJENN9DqfOzDkSE/0P/ivRDh419n+1Vj6Oup/BHY8Zz/bRE8Dq6uDO28qC ijqa4JTziR3XlvV+gYUKH+gI+QupYtCJH/3zWjEyru/PFyCTXosdFvDuaT693aWh R3n+OMrMmR287Krll/ec5sJ/nn3Emgzzz5Gcj0vROfGWUhkAmLhmzYEy2+RVZw4s 6fbNiT64jiEFu/iTGqGcqIo+T8fdCu7hh3Z3ixwUlXq77kg41KFtsE+GtQ8MKD48 qKrABy5QWqt3o3Z8nTYnN9N9vNIZo6X19oABgxvgOUzMJoycib3H83/sP8EN9WmT pyGtqwFT/9MqJnrntUwOg3PWmkayP1eOc89JL/lZe46E+4AX+156abporodIwdCK 00+jv4XtMBOxt2+IcIqW3KkJpGwIbRClAcqA8XrjHUN2D+pxu2uCZiApr8Sdd/rG ztuteiT6Wtj8RaLMva+AOH04wjwql/uSp8AjqCFoUbkvj2hLN4SsWvSpUuB2TnnP 4+HH4NZH51vdgQqRZ0Y0WHubSA7jV8o5x4U4zExikk+qaHYpM1y0e/UmbvgDfYn7 4iaWFHGQTaearuSvVZ20jEZeA/9+TdHxdEzmWHULVo8Fgq1uC65fnS5G8ZFOoCBu 3KVMDpVq4+G6SqTXlnMRCEVQMgQ1ix+/8nnvHfgQ4LSo/hykLKL7N4Fxjs2ITewd ipzd =ksph -----END PGP SIGNATURE----- --=-=-=--