def determine_extra_packages(self, packages):
args = [<EOL>"<STR_LIT>",<EOL>"<STR_LIT>",<EOL>]<EOL>installed = subprocess.check_output(args, universal_newlines=True)<EOL>installed_list = set()<EOL>lines = installed.strip().split('<STR_LIT:\n>')<EOL>for (package, version) in self._parse_requirements(lines):<EOL><INDENT>installed_list.add(package)<EOL><DEDENT>package_list = set()<EOL>for (package, version) in self._parse_requirements(packages.readlines()):<EOL><INDENT>package_list.add(package)<EOL><DEDENT>removal_list = installed_list - package_list<EOL>return tuple(removal_list)<EOL>
Return all packages that are installed, but missing from "packages".
            Return value is a tuple of the package names