1#!/bin/sh 2# 3# 4 5# PROVIDE: os-release 6# REQUIRE: mountcritremote FILESYSTEMS 7# BEFORE: LOGIN 8 9. /etc/rc.subr 10 11name="osrelease" 12desc="os-release update" 13rcvar="osrelease_enable" 14start_cmd="osrelease_start" 15stop_cmd=":" 16 17load_rc_config $name 18 19: ${osrelease_file:=/var/run/os-release} 20: ${osrelease_perms:=444} 21: ${osrelease_home_url:="https://www.FreeBSD.org"} 22: ${osrelease_documentation_url:="https://docs.FreeBSD.org"} 23: ${osrelease_support_url:="https://www.FreeBSD.org/support"} 24: ${osrelease_bug_report_url:="https://bugs.FreeBSD.org"} 25 26osrelease_start() 27{ 28 local _version _version_id 29 30 startmsg -n "Updating ${osrelease_file} " 31 _version=$(freebsd-version -u) 32 _version_id=${_version%%[^0-9.]*} 33 t=$(mktemp -t os-release) 34 cat > "$t" <<-__EOF__ 35 NAME=FreeBSD 36 VERSION="$_version" 37 VERSION_ID="$_version_id" 38 ID=freebsd 39 ANSI_COLOR="0;31" 40 PRETTY_NAME="FreeBSD $_version" 41 CPE_NAME="cpe:/o:freebsd:freebsd:$_version_id" 42 HOME_URL="${osrelease_home_url}" 43 DOCUMENTATION_URL="${osrelease_documentation_url}" 44 SUPPORT_URL="${osrelease_support_url}" 45 BUG_REPORT_URL="${osrelease_bug_report_url}" 46__EOF__ 47 install -C -o root -g wheel -m ${osrelease_perms} "$t" "${osrelease_file}" 48 rm -f "$t" 49 startmsg 'done.' 50} 51 52# doesn't make sense to run in a svcj: config setting 53osrelease_svcj="NO" 54 55run_rc_command "$1" 56