freebsd-dev/stand
Kyle Evans 3cb2f5f369 lualoader: add support for .lua configuration files
If a file is specified in loader_conf_files that ends in '.lua', lualoader
will now load and execute that file. These may be used in place of a
traditional loader.conf to use more complicated logic, where some values
may be set based on others or based on the environment that the C bits has
left us with.

Lua scripts are run in a limited environment. In particular, it does not get
access to any modules or, in-fact, anything except environment variable.

A config.buildenv hook has been added so that a local module can add
whatever it may need to to the environment.

When a global var is set in the lua script, it does not immediately alter
the loader environment. Instead, the script's environment is initially
empty and processed only if the whole script executes successfully.
Effectively, a lua configuration file either takes effect or it does not,
an error will not leave it in a half-baked state.

Reviewed by:	bcr (manpages), imp
Differential Revision:	https://reviews.freebsd.org/D28450
2023-05-10 23:10:53 -05:00
..
arm64 stand: Remove extra efi.h include 2022-07-15 12:00:49 -06:00
common stand: Fix warning about variable unused 2023-05-01 15:02:54 -06:00
defaults lualoader: add support for .lua configuration files 2023-05-10 23:10:53 -05:00
efi loader: install help files only once 2023-05-09 20:18:19 -04:00
fdt Remove "All Rights Reserved" from Foundation copyrights 2022-06-30 10:49:09 -04:00
ficl Revert "stand: Grammar fix for a source code comment" 2022-09-05 15:40:55 +02:00
ficl32 Update/fix Makefile.depend for userland 2023-04-18 17:14:23 -07:00
fonts loader: really use bold font for vga text mode 2021-01-08 01:24:30 +02:00
forth loader.4th(8): Fix a typo in the manual page 2022-04-02 15:11:59 +02:00
i386 loader: install help files only once 2023-05-09 20:18:19 -04:00
images loader: implement framebuffer console 2021-01-02 21:41:36 +02:00
kboot kboot: Add smbios support 2023-05-01 15:12:29 -06:00
kshim stand/usb: Fix build by declaring missing functions and types. 2022-03-17 15:26:24 +01:00
liblua loader: Change version calculation to be more consistent. 2023-04-19 13:58:53 -04:00
liblua32
libofw stand/ofw: dev can't be NULL here 2023-01-13 14:22:38 -07:00
libsa stand: Fix oversight in updating OpenZFS: Add com.klarasystems:vdev_zaps_v2 2023-05-04 08:25:46 -06:00
libsa32 Update/fix Makefile.depend for userland 2023-04-18 17:14:23 -07:00
lua lualoader: add support for .lua configuration files 2023-05-10 23:10:53 -05:00
man loader.efi(8): document slop control, amd64 nocopy, and amd64 fault commands 2022-09-06 18:55:45 +03:00
powerpc loader: always install help files 2023-02-03 16:35:06 -04:00
uboot loader: always install help files 2023-02-03 16:35:06 -04:00
usb stand: For all disk drivers, connect dv_parsedev to disk_parsedev 2022-11-30 15:30:32 -07:00
userboot loader: install help files only once 2023-05-09 20:18:19 -04:00
defs.mk stand: remove mips support 2021-12-10 11:05:31 -07:00
fdt.mk
ficl.mk stand: remove mips support 2021-12-10 11:05:31 -07:00
loader.mk loader: install help files only once 2023-05-09 20:18:19 -04:00
lua.mk lua: Update to 5.4.4 2023-02-08 10:33:26 -07:00
Makefile stand: Add a helper 'universe' target 2022-07-30 05:01:47 -06:00
Makefile.amd64 stand: properly declare subdir deps or .WAIT, do parallel build 2020-12-31 11:15:45 -06:00
Makefile.inc stand: properly declare subdir deps or .WAIT, do parallel build 2020-12-31 11:15:45 -06:00
veriexec.mk EFI secure boot VECTX related changes 2021-04-30 12:53:45 -05:00