diff --git a/tools/pve/post-pbs-install.sh b/tools/pve/post-pbs-install.sh index 9c4af7664..1dbee5102 100644 --- a/tools/pve/post-pbs-install.sh +++ b/tools/pve/post-pbs-install.sh @@ -62,7 +62,14 @@ repo_state_list() { component_exists_in_sources() { local component="$1" - grep -h -E "^[^#]*Components:[^#]*\b${component}\b" /etc/apt/sources.list.d/*.sources 2>/dev/null | grep -q . + local line comp + while IFS= read -r line; do + line="${line#*Components:}" + for comp in $line; do + [[ "$comp" == "$component" ]] && return 0 + done + done < <(grep -h -E "^[^#]*Components:" /etc/apt/sources.list.d/*.sources 2>/dev/null) + return 1 } require_whiptail() { diff --git a/tools/pve/post-pve-install.sh b/tools/pve/post-pve-install.sh index bb7469155..335d132d4 100644 --- a/tools/pve/post-pve-install.sh +++ b/tools/pve/post-pve-install.sh @@ -63,7 +63,14 @@ get_pve_major_minor() { component_exists_in_sources() { local component="$1" - grep -h -E "^[^#]*Components:[^#]*\b${component}\b" /etc/apt/sources.list.d/*.sources 2>/dev/null | grep -q . + local line comp + while IFS= read -r line; do + line="${line#*Components:}" + for comp in $line; do + [[ "$comp" == "$component" ]] && return 0 + done + done < <(grep -h -E "^[^#]*Components:" /etc/apt/sources.list.d/*.sources 2>/dev/null) + return 1 } main() {