#!/usr/bin/env python3 # -*- coding: utf-8 -*- import os import pkgcrap.parse as parse def conf_dir_path(): conf_home = '~/.config' if os.environ: conf_home = os.environ['XDG_CONFIG_HOME'] if conf_home[0] == '~': conf_home = os.environ['HOME']+'/'+conf_home[1:] return conf_home+'/pkgcrap' def conf_file_path(name): dir_path = conf_dir_path() if not os.path.isdir(dir_path): os.mkdir(dir_path) return dir_path+'/'+name def maintained_packages_get(): with open(conf_file_path('maintained.txt'), 'r') as fp: pkg_names = fp.read().split('\n') repos = parse.repos() repos.load() packages = [] for pkg_name in pkg_names: pkg_info = pkg_name.replace('::', '/').split('/') repo = repos.repos[pkg_info[2]] if not repo.loaded: repo.load() cat = repo.categories[pkg_info[0]] if not cat.loaded: cat.load() packages.append(cat.packages[pkg_info[1]]) return packages