From 271be3d0987a629a1734b03d35de12b141a429e9 Mon Sep 17 00:00:00 2001 From: Emily Frost Date: Mon, 4 Feb 2019 21:27:41 -0600 Subject: [PATCH] Added apt-depend-check. --- apt-depend-check | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 apt-depend-check diff --git a/apt-depend-check b/apt-depend-check new file mode 100755 index 0000000..f406429 --- /dev/null +++ b/apt-depend-check @@ -0,0 +1,33 @@ +#!/bin/bash + +parent_package="$1" +target_package="$2" # so far, this is unused + +function list_depends() { + package_name="$1" + prepend_string="$2" + + if [[ "$prepend_string" == '' ]]; then + prepend_string="$package_name" + fi + + depends_list="$(apt-cache depends "$package_name" | grep Depends | cut -d ' ' -f 4)" + if [[ $depends_list != '' ]]; then + for depend in $depends_list; do + if [[ "$depend" == "$target_package" ]]; then + echo "${prepend_string}>${depend}" + exit 0 + fi + done + for depend in $depends_list; do + if ! echo "$prepend_string" | grep -q "$depend"; then + list_depends "$depend" "${prepend_string}>${depend}" + fi + done + fi +} + +list_depends "$parent_package" + +# Output should look like this. +# package_name->dep_name->dep2_name