From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id uOGUEiUR/l6raQAA0tVLHw (envelope-from ) for ; Thu, 02 Jul 2020 16:53:57 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id +KN9DiUR/l4AXwAAB5/wlQ (envelope-from ) for ; Thu, 02 Jul 2020 16:53:57 +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 A0F6D940276 for ; Thu, 2 Jul 2020 16:53:56 +0000 (UTC) Received: from localhost ([::1]:47338 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jr2TD-0001uA-8s for larch@yhetil.org; Thu, 02 Jul 2020 12:53:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34328) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jr2An-0006ks-Ic for guix-devel@gnu.org; Thu, 02 Jul 2020 12:34:53 -0400 Received: from cascadia.aikidev.net ([173.255.214.101]:45482) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jr2Al-0000Ud-Ga for guix-devel@gnu.org; Thu, 02 Jul 2020 12:34:53 -0400 Received: from localhost (unknown [IPv6:2600:3c01:e000:21:21:21:0:100e]) (Authenticated sender: vagrant@cascadia.debian.net) by cascadia.aikidev.net (Postfix) with ESMTPSA id 6CFA01AA69; Thu, 2 Jul 2020 09:34:49 -0700 (PDT) From: Vagrant Cascadian To: Brice Waegeneire , dannym@scratchpost.org, boskovits@gmail.com Subject: Re: [GSOC 2020] network-boot-service In-Reply-To: References: Date: Thu, 02 Jul 2020 09:34:15 -0700 Message-ID: <87lfk1anaw.fsf@ponder> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Received-SPF: none client-ip=173.255.214.101; envelope-from=vagrant@debian.org; helo=cascadia.aikidev.net X-detected-operating-system: by eggs.gnu.org: First seen = 2020/07/02 12:34:49 X-ACL-Warn: Detected OS = Linux 3.11 and newer 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_NONE=0.001 autolearn=_AUTOLEARN X-Spam_action: no action 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: , Cc: guix-devel@gnu.org 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: -2.61 X-TUID: nM8G6ttm+AHC --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 2020-07-02, Brice Waegeneire wrote: > To support the widest hardware and boot options possible I went with=20 > iPXE > as a chainloader. Meaning that any machine doing a PXE boot (or with > builtin iPXE with restricted feature set) will load the iPXE bootloader > first, which will then properly load the initrd. iPXE is really cool! The main downside is I don't think the support for non-x86 architectures is there, but would be happy to find out otherwise. > Currently I'm working on the initrd part to add NFS mounting capability=20 > to > it. At this point I'm blocked by building a lightweight staticly built > 'nfs-utils' package to be included in the initrd. It's current total=20 > size > 219.2 MiB, I manage to reduced it to 162.2 MiB which is still one order=20 > of > magnitude larger than my initrd at 19 MiB. > > My issue building a static 'nfs-utils' is that it can't find > 'getrpcbynumber{,_r}' =E2=80=9Cconfigure: error: Neither getrpcbynumber_r= nor > getrpcbynumber are available=E2=80=9D. This function should be provided b= y the=20 > libc > or by libtirpc if it's not that first one. The problem is that=20 > 'libtirpc' > don't build it's own 'getrpcbynumber' because it find one in libc but > nfs-utils can't find it... Have you looked into using klibc (or maybe busybox) instead? They might be smaller and have enough capability to mount NFS. > Some other distros are using the kernel parameter 'nfsroot'[2], but we > probably don't want to use it since it can't be used together with an > initrd and it also mean we need built-in modules for NFS and network=20 > card > driver in the kernel. Debian at least implements support for the nfsroot kernel parameter by emulating the behavior in the initrd, using kernel modules instead of built-ins. Seems like Guix could do the same? If you're trying to use user-space NFS, I suspect you'll run into a lot of issues... Debian at least dropped support for parts of the user-space NFS stack years ago as it had huge numbers of bugs and little activity upstream. Great to hear about progress on this work! live well, vagrant --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCXv4MiQAKCRDcUY/If5cW qppMAQC/3NRXGmnazXypDRoLvck2WHOY2937KdGSfQh2e0e2RAEAylzxdNEezQwy 5JU8Eg2mHQAJhrXetI5G6aOVBa48DAc= =HYg/ -----END PGP SIGNATURE----- --=-=-=--