update lib/utils.sh

- add 'is_pkg_a_dependency', to ensure a package is not needed by some others before removing it
-> will be used in debian 12 CIS by at least the 2.1.5 recommendation

- update 'is_service_enabled' to use 'systemd' instead of 'rc.d', as we are now only supporting debian LTS using systemd
- add 'is_using_sbin_init' to ensure we can use systemctl, in case of running on non detected container
- add 'manage_service' to enable / disable service using systemctl
This commit is contained in:
Damien Cavagnini
2025-07-10 10:22:06 +02:00
committed by damien cavagnini
parent 4a2e61a2fb
commit 57aa0e6ef5

View File

@@ -599,11 +599,12 @@ is_pkg_a_dependency() {
local known_deps="$*" local known_deps="$*"
PKG_DEPENDENCIES="" PKG_DEPENDENCIES=""
# shellcheck disable=2162 # shellcheck disable=2162
while read pkg_dep_name; do while read pkg_dep_name; do
is_pkg_installed "$pkg_dep_name" is_pkg_installed "$pkg_dep_name"
if [ "$FNRET" -eq 0 ] && ! grep -w "$pkg_dep_name" <<<"$known_deps" >/dev/null; then if [ "$FNRET" -eq 0 ] && ! grep -w "$pkg_dep_name" <<<"$known_deps" >/dev/null; then
# need a 'if' even for a single sentence, due to 'set -u' # need a 'if' even for a single sentence, due to 'set -e'
PKG_DEPENDENCIES="$PKG_DEPENDENCIES $pkg_dep_name" PKG_DEPENDENCIES="$PKG_DEPENDENCIES $pkg_dep_name"
fi fi