feat(coreos-supportd-pkgs): create list of CoreOS supported packages
* The list holds packages that get CoreOS "premium" support * There is also a script to list all the supported recipes and the dependencies that get also support by definition
This commit is contained in:
parent
056cad3dc2
commit
f8d02a5ecc
|
|
@ -0,0 +1,149 @@
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-acl = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-arptables = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-attr = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-autoconf-archive = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-base-files = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-base-passwd = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-bash-completion = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-bash = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-binutils-cross-x86_64 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-boost = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-bridge-utils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-busybox = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-bzip2 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-ca-certificates = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-conntrack-tools = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-coreutils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-cppzmq = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-cracklib = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-cryptsetup = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-curl = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-dbus = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-depmodwrapper-cross = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-e2fsprogs = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-ebtables = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-efibootguard = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-elfutils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-ethtool = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-expat = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-findutils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-flatbuffers = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-flex = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-fmt = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gawk = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gcc-cross-x86_64 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gcc-runtime = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gcc-source-11.4.0 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gdbm = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-glib-2.0 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-glibc = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-glibc-locale = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gmp = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gnu-efi = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-gnutls = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-grub-bootconf = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-grub = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-grub-efi = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-icu = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-iproute2 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-iptables = "Team CoreOS"
|
||||||
|
#iw should be removed
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-json-c = "Team CoreOS"
|
||||||
|
# kbd check if it can be removed
|
||||||
|
# kmod check if it can be removed
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libaio = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libarchive = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libcap = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libcap-ng = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libcheck = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libconfig = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libdevmapper = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libestr = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libfastjson = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libffi = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libgcc = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libgcc-initial = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libgcrypt = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libgpg-error = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libidn2 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-liblogging = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libmnl = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnet = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnetfilter-conntrack = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnetfilter-cthelper = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnetfilter-cttimeout = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnetfilter-log = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnetfilter-queue = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnfnetlink = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnl = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libnsl2 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libpam = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libpcap = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libpcre = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libseccomp = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libsodium = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libsolv = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libssh2 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libssh = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libtirpc = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libtool-cross = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libunistring = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libusb1 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libxcrypt = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-libxml2 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-linux-libc-headers = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-linux-yocto = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-logrotate = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-lrzsz = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-lvm2 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-lzo = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-m4 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-mtools = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-ncurses = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-netbase = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-nettle = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-openssh = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-openssl = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-opkg-arch-config = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-opkg = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-opkg-utils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-os-release = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-packagegroup-base = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-packagegroup-core-boot = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-packagegroup-coreos-base = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-packagegroup-coreos-boot = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-pciutils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-perl = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-popt = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-python3 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-qemuwrapper-cross = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-readline = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-rsyslog = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-run-postinsts = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-secure-storage = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-setserial = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-sh = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-shared-mime-info = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-spdlog = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-sqlite3 = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-swupdate = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-sysfsutils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-syslinux = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-syslog-ng = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-systemd-bootconf = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-systemd-boot = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-systemd-conf = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-systemd = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-systemd-serialgetty = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-tar = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-tcpdump = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-usbutils = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-util-linux = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-util-linux-libuuid = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-volatile-binds = "Team CoreOS"
|
||||||
|
# wpa-supplicant should be removed
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-xz = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-zeromq = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-zip = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-zlib = "Team CoreOS"
|
||||||
|
COREOS_RECIPE_MAINTAINER:pn-zstd = "Team CoreOS"
|
||||||
|
|
@ -0,0 +1,164 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
# Copyright (C) 2023 Hirschmann Automation and Control GmbH
|
||||||
|
#
|
||||||
|
# - list all recipes that are supported by the CoreOS team
|
||||||
|
|
||||||
|
import sys
|
||||||
|
import optparse
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
|
||||||
|
scripts_path = os.path.abspath(os.path.dirname(os.path.abspath(sys.argv[0])))
|
||||||
|
# Add the path if we have own libs
|
||||||
|
lib_path = os.path.abspath(scripts_path + '/../lib')
|
||||||
|
sys.path = sys.path + [lib_path]
|
||||||
|
# Add the OE lib path
|
||||||
|
lib_path = os.path.abspath(scripts_path + '/../external-layers/openembedded-core/scripts/lib')
|
||||||
|
sys.path = sys.path + [lib_path]
|
||||||
|
|
||||||
|
import scriptpath
|
||||||
|
|
||||||
|
# For importing the following modules
|
||||||
|
bitbakepath = scriptpath.add_bitbake_lib_path()
|
||||||
|
if not bitbakepath:
|
||||||
|
sys.stderr.write("Unable to find bitbake by searching parent directory of this script or PATH\n")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
import bb.cooker
|
||||||
|
import bb.providers
|
||||||
|
import bb.tinfoil
|
||||||
|
from pprint import pprint
|
||||||
|
|
||||||
|
def get_fnlist(bbhandler, pkg_pn):
|
||||||
|
''' Get all recipe file names '''
|
||||||
|
(latest_versions, preferred_versions, required_versions) = bb.providers.findProviders(bbhandler.config_data, bbhandler.cooker.recipecaches[''], pkg_pn)
|
||||||
|
|
||||||
|
fn_list = []
|
||||||
|
for pn in sorted(pkg_pn):
|
||||||
|
# use the preferred version
|
||||||
|
fn_list.append(preferred_versions[pn][1])
|
||||||
|
|
||||||
|
return fn_list
|
||||||
|
|
||||||
|
|
||||||
|
def get_recipesdata(bbhandler):
|
||||||
|
''' Get data of all available recipes '''
|
||||||
|
pkg_pn = bbhandler.cooker.recipecaches[''].pkg_pn
|
||||||
|
|
||||||
|
pkg_dict = {}
|
||||||
|
supported_pkg_dict = {}
|
||||||
|
fn_list = get_fnlist(bbhandler, pkg_pn)
|
||||||
|
size = str(len(fn_list))
|
||||||
|
i = 0
|
||||||
|
for fn in fn_list:
|
||||||
|
print(size + "/" + str(i))
|
||||||
|
i += 1
|
||||||
|
data = bbhandler.parse_recipe_file(fn)
|
||||||
|
maintainer = data.getVar("COREOS_RECIPE_MAINTAINER")
|
||||||
|
pn = data.getVar("PN")
|
||||||
|
packages = data.getVar("PACKAGES")
|
||||||
|
packages += data.getVar("PROVIDES")
|
||||||
|
pkg_dict[pn] = data
|
||||||
|
if maintainer:
|
||||||
|
supported_pkg_dict[pn] = data
|
||||||
|
for pkg in packages.split():
|
||||||
|
pkg_dict[pkg] = data
|
||||||
|
if maintainer:
|
||||||
|
supported_pkg_dict[pkg] = data
|
||||||
|
|
||||||
|
return pkg_dict, supported_pkg_dict
|
||||||
|
|
||||||
|
def resolve_dependencies(pkg_dict, supported_pkg_dict):
|
||||||
|
''' Resolve dependencies and add them to supported packages '''
|
||||||
|
sup_with_dep_dict = {}
|
||||||
|
for pkg in supported_pkg_dict:
|
||||||
|
depends = supported_pkg_dict[pkg].getVar("DEPENDS") or ''
|
||||||
|
rdepends = supported_pkg_dict[pkg].getVar("RDEPENDS") or ''
|
||||||
|
sup_with_dep_dict[pkg] = pkg_dict[pkg]
|
||||||
|
|
||||||
|
for d_pkg in depends.split():
|
||||||
|
if ("virtual/" in d_pkg) or ("native" in d_pkg):
|
||||||
|
continue
|
||||||
|
sup_with_dep_dict[d_pkg] = pkg_dict[d_pkg]
|
||||||
|
|
||||||
|
for r_pkg in rdepends.split():
|
||||||
|
if ("virtual/" in r_pkg) or ("native" in r_pkg):
|
||||||
|
continue
|
||||||
|
sup_with_dep_dict[r_pkg] = pkg_dict[r_pkg]
|
||||||
|
|
||||||
|
return sup_with_dep_dict
|
||||||
|
|
||||||
|
|
||||||
|
def display(supported_pkg_dict):
|
||||||
|
''' Display all pkgs and COREOS_RECIPE_MAINTAINER information '''
|
||||||
|
print(f'{str("RECIPE NAMES:"):40} {str("META-LAYER:"):40} {str("COS-MAINTAINER:"):50}')
|
||||||
|
for pn in supported_pkg_dict:
|
||||||
|
recipe_name = supported_pkg_dict[pn].getVar("P")
|
||||||
|
recipe_path = supported_pkg_dict[pn].getVar("FILE")
|
||||||
|
meta_layer = re.search("(?<=/layers/)(.*)(?=/recipe)", recipe_path).group(0)
|
||||||
|
maintainer = supported_pkg_dict[pn].getVar("COREOS_RECIPE_MAINTAINER") or 'Supported by Dependency'
|
||||||
|
|
||||||
|
print(f'{recipe_name:40} {meta_layer:40} {maintainer:50}')
|
||||||
|
|
||||||
|
|
||||||
|
def get_unique_list(supported_pkg_dict):
|
||||||
|
''' Create a list that only contains one package based on PN '''
|
||||||
|
unique_dict = {}
|
||||||
|
for pkg in supported_pkg_dict:
|
||||||
|
pn = supported_pkg_dict[pkg].getVar("P")
|
||||||
|
unique_dict[pn] = supported_pkg_dict[pkg]
|
||||||
|
|
||||||
|
return unique_dict
|
||||||
|
|
||||||
|
def print_to_file(supported_pkg_dict, file):
|
||||||
|
''' print list to a file '''
|
||||||
|
with open(file, "w") as file:
|
||||||
|
file.write(f'{str("RECIPE NAMES:"):40} {str("META-LAYER:"):40} {str("COS-MAINTAINER:"):50}\n')
|
||||||
|
for pn in supported_pkg_dict:
|
||||||
|
recipe_name = supported_pkg_dict[pn].getVar("P")
|
||||||
|
recipe_path = supported_pkg_dict[pn].getVar("FILE")
|
||||||
|
meta_layer = re.search("(?<=/layers/)(.*)(?=/recipe)", recipe_path).group(0)
|
||||||
|
maintainer = supported_pkg_dict[pn].getVar("COREOS_RECIPE_MAINTAINER") or 'Supported by Dependency'
|
||||||
|
|
||||||
|
file.write(f'{recipe_name:40} {meta_layer:40} {maintainer:50}\n')
|
||||||
|
|
||||||
|
def main():
|
||||||
|
parser = optparse.OptionParser(
|
||||||
|
description = "Lists all recipes supported by CoreOS.",
|
||||||
|
usage = """
|
||||||
|
%prog [options]""")
|
||||||
|
|
||||||
|
parser.add_option("-p", "--print",
|
||||||
|
help = "print all recipes that are supported",
|
||||||
|
action="store_const", dest="print", default=True)
|
||||||
|
parser.add_option("-f", "--file",
|
||||||
|
help = "store in file",
|
||||||
|
action="store", dest="file", type="string")
|
||||||
|
|
||||||
|
options, args = parser.parse_args(sys.argv)
|
||||||
|
|
||||||
|
with bb.tinfoil.Tinfoil() as bbhandler:
|
||||||
|
bbhandler.prepare()
|
||||||
|
print("Gathering recipe data...")
|
||||||
|
pkg_dict, supported_pkg_dict = get_recipesdata(bbhandler)
|
||||||
|
new_len = len(supported_pkg_dict)
|
||||||
|
old_len = 0
|
||||||
|
|
||||||
|
while old_len != new_len:
|
||||||
|
supported_pkg_dict = resolve_dependencies(pkg_dict, supported_pkg_dict)
|
||||||
|
old_len = new_len
|
||||||
|
new_len = len(supported_pkg_dict)
|
||||||
|
|
||||||
|
unique_dict = get_unique_list(supported_pkg_dict)
|
||||||
|
supported_pkg_dict = unique_dict
|
||||||
|
|
||||||
|
if options.print:
|
||||||
|
display(supported_pkg_dict)
|
||||||
|
|
||||||
|
if options.file:
|
||||||
|
print_to_file(supported_pkg_dict, options.file)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
Loading…
Reference in New Issue