From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id EDxQO1z0UV/DLgAA0tVLHw (envelope-from ) for ; Fri, 04 Sep 2020 08:01:32 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id WD1RN1z0UV/5TAAA1q6Kng (envelope-from ) for ; Fri, 04 Sep 2020 08:01:32 +0000 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 5624E940653 for ; Fri, 4 Sep 2020 08:01:32 +0000 (UTC) Received: from localhost ([::1]:50142 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kE6f5-0001nR-8h for larch@yhetil.org; Fri, 04 Sep 2020 04:01:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37976) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kE6Kn-0003j1-Ft for guix-devel@gnu.org; Fri, 04 Sep 2020 03:40:33 -0400 Received: from relay11.mail.gandi.net ([217.70.178.231]:36795) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kE6Kl-0006qD-52 for guix-devel@gnu.org; Fri, 04 Sep 2020 03:40:33 -0400 Received: from gnou.home (lfbn-lyo-1-1007-229.w86-194.abo.wanadoo.fr [86.194.83.229]) (Authenticated sender: d@divoplade.fr) by relay11.mail.gandi.net (Postfix) with ESMTPSA id E18AA10001A for ; Fri, 4 Sep 2020 07:40:24 +0000 (UTC) Message-ID: <1a4381d19a6910121e3e4df25746df06fbb03fce.camel@divoplade.fr> Subject: My experience installing Guix system From: divoplade To: guix-devel@gnu.org Date: Fri, 04 Sep 2020 09:40:18 +0200 Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Received-SPF: pass client-ip=217.70.178.231; envelope-from=d@divoplade.fr; helo=relay11.mail.gandi.net X-detected-operating-system: by eggs.gnu.org: First seen = 2020/09/04 03:40:25 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Fri, 04 Sep 2020 04:01:20 -0400 X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: -1.01 X-TUID: vElrkkmpZVbh Hello Guix, By following the official instructions for installing guix, I have read that you might be interested in how someone would manage to install it by hand. So this is what I will do here. My situation is I have two computers: one I intend as a server, and one I use as a desktop. I wanted to try installing guix on the desktop before going ahead and installing it for my server. I was very interested in the guile sexps and gexps for defining services, and the fact that I would not forget which services I had installed, which ones were expected to run and how they were configured, having an obvious root of the system definition -- /etc/config.scm. I don't have a lot of time for the management of the system, and guix has as built-in basically every service I wanted, so my guess is I need to try. Plus, despite my computer system requiring dirty firmware, I consider the issue of software freedom of great importance. I had tried it some time ago, but now I realize that both my systems need special firmware in order to even boot the installer. Retrying now with added firmware, even if I managed to load the installer, it would choke on existing partitions that are neither crypt devices, ext4 file systems or fat32 file systems. So I had to do an automatic partitioning scheme before trying a manual one. This was enough for the installer-plus-firmware to generate the system config file, but it crashed right before actually generating the system. And of course, I needed to add firmware to the generated system, so I would need to run guix pull before guix init anyways. The next step was installing regular debian on the partition I intended for /home, then installing the guix package manager on top of it, mounting the other partitions (/boot/efi and the / crypt device), and running guix system init from within debian. I commented out the file system for /home in the guix definition before that, so everything in guix was installed into one partition. Then, I booted into guix, erased the debian system, used the partition as a crypt device for /home, rebooted, and everything worked. There is just one caveat: I have 2 encrypted partitions, and the boot sequence asks me passwords 3 times: - 1 to mount / in order to load the kernel (this one is done with US keyboard!) - 2 to mount / with the loaded kernel (using the right keyboard configuration); - 3 to mount /home. There might be a way to configure the early decrypting of / to use the right keyboard configuration, but I just added the LUKS key twice: once with my normal keyboard layout, and once with the US keyboard layout. In the mean time I am in the process of doing basically the same steps for my server, except now I have a template for the system config so I don't need to run the installer anymore. Anyway, that was my story. It was a little messy, but in the end it appears to work well. Best regards, divoplade