add fill tree packages und fix discription USE

pull/1/head
serkus01 3 years ago
parent 64fa18398a
commit b960adfdaf

@ -7,7 +7,6 @@ from utils.utils import get_list_overlays
from GenRecovers import ScanRecoverFile
from getUses import get_local_USE
from package import search
# создаём разширеную базу пактов с предлизительно структурой
#pkg_list ={"category": [{name: name_pkg, versions:[list_version]}]}
# и клладём это всё в json
@ -15,8 +14,9 @@ from package import search
AliaseCategory ={"www-client": "Браузеры",
"www-server": "Сервера",
'app-etitor':"Текстовые редакторы",
"game":"Игры",
"dev-lang":"Програмироыввние",
"dev-lang":" Языка програмироыввние",
"media-video": "Видео",
"media-sound": "Аудио"
}
@ -24,12 +24,12 @@ def create_db():
overlays = get_list_overlays()
recovers = ScanRecoverFile()
pkg_list ={}
listUses=get_local_USE()
port_dir =["/var/lib/layman/", "/usr/portage"]
listUses= get_local_USE()
port_dir =["/var/db/repos", "/usr/portage"]
if not os.path.exists('./pkgs.json'):
print("Create ramdb")
pkg_name =""
all_pkgs = []
all_pkgs = {}
with open('./pkgs.json', 'a') as fn:
for p in port_dir:
for d, dirs, files in os.walk(p):
@ -53,8 +53,7 @@ def create_db():
if str(d.split("/")[-2] +"/" + d.split("/")[-1]) in AliaseCategory:
all_pkgs.append(AliaseCategory[d])
else:
all_pkgs.append(d.split("/")[-2] +"/" + d.split("/")[-1])
#print(all_pkgs[d.split("/")[-2] +"/" + d.split("/")[-1]])
all_pkgs[str(d.split("/")[-2] +"/" + d.split("/")[-1])] #= search(str(d.split("/")[-2] +"/" + d.split("/")[-1]))
if d.split("/")[-2] not in pkg_list.keys():
pkg_list[str(d.split("/")[-2])] = []
@ -64,21 +63,20 @@ def create_db():
if d.split('/')[-1] not in pkg_list[d.split('/')[-2]]:
pkg_list[d.split("/")[-2]].append(d.split('/')[-1])
#print([d.split('/')[-1]])
#"all_pkgs": all_pkgs,
fn.write(json.dumps({"all_pkgs": all_pkgs, "Catalog": pkg_list, "aliases": AliaseCategory, "overlays": overlays, "recovers": recovers, "usesDecriptions":listUses}))
print(len(pkg_list))
#print("Found:\t"+ str(len(pkg_list.keys())) + " category\n" + str(len(all_pkgs)) +"packages\n")
fn.write(json.dumps({"all_pkgs": all_pkgs,"Catalog": pkg_list, "aliases": AliaseCategory, "overlays": overlays, "recovers": recovers, "usesDecription":listUses }))
print(len(pkg_list))
#print("Found:\t"+ str(len(pkg_list.keys())) + " category\n" + str(len(all_pkgs)) +"packages\n")
def on_find(pv):
def on_find(p_v):
if not os.path.exists('./pkgs.json'):
create_db()
p = []
ret_p =""
ret = {}
with open('./pkgs.json', 'r') as fn:
data = fn.read()
#data = fn.read()
pkg_list= fn.read()
pkg_list = data.split("\n")
@ -86,9 +84,9 @@ def on_find(pv):
if p_v in i and not i in p:
print(i)
p.append(str(i))
ret_p = ret_p +"\t" + i
#ret_p = ret_p +"\t" + i
print("Find in template:\t" + str(len(p)))
#ret = {"Name": ret_p.split("\t")}
#print(ret_p)
print(p)

@ -4,35 +4,32 @@ import os, sys
def get_global_USE():
ListUSE={}
with open("/usr/portage/profiles/use.desc") as uses:
line = uses.read().split("\n")
print(line)
for l in line:
if l.startswith('#') or l =='':
path = '32wwwuse.desc'
with open(path) as f:
lines =f.read().split("\n")
for line in lines:
if line.startswith('#'):
pass
else:
try:
#try:
#result[cat].append(search(r))
ListUSE[str(l.split('-'[0]))] =str(l.split('-')[1:]).replace('[', "") and str(l.split('-')[1:]).replace(']', "")
print(ListUSE[str(l.split('-'[0]))])
except Exception (e):
print(e)
ListUSE[line.split('-')[0]].append(str(line.replace(line.split('-')[0], "")))
#except Exception (e):
# print(e)
return ListUSE
def get_local_USE():
ListUSE={}
with open("/usr/portage/profiles/use.desc") as uses:
line = uses.read().split("\n")
print(line)
for l in line:
if l.startswith('#') or l =='':
path = '/usr/portage/profiles/use.local.desc'
with open(path) as f:
lines =f.read().split("\n")
for line in lines:
if line.startswith('#'):
pass
else:
try:
#result[cat].append(search(r))
ListUSE[str(l.split('-')[0])] = str(l.split('-')[1:])
print(ListUSE[str(l.split('-')[0])])
except Exception (e):
print(e)
#try:
ListUSE[line.split('-')[0]] = str(line.replace(line.split('-')[0], ""))
#except Exception (e):
# print(e)
return ListUSE

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save