From owner-svn-src-all@freebsd.org Wed Jun 6 18:28:18 2018 Return-Path: Delivered-To: svn-src-all@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 9A191FDD900; Wed, 6 Jun 2018 18:28:18 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 40B2380B87; Wed, 6 Jun 2018 18:28:18 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1F8056A47; Wed, 6 Jun 2018 18:28:18 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w56ISI83059575; Wed, 6 Jun 2018 18:28:18 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w56ISH8Y059574; Wed, 6 Jun 2018 18:28:17 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <201806061828.w56ISH8Y059574@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Wed, 6 Jun 2018 18:28:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r334723 - head/stand/lua X-SVN-Group: head X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: head/stand/lua X-SVN-Commit-Revision: 334723 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jun 2018 18:28:18 -0000 Author: kevans Date: Wed Jun 6 18:28:17 2018 New Revision: 334723 URL: https://svnweb.freebsd.org/changeset/base/334723 Log: lualoader: Add a loaded hook for others to execute upon config load This will not be executed on reload, though later work could allow for that. It's intended/expected that later work won't generally need to happen on every config load, just once (for, e.g., menu initialization) or just when config is reloaded but not upon the initial load. Modified: head/stand/lua/config.lua Modified: head/stand/lua/config.lua ============================================================================== --- head/stand/lua/config.lua Wed Jun 6 16:47:33 2018 (r334722) +++ head/stand/lua/config.lua Wed Jun 6 18:28:17 2018 (r334723) @@ -458,7 +458,7 @@ function config.selectKernel(kernel) config.kernel_selected = kernel end -function config.load(file) +function config.load(file, reloading) if not file then file = "/boot/defaults/loader.conf" end @@ -485,13 +485,16 @@ function config.load(file) config.module_path = loader.getenv("module_path") local verbose = loader.getenv("verbose_loading") or "no" config.verbose = verbose:lower() == "yes" + if not reloading then + hook.runAll("config.loaded") + end end -- Reload configuration function config.reload(file) modules = {} restoreEnv() - config.load(file) + config.load(file, true) hook.runAll("config.reloaded") end @@ -512,5 +515,6 @@ function config.loadelf() end end +hook.registerType("config.loaded") hook.registerType("config.reloaded") return config