diff --git a/release/packages/ucl/ghostbsd-cert-all.ucl b/release/packages/ucl/ghostbsd-cert-all.ucl new file mode 100644 index 000000000000..52590ea92afc --- /dev/null +++ b/release/packages/ucl/ghostbsd-cert-all.ucl @@ -0,0 +1,14 @@ +/* + * GhostBSD Certificate Package + */ + +comment = "GhostBSD Package Repository Certificate" + +desc = < diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index 945df60769fc..a24b457e7873 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -852,7 +852,7 @@ LIBKRB5SS?= ${LIBKRB5SUPPORTDIR}/libkrb5ss${PIE_SUFFIX}.a LIBKRB5SUPPORTDIR= ${_LIB_OBJTOP}/krb5/util/support LIBKRB5SUPPORT?= ${LIBKRB5SUPPORTDIR}/libkrb5support${PIE_SUFFIX}.a LIBKRB5PROFILEDIR= ${_LIB_OBJTOP}/krb5/util/profile -LIBKRB5PROFILE?= ${LIBPROFILEDIR}/libkrb5profile${PIE_SUFFIX}.a +LIBKRB5PROFILE?= ${LIBKRB5PROFILEDIR}/libkrb5profile${PIE_SUFFIX}.a LIBVERTODIR= ${_LIB_OBJTOP}/krb5/util/verto LIBVERTO?= ${LIBVERTODIR}/libverto${PIE_SUFFIX}.a .else diff --git a/stand/defaults/loader.conf b/stand/defaults/loader.conf index a6089f10f13c..352a8faad04d 100644 --- a/stand/defaults/loader.conf +++ b/stand/defaults/loader.conf @@ -105,6 +105,7 @@ audit_event_type="etc_security_audit_event" #geom_eli_passphrase_prompt="NO" # Prompt for geli(8) passphrase to mount root bootenv_autolist="YES" # Auto populate the list of ZFS Boot Environments #beastie_disable="NO" # Turn the beastie boot menu on and off +loader_menu_hidden="YES" # Set to YES to hide boot menu; press any key during autoboot to reveal it efi_max_resolution="1x1" # Set the max resolution for EFI loader to use: # 480p, 720p, 1080p, 1440p, 2160p/4k, 5k, or # WidthxHeight (e.g. 1920x1080) @@ -239,4 +240,4 @@ loader_menu_title="Welcome to GhostBSD" boot_mute="YES" # Speed up boot time -autoboot_delay="5" +autoboot_delay="2" diff --git a/stand/defaults/loader.conf.5 b/stand/defaults/loader.conf.5 index 36883bbe7807..1ef83b554534 100644 --- a/stand/defaults/loader.conf.5 +++ b/stand/defaults/loader.conf.5 @@ -421,6 +421,17 @@ be displayed. If set to .Dq YES , the beastie boot menu will be skipped. +.It Va loader_menu_hidden +If set to +.Dq YES , +the boot menu will not be drawn during the autoboot countdown. +Instead, a single line prompt +.Pq Dq Li "Press any key for boot menu..." +is displayed. +If a key is pressed, the full menu is revealed; otherwise the system boots +normally when the countdown expires. +The countdown duration is controlled by +.Va autoboot_delay . .It Va loader_autoboot_show Pq Dq Li YES If set to .Dq NO , diff --git a/stand/lua/core.lua b/stand/lua/core.lua index c276f61e5904..2e7ebef905c2 100644 --- a/stand/lua/core.lua +++ b/stand/lua/core.lua @@ -113,6 +113,7 @@ function core.setVerbose(verbose) if verbose then loader.setenv("boot_verbose", "YES") + loader.setenv("boot_mute", "NO") else loader.unsetenv("boot_verbose") end diff --git a/stand/lua/gfx-glogo.lua b/stand/lua/gfx-glogo.lua index 3d5d774dc764..2343ad3c2a94 100644 --- a/stand/lua/gfx-glogo.lua +++ b/stand/lua/gfx-glogo.lua @@ -29,24 +29,29 @@ return { logo = { - graphic = { - " ,gggggg. ", - " ,agg9* .g) ", - " .agg* ._.,gg* ", - " ,gga* (ggg*' ", - " ,ga* ,ga* ", - " ,ga' .ag* ", - " ,ga' .agga' ", - " 9g' .agg'g*,a ", - " 'gggg*',gga' ", - " .gg*' ", - " .gga* ", - " .gga* ", - " (ga* " + ascii = { + image = { + " ,gggggg. ", + " ,agg9* .g) ", + " .agg* ._.,gg* ", + " ,gga* (ggg*' ", + " ,ga* ,ga* ", + " ,ga' .ag* ", + " ,ga' .agga' ", + " 9g' .agg'g*,a ", + " 'gggg*',gga' ", + " .gg*' ", + " .gga* ", + " .gga* ", + " (ga* " + }, + requires_color = false, + shift = {x = 5, y = 3}, + }, + fb = { + image = "/boot/images/ghostbsd-logo.png", + width = 15, + shift = {x = 2, y = -2}, }, - requires_color = false, - shift = {x = 5, y = 3}, - image = "/boot/images/ghostbsd-logo.png", - image_rl = 15 } } \ No newline at end of file diff --git a/stand/lua/menu.lua b/stand/lua/menu.lua index fb0645eb46ba..f3829c2234fa 100644 --- a/stand/lua/menu.lua +++ b/stand/lua/menu.lua @@ -517,16 +517,28 @@ function menu.run() return end - menu.draw(menu.default) + local hidden = loader.getenv("loader_menu_hidden") + if hidden ~= nil and hidden:lower() == "yes" then + if delay ~= nil then + autoboot_key = menu.autoboothidden(delay) + -- nil means timed out and booted + if autoboot_key == nil then + return + end + end + menu.draw(menu.default) + else + menu.draw(menu.default) - if delay ~= nil then - autoboot_key = menu.autoboot(delay) + if delay ~= nil then + autoboot_key = menu.autoboot(delay) - -- autoboot_key should return the key pressed. It will only - -- return nil if we hit the timeout and executed the timeout - -- command. Bail out. - if autoboot_key == nil then - return + -- autoboot_key should return the key pressed. It will only + -- return nil if we hit the timeout and executed the timeout + -- command. Bail out. + if autoboot_key == nil then + return + end end end @@ -580,6 +592,37 @@ function menu.autoboot(delay) return nil end +function menu.autoboothidden(delay) + local endtime = loader.time() + delay + local time + local last + repeat + time = endtime - loader.time() + if last == nil or last ~= time then + last = time + screen.setcursor(1, 1) + printc("[Enter] boot now, any other key for boot menu... " .. time .. " ") + screen.defcursor() + end + if io.ischar() then + local ch = io.getchar() + screen.setcursor(1, 1) + printc(string.rep(" ", 79)) + screen.defcursor() + if ch == core.KEY_ENTER then + break + end + return ch + end + + loader.delay(50000) + until time <= 0 + + local cmd = loader.getenv("menu_timeout_command") or "boot" + cli_execute_unparsed(cmd) + return nil +end + -- CLI commands function cli.menu() menu.run() diff --git a/sys/conf/package-version b/sys/conf/package-version index c2c7664a20b7..3d571928cae0 100644 --- a/sys/conf/package-version +++ b/sys/conf/package-version @@ -1 +1 @@ -26.1-R15.0b3 +26.2-R15.1a1