Re: eval: startmsg: not found on FreeBSD 14.2-RELEASE-p1

From: Mark Millard <marklmi_at_yahoo.com>
Date: Wed, 19 Feb 2025 03:32:51 UTC
On Feb 18, 2025, at 17:35, Mario Marietto <marietto2008@gmail.com> wrote:

> Hello. 
> Everytime I try to install a package in FreeBSD 14.2-RELEASE-p1,this is what happens : 
> marietto# pkg install qcad Updating FreeBSD repository catalogue... FreeBSD repository is up to date. All repositories are up to date. The following 1 package(s) will be affected (of 0 checked): New packages to be INSTALLED: `qcad:` [`3.31.2.0`](http://3.31.2.0)
> Number of packages to be installed: 1 The process will require 212 MiB more space. 28 MiB to be downloaded. Proceed with this action? [y/N]: y [1/1] Fetching qcad-3.31.2.0.pkg: 100% 28 MiB 9.9MB/s 00:03 Checking integrity... done (0 conflicting) [1/1] Installing qcad-3.31.2.0... [1/1] Extracting qcad-3.31.2.0: 100% eval: startmsg: not found 
> eval: startmsg: not found ==> Running trigger: desktop-file-utils.ucl Building cache database of MIME types 
> Maybe I found the solution here :
> 
> https://lists.freebsd.org/archives/freebsd-stable/2023-February/001144.html
> 
> but I don't' understand what to do,since :
> 
> 1) I don't have any /libexec/rc/rc.d/machine_id on my 14.2-RELEASE-p1
> 2) I don't have any /etc/rc.subr

That last indicates an incomplete install. You may need
to report on how you installed in order to figure out
what else needs to be done now.

Per "man 8 rc" and "man 8 rc.subr" that talk about
/etc/rc.subr (only some references are shown below):


RC(8)                   FreeBSD System Manager's Manual                  RC(8)

NAME
     rc – command scripts for auto-reboot and daemon startup

SYNOPSIS
     rc
     rc.conf
     rc.conf.local
     rc.d/
     rc.firewall
     rc.local
     rc.resume
     rc.shutdown
     rc.subr
. . .
FILES
     /etc/rc
     /etc/rc.conf
     /etc/rc.conf.local
     /etc/rc.d/
     /etc/rc.firewall
     /etc/rc.local
     /etc/rc.shutdown
     /etc/rc.subr
     /var/run/dmesg.boot               dmesg(8) results soon after the rc
                                       process begins.  Useful when dmesg(8)
                                       buffer in the kernel no longer has this
                                       information.
. . .
SEE ALSO
     kill(1), rc.conf(5), init(8), rc.resume(8), rc.subr(8), rcorder(8),
     reboot(8), savecore(8), service(8), sysrc(8)
. . .



RC.SUBR(8)              FreeBSD System Manager's Manual             RC.SUBR(8)

NAME
     rc.subr – functions used by system shell scripts

SYNOPSIS
     . /etc/rc.subr

     backup_file action file current backup
     checkyesno var
     check_pidfile pidfile procname [interpreter]
     check_process procname [interpreter]
     DebugOn tag ...
     DebugOff tag ...
     debug message
     dot file ...
     err exitval message
     force_depend name
     info message
     is_verified file
     load_kld [-e regex] [-m module] file
     load_rc_config [flag] [service]
     load_rc_config_var name var
     mount_critical_filesystems type
     rc_log message
     rc_trace level message
     rc_usage command ...
     reverse_list item ...
     run_rc_command argument
     run_rc_script file argument
     run_rc_scripts [options] file ...
     safe_dot file ...
     sdot file ...
     startmsg [-n] message
     vdot file ...
     wait_for_pids [pid ...]
     warn message

DESCRIPTION
     The rc.subr script contains commonly used shell script functions and
     variable definitions which are used by various scripts such as rc(8).
     Scripts required by ports in /usr/local/etc/rc.d will also eventually be
     rewritten to make use of it.

     The rc.subr functions were mostly imported from NetBSD.

     They are accessed by sourcing /etc/rc.subr into the current shell.
. . .


===
Mark Millard
marklmi at yahoo.com