From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Famulari Subject: bug#39815: Sharing the store between a host and a guest Date: Fri, 28 Feb 2020 16:07:53 -0500 Message-ID: <20200228210753.GA30122@jasmine.lan> References: <87k147epvx.fsf@cassou.me> <87eeufdx2x.fsf@cassou.me> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:60766) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j7msZ-0006lT-J4 for bug-guix@gnu.org; Fri, 28 Feb 2020 16:09:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j7msY-0007Ix-M0 for bug-guix@gnu.org; Fri, 28 Feb 2020 16:09:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:56116) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j7msY-0007Io-Gt for bug-guix@gnu.org; Fri, 28 Feb 2020 16:09:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j7msY-00028Y-Au for bug-guix@gnu.org; Fri, 28 Feb 2020 16:09:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: Content-Disposition: inline In-Reply-To: <87eeufdx2x.fsf@cassou.me> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane-mx.org@gnu.org Sender: "bug-Guix" To: Damien Cassou Cc: 39815@debbugs.gnu.org Hi Damien, Currently Guix does not include tools to support your use case of "writable and shared /gnu/store in the VM". `guix system container` might be useful but the isolation guarantees are weaker than with QEMU. However, QEMU is not bulletproof either. The recommended way to get a writeable store in a VM is to use `guix system vm-image`, copy the image out of /gnu/store, make it writeable with `chmod`, and then run it in QEMU. This will not share the store with the host. As you found, what you get with `guix system vm` is read-only. Even though you copied build-vm.sh out of /gnu/store, it is just a shell script that refers to immutable data in the host /gnu/store. In order to share the store with a VM, you would need to also share the store database — at least /var/guix/db if not all of /var/guix — and also use the host's guix-daemon. It would be great to support your use case but I don't think anyone has worked on it yet. Leo