aboutsummaryrefslogtreecommitdiff
path: root/commands/freebsd/_freebsd.sh
blob: 76871f7a20b5a2c933d641c3fb2bebb8ebde2577 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/sh

freebsd() {
  if [ ! "$(os_get "id")" = "freebsd" ]; then exit 1; fi
}

freebsd_ensure() {
  _os_type=os_get "id"
  if [ ! "${_os_type}" = "freebsd" ]; then
    _execution_error error=unsupported_operating_system expected_os_type="freebsd" os_type="${_os_type}"
  fi
}

freebsd_ensure_kernel_module_loaded() {
  _kmod="${1}"
  if [ -z "${_kmod}" ]; then _execution_error function=freebsd_ensure_kernel_module_loaded error=missing_argument arg=kmod; fi
  if ! kldstat -q -m "${_kmod}" > /dev/null 2>&1; then
    _execution_error error=missing_dependency dependency=kernel_module kernel_module="${_kmod}"
  fi
}