From owner-freebsd-current@freebsd.org Mon Feb 12 16:27:14 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C34AEF059AB for ; Mon, 12 Feb 2018 16:27:14 +0000 (UTC) (envelope-from kris@ixsystems.com) Received: from mail-yw0-x231.google.com (mail-yw0-x231.google.com [IPv6:2607:f8b0:4002:c05::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 624357D5FD for ; Mon, 12 Feb 2018 16:27:14 +0000 (UTC) (envelope-from kris@ixsystems.com) Received: by mail-yw0-x231.google.com with SMTP id y186so2342522ywf.7 for ; Mon, 12 Feb 2018 08:27:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ixsystems-com.20150623.gappssmtp.com; s=20150623; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=NW7HE3I0TkARXL0P9Mlm6wonOIUTLuAh34C4Em0Heu8=; b=KZW9IE3d0AbaJxtKLwuGPF2ZvSk9sZ18BwdSAUCcBW7DTQJYVppezyEfgoRGlYqp2V /wc2PQRbpvYOv5bzFyr42CcAJ4yB5Riuhrxqkt9o8u5xlaaWS1QjliZe7YhjQ81O+PPb nS07mwMoUCa/FsuyCiKLHEzsm9JByEh4zrDhEVSaOBJ3s9/ha/Syohdytg7YEm0HPluI 1pjzjjvZo19p+IgExAOWa8ljG+1QCD1OT7cUOPom1n7+h1WpT77BK8UArsUseunm7xpz Xo7HR0yGdesy+doeVjRM4VpKF/EHDVXzsZvqv2SkNZujbRb7N/9rxvrG3KWZZh3rNxt8 P2cQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=NW7HE3I0TkARXL0P9Mlm6wonOIUTLuAh34C4Em0Heu8=; b=ll9pCVZAvk0tQ+bWV6/XtDGXxMx/cwM0Fsp0vZxQCXJLeplEys/xeMVndXTgU0SSEc dldhFpzvRZFELdJTmrAusGRX12c9NVb7DxDyqUEgr4uzsZt4BJIbL63An3ipuZa+8p2d ze7Jrnw3llTwA6Ev66KWB3FoxnKstj3BksHTFn9PbT32p6gJWDjxkNA7v00ULxn2gHr8 NZEi+COfX1Ygo28RmXrhJwtb/oFDNdQoeCdoj+PPsj0FETfG04K5q3Xgxv+0Rot00uZq 01j9OlwmyzdGO3cXo2yuiAmjA4h4TFEoh4xkymLg73g1UyVxYsEPEDxmgIx4gr550EL+ G1yg== X-Gm-Message-State: APf1xPA5+RC3zhFdU97KZVnyQqI9jN2yJ5CzSmN5vSBw7b8OmiXaiNQS sMeDg/WjP84xqHTpUZIxu60gpFkO0pa35KaGBj/pKMymWxXU5bjSzxEIc4ca0D1U8soV9J97hYO gxI61PlaBbfnWzs0nGHWP8wNMDaiETQomFH3AAhU/z+NDA1M1mI6fqKqGCXbAiMfR0ZNt X-Google-Smtp-Source: AH8x226q/lXa+0N3eraqg2Drf4gMCuTwpw9ZC4IsEcAFYk++EeHHzycwaYOiOqO+BO/tVelyH1Dtcw== X-Received: by 10.37.221.69 with SMTP id u66mr1110558ybg.113.1518452833039; Mon, 12 Feb 2018 08:27:13 -0800 (PST) Received: from [10.231.2.154] ([12.164.17.129]) by smtp.gmail.com with ESMTPSA id t1sm3402693ywd.45.2018.02.12.08.27.11 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 12 Feb 2018 08:27:12 -0800 (PST) Subject: Re: LUA boot loader coming very soon To: freebsd-current@freebsd.org References: From: Kris Moore Message-ID: <741cdd4f-c4f3-5909-26a9-4cc8f5231eea@ixsystems.com> Date: Mon, 12 Feb 2018 11:26:33 -0500 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Feb 2018 16:27:15 -0000 On 02/12/2018 10:27, Warner Losh wrote: > Greetings, > > As you may know, the Lua (http://www.lua.org) boot loader has been in the > works for some time. It started out life as a GSoC in 2014 by Pedro Souza > mentored by Wojciech A. Koszek. Rui Paulo created a svn project branch to > try to integrate it. I rebased that effort into a github branch which Pedro > Arthur fixed up. Over the past year, I've been cleaning up the boot loader > for other reasons, and found the time was ripe to start integrating this > into the tree. However, those integration efforts have taken a while as my > day-job work on the boot loader took priority. In the mean time, Ed Maste > and the FreeBSD Foundation funded Zakary Nafziger to enhance the original > GSoC Lua scripts to bring it closer to parity with the evolution of the > FORTH menu system since the GSoC project started. > > I'm pleased to announce that all these threads of development have > converged and I'll be pushing the FreeBSD Lua Loader later today. This > loader uses Lua as its scripting language instead of FORTH. While > co-existance is planned, the timeline for it is looking to be a few weeks > and I didn't want to delay pushing this into the tree for that. > > To try the loader, you'll need to build WITHOUT_FORTH=yes and > WITH_LOADER_LUA=yes. Fortunately, you needn't do a full world to do this, > you can do it in src/stand and install the result (be sure to have the > options for both the build and the install). This will replace your current > /boot/loader that is scripted with FORTH to one that's scripted with Lua. > It will install the lua scripts in /boot/lua. The boot is scripted with > /boot/lua/loader.lua instead of /boot/loader.rc. You are strongly advised > to create a backup copy of /boot/loader before testing (eg cp /boot/loader > /boot/loader_forth), since you'll need to boot that from boot2 if something > goes wrong. I've tested it extensively, though, with userboot.so and it's > test program, so all the initial kinks of finding the lua scripts, etc have > been worked out. > > While it's possible to build all the /boot/loader variants with Lua, I've > just tested a BIOS booting /boot/loader both with and without menus > enabled. I've not tested any of the other variants and the instructions for > testing some of them may be rather tedious (especially UEFI, if you want a > simple path to back out). Since there's not been full convergence testing, > you'll almost certainly find bumps in this system. Also, all the > build-system APIs are likely not yet final. > > I put MFC after a month on the commit. Due to the heroic (dare I say > almost crazy) work of Kyle Evans on merging all the revs from -current to > 11, I'm planning a MFC to 11 after the co-existence issues are hammered > out. In 11, FORTH will be the default, and Lua will be built by default, > but users will have to do something to use it. 12, both FORTH and Lua will > be built and installed, with Lua as default (barring unforeseen > complications). Once the co-existence stuff goes in, I imagine we'll make > the switch to Lua by default shortly after that. In 13, FORTH will be > removed unless there's a really really compelling case made to keep it. > > So please give it a spin and give me any feedback, documentation updates > and/or bug fixes. I'm especially interested in reviews from people that > have embedded Lua in other projects or experts in Lua that can improve the > robustness of the menu code. > > Warner > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" Warner & Co, Great job all! Been wanting this for years, very excited to see it start landing :) One question, if we switch to Lua loader in TrueOS, do you know if the ZFS boot-environment menus have been implemented / tested yet? -- Kris Moore Vice President of Engineering iXsystems Enterprise Storage & Servers Driven By Open Source